3

我想有人解释一下如何实现这个例子的蓝色半透明间歇球:(间歇红色球旁边的那个)

http://threejs.org/examples/webgl_materials.html

我首先相信这是使用具有正确设置的正确材料的问题(特别是因为该示例是关于材料的),但无论如何都不确定。

希望你不觉得我的问题不值得在这里提出。我试图分析它,但它绝对是以对新手不友好的方式编写的,我无法将这部分与其他部分分开,我在其他任何地方都找不到解释。

4

1 回答 1

9

例如,要创建一个部分透明的蓝色球体,您可以尝试:

var sphereGeom =  new THREE.SphereGeometry( 40, 32, 16 );
var blueMaterial = new THREE.MeshBasicMaterial( { color: 0x0000ff, transparent: true, opacity: 0.5 } );
var sphere = new THREE.Mesh( sphereGeom, blueMaterial );

有关创建半透明材质的更多示例,请查看

http://stemkoski.github.io/Three.js/Translucence.html

如果您希望球体淡入和淡出,您可以在更新或渲染函数中更改透明度——使球体成为全局对象,还可以创建(全局)时钟对象来跟踪初始化中的时间,例如例如,与

clock = new THREE.Clock();

然后在你的更新中,你可以,例如,写

sphere.material.opacity = 0.5 * (1 + Math.sin( clock.getElapsedTime() ) );
于 2013-07-01T01:10:14.633 回答