What is new in LuxCore API v2.0 ?

Discussion related to the Engine functionality, implementations and API.
User avatar
Dade
Developer
Posts: 1082
Joined: Mon Dec 04, 2017 8:36 pm

Re: What is new in LuxCore API v2.0?

Post by Dade » Sun Mar 25, 2018 8:39 pm

Dade wrote:
Sun Mar 25, 2018 8:22 pm
I'm working on the new volume rendering code. this is a cube with a volume defined by an FBM procedural texture:
BTW, what is exactly the status of Blender support for OpenVDB file format ?

I could very easily add the support for .vdb format but it is going to be a bit useless if Blender can not save the volume data in that format.
Support LuxCoreRender project with salts and bounties

User avatar
B.Y.O.B.
Developer
Posts: 1106
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: What is new in LuxCore API v2.0?

Post by B.Y.O.B. » Sun Mar 25, 2018 8:49 pm

Seems like it is supported since 2.77: https://wiki.blender.org/index.php/Dev: ... e_Features
(Scroll to "OpenVDB caching", there is also a commit linked, maybe with technical information).

OpenVDB version in Blender seems to be 3.2.0: https://docs.blender.org/api/2.79/bpy.a ... pp.openvdb

See also https://wiki.blender.org/index.php/User ... mokeExport
Attachments
scrn_2018-03-25_22-46-57.png
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1082
Joined: Mon Dec 04, 2017 8:36 pm

Re: What is new in LuxCore API v2.0?

Post by Dade » Sun Mar 25, 2018 10:24 pm

Simon, so you can pass me a .vdb filename in a new ".file" property instead of the ".data" property in density grid texture, right ?

Can you post a test .vdb exported by Blender for testing ?

I think we can release beta1 with the new volume rendering code and beta2 with .vdb support (the only time consuming part of adding OpenVDB support is adding OpenVDB library to Linux and Windows binary dependency repositories).
Support LuxCoreRender project with salts and bounties

kintuX
Posts: 160
Joined: Wed Jan 10, 2018 2:37 am

Re: What is new in LuxCore API v2.0?

Post by kintuX » Sun Mar 25, 2018 10:44 pm

oh, this is so good... was only silently hoping, but what a great day has turned out to be... good times come
ie. Houdini VDB in Blender aLa deLux

User avatar
B.Y.O.B.
Developer
Posts: 1106
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: What is new in LuxCore API v2.0?

Post by B.Y.O.B. » Mon Mar 26, 2018 6:47 am

Dade wrote:
Sun Mar 25, 2018 10:24 pm
Simon, so you can pass me a .vdb filename in a new ".file" property instead of the ".data" property in density grid texture, right ?
Yes.
Dade wrote:
Sun Mar 25, 2018 10:24 pm
Can you post a test .vdb exported by Blender for testing ?
I'll prepare a few variations in the evening.
Dade wrote:
Sun Mar 25, 2018 10:24 pm
I think we can release beta1 with the new volume rendering code and beta2 with .vdb support (the only time consuming part of adding OpenVDB support is adding OpenVDB library to Linux and Windows binary dependency repositories).
Ok.
Support LuxCoreRender project with salts and bounties

jensverwiebe
Supporting Users
Posts: 140
Joined: Tue Jan 09, 2018 6:48 pm

Re: What is new in LuxCore API v2.0?

Post by jensverwiebe » Mon Mar 26, 2018 9:12 am

Dade wrote:
Sun Mar 25, 2018 10:24 pm
...

I think we can release beta1 with the new volume rendering code and beta2 with .vdb support (the only time consuming part of adding OpenVDB support is adding OpenVDB library to Linux and Windows binary dependency repositories).
On linux and osx you do not even need the libs explicite, only headers for compiling.
The module pulls its symbols from the host app just like it does with python.
Avoid this lib delivery overkill.

User avatar
B.Y.O.B.
Developer
Posts: 1106
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: What is new in LuxCore API v2.0?

Post by B.Y.O.B. » Mon Mar 26, 2018 6:50 pm

Dade wrote:
Sun Mar 25, 2018 10:24 pm
Can you post a test .vdb exported by Blender for testing ?
Here is the same simulation baked with 3 different compression methods.
I also added one version with half float format (blosc compression) - the others support this, too.
Download button in the upper right corner.
https://drive.google.com/open?id=1eWqt7 ... RKKgkTNjcJ
Support LuxCoreRender project with salts and bounties

neo2068
Developer
Posts: 80
Joined: Tue Dec 05, 2017 6:06 pm

Re: What is new in LuxCore API v2.0?

Post by neo2068 » Mon Mar 26, 2018 9:45 pm

Dade wrote:
Sun Mar 25, 2018 8:22 pm
I'm working on the new volume rendering code. this is a cube with a volume defined by an FBM procedural texture:

vol.jpg
That‘s great news. What are the improvements compared to the old code?
i7 5820K, 32 GB RAM, NVIDIA Geforce GTX 1080 + GTX 780, Windows 10 64bit, Blender 2.79b
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1082
Joined: Mon Dec 04, 2017 8:36 pm

Re: What is new in LuxCore API v2.0?

Post by Dade » Mon Mar 26, 2018 10:04 pm

neo2068 wrote:
Mon Mar 26, 2018 9:45 pm
Dade wrote:
Sun Mar 25, 2018 8:22 pm
I'm working on the new volume rendering code. this is a cube with a volume defined by an FBM procedural texture:
That‘s great news. What are the improvements compared to the old code?
It is a lot faster and it works :lol:

I must admit I have still aliasing problem with sharp edges but there aren't usually a lot of sharp edges in most common heterogeneous volumes (i.e. smoke, etc.).

Just compile the latest sources and try to use an heterogeneous volume with density grid (btw, I added the OpenCL support for density grid texture too).
Support LuxCoreRender project with salts and bounties

neo2068
Developer
Posts: 80
Joined: Tue Dec 05, 2017 6:06 pm

Re: What is new in LuxCore API v2.0?

Post by neo2068 » Tue Mar 27, 2018 7:16 am

Dade wrote:
Mon Mar 26, 2018 10:04 pm
It is a lot faster and it works :lol:

I must admit I have still aliasing problem with sharp edges but there aren't usually a lot of sharp edges in most common heterogeneous volumes (i.e. smoke, etc.).

Just compile the latest sources and try to use an heterogeneous volume with density grid (btw, I added the OpenCL support for density grid texture too).
:lol: OpenCL support is really great. Thanks for that. I tried to implement that some time ago but only got frustrated as debugging the code was a nightmare. Is there an automatic step size estimation for heterogeneous volumes? Aliasing was bad with the old code, too, and multiple scattering volumes wasn't as bright as rendered with other renderers. I have to try it. :D
i7 5820K, 32 GB RAM, NVIDIA Geforce GTX 1080 + GTX 780, Windows 10 64bit, Blender 2.79b
Support LuxCoreRender project with salts and bounties

Post Reply