Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
3d 如何显示.dae模型的阴影?_3d_Three.js_Shadow_Collada - Fatal编程技术网

3d 如何显示.dae模型的阴影?

3d 如何显示.dae模型的阴影?,3d,three.js,shadow,collada,3d,Three.js,Shadow,Collada,我有个问题。 我将.dae文件加载到场景中,但看不到模型的任何阴影。 我不知道该怎么办……”< 我用谷歌搜索了这个问题。 也有类似的问题。 但是我仍然不能解决我的问题。。。 我不知道为什么 这是我的密码: 测试vonweb-GL var场景、摄影机、渲染器; init(); 制作动画(); 函数init(){ 场景=新的三个。场景(); 变量宽度=window.innerWidth, 高度=窗内高度; renderer=new THREE.WebGLRenderer({antialas:tr

我有个问题。 我将.dae文件加载到场景中,但看不到模型的任何阴影。 我不知道该怎么办……”< 我用谷歌搜索了这个问题。 也有类似的问题。 但是我仍然不能解决我的问题。。。 我不知道为什么

这是我的密码:


测试vonweb-GL
var场景、摄影机、渲染器;
init();
制作动画();
函数init(){
场景=新的三个。场景();
变量宽度=window.innerWidth,
高度=窗内高度;
renderer=new THREE.WebGLRenderer({antialas:true});
设置大小(宽度、高度);
document.body.appendChild(renderer.doElement);
摄像机=新的三个透视摄像机(45,宽/高,0.11000);
摄像机位置设置(0300,0);
场景。添加(摄影机);
addEventListener('resize',function()){
变量宽度=window.innerWidth,
高度=窗内高度;
设置大小(宽度、高度);
camera.aspect=宽度/高度;
camera.updateProjectMatrix();
});
var半球光、阴影光;
createLights();
函数createLights(){
半球光=新的三个半球光(0xAAAAA,0x0000000.8)
阴影光=新的三个方向光(0xffffff,1);
阴影灯。位置。设置(-150350350);
shadowLight.castShadow=true;
shadowLight.shadow.camera.left=-400;
shadowLight.shadow.camera.right=400;
shadowLight.shadow.camera.top=400;
shadowLight.shadow.camera.bottom=-400;
shadowLight.shadow.camera.near=0.01;
shadowLight.shadow.camera.far=1000;
shadowLight.shadow.mapSize.width=3000;
shadowLight.shadow.mapSize.height=3000;
场景。添加(半球灯光);
场景。添加(阴影灯);
}
//在这里添加对象
var loader=new THREE.ColladaLoader();
loader.options.convertUpAxis=true;
loader.load('models/model.dae',函数(collada){
var dae=collada.scene;
dae.遍历(函数(子函数){
子遍历(函数(e){
e、 castShadow=true;
e、 receiveShadow=true;
});
});
添加(dae);
} );
控件=新的三个.轨道控件(摄影机、渲染器.doElement);
}
函数animate(){
请求动画帧(动画);
渲染器。渲染(场景、摄影机);
控件更新();
}

你能做一个JSFIDLE吗?试着将所有材质设置为3.DOUBLEDE。你有一些必须投影阴影的曲面吗?你能发布一个屏幕截图吗?这是我的屏幕截图,请启用阴影摄影机辅助工具以清楚阴影必须在哪里。@kevinxiao Try
renderer.shadowMap.enabled=true;
@WestLangley我添加了“renderer.shadowMap.enabled=true;“这就像阴影效果,但看起来很奇怪……><你能做一个JSFIDLE吗?尝试将所有材质设置为三。双面。你有一些表面,阴影必须投射到哪里吗?你能发布一个屏幕截图吗?这是我的屏幕截图,请让阴影摄影机助手清楚阴影必须在哪里。@kevinxiao Try
renderer.shadowMap.enabled=true;
@WestLangley我添加了“renderer.shadowMap.enabled=true;“这就像阴影效果,但看起来很奇怪……”<