diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-08-14 21:12:40 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-08-14 21:12:40 +0400 |
commit | 46131fbcd4b36fe6202299f3e584b0704eb13beb (patch) | |
tree | d16b28ed140c4e590ff84a06dc92000e95afb05c | |
parent | 9cc4173c60a19315b9808b4eeff62a61f1f7b490 (diff) |
Apricot branch: a fix for flickering alpha, with multi-material
objects. Note that sorting is only between polygons with the same
material, so which material draws first is still arbitrary, but
consistent.
-rw-r--r-- | source/gameengine/Rasterizer/RAS_BucketManager.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/gameengine/Rasterizer/RAS_BucketManager.cpp b/source/gameengine/Rasterizer/RAS_BucketManager.cpp index e6732d355dc..bbddf3e6155 100644 --- a/source/gameengine/Rasterizer/RAS_BucketManager.cpp +++ b/source/gameengine/Rasterizer/RAS_BucketManager.cpp @@ -69,7 +69,7 @@ struct RAS_BucketManager::backtofront { bool operator()(const sortedmeshslot &a, const sortedmeshslot &b) { - return a.m_z < b.m_z; + return (a.m_z < b.m_z) || (a.m_z == b.m_z && a.m_ms < b.m_ms); } }; @@ -77,7 +77,7 @@ struct RAS_BucketManager::fronttoback { bool operator()(const sortedmeshslot &a, const sortedmeshslot &b) { - return a.m_z > b.m_z; + return (a.m_z > b.m_z) || (a.m_z == b.m_z && a.m_ms > b.m_ms); } }; |