Archived

This topic is now archived and is closed to further replies.

I hate averaged normals

This topic is 4955 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I can''t seem to get my mesh to stop averaging it''s normals. It''s been created in Max, which displays it perfectly using the DirectX 9 drivers The mesh is of rooms, with walls and floors. None of which should be averaged. I want the lighting to be applied flat on each plane, for each wall section / floor. Instead, it tries to make them look round on the corners. The only thing I''ve tried that worked was to totally detach the wall sections from each other and the floor. But there are way too many of these to do this. Does anyone have any idea how to fix this problem?

Share this post


Link to post
Share on other sites
What exporter are you using?

Typically, edges are sharp if they''re between triangles from different smoothing groups. You have to take this into account when generating normals, and split vertices based on normal (as well as based on UV discontinuities). Max has a function to calculate the right normals magically, something like GetRNormals() or GetRVerts() if I recall correctly ("R" for "Render").

The Cx File Format comes with a Max exporter (in source) that does smoothing groups.

Share this post


Link to post
Share on other sites
I don't think it's the exporter (which is the Quest version).
If I detach faces, then wield them back together, it fixes
the problem. But like I side, there are way too many to do
this with all of them.

Perhaps this is a max problem, and not a DirectX problem.
I'm still wondering why everything is lit up correctly in max,
and not in my engine. It's difficult to adjust settings when
there's no apparent problem until I export it.

EDIT - Oh, and I have smoothing groups turned off for all faces.

[edited by - Jiia on May 20, 2004 10:26:35 PM]

Share this post


Link to post
Share on other sites