我想画一只3D猫(带动画),它只不过是一堆3D物体 - 椭圆体,金字塔,球体等。 我有两个问题:
1)有没有办法定义自己的复杂几何3D对象,而不是标准的Three.js对象,如Sphere,Cube ......
2)当动画整个猫我应该为每个对象定义动画功能吗?有没有办法将一些对象组合在一起?
答案 0 :(得分:2)
对于问题一,我建议阅读parameter driven modelling,这样您就可以制作一致的复杂对象,而无需在每次创建时重新发明轮子。至于创建自定义对象,就像折线实际上是标准线方法的迭代实现(以及特定于对象的方法)的线的集合一样,你创建了一个包含一个集合的javascript对象。创建自定义形状所需的对象。 Here's一个很好的webgl备忘单来帮助你。
问题二有点类似于我们描述上面的复杂对象的方式,因为当你编写一个Cat对象渲染/动画函数时,你将基于每个对象处理动画(除了完整的对象)静态运动,想象一下自动扶梯上的一只猫)。再次约束或参数驱动设计将成为你的救星,因为两个或多个对象部分叠加的事实绝不意味着对象被明确链接。
作为结束语,我建议调查clojurescript。对于这种类型的工作可能没有必要,但是lisp在CAD脚本世界中非常流行,从长远来看,你肯定会帮助自己,至少熟悉编码约定 - 很多问题你在这个项目上的工作将会以各种编程语言得到解答,但是你可能会发现许多人在围栏两侧(cad /编程)编写的答案将会用口齿不清写的。这是最终的一般CAD forum,它是所有CAD事物的重要资源。