-
-
Notifications
You must be signed in to change notification settings - Fork 36k
WebGPURenderer: Introduce ProjectorLight
#31022
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
📦 Bundle sizeFull ESM build, minified and gzipped.
🌳 Bundle size after tree-shakingMinimal build including a renderer, camera, empty scene, and dependencies.
|
|
Considering that we have RectAreaLight, shouldn't we call it |
I don't have a strong opinion on this if you prefer to change it. But I believe that the |
|
Yes I understand that... But How about we add a new property to light.shape = THREE.RectShape; That would open the door for more shapes without resulting in more API/docs work. Same for |
* Texture: Introduce `width`, `height`, `depth` * Fix `lightShadowMatrix()` if `renderer.shadowMap.enabled` is `false` * Remove `spotLight.attenuationNode` * Introduce `ProjectorLight` * add `webgpu_lights_projector` example * Update webgpu_lights_projector.jpg * improve cache key * optimize for mobile * Update webgpu_lights_projector.jpg
* Texture: Introduce `width`, `height`, `depth` * Fix `lightShadowMatrix()` if `renderer.shadowMap.enabled` is `false` * Remove `spotLight.attenuationNode` * Introduce `ProjectorLight` * add `webgpu_lights_projector` example * Update webgpu_lights_projector.jpg * improve cache key * optimize for mobile * Update webgpu_lights_projector.jpg
Related issue: #31020 (comment)
Description
Based on the @N8python PR (#24589) and @WestLangley and @Mugen87 conversations, it introduces
ProjectorLight
toWebGPURenderer
allowing the use of.map
and TSL functions for procedural effects like the caustic effect in the demo below.Live demo
** Summary **
webgpu_lights_projector
example