lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
14 lines • 689 B
JavaScript
import { mapRange } from "@lincode/math";
import { getDistanceFromCamera } from "../memo/getDistanceFromCamera";
import { lightDistancePtr } from "../pointers/lightDistancePtr";
import createInternalSystem from "./utils/createInternalSystem";
export const areaLightIntensitySystem = createInternalSystem("areaLightIntensitySystem", {
update: (self) => {
if (!self.$light)
return;
const intensityFactor = mapRange(getDistanceFromCamera(self), 0, lightDistancePtr[0], 1, 0, true);
self.$light.intensity = self.intensity * intensityFactor;
// self.light.visible = !!intensityFactor
}
});
//# sourceMappingURL=areaLightIntensitySystem.js.map