Page 2 of 4

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 1:14 am
by MrFurious
No problem createvfxinc and thanks for helping me test this. The way Octane updates fast once things come to a stop isn't an issue, actually I think with heavy scenes it works better this way, it's more the openGL slowdown which is going to effect my workflow. I tried another scene this time with only a single semi-dense mesh. On my end the openGL feedback was so slow I'd have to call it unusable...not so much tumbling in the opengl viewport but more when transforming/translating meshes. Would you be able to verify this on your end? I've attached the scene file and also a movie showing how slow it is.
audi.mp4
(4.17 MiB) Downloaded 6325 times
audi.zip
(13.72 MiB) Downloaded 254 times
Many thanks,
Dino.

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 4:08 am
by face_off
Hi Dino

I had a look at the first scene you posted. In summary....

When you move a Mesh item (change the transform) in Modo, the change event passes through the Modo "Scene Item Listener" to the Modo "Idle" process, and then to the plugin. The plugin is processing the transform change quite quickly, however because the plugin receives the change in the Idle process, it is blocking other Modo actions while the Octane scene is updated (because this happens on the UI thread). So as you drag a Mesh item (at 30 fps), 30 Idle change events per second are being processed by the plugin - on the same thread, so it causes a delay.

There are 2 ways around this delay...

1) Enable the Modo Render Cache in the Preferences->Octane tab. This will use the new Modo API Render Cache functions to update geometry and transforms, so bypasses the "Scene Item Listener" mention above, so in this case your OpenGL viewport is not slowed down. The Modo Render Cache API is very new, so not 100% robust yet - but getting close. Unsure which

2) I can modify the plugin so the "Idle" process does not fire until you lift the mouse button. This also removes the lag, and it actually how the plugin as coded until recently. However the Mesh transform is not them passed to Octane until you lift the mouse button - which may not be want all users want. So I will add this as an option in the preferences in the next release.

Paul

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 4:47 am
by face_off
In addition to the above.....when you move a Mesh item's transform (with Use Render Cache is OFF), the plugin reloads all the geometry of the mesh, rather than just updating the transform in the Octane Placement node. So if you have a 10 million poly mesh, and drag the transform, it is going to try to reload the entire 10 million polys 30 times per second. In this situation you either need to enable the Render Cache, or turn off Live Geometry Update.

Paul

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 10:04 am
by MrFurious
Hi Paul and thanks for checking my scene. Checking 'Use Modo Render Cache' did the trick (for the most part I'll get to that later) Actually I delved into the Octane system settings myself before posting and did try the render cache option but didn't reload the scene in octane (duh) so obviously didn't notice any change.

Works brilliantly on both my uploaded sample scenes, nice and fast openGL. However it does choke a bit on larger scenes with many items, even disabling 'live geometry updates' on all other items didn't seem to help a great deal on large scenes. Possibly due to Modo's render cache API being very new as you said?..

Having said that, your suggestion "I can modify the plugin so the "Idle" process does not fire until you lift the mouse button. This also removes the lag, and it actually how the plugin as coded until recently. However the Mesh transform is not them passed to Octane until you lift the mouse button - which may not be want all users want. So I will add this as an option in the preferences in the next release." would be ideal. While I understand this might not be what everyone wants, certainly having this as an option would be fantastic.

Disabling live geometry updates works well in some situations i just wanted to ask if this disables material updates as well?

Also one thing I'm finding annoying is in the Cuda Device Settings panel. Is there any way these settings can be 'saved as default'. I find myself having to adjust these settings to my liking with every new scene and also when I open existing scenes.

Great job on this plugin and I'm a little closer to making a decision :)

Cheers,
Dino.

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 10:11 am
by face_off
Disabling live geometry updates works well in some situations i just wanted to ask if this disables material updates as well?
Material updates go through regardless of the Live status (except perhaps in the case where you change the material tag of a polygon).
Also one thing I'm finding annoying is in the Cuda Device Settings panel. Is there any way these settings can be 'saved as default'. I find myself having to adjust these settings to my liking with every new scene and also when I open existing scenes.
I thought this was actually saved in the Octane library settings - but perhaps that doesn't happen on the demo version. It should (in theory) not be saved in the scene settings.

Paul

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Fri Dec 04, 2015 10:19 am
by MrFurious
face_off wrote:
Disabling live geometry updates works well in some situations i just wanted to ask if this disables material updates as well?
Material updates go through regardless of the Live status (except perhaps in the case where you change the material tag of a polygon)
Nice..
Also one thing I'm finding annoying is in the Cuda Device Settings panel. Is there any way these settings can be 'saved as default'. I find myself having to adjust these settings to my liking with every new scene and also when I open existing scenes.
I thought this was actually saved in the Octane library settings - but perhaps that doesn't happen on the demo version. It should (in theory) not be saved in the scene settings[/quote]

So I assume the last adjusted settings should be persistent with the paid version.

One last thing (I hope)... when changing a materials' basic settings ie: colour, diffuse amount etc. a dialog pops up for about 5 seconds 'Refreshing Octane Materials' How do I stop this from happening?

Cheers,
Dino.

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Sat Dec 05, 2015 4:25 am
by MrFurious
MrFurious wrote:Also one thing I'm finding annoying is in the Cuda Device Settings panel. Is there any way these settings can be 'saved as default'. I find myself having to adjust these settings to my liking with every new scene and also when I open existing scenes
I've installed the registered version and in the cuda Devices panel Out of Core Textures checkbox is persistent ie: if I uncheck it, it will be checked on next launch.

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Sat Dec 05, 2015 11:26 am
by face_off
when changing a materials' basic settings ie: colour, diffuse amount etc. a dialog pops up for about 5 seconds 'Refreshing Octane Materials' How do I stop this from happening?
Pls see Performance at https://docs.otoy.com/Modo/?page_id=35

Paul

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Tue Dec 08, 2015 9:25 am
by MrFurious
Thanks Paul, liking the overrides it's very similar to working in the Lightwave node editor.

Just wanted to ask as to roughly when the next release might be due which will allow octane to update after mouse release. Using the Modo Render Cache kindof works, but not with displacements or instance deformations so until the next release I'm back to sqaure 1.

Thanks,
Dino.

Re: Drop in OpenGL Interactivity with Octane [using demo plugin]

Posted: Tue Dec 08, 2015 10:14 am
by face_off
Using the Modo Render Cache kindof works, but not with displacements or instance deformations so until the next release I'm back to sqaure 1.
Displacements should work with the Modo Render Cache. Use the Octane Kernel->Settings->Polygon Displacement property to control the effect (mouse-over the property for additional info).

Paul