当前位置: 首页 > news >正文

大型网站开发流程宝安中心有什么好玩的地方

大型网站开发流程,宝安中心有什么好玩的地方,南昌企业网站设计,怎么做兼职网站类似境面反射可以使用CubeCamera但是CubeCamera更适用于创建物体自身对环境的反射,但是如果想要创建一面镜子的话使用CubeCamera会难调试所反射物体的位置,而且镜面中的物体不会随着控制器的缩放而变动。 使用Reflector.js可以很容易的创建一面镜子&…

类似境面反射可以使用CubeCamera但是CubeCamera更适用于创建物体自身对环境的反射,但是如果想要创建一面镜子的话使用CubeCamera会难调试所反射物体的位置,而且镜面中的物体不会随着控制器的缩放而变动。 
使用Reflector.js可以很容易的创建一面镜子,并且镜子中的对象会依据发光体的缩放而缩放,而且可以调试镜子的发光色,类似墨镜的效果。
 

2、使用步骤

2.1、引入js文件

和创建镜头炫光 Lensflare一样需要单独引入

<!-- 导入 Reflector.js -->
<script src="../../libs/examples/js/objects/Reflector.js"></script>

2.2、创建镜子形状

 let planeGeometry = new THREE.PlaneBufferGeometry(10, 10);

此处创建了一个矩形的平面

2.3、配置镜子参数

let options = {clipBias: 0.03,textureWidth: window.innerWidth * window.devicePixelRatio,textureHeight: window.innerHeight * window.devicePixelRatio,color: 0x889999,recursion: 1};

2.4、创建镜子并加入场景

let mirror = new THREE.Reflector(planeGeometry, options);
scene.add(mirror);

3、示例代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><link rel="icon" href="../../../three.png"><title>通过 Reflector 创建反光镜</title><style>body {margin: 0;overflow: hidden; /* 溢出隐藏 */}#loading {position: fixed;top: 50%;left: 50%;color: #FFFFFF;font-size: 20px;margin-top: -30px;margin-left: -40px;}</style><script src="../../libs/build/three-r93.js"></script><script src="../../libs/examples/js/Detector.js"></script><script src="../../libs/examples/js/libs/dat.gui.min.js"></script><script src="../../libs/examples/js/libs/stats.min.js"></script><script src="../../libs/examples/js/controls/OrbitControls.js"></script><!-- 导入 Reflector.js --><script src="../../libs/examples/js/objects/Reflector.js"></script></head>
<body>
<p id="loading">loading......</p>
<script>let scene, camera, renderer, controls, guiControls;let stats = initStats();/* 场景 */function initScene() {scene = new THREE.Scene();scene.background = new THREE.CubeTextureLoader().setPath('../../textures/cube/Bridge2/').load(['posx.jpg','negx.jpg','posy.jpg','negy.jpg','posz.jpg','negz.jpg']);}/* 相机 */function initCamera() {camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 10000);camera.position.set(-10, 2, 20);camera.lookAt(new THREE.Vector3(0, 0, 0));}/* 渲染器 */function initRender() {renderer = new THREE.WebGLRenderer({antialias: true});renderer.setSize(window.innerWidth, window.innerHeight);document.body.appendChild(renderer.domElement);}/* 灯光 */function initLight() {scene.add(new THREE.AmbientLight(0x0c0c0c));let spotLight1 = new THREE.SpotLight(0xffffff);spotLight1.position.set(-400, -400, -400);let spotLight2 = new THREE.SpotLight(0xffffff);spotLight2.position.set(400, 400, 400);scene.add(spotLight1);scene.add(spotLight2);}/* 控制器 */function initControls() {/* 地图控件 */controls = new THREE.OrbitControls(camera, renderer.domElement);/* 属性参数 */}/* 调试插件 */function initGui() {guiControls = new function () {};let gui = new dat.GUI();}/* 场景中的内容 */let mesh;function initContent() {let loader = new THREE.JSONLoader();loader.load('../../models/json/uv-standard.json', function (geometry) {let material = new THREE.MeshBasicMaterial();let texture = new THREE.TextureLoader().load('../../textures/uv/ash_uvgrid01.jpg');material.map = texture;mesh = new THREE.Mesh(geometry, material);mesh.translateZ(5);scene.add(mesh);removeLoading();});let planeGeometry = new THREE.PlaneBufferGeometry(10, 10);let options = {clipBias: 0.03,textureWidth: window.innerWidth * window.devicePixelRatio,textureHeight: window.innerHeight * window.devicePixelRatio,color: 0x889999,recursion: 1};let mirror = new THREE.Reflector(planeGeometry, options);scene.add(mirror);}/* 移除加载元素 */function removeLoading() {document.getElementById('loading').style.display = 'none';}/* 性能插件 */function initStats() {let stats = new Stats();document.body.appendChild(stats.domElement);return stats;}/* 窗口变动触发 */function onWindowResize() {camera.aspect = window.innerWidth / window.innerHeight;camera.updateProjectionMatrix();renderer.setSize(window.innerWidth, window.innerHeight);}/* 数据更新 */function update() {stats.update();controls.update();if (mesh) {mesh.rotateX(0.01);mesh.rotateY(0.01);mesh.rotateZ(0.01);}}/* 初始化 */function init() {initScene();initCamera();initRender();initLight();initControls();initContent();initGui();/* 监听事件 */window.addEventListener('resize', onWindowResize, false);}/* 循环渲染 */function animate() {requestAnimationFrame(animate);renderer.render(scene, camera);update();}/* 初始加载 */(function () {console.log("three init start...");init();animate();console.log("three init end...");})();</script>
</body>
</html>

 

http://www.yayakq.cn/news/938841/

相关文章:

  • 东阳畅销自适应网站建设汕头网站建设技术支持
  • 免费网站建设就去186一6159一6345早教网站模板
  • 网站诚信备案苏州工业园区社保公积金管理中心
  • 个人站长做网站北京网站建立
  • 网站环境搭建教程建筑设计说明模板
  • 怎样设计网站模板互联网开网站怎么做
  • 周口高端网站建设企业门户网站建设优势
  • 厦门网站建设那家好深圳全网推互联科技有限公司
  • 重庆网站建设大概多少费用简约大气网站首页
  • 网站百度忽然搜索不到wordpress 重置密码忘记
  • 郑州做网站公司百度如何建设自己的网站
  • 萧县哪有做网站的做百度推广网站得多少钱
  • 乌审旗建设局网站高端网站优化公司
  • 制作企业网站的新闻西安广告公司网站建设
  • 网站页面构架本地怎样上传自己做的网站
  • 山西网站开发萍乡海绵城市建设官方网站
  • 县级林业网站建设管理手机相册备份网站源码
  • 泉州英文网站建设德阳做网站的
  • 个人网站取名平台门户建设
  • 想学网站建设选计算机应用技术还是计算机网络技术哪个专业啊效果图外包
  • 网站规划的意义教育培训机构营销方案
  • 网站被黑了火车头 wordpress 发布接口
  • 做音频后期的素材网站建站之星凡客
  • 有专门做几口农机的网站怎样用ps做网站首页图
  • 专业网站建设套餐windows优化工具
  • 做网红用哪个网站宿州保洁公司电话
  • 最新网站建设的软件新手如何免费建网
  • 做动画片的网站企业管理制度标准范本
  • cdr可以做网站页面吗一人有限责任公司
  • 天津网站建设流程wordpress焦点图插件