From: SourceForge.net <no...@so...> - 2005-01-19 17:37:59
|
Bugs item #1104614, was opened at 2005-01-18 11:57 Message generated for change (Comment added) made by trepan You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=103248&aid=1104614&group_id=3248 >Category: None Group: Rendering problems >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Frederic Jolliton (fredcods) >Assigned to: Dave Rodgers (trepan) Summary: spining around vector such as [1,-1,0] produce bad rendering Initial Comment: When spinning around 1 -1 0 (and probably for a large subset of vector), object get rendered badly. I guess that vertices defining face are no more ordered in CCW. Object example: arc position 0 0 0 size 1 1 10 spin 90 1 -1 0 shift 0 0 4 end ---------------------------------------------------------------------- >Comment By: Dave Rodgers (trepan) Date: 2005-01-19 12:37 Message: Logged In: YES user_id=96333 The problem was the a determinant should have been used instead of (m[0][0] * m[1][1] * m[2][2]). The code has been modified to exit() if such a condition is found in 2.0.1+, and should be fixed when the network protocol is next broken. (src/game/MeshTransform.cxx / ~line 300) ---------------------------------------------------------------------- Comment By: Frederic Jolliton (fredcods) Date: 2005-01-18 17:09 Message: Logged In: YES user_id=29662 Here is attached a small text to show a counter example where checking sign of m[0][0]*m[1][1]*m[2][2] may eventually be wrong. ---------------------------------------------------------------------- Comment By: Frederic Jolliton (fredcods) Date: 2005-01-18 13:08 Message: Logged In: YES user_id=29662 A little more guess (I'm not familiar with transform code, forgive me if I'm wrong): By outputing debug info in src/game/MeshTransform.cxx/MeshTransform::Tool::Tool for polarity value and boolean result, I see that inverted = True for all the case where spin give the wrong result. So, I guess that polarity test may be wrong here for such case (I don't know if it's the cause or a consequence.) ---------------------------------------------------------------------- Comment By: Frederic Jolliton (fredcods) Date: 2005-01-18 12:49 Message: Logged In: YES user_id=29662 To be more precise (doing more test): Angle ]-90;90[ are fine. And spin() in src/game/MeshTransform.cxx (as far I can tell) seem correct (checked against some other sources.) Weird. Spining (rotating) should not impact face "direction". I don't see where the problem is located. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=103248&aid=1104614&group_id=3248 |