采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
6.20 之前的章节,能够正常运行。 所有参数设置都是按照老师给的数值设置的。 但是在background这里碰到了点问题。现在往 cameraInstance.add(backgroundInstance), 没有反应展示background,也有没有报错。 老师能帮忙看看吗。
看看是不是没有把相机添加到场景中
同不显示
// background.js // 背景 import sceneConf from '../confs/scene-conf'; class Background { constructor() {} init() { const geometry = new THREE.PlaneGeometry(sceneConf.frustumSize * 2, window.innerHeight / window.innerWidth * sceneConf.frustumSize * 2); const material = new THREE.MeshBasicMaterial({ color: 0xd7dbe6, opacity: 1, transparent: true }); this.instance = new THREE.Mesh(geometry, material); } } export default new Background();
// scene.js import camera from './camera'; import light from './light'; import background from '../objects/background'; class Scene { constructor() {} init() { this.instance = new THREE.Scene(); this.camera = camera; this.camera.init(); this.renderer = new THREE.WebGLRenderer({ canvas: canvas, antialias: true, // 抗锯齿 }); const axesHelper = new THREE.AxesHelper( 100 ); this.instance.add( axesHelper ); this.renderer.setClearColor(new THREE.Color(0x000000)); // this.renderer.setSize(400, 400); // 加入光照 this.light = light; this.light.init(); this.instance.add( this.light.instance.ambientLight ); this.instance.add( this.light.instance.directionLight ); this.instance.add( this.light.instance.shadowTarget ); // 加入背景,因为是正对相机,所以添加到相机坐标系下 this.background = background; this.background.init(); this.background.instance.position.z = 0; this.camera.instance.add( this.background.instance ); } render() { this.renderer.render(this.instance, this.camera.instance); } } export default new Scene();
代码发来看看呢
登录后可查看更多问答,登录/注册
three.js+WebGL+微信小游戏API, 带你进入3D的游戏世界
1.4k 16
1.0k 11
1.1k 11
4.8k 10
2.2k 9