DirectionalLightShadow.js 1005 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { LightShadow } from './LightShadow.js';
  2. import { OrthographicCamera } from '../cameras/OrthographicCamera.js';
  3. /**
  4. * @author mrdoob / http://mrdoob.com/
  5. */
  6. function DirectionalLightShadow() {
  7. LightShadow.call( this, new OrthographicCamera( - 5, 5, 5, - 5, 0.5, 500 ) );
  8. }
  9. DirectionalLightShadow.prototype = Object.assign( Object.create( LightShadow.prototype ), {
  10. constructor: DirectionalLightShadow,
  11. isDirectionalLightShadow: true,
  12. updateMatrices: function ( light, viewCamera, viewportIndex ) {
  13. var camera = this.camera,
  14. lightPositionWorld = this._lightPositionWorld,
  15. lookTarget = this._lookTarget;
  16. lightPositionWorld.setFromMatrixPosition( light.matrixWorld );
  17. camera.position.copy( lightPositionWorld );
  18. lookTarget.setFromMatrixPosition( light.target.matrixWorld );
  19. camera.lookAt( lookTarget );
  20. camera.updateMatrixWorld();
  21. LightShadow.prototype.updateMatrices.call( this, light, viewCamera, viewportIndex );
  22. }
  23. } );
  24. export { DirectionalLightShadow };