webgl 设置:setClearColor(1.0,1.0,1.0,1.0) rgba格式最后一个参数就是alpha
three.js设置:
renderer = new THREE.WebGLRenderer( { antialias: true,alpha:true } );
renderer.setClearColor(0xEEEEEE, 0.0);或者renderer.setClearAlpha(0.0);它的意思是每次绘制清除缓冲区后的颜色通道设置,简单就是设置每次绘制的背景颜色
但需要注意:有时候你会发现怎么修改都没有用,那有可能是你场景设置了背景颜色;
this.scene.background = new THREE.Color(0x000000); 这样设置就会导致你设置渲染alpha的透明度没作用,
还有一种情况,就是你只需要设置 alpha :true 就可以了,
反正我是遇到了,至于什么原因不太清楚
1.第一步,需要注释场景
背景
色,否则会影响
背景
设置
透明
var scene = new THREE.Scene();
scene.background = new THREE.Color( 0xa0a0a0 );
2.
设置
alpha
透明
系数
var renderer = new THREE.WebGLRenderer( { alpha: true } );
renderer.setClearAlp...
本资源是我自己的课程:three.
js
打造智能饲料加工厂
这个资源是我自己在CSDN上的视频课程的源代码,课程地址:https://edu.csdn.net/course/detail/36327
购买源代码者,如果有不懂的地方可以私信我,我可以协助购买者把项目跑起来,并且回答购买者提出的问题。
凡盗版者,追究到底!
如果我们希望three
js
背景
透明
,比如数据大屏已经有
背景
图了,不希望threee
js
的
背景
色遮挡,这时候就可以将three
js
的
背景
设置
为
透明
,
设置
背景
透明
前需要先将alpha
设置
为true。通过renderer.setClearColor(0x000000,0)第二个参数来
设置
透明
度0是完全
透明
,1是不
透明
。注意render的
背景
色需要取消,不然不生效。
// 创建地球 半径100
function createEarth() {
var earthGeo = new THREE.SphereGeometry(radius, 50, 50);
var earthMate....
透明
分为两种:
透明
测试(Alpha Test),
透明
混合(Alpha blending),其
中
透明
度测试只是根据Alpha通道 阈值把对应的像素discard丢弃,得到的并不是真正的
透明
!Alpha blending是得到真正的
透明
.