Javascript 创建透明圆柱体

Javascript 创建透明圆柱体,javascript,webgl,three.js,Javascript,Webgl,Three.js,我正在尝试创建一个透明圆柱体。我尝试过设置透明、不透明度等,但似乎无法使其工作。有没有办法做到这一点?我是否需要加载带有alpha通道的虚拟纹理?有没有更简单的方法 material = new THREE.MeshBasicMaterial({wireframe: true}); material.transparent = true; mesh = new THREE.Mesh(new THREE.CylinderGeometry(4, 4, 50, 8, 1, true), materia

我正在尝试创建一个透明圆柱体。我尝试过设置透明、不透明度等,但似乎无法使其工作。有没有办法做到这一点?我是否需要加载带有alpha通道的虚拟纹理?有没有更简单的方法

material = new THREE.MeshBasicMaterial({wireframe: true});
material.transparent = true;
mesh = new THREE.Mesh(new THREE.CylinderGeometry(4, 4, 50, 8, 1, true), material);
scene.add(mesh);
更新:我已将代码更改为以下内容,但以这种方式使用ShaderMaterial似乎是错误的。但它是有效的

material = new THREE.ShaderMaterial({wireframe: true, transparent: true});
mesh = new THREE.Mesh(new THREE.CylinderGeometry(4, 4, 50, 8, 1, true), material);
scene.add(mesh);
更新:这里是图片

  • 我无法正确添加图片或添加链接,因为我需要11的声誉,只有10个,所以我添加了断开的链接。在每个url前面添加“h”
ttp://img692.imageshack.us/img692/6412/shadermaterial.png 使用ShaderMaterial可以看到被透明圆柱体包围的矩形灰色精灵

使用不透明度为0.0的MeshBasicMaterial

使用不透明度为0.5的MeshBasicMaterial


使用不透明度为1.0的MeshBasicMaterial。

应该是这样吗

material = new THREE.MeshBasicMaterial( { wireframe: true, opacity: 0.5 } );

我的圆筒里有东西(精灵)。如果我执行以下操作,精灵将不再可见,尽管背景会受到不透明度的影响。如果我将不透明度更改为0.0,则精灵不可见,1.0为白色圆柱体。材质=新的3.MeshBasicMaterial({线框:false,不透明度:0.5});material.transparent=true;当然,我去拿。这与以下内容有关,我似乎无法与精灵相交。我在问题中添加了屏幕截图的链接。