Hello,
I started to use the IES distribution maps for my mesh lights and almost immediately I fell in love with those. However I also discovered a potential bug related to those.
If I use a simple primitive square (DAZ primitive plane object) which I then use as mesh light emitter that has an IES map applied to it and change the X-axis orientation in the material properties by 180 degrees the light is being emitted in the direction of the plane's normal.
This renders fine in the Octane viewport. However when I hit the Final button in the viewport it changes the orientation of all my meshlights which makes the use of the button useless as it breaks the lights in the scene.
DAZ Studio 4.6.0.18 (Pro) 64bit
Octane Plugin 1.0.113.2313
Windows 7 64bit
Is it some sort of a bug, or is just mine broken?
Possible bug with mesh lights with IES maps
Moderator: BK
Forum rules
Please keep character renders sensibly modest, please do not post sexually explicit scenes of characters.
Please keep character renders sensibly modest, please do not post sexually explicit scenes of characters.
- Attachments
-
- IES_bug.zip
- The example scene file.
- (52.74 KiB) Downloaded 200 times
-
- Viewport render with FINAL button pressed.
- IES_bug_final.png (79.26 KiB) Viewed 1828 times
-
- Normal viewport render.
- IES_bug_normal.png (93.75 KiB) Viewed 1828 times
Birdovous
Master: Core i7 2600K, 32GB RAM, 2x EVGA GTX Titan X (SC)
Slave 1: Core i5 4460, 16GB RAM, 2x EVGA GTX 1080 Ti SC2
Slave 2: Core i7 9700K, 64GB RAM, 2x ASUS RTX 2080 Ti
Master: Core i7 2600K, 32GB RAM, 2x EVGA GTX Titan X (SC)
Slave 1: Core i5 4460, 16GB RAM, 2x EVGA GTX 1080 Ti SC2
Slave 2: Core i7 9700K, 64GB RAM, 2x ASUS RTX 2080 Ti
well, this is a problem with the mesh combining (which is "on" by default);
as long as "final" is not used, every scene object is sent to octane individually, and pos/rot/scale transformations are applied "virtually", means instead recalculating the geometry and sending it to actane again i.e. only the rotation vector is sent, and applied by octane internally. this allows very fast positioning updates.
when final is clicked, and the "combine meshes" setting is on, all the geometry is collapsed to a single mesh, and now the transformations actually alter the polygons position and orientation and so shift the ies rotation. something similar happens with scaling where the light intensity would change when the polygon size changes. note: in this case the plugin currently skips fast transformation updates - when a object is scaled the geometry is recalculated every time anew, and only pos/rot is applied through the engine.
there are two workarounds for using ies: untick the "combines meshes" setting for the final mode (in the preferences), or apply the rotation directly with the orientation sliders of the emission node (the latter only works if the object origin is at world center, what is usually not the case when adding primitives to a scene).
the new version (still under heavy construction) will most probably skip mesh combining in such cases, to keep everything in place, scaled mesh lights as well as ies position and orientation; btw, it also needs to skip collapsing as soon as instances are used, as they of course need the instantiated object as an individual/single mesh.
bottom line is, that combining meshes can gain some nice performance boost - depending on scene contents - but has some limitations that can not be easily worked around (but to don't use it)...
as long as "final" is not used, every scene object is sent to octane individually, and pos/rot/scale transformations are applied "virtually", means instead recalculating the geometry and sending it to actane again i.e. only the rotation vector is sent, and applied by octane internally. this allows very fast positioning updates.
when final is clicked, and the "combine meshes" setting is on, all the geometry is collapsed to a single mesh, and now the transformations actually alter the polygons position and orientation and so shift the ies rotation. something similar happens with scaling where the light intensity would change when the polygon size changes. note: in this case the plugin currently skips fast transformation updates - when a object is scaled the geometry is recalculated every time anew, and only pos/rot is applied through the engine.
there are two workarounds for using ies: untick the "combines meshes" setting for the final mode (in the preferences), or apply the rotation directly with the orientation sliders of the emission node (the latter only works if the object origin is at world center, what is usually not the case when adding primitives to a scene).
the new version (still under heavy construction) will most probably skip mesh combining in such cases, to keep everything in place, scaled mesh lights as well as ies position and orientation; btw, it also needs to skip collapsing as soon as instances are used, as they of course need the instantiated object as an individual/single mesh.
bottom line is, that combining meshes can gain some nice performance boost - depending on scene contents - but has some limitations that can not be easily worked around (but to don't use it)...
„The obvious is that which is never seen until someone expresses it simply ‟
1x i7 2600K @5.0 (Asrock Z77), 16GB, 2x Asus GTX Titan 6GB @1200/3100/6200
2x i7 2600K @4.5 (P8Z68 -V P), 12GB, 1x EVGA GTX 580 3GB @0900/2200/4400
1x i7 2600K @5.0 (Asrock Z77), 16GB, 2x Asus GTX Titan 6GB @1200/3100/6200
2x i7 2600K @4.5 (P8Z68 -V P), 12GB, 1x EVGA GTX 580 3GB @0900/2200/4400