0
我有一段代码需要为3D场景制作动画。我这样做,使用类和函数在代码中整齐地构建3D场景。这本身就是一个文本输出的东西。从CoffeeScript中的某个函数返回一个对象
逻辑上它不需要吐出文字。 Threejs库应该与我构建的内容交互。
我想例如做这样的事情:
class Tile extends SuperSpace
height: 2
sideLength: 10
class Plain extends Tile
constructor: ({ @color = 'lightgreen', @height = @height, @heightPlacement = 2 } = {}) ->
console.log """
New plain:
color: '#{@color}'
sideLength: #{@sideLength}
height: #{@height}
heightPlacement: #{@heightPlacement}
"""
mesh: ->
geometry = new THREE.BoxGeometry 10/10, 2/10, 10/10
material = new THREE.MeshBasicMaterial { color: 0x22ff22 }
cube = new THREE.Mesh geometry, material
return cube
,并调用它在场景简直就像这样:
scene.add plain.mesh
这只不过是一个越来越少修改了文档中的现有示例。 plain.mesh
应该是退货cube
不知何故物体没有得到槽。我要么得到undefined
或让我的整个机能恢复控制台:
function() {
var cube, geometry, material;
geometry = new THREE.BoxGeometry(10/10, 2/10, 10/10);
material = new THREE.MeshBasicMaterial({
color: 0x22ff22
});
cube …
几乎没有令人满意的。有什么建议么?
这是一个函数引用:'plain.mesh'。这是一个函数调用:'plain.mesh()'。当没有任何参数时,括号是必需的。 –