javascript - three.js 是否有等效的背面可见性?

标签 javascript canvas 3d webgl three.js

我有一个带有使用半透明 png 纹理的网格的对象。

是否有 MeshBasicMaterial 的标志或选项,以便从前面可以看到对象的背面?

下面是一些示例代码:

var texture = THREE.ImageUtils.loadTexture('world.png');

// create the sphere's material
var sphereMaterial = new THREE.MeshBasicMaterial({
    map: texture,
    transparent: true,
    blending: THREE.AdditiveAlpha
});

sphereMaterial.depthTest = false;

// set up the sphere vars
var radius = 50, segments = 20, rings = 20;

// create a new mesh with sphere geometry -
var sphere = new THREE.SceneUtils.createMultiMaterialObject(
    new THREE.SphereGeometry(radius, segments, rings),[
    sphereMaterial,
    new THREE.MeshBasicMaterial({
        color: 0xa7f1ff,
        opacity: 0.6,
        wireframe: true
        })
   ]);

这将准确地渲染球体,但背面仍然不可见。

最佳答案

执行此操作的新方法是使用 materialside 属性。

示例:

new THREE.MeshPhongMaterial( { map: texture, side: THREE.BackSide } )

可能的值为 THREE.FrontSideTHREE.BackSideTHREE.DoubleSide

参见:https://github.com/mrdoob/three.js/wiki/Migration

关于javascript - three.js 是否有等效的背面可见性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10287186/

相关文章:

javascript - 单击单选按钮后更新值,还需要 session 变量中的值

javascript - 根据季节( Spring 、夏季、秋季、冬季)更改 CSS 中 <section> 的背景图像

javascript - 如何在组件方法中具有可访问的变量

html - 使用 Fabric.js 时 IE 中的问题

javascript - 我可以使用 jQuery 和外部 JSON 数据以编程方式绘制 HTML5 Canvas x/y 点吗?

javascript - 在 HTML 5 Canvas 上绘制静态背景

java - 使用 Apache Hadoop 渲染 3D 图像

c++ - 局部表面拟合到 3d 点

javascript - 使用jquery进行 react 以滑动切换

java - 在没有任何 Java 库的情况下对 3D 形状进行编程