()
| 79858 | return projectionMatrices; |
| 79859 | } |
| 79860 | function createShadowUniforms() { |
| 79861 | var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; |
| 79862 | var context = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; |
| 79863 | var uniforms = { |
| 79864 | shadow_uDrawShadowMap: Boolean(opts.drawToShadowMap), |
| 79865 | shadow_uUseShadowMap: opts.shadowMaps ? opts.shadowMaps.length > 0 : false, |
| 79866 | shadow_uColor: opts.shadowColor || DEFAULT_SHADOW_COLOR, |
| 79867 | shadow_uLightId: opts.shadowLightId || 0, |
| 79868 | shadow_uLightCount: opts.shadowMatrices.length |
| 79869 | }; |
| 79870 | var center = getMemoizedViewportCenterPosition({ |
| 79871 | viewport: opts.viewport, |
| 79872 | center: context.project_uCenter |
| 79873 | }); |
| 79874 | var projectCenters = []; |
| 79875 | var viewProjectionMatrices = getMemoizedViewProjectionMatrices({ |
| 79876 | shadowMatrices: opts.shadowMatrices, |
| 79877 | viewport: opts.viewport |
| 79878 | }).slice(); |
| 79879 | for(var i = 0; i < opts.shadowMatrices.length; i++){ |
| 79880 | var viewProjectionMatrix = viewProjectionMatrices[i]; |
| 79881 | var viewProjectionMatrixCentered = viewProjectionMatrix.clone().translate(new (0, _mathGl.Vector3)(opts.viewport.center).negate()); |
| 79882 | if (context.project_uCoordinateSystem === (0, _constants.COORDINATE_SYSTEM).LNGLAT && context.project_uProjectionMode === (0, _constants.PROJECTION_MODE).WEB_MERCATOR) { |
| 79883 | viewProjectionMatrices[i] = viewProjectionMatrixCentered; |
| 79884 | projectCenters[i] = center; |
| 79885 | } else { |
| 79886 | viewProjectionMatrices[i] = viewProjectionMatrix.clone().multiplyRight(VECTOR_TO_POINT_MATRIX); |
| 79887 | projectCenters[i] = viewProjectionMatrixCentered.transform(center); |
| 79888 | } |
| 79889 | } |
| 79890 | for(var _i = 0; _i < viewProjectionMatrices.length; _i++){ |
| 79891 | uniforms["shadow_uViewProjectionMatrices[".concat(_i, "]")] = viewProjectionMatrices[_i]; |
| 79892 | uniforms["shadow_uProjectCenters[".concat(_i, "]")] = projectCenters[_i]; |
| 79893 | if (opts.shadowMaps && opts.shadowMaps.length > 0) uniforms["shadow_uShadowMap".concat(_i)] = opts.shadowMaps[_i]; |
| 79894 | else uniforms["shadow_uShadowMap".concat(_i)] = opts.dummyShadowMap; |
| 79895 | } |
| 79896 | return uniforms; |
| 79897 | } |
| 79898 | exports.default = { |
| 79899 | name: "shadow", |
| 79900 | dependencies: [ |
no test coverage detected