2023-09-15 19:42:37 +02:00
|
|
|
xrf.addEventListener('env', (opts) => {
|
2023-09-14 10:20:10 +02:00
|
|
|
let { frag, mesh, model, camera, scene, renderer, THREE} = opts
|
|
|
|
|
if( frag.env && !scene.environment ){
|
2023-09-15 19:42:37 +02:00
|
|
|
let env = scene.getObjectByName(frag.env.string)
|
|
|
|
|
if( !env ) env = xrf.scene.getObjectByName(frag.env.string) // repurpose from parent scene
|
|
|
|
|
if( !env ) return console.warn("xrf.env "+frag.env.string+" not found")
|
2023-09-14 10:20:10 +02:00
|
|
|
env.material.map.mapping = THREE.EquirectangularReflectionMapping;
|
|
|
|
|
scene.environment = env.material.map
|
|
|
|
|
//scene.texture = env.material.map
|
|
|
|
|
renderer.toneMapping = THREE.ACESFilmicToneMapping;
|
|
|
|
|
renderer.toneMappingExposure = 2;
|
|
|
|
|
console.log(` └ applied image '${frag.env.string}' as environment map`)
|
|
|
|
|
}
|
2023-09-15 19:42:37 +02:00
|
|
|
|
2023-09-14 10:20:10 +02:00
|
|
|
})
|