Maya instanced geometry not obeying visiblity

Autodesk Maya (Plugin developed by JimStar)

Moderator: JimStar

jangwee
Licensed Customer
Posts: 34
Joined: Tue Jul 16, 2013 2:33 pm

Hi
I've got a scene with animated trees they are instanced throughout scene.
All instanced geometry seems to ignore the visibility attribute of their transform. So even though the object is hidden in the maya scene it will still render if the original instance is visible.
This is true in reverse also, so if original is hidden and all other instances are visible they won't render as they will be exact instance of original.

This is troublesome if you have many instances of an animated object thoughout scene because you can't use animated visiblity to hide objects when needed.

Anyone else encounter this problem??
User avatar
JimStar
OctaneRender Team
Posts: 3816
Joined: Thu Jul 28, 2011 8:19 pm
Location: Auckland, New Zealand

jangwee wrote:Hi
I've got a scene with animated trees they are instanced throughout scene.
All instanced geometry seems to ignore the visibility attribute of their transform. So even though the object is hidden in the maya scene it will still render if the original instance is visible.
I will check it, thanks for report.
jangwee wrote:This is true in reverse also, so if original is hidden and all other instances are visible they won't render as they will be exact instance of original.
This is normal behavior, as if the object is hidden - all it's transforms are instancing the hidden object, so they show nothing. E.g. Maya software renderer works the same way.
User avatar
TBFX
Licensed Customer
Posts: 501
Joined: Sun Dec 11, 2011 9:43 pm
Location: Wellington, New Zealand

jangwee wrote:All instanced geometry seems to ignore the visibility attribute of their transform. So even though the object is hidden in the maya scene it will still render if the original instance is visible.
This is true in reverse also, so if original is hidden and all other instances are visible they won't render as they will be exact instance of original.
Yes I have confirmed this also.
JimStar wrote:This is normal behavior, as if the object is hidden - all it's transforms are instancing the hidden object, so they show nothing. E.g. Maya software renderer works the same way.
JimStar, It should work if you are setting visibility on the transform nodes and not the shape nodes. I have just checked and confirmed that if you hide the original object using it's transform nodes visibility then all instances still render in Maya Software and likewise you can also hide individual instances.
This already works in octane with particle instances where you can hide the originals and only the instances render (which is just as well as particle instanced objects need to be at origin and so almost always need to be invisible.) These issues only seem to be with manually instanced geometry.

T.
Win10 x64|i7-9750H 2.6 GHz|32 GB RAM | RTX2080 max Q 8GB
User avatar
JimStar
OctaneRender Team
Posts: 3816
Joined: Thu Jul 28, 2011 8:19 pm
Location: Auckland, New Zealand

TBFX wrote:
JimStar wrote:This is normal behavior, as if the object is hidden - all it's transforms are instancing the hidden object, so they show nothing. E.g. Maya software renderer works the same way.
JimStar, It should work if you are setting visibility on the transform nodes and not the shape nodes. I have just checked and confirmed that if you hide the original object using it's transform nodes visibility then all instances still render in Maya Software and likewise you can also hide individual instances.
This already works in octane with particle instances where you can hide the originals and only the instances render (which is just as well as particle instanced objects need to be at origin and so almost always need to be invisible.) These issues only seem to be with manually instanced geometry.
Maya Software renderer, all transforms visibility is enabled:

Shape visibility is enabled:
1.png
Shape visibility is disabled:
2.png
User avatar
TBFX
Licensed Customer
Posts: 501
Joined: Sun Dec 11, 2011 9:43 pm
Location: Wellington, New Zealand

Sorry my explanation was not clear. Yes that is what happens if you set visibility using the shape node but if you leave the shape nodes visibility set to 1 and turn of the visibility on the transform node then the instances should be visible (and are in Maya Software and the viewport) but are not in Octane. Also if you set visibility off on the transform node of any individual instance it should be hidden in the render.

T.
Win10 x64|i7-9750H 2.6 GHz|32 GB RAM | RTX2080 max Q 8GB
User avatar
JimStar
OctaneRender Team
Posts: 3816
Joined: Thu Jul 28, 2011 8:19 pm
Location: Auckland, New Zealand

TBFX wrote:Sorry my explanation was not clear.
I can't understand what you mean exactly.
TBFX wrote:if you leave the shape nodes visibility set to 1
3.png
1.png
TBFX wrote:and turn of the visibility on the transform node
2.png
TBFX wrote:then the instances should be visible (and are in Maya Software and the viewport)
:shock:
As you see on these screenshots - hidden transforms are not visible neither in the viewport nor in Maya Software renderer, even if the mesh shape is set as visible.
TBFX wrote:but are not in Octane.
:shock:
4.png
TBFX wrote:Also if you set visibility off on the transform node of any individual instance it should be hidden in the render.
This contradicts with the previos clause - as yes, it should be hidden, it was exactly the complain here... And the plugin renders it...
User avatar
TBFX
Licensed Customer
Posts: 501
Joined: Sun Dec 11, 2011 9:43 pm
Location: Wellington, New Zealand

Yes you have everything right but I think you have not tried one case.

1. Create a poly sphere in a new scene.
2. Copy it as instance as many times as you like.
3. Hide the original sphere using the it's transform node, leaving it's shape node visible.
all the instances should still be visible in the viewport.

4. Now try to render the scene in octane - should get the following error
Warning: Octane: no geometry present in scene! //
// Error: Octane: Error mesh export. Octane render stopped.

5. Try to render the scene in Maya Software and it will render as it appears in the viewport.

T.
Win10 x64|i7-9750H 2.6 GHz|32 GB RAM | RTX2080 max Q 8GB
User avatar
JimStar
OctaneRender Team
Posts: 3816
Joined: Thu Jul 28, 2011 8:19 pm
Location: Auckland, New Zealand

TBFX
What you see on my screenshots - all these spheres were copied exactly as instances. So the spheres in my test scene - are instances of only one mesh shape object.
1.png
1.png (4.84 KiB) Viewed 7272 times
2.png
Perhaps there is some discrepancy in the terminology and you mean something else when saying "instances"?..
User avatar
TBFX
Licensed Customer
Posts: 501
Joined: Sun Dec 11, 2011 9:43 pm
Location: Wellington, New Zealand

No discrepancy.
Here is a scene, just like yours. Render it in Maya software and then try to render it in Octane with the visibility how I have it set.

T.
Attachments
InstanceVisibility.zip
(10.88 KiB) Downloaded 215 times
Win10 x64|i7-9750H 2.6 GHz|32 GB RAM | RTX2080 max Q 8GB
User avatar
JimStar
OctaneRender Team
Posts: 3816
Joined: Thu Jul 28, 2011 8:19 pm
Location: Auckland, New Zealand

TBFX wrote:No discrepancy.
Here is a scene, just like yours. Render it in Maya software and then try to render it in Octane with the visibility how I have it set.
It's because you disabled always the visibility of the first instance of the object, and I played with all but first.:lol:

Yes, I see that the first inctance's visibility affects the visibility of all other instnaces. It's different issue, I will create the separate ticket for it.;)
Thank you for report!
Post Reply

Return to “Autodesk Maya”