Python实现3D破坏球效果 只要16行代码

2018-10-0513:54:40后端程序开发Comments2,516 views字数 804阅读模式

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

以下是制作上面炫酷动画所需的全部代码:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

(如果你对Blender Python完全陌生,访问链接:http://slicker.me/blender/3d_mandelbrot.htm了解如何复制粘贴代码。)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

我们需要三组刚体(当您在Blender的对象上打开一个刚体的属性时,Blender将模拟与其它刚体的碰撞):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

1.平面
第2行代码创建了一个简单的平面,立方体将放置在该平面上。为了防止它因重力而坠落,我们将其设为“受体”[第4行代码]。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

2. 圆环
x循环[5-12行代码]创建由18个圆环组成的链条,它们将撞击墙体:
[6-8行]确定它们的坐标并沿Y轴依次旋转90°。旋转是通过x除以2的余数(获得“0-1-0-1-0...”序列)乘以90度(弧度1.5708)实现的。
[第10行]将它们的碰撞形状设置为“MESH”。如果设置为默认的"Convex Hull",Blender就不会考虑到中间的孔洞,链条就会脱落。
[第11-12行]将第一个圆环的"Enabled"属性设置为false,防止由于重力而坠落。这样它就固定在那牵住整个链条。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

3. 立方体
在13-16行代码中,我们创建了一个由10个立方体组成的列,重量非常轻,以便在撞击时飞得更远。
因为z循环[第13行]嵌套在x循环[第5行]中,我们将得到一个18X10的立方体组成的墙。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

好了!当您点击时间线上的“播放”时,链条就会掉下来,撞上立方体并让它们飞起来!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

现在我们让最后一个圆环变大一点,让它看起来更像一个实际的破坏球,而不是用一根链子打破墙壁。为了有更酷的碰撞效果,将第6-8行代码更改为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

下载相关代码请点击此链接:https://od.lk/d/OF8xMzk3MDkxODVf/wreck.blend文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

你还要打破别的东西吗?让我们来撞碎这个坏小子:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

将第13-16行代码替换为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

并在代码的最开始处添加以下行,这样才能使用sin和cos三角函数:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

Python实现3D破坏球效果 只要16行代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

享受破坏的过程吧!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/6377.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/6377.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定