Javascript 在threejs中,setClearColor的值为白色,但在调用外部html文件时呈现黑色?

Javascript 在threejs中,setClearColor的值为白色,但在调用外部html文件时呈现黑色?,javascript,html,css,iframe,three.js,Javascript,Html,Css,Iframe,Three.js,在Three.js中,setClearColor的值为白色,但在调用外部html文件时呈现为黑色: 外部文件代码: <div id="3d-modal"></div> <script src="juicer/js/three.js"></script> 三维模态脚本: <script> var scene = new THREE.Scene(); var camera = new THREE.PerspectiveCamer

在Three.js中,setClearColor的值为白色,但在调用外部html文件时呈现为黑色:

外部文件代码:

<div id="3d-modal"></div>
<script src="juicer/js/three.js"></script>

三维模态脚本:

<script>
 var scene = new THREE.Scene();
 var camera = new THREE.PerspectiveCamera(75, 
 window.innerWidth/window.innerHeight, 0.1, 1000);
 var renderer = new THREE.WebGLRenderer({antialias : true});

 // renderer.setSize(window.innerWidth, window.innerHeight);

 renderer.setClearColor(0xffffff);
 renderer.shadowMap.enabled = true;
 renderer.shadowMap.type = THREE.PCFSoftShadowMap;

 // Appending Webgl to the "container" Div...
 // document.body.appendChild( renderer.domElement );

 var container = document.getElementById("3d-modal");
 var canvas_width = 290;
 var canvas_height = 165;
 var renderer = new THREE.WebGLRenderer();
 renderer.setSize(canvas_width , canvas_height);
 container.appendChild(renderer.domElement);

 var animate = function () {
 requestAnimationFrame( animate );
 renderer.render(scene, camera);
 };
 animate();
</script> 

var scene=new THREE.scene();
var摄像机=新的三个透视摄像机(75,
window.innerWidth/window.innerHeight,0.11000);
var renderer=new THREE.WebGLRenderer({antialas:true});
//renderer.setSize(window.innerWidth、window.innerHeight);
renderer.setClearColor(0xffffff);
renderer.shadowMap.enabled=true;
renderer.shadowMap.type=THREE.PCFSoftShadowMap;
//正在将Webgl附加到“容器”分区。。。
//document.body.appendChild(renderer.doElement);
var container=document.getElementById(“3d模式”);
var canvas_width=290;
var canvas_height=165;
var renderer=new THREE.WebGLRenderer();
设置大小(画布宽度、画布高度);
container.appendChild(renderer.domeElement);
var animate=函数(){
请求动画帧(动画);
渲染器。渲染(场景、摄影机);
};
制作动画();
我怎样才能解决这个问题

我在开始使用three.js时也遇到了这个问题。这实际上是一个javascript问题:

更新:感谢HdN8提供更新的解决方案:

renderer.setClearColor( 0xffffff, 0);
注意:语法=>setClearColor(颜色,alpha))

更新#2:正如WestLangley在中指出的那样-在创建新的WebGLRenderer实例时,您现在必须使用以下代码与setClearColor()函数结合使用:

var renderer = new THREE.WebGLRenderer({ alpha: true });
更新#3杜布先生指出,由于r78您也可以使用以下代码设置场景的背景颜色:

var scene = new THREE.Scene(); // initialising the scene
scene.background = new THREE.Color( 0xff0000 );
更新#4:G狗 如果背景色不变,请尝试将alpha从0更改为1

我在开始使用three.js时也遇到了这个问题。这实际上是一个javascript问题:

更新:感谢HdN8提供更新的解决方案:

renderer.setClearColor( 0xffffff, 0);
注意:语法=>setClearColor(颜色,alpha))

更新#2:正如WestLangley在中指出的那样-在创建新的WebGLRenderer实例时,您现在必须使用以下代码与setClearColor()函数结合使用:

var renderer = new THREE.WebGLRenderer({ alpha: true });
更新#3杜布先生指出,由于r78您也可以使用以下代码设置场景的背景颜色:

var scene = new THREE.Scene(); // initialising the scene
scene.background = new THREE.Color( 0xff0000 );
更新#4:G狗
如果背景色不变,请尝试将alpha从0更改为1。

请发布代码请发布代码