本文介绍了三.js 设置背景图片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何创建静态背景图片?
对于默认背景:
scene = new THREE.Scene();//...renderer = new THREE.WebGLRenderer( { antialias: false } );renderer.setClearColor(scene.fog.color, 1);
如何为scene.fog
设置图像,或为clearcolor
设置不透明度?
解决方案
谢谢 ))
我找到了另一个解决方案:
<头><title>three.js webgl - 轨道控制</title><meta charset="utf-8"><meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"><风格>身体 {颜色:#000;字体系列:等宽;字体大小:13px;文字对齐:居中;字体粗细:粗体;背景图片:网址(./foto.jpg);边距:0px;溢出:隐藏;}#信息{颜色:#000;位置:绝对;顶部:0px;宽度:100%;填充:5px;}一个 {红色;}</风格>头部><身体><div id="容器"></div><div id="信息"><a href="http://threejs.org" target="_blank">three.js</a>
<script src="./three.min.js"></script><script src="js/loaders/OBJLoader.js"></script><script src="js/controls/OrbitControls.js"></script><script src="js/Detector.js"></script><script src="js/libs/stats.min.js"></script><!--используем для вывода информации fps--><脚本>if (!Detector.webgl) Detector.addGetWebGLMessage();var 容器,统计数据;var 相机、控件、场景、渲染器;无功十字架;在里面();动画();函数初始化(){camera = new THREE.PerspectiveCamera( 90, window.innerWidth/window.innerHeight, 0.1, 2000 );相机.位置.z = 100;控件 = 新的 THREE.OrbitControls(camera);control.addEventListener('更改', 渲染);场景 = 新的 THREE.Scene();var manager = new THREE.LoadingManager();manager.onProgress = 函数(项目,已加载,总计){控制台日志(项目,已加载,总计);};var 纹理 = 新的 THREE.Texture();var loader = new THREE.ImageLoader( manager );loader.load( './kos.jpg', 函数 ( 图像 ) {纹理.图像 = 图像;纹理.needsUpdate = true;});//模型var loader = new THREE.OBJLoader( manager );loader.load('./skull.obj', 函数(对象){object.traverse(函数(子){如果(子实例THREE.Mesh){child.material.map = 纹理;}});object.position.y = 10;场景添加(对象);});//灯光 = 新的 THREE.DirectionalLight(0xffffff);light.position.set( 1, 1, 1 );场景添加(光);光 = 新的 THREE.DirectionalLight(0xffffff);light.position.set( -1, -1, -1 );场景添加(光);光 = 新的 THREE.AmbientLight(0xffffff);场景添加(光);renderer = new THREE.WebGLRenderer( { antialias: false } );renderer.setSize(window.innerWidth, window.innerHeight);document.body.appendChild(renderer.domElement);容器 = document.getElementById('容器');container.appendChild(renderer.domElement);统计=新统计();stats.domElement.style.position = '绝对';stats.domElement.style.top = '0px';stats.domElement.style.zIndex = 100;container.appendChild(stats.domElement);window.addEventListener('resize', onWindowResize, false );}函数 onWindowResize() {camera.aspect = window.innerWidth/window.innerHeight;相机.updateProjectionMatrix();renderer.setSize( window.innerWidth, window.innerHeight );使成为();}函数动画(){requestAnimationFrame( 动画 );控制更新();}函数渲染(){renderer.render(场景,相机);stats.update();}