提交 277b28f0 编写于 作者: M Mr.doob

Added mirror to webvr_shadow example.

上级 d0df1355
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
<script src="js/effects/VREffect.js"></script> <script src="js/effects/VREffect.js"></script>
<script src="js/vr/WebVR.js"></script> <script src="js/vr/WebVR.js"></script>
<script src="js/Mirror.js"></script>
<script> <script>
if ( WEBVR.isAvailable() === false ) { if ( WEBVR.isAvailable() === false ) {
...@@ -32,6 +34,8 @@ ...@@ -32,6 +34,8 @@
var camera, scene, renderer; var camera, scene, renderer;
var effect, controls; var effect, controls;
var mirror;
init(); init();
animate(); animate();
...@@ -40,8 +44,8 @@ ...@@ -40,8 +44,8 @@
scene = new THREE.Scene(); scene = new THREE.Scene();
var dummy = new THREE.Camera(); var dummy = new THREE.Camera();
dummy.position.set( 2, 1, 2 ); dummy.position.set( 0, 0.5, 3 );
dummy.lookAt( scene.position ); dummy.lookAt( new THREE.Vector3( 0, 0.5, 0 ) );
scene.add( dummy ); scene.add( dummy );
camera = new THREE.PerspectiveCamera( 50, window.innerWidth / window.innerHeight, 0.1, 10 ); camera = new THREE.PerspectiveCamera( 50, window.innerWidth / window.innerHeight, 0.1, 10 );
...@@ -55,10 +59,10 @@ ...@@ -55,10 +59,10 @@
mesh.receiveShadow = true; mesh.receiveShadow = true;
scene.add( mesh ); scene.add( mesh );
var geometry = new THREE.BoxGeometry( 3, 0.1, 3 ); var geometry = new THREE.BoxGeometry( 1.5, 0.1, 1.5 );
var material = new THREE.MeshStandardMaterial( { roughness: 1.0, metalness: 0.0 } ); var material = new THREE.MeshStandardMaterial( { roughness: 1.0, metalness: 0.0 } );
var mesh = new THREE.Mesh( geometry, material ); var mesh = new THREE.Mesh( geometry, material );
mesh.position.y = - 0.1; mesh.position.y = - 0.2;
mesh.castShadow = true; mesh.castShadow = true;
mesh.receiveShadow = true; mesh.receiveShadow = true;
scene.add( mesh ); scene.add( mesh );
...@@ -77,6 +81,23 @@ ...@@ -77,6 +81,23 @@
// //
mirror = new THREE.Mirror( 1.4, 1.4, { textureWidth: window.innerWidth, textureHeight: window.innerHeight } );
mirror.position.x = 1;
mirror.position.y = 0.5;
mirror.position.z = -1;
mirror.rotation.y = - Math.PI / 4;
scene.add( mirror );
var geometry = new THREE.BoxGeometry( 1.5, 1.5, 0.1 );
var material = new THREE.MeshStandardMaterial( { roughness: 1.0, metalness: 0.0 } );
var mesh = new THREE.Mesh( geometry, material );
mesh.position.z = - 0.07;
mesh.castShadow = true;
mesh.receiveShadow = true;
mirror.add( mesh );
//
renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer = new THREE.WebGLRenderer( { antialias: true } );
renderer.setClearColor( 0x101010 ); renderer.setClearColor( 0x101010 );
renderer.setPixelRatio( window.devicePixelRatio ); renderer.setPixelRatio( window.devicePixelRatio );
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册