【发布时间】:2016-07-30 07:52:18
【问题描述】:
我正在尝试从两个 jpeg 文件创建云纹理。一个是透明度,另一个是颜色/可见纹理。 three.js 文档在一定程度上有所帮助,但缺乏实际实施。因此,虽然我知道 alphaMap 存在,但我不确定这是否是如何实现它的。此代码似乎无法正常工作。纹理将成为颜色层,而 alpha 将成为剪贴蒙版。 Alpha 蒙版会自行工作,但不会剪切纹理层。
// add clouds
function addClouds(){
loadText.innerText = "Adding Atmosphere";
var cloudsTexture = loader.load( "img/earthcloudmap.jpg" ),
cloudsAlpha = loader.load( "img/earthcloudmaptrans.jpg" ),
materialClouds = new THREE.MeshPhongMaterial( {
map: cloudsTexture,
alphaMap : cloudsAlpha,
transparent : true,
depthWrite : false
} );
meshClouds = new THREE.Mesh(spGeo, materialClouds);
meshClouds.scale.set(1.015, 1.015, 1.015);
scene.add(meshClouds);
}
【问题讨论】:
-
three.js 期望 alpha 贴图在不透明区域为白色,在透明区域为黑色。您的 alpha 地图是否与该要求相反?
-
啊,我现在看到颜色颠倒了。我原以为他们是另一种方式。感谢您的帮助,这是我的地震可视化器看起来如此酷的原因之一:D
标签: javascript three.js alpha