New OpenCL textures and materials evaluation code

Discussion related to the LuxCore functionality, implementations and API.
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: New OpenCL textures and materials evaluation code

Post by B.Y.O.B. »

By the way, since ray epsilon is still a kernel parameter, I guess I have to pass the default min/max epsilon in BlendLuxCore to KernelCacheFill()?
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: New OpenCL textures and materials evaluation code

Post by Dade »

B.Y.O.B. wrote: Fri Feb 21, 2020 7:02 pm By the way, since ray epsilon is still a kernel parameter, I guess I have to pass the default min/max epsilon in BlendLuxCore to KernelCacheFill()?
Only if your default is different than LuxCore default one.
Support LuxCoreRender project with salts and bounties
marcatore
Donor
Donor
Posts: 463
Joined: Wed Jan 10, 2018 8:04 am

Re: New OpenCL textures and materials evaluation code

Post by marcatore »

Dade wrote: Fri Feb 21, 2020 6:54 pm
marcatore wrote: Fri Feb 21, 2020 3:49 pm sooooo...when it will be ready for testing? :)
The binaries for all OS can be downloaded from here: https://dev.azure.com/LuxCoreRender/Lux ... dArtifacts (the down arrow on right)

You can replace your pyluxcore.pyd with the one inside the downloaded win64.zip (yes, it is tricky and suggested only for advanced user).
Thank you but I think that I'll wait for a daily BlendLuxCore build. Will it be available more or less soon or we'll have to wait the final 2.3 to switch the daily build to the 2.4?
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: New OpenCL textures and materials evaluation code

Post by Dade »

marcatore wrote: Fri Feb 21, 2020 8:45 pm Thank you but I think that I'll wait for a daily BlendLuxCore build. Will it be available more or less soon or we'll have to wait the final 2.3 to switch the daily build to the 2.4?
We have to wait.
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: New OpenCL textures and materials evaluation code

Post by B.Y.O.B. »

It would be good to have a LuxCore function that can tell me if a kernel recompilation is necessary, so I can show the UI message about it.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: New OpenCL textures and materials evaluation code

Post by Dade »

B.Y.O.B. wrote: Wed Apr 08, 2020 9:22 am It would be good to have a LuxCore function that can tell me if a kernel recompilation is necessary, so I can show the UI message about it.
A callback during the rendering if a kernel is compiled or before starting the rendering ? (The later is not possible without having the scene).

Are you already intercepting the log output to show some message in Blender ? Could some specific log message do the trick ?
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: New OpenCL textures and materials evaluation code

Post by B.Y.O.B. »

Can it be checked if I have a luxcore scene and renderconfig, but without a rendersession?

Code: Select all

renderconfig = pyluxcore.RenderConfig(config_props, luxcore_scene)

# Here I would need the check
...

# Locks up Blender, potentially compiles kernels
session = pyluxcore.RenderSession(renderconfig)
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: New OpenCL textures and materials evaluation code

Post by Dade »

B.Y.O.B. wrote: Wed Apr 08, 2020 10:53 am Can it be checked if I have a luxcore scene and renderconfig, but without a rendersession?

Code: Select all

renderconfig = pyluxcore.RenderConfig(config_props, luxcore_scene)

# Here I would need the check
...

# Locks up Blender, potentially compiles kernels
session = pyluxcore.RenderSession(renderconfig)
It could be RenderConfig methods :idea:

It will be a bit tricky because I compile many kernels but the only one that matter is the big RT/TILE/PATHOCL one. It could be something generic like RenderConfig::HasCachedKernels().
Support LuxCoreRender project with salts and bounties
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: New OpenCL textures and materials evaluation code

Post by B.Y.O.B. »

Yes, it should only check for kernels that take long to compile.
Otherwise the UI message can be misleading, because the render session creation also does other stuff that potentially takes a long time, like cache computation.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: New OpenCL textures and materials evaluation code

Post by Dade »

I have added a new LuxCore API RenderConfig::HasCachedKernels() method to check if a (long) kernel compilation time is required.
Support LuxCoreRender project with salts and bounties
Post Reply