Rui*_*rey 9 javascript decal three.js
我想在一个管几何体的一段(在背面)中放一个贴花.
我的方法是使用TubeGeometry作为贴花几何.
示例代码:
//code
var tube = new THREE.TubeGeometry(pipelineSpline, 200, 20, 20, closed2);
tubeMesh = THREE.SceneUtils.createMultiMaterialObject(
geometry, [
material, // a phong material
materialInside // a material for the inside
]);
scene.add(tubeMesh);
var decalGeometry = new THREE.DecalGeometry(
tubeMesh.children[0],
new THREE.Vector3(0,0,0), //position
new THREE.Vector3(0,1,0), //direction
new THREE.Vector3(10,10,10), //dimensions
new THREE.Vector3(0,0,0) //check
);
Run Code Online (Sandbox Code Playgroud)
然而,这似乎沿着所有背面几何路径应用了管的贴花.而且我只希望它在关键位置的背面管的一部分上.
如何使用THREE.DecalGeometry在TubeGeometry中制作局部贴花?可能吗?
为此,您需要使用 a ShaderMaterial,并在着色器代码中定义定位和不透明度规则以及THREE.js 传递给它的各种uniform(例如,新纹理)和(例如,UV)值。parameter
| 归档时间: |
|
| 查看次数: |
693 次 |
| 最近记录: |