UNPKG

lingo3d

Version:

Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor

16 lines 755 B
import { deg2Rad } from "@lincode/math"; import getWorldPosition from "../memo/getWorldPosition"; import { CM2M } from "../globals"; import createInternalSystem from "./utils/createInternalSystem"; export const volumetricSpotLightSystem = createInternalSystem("volumetricSpotLightSystem", { data: {}, update: (cone, { light, material }) => { cone.scale.y = light.distance * CM2M * light.volumetricDistance; cone.position.y = -cone.scale.y * 0.5; cone.scale.x = cone.scale.z = 2 * Math.tan(light.angle * deg2Rad) * cone.scale.y; material.attenuation = cone.scale.y; material.spotPosition.copy(getWorldPosition(light.outerObject3d)); } }); //# sourceMappingURL=volumetricSpotLightSystem.js.map