UNPKG

@doegis/core

Version:

DOE GIS API

3 lines (1 loc) 1.53 kB
import{w as r}from"../../../../../../chunks/mat4.js";import{c as e}from"../../../../../../chunks/mat4f32.js";import{s as a}from"../../../../../../chunks/vec3.js";import{Z as i,c as o}from"../../../../../../chunks/vec3f64.js";import{Float3DrawUniform as s}from"../../shaderModules/Float3DrawUniform.js";import{Float3PassUniform as n}from"../../shaderModules/Float3PassUniform.js";import{Matrix4DrawUniform as m}from"../../shaderModules/Matrix4DrawUniform.js";import{Matrix4PassUniform as t}from"../../shaderModules/Matrix4PassUniform.js";function c(r,e){e.instancedDoublePrecision?r.constants.add("cameraPosition","vec3",i):r.uniforms.add(new s("cameraPosition",((r,e)=>a(f,e.camera.viewInverseTransposeMatrix[3]-r.origin[0],e.camera.viewInverseTransposeMatrix[7]-r.origin[1],e.camera.viewInverseTransposeMatrix[11]-r.origin[2]))))}function v(e,i){if(!i.instancedDoublePrecision)return void e.uniforms.add([new t("proj",((r,e)=>e.camera.projectionMatrix)),new m("view",((e,a)=>r(w,a.camera.viewMatrix,e.origin))),new s("localOrigin",(r=>r.origin))]);const o=r=>a(f,r.camera.viewInverseTransposeMatrix[3],r.camera.viewInverseTransposeMatrix[7],r.camera.viewInverseTransposeMatrix[11]);e.uniforms.add([new t("proj",((r,e)=>e.camera.projectionMatrix)),new t("view",((e,a)=>r(w,a.camera.viewMatrix,o(a)))),new n("localOrigin",((r,e)=>o(e)))])}const w=e(),f=o();function d(r){r.uniforms.add(new t("viewNormal",((r,e)=>e.camera.viewInverseTransposeMatrix)))}export{c as addCameraPosition,v as addProjViewLocalOrigin,d as addViewNormal};