three.js CanvasRenderer-设置对象的初始颜色和透明度纹理
three.js CanvasRenderer - setting initial color for object together with transparency textures
我尝试使用CanvasRenderer来渲染我的对象,这将在运行时更改其纹理。纹理是具有透明背景的PNG图像,我希望背景的基本颜色是从对象设置的人脸。
我读过这篇文章是为了成功地将纹理加载并映射到对象中,但当我尝试更改对象的初始颜色时,我发现对象的空白空间将保持透明(并且可以穿透它),并且没有我期望的任何基础颜色。
以下是我用来试用的代码:
var texture = THREE.ImageUtils.loadTexture("./"+texture_url,new
THREE.UVMapping());
child.material = new THREE.MeshBasicMaterial(
{
map: texture,
transparent:false,
opacity: 1
});
var color = new THREE.Color("rgb(245,210,179)");
child.material.color = color;
child.material.needsUpdate = true;
这里会有什么问题?
编辑:尝试了不透明度属性,但在这里仍然没有成功。但是,如果从代码中删除map: texture
,则对象可以在没有任何透明度的情况下以预期的背景色显示。
您看到的是CanvasRenderer
的限制。
不能应用透明纹理并期望其渲染为贴花,也就是说,材质颜色会显示出来。
你可以有一种颜色或纹理,但不能两者都有。
解决方法是修改纹理。
three.js r.63
相关文章:
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 使用JavaScript中的HTML颜色和透明度
- three.js CanvasRenderer-设置对象的初始颜色和透明度纹理
- 将鼠标悬停在图像上,图像的不透明度和图像下方标题的颜色会发生变化..同样,当标题变成两行时,它会破坏格式
- Highcharts设置背景颜色和不透明度
- 如何在高图表中更改单个气泡的颜色和不透明度
- 如何将透明度信息添加到十六进制颜色代码
- 更改相位器精灵的某些颜色的不透明度
- 如何在滚动时仅更改导航的背景颜色,而不更改文本和徽标不透明度
- 鼠标悬停时更改背景颜色不透明度
- 如何组合两个单独的Uint8Array的颜色数据(JPEG)和透明度数据(PNG)
- 角度材质-更改对比度颜色不透明度
- 如何使用javascript更改背景(而非文本)颜色不透明度
- 我已经将背景颜色设置为白色,但是父元素的不透明度如何影响它
- 平滑动画背景颜色不透明度后,基础图像加载
- 改变背景颜色不透明度与时间间隔
- 使用HTML5 Canvas绘制透明度乘以颜色的图像
- Angular-chart.js条形图,颜色100%不透明度
- 在Famo.us中转换颜色(或非转换/不透明度CSS属性)的正确方式
- 在十六进制颜色值的情况下,使用jquery或javascript设置边框的不透明度