Profile Picture

"Normal map format - Double-checking - DirectX?

Posted By justaviking 6 Years Ago
You don't have permission to rate!
Author
Message
justaviking
justaviking
Posted 6 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)

Group: Forum Members
Last Active: 7 Months Ago
Posts: 8.2K, Visits: 26.5K
I would like to double-check:  iClone Normal maps use the DirectX (not OpenGL) format?

Substance Designer/Painter can output either format.
I know iClone uses DirectX for a lot of features, so I assume the Normal maps should be in the DirectX format, but I do not see anywhere in the documentation where it actually says that.  There is a reference to both OpenGL and DirectX, but the manual doesn't actually which one to use.

I found an old Sticky Note that has "OpenGL" written on it, and I'm not sure why, or what it was in reference to, so that's what triggered this question.

In the Tessellation section of the manual:
In computer graphics, tessellation is used to manage vertex sets of objects in a scene and divide them into suitable structures for rendering.   Especially for the real-time surface smoothing, data is tessellated into triangles, for example in DirectX 11 and OpenGL.





iClone 7... Character Creator... Substance Designer/Painter... Blender... Audacity...
Desktop (homebuilt) - Windows 10, Ryzen 9 3900x CPU, GTX 1080 GPU (8GB), 32GB RAM, Asus X570 Pro motherboard, 2TB SSD, terabytes of disk space, dual  monitors.
Laptop - Windows 10, MSI GS63VR STEALTH-252, 16GB RAM, GTX 1060 (6GB), 256GB SSD and 1TB HDD

Edited
6 Years Ago by justaviking
4u2ges
4u2ges
Posted 6 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)Distinguished Member (22.2K reputation)

Group: Forum Members
Last Active: 2 days ago
Posts: 5.3K, Visits: 16.4K
I believe you can use either and fix it (if it does not look right) with "Flip Y" in normal map properties. Because the only difference is a green (Y) channel direction. From top to bottom or from bottom up.
Here is the same normal map generated in Photoshop (I am not sure if it's DirectX or OpenGL format) and it's not the best generator. One is set as default for the plane in iClone and another has "Flip Y".
One of them looks more or less correct (I guess you see which one Smile ), while another one does not.

https://forum.reallusion.com/uploads/images/231ac150-685a-48de-9212-aea8.jpg








justaviking
justaviking
Posted 6 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)

Group: Forum Members
Last Active: 7 Months Ago
Posts: 8.2K, Visits: 26.5K
D'oh!  How did I miss that?  Thank you.  Smile

Yes, you are correct about the difference in the two formats.  One "vector" is basically defined the opposite direction between the two formats.

For some reason, and don't know why, I was sure iClone used one format, and I was thinking it was OpenGL.  I can do some experimentation and determine which format is the default, but it's good to know you can toggle between the two.




iClone 7... Character Creator... Substance Designer/Painter... Blender... Audacity...
Desktop (homebuilt) - Windows 10, Ryzen 9 3900x CPU, GTX 1080 GPU (8GB), 32GB RAM, Asus X570 Pro motherboard, 2TB SSD, terabytes of disk space, dual  monitors.
Laptop - Windows 10, MSI GS63VR STEALTH-252, 16GB RAM, GTX 1060 (6GB), 256GB SSD and 1TB HDD

justaviking
justaviking
Posted 6 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)Distinguished Member (21.0K reputation)

Group: Forum Members
Last Active: 7 Months Ago
Posts: 8.2K, Visits: 26.5K
I did my test.

Conclusion is... interesting.

"Flip Normal Y = On" corresponds to DirectX
"Flip Normal Y = Off" corresponds to OpenGL

Now for the interesting part...

If you add a simple 3D Block, there is a default "flat" normal map, with Flip Normal Y = Off.  So you might conclude iClone defaults to OpenGL.
Likewise, if you drag an image onto the normal map, it asks you if it is a Bump or Normal map.  If you say it is a normal map, again you get "Flip Normal Y = Off," so again you might conclude iClone defaults to OpenGL.

But don't be too hasty.

If you add a Substance, then it automatically set "Flip Normal Y = On."
It does this, regardless if your normal is DirectX or OpenGL format.


MY CONCLUSION:

For default primitives, and imported Normal map files, iClone defaults to OpenGL (Flip=Off).

For Substances, iClone defaults to DirectX (Flip=On).

If you bake a Substance, the "Flip" setting stays On (DirectX).



Yeah, nothing is ever simple and straight-forward, is it.

https://forum.reallusion.com/uploads/images/8d6dadca-fd48-464a-80d1-3734.jpg






iClone 7... Character Creator... Substance Designer/Painter... Blender... Audacity...
Desktop (homebuilt) - Windows 10, Ryzen 9 3900x CPU, GTX 1080 GPU (8GB), 32GB RAM, Asus X570 Pro motherboard, 2TB SSD, terabytes of disk space, dual  monitors.
Laptop - Windows 10, MSI GS63VR STEALTH-252, 16GB RAM, GTX 1060 (6GB), 256GB SSD and 1TB HDD

Edited
6 Years Ago by justaviking



Reading This Topic