Slow pointiness shape computation

Use this forum for general user support and related questions.
Forum rules
Please upload a testscene that allows developers to reproduce the problem, and attach some images.
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Slow pointiness shape computation

Post by Sharlybg »

Topic split from viewtopic.php?f=4&t=1935

Have the same issue with 2.4 master on viewport RT cpu.
Pretty simple scene. Cpu stay at 100% without loading viewport render.

After a long 5mn wait viewport switch from solid to render mode.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Luxcore is very slow and freezes

Post by B.Y.O.B. »

Sharlybg wrote: Tue Mar 24, 2020 6:20 pm Have the same issue with 2.4 master on viewport RT cpu.
Pretty simple scene. Cpu stay at 100% without loading viewport render.

After a long 5mn wait viewport switch from solid to render mode.
Sounds like first-time kernel compilation for OpenCL viewport, but you say you are using CPU as device?
Can you upload a scene that shows the issue?
Is it only the startup time that's long, or is the interface sluggish even after the render has started, as reported in the first post?
Oscar9531 wrote: Tue Mar 24, 2020 6:24 pm the same for me, it is very slow to work interactively
Can you upload a scene that shows the issue?
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore is very slow and freezes

Post by Sharlybg »

Here is the scene. i know why it is like that. if you reduce subsurf to 3 or 4 you can work. but at 6 it Bye bye :roll:

Lux_Shader_Ball - Copie.blend
(841.59 KiB) Downloaded 169 times
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Luxcore is very slow and freezes

Post by Dade »

Sharlybg wrote: Wed Mar 25, 2020 9:02 am Here is the scene. i know why it is like that. if you reduce subsurf to 3 or 4 you can work. but at 6 it Bye bye :roll:


Lux_Shader_Ball - Copie.blend
It uses the Pointiness shape, is it intended ? Indeed, it is very slow, it has to recompute pointiness each time.
Support LuxCoreRender project with salts and bounties
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore is very slow and freezes

Post by Sharlybg »

It uses the Pointiness shape, is it intended ? Indeed, it is very slow, it has to recompute pointiness each time.
Yes i'm in process to make a new tutorial with it. And cycles is working fine with it even at 6 level subsurf.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Luxcore is very slow and freezes

Post by B.Y.O.B. »

Are you using pointiness also with Cycles?

I have accelerated the pointiness computation quite a bit in the latest builds, not sure if you're using that.
However, the Cycles implementation is still faster, which might become noticeable on very heavy meshes.

(The reason being, from what I can see, that LuxCore needs to build edge information, while Cycles uses the raw Blender mesh which still has edge information).
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore is very slow and freezes

Post by Sharlybg »

Are you using pointiness also with Cycles?
Yes of course.
(The reason being, from what I can see, that LuxCore needs to build edge information, while Cycles uses the raw Blender mesh which still has edge information).
why can't we do the same ? any blender API limitation.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: Luxcore is very slow and freezes

Post by Dade »

It is the same for any geometry transformation (i.e. pointiness, displacement, etc.) and it always been like this.

P.S. It is likely to be not the topic of this thread, I have the feeling people were talking of a different type of problem.
Support LuxCoreRender project with salts and bounties
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore is very slow and freezes

Post by Sharlybg »

I have accelerated the pointiness computation quite a bit in the latest builds, not sure if you're using that.
However, the Cycles implementation is still faster, which might become noticeable on very heavy meshes.
Great job mate just instal the last build from both Luxcore and blendluxcore. it work great thank you thank you :)
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
B.Y.O.B.
Developer
Developer
Posts: 4146
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Luxcore is very slow and freezes

Post by B.Y.O.B. »

Sharlybg wrote: Wed Mar 25, 2020 9:02 am Here is the scene. i know why it is like that. if you reduce subsurf to 3 or 4 you can work. but at 6 it Bye bye :roll:
Lux_Shader_Ball - Copie.blend
Editing that mesh in Cycles (or even in the OpenGL viewport) is just as sluggish as in a Lux viewport render. This is simply due to the very high subdivisions and the time needed to compute them. The pointiness is just the icing on the cake.
Sharlybg wrote: Wed Mar 25, 2020 11:45 am
(The reason being, from what I can see, that LuxCore needs to build edge information, while Cycles uses the raw Blender mesh which still has edge information).
why can't we do the same ? any blender API limitation.
It would require a special pointiness precomputation just for Blender inside the Blender mesh transfer code. It's possible, but it would add a lot of complication and code duplication, which is why I'd like to avoid it (especially because the performance gain will be small).
Post Reply