Ignore:
Timestamp:
05/30/05 03:20:23 (19 years ago)
Author:
mattausch
Message:

added depth pass algorithm + delayed transparent object rendering (so depth ordering is right)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/work/ogre_changes/RenderSystems/GL/include/OgreGLHardwareOcclusionQuery.h

    r92 r115  
    8888        void beginOcclusionQuery(); 
    8989        void endOcclusionQuery(); 
    90  
    91 #ifdef GTP_VISIBILITY_MODIFIED_OGRE 
    92         bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult, 
    93                                                          const HW_OCCLUSIONQUERY flag  );  
    94         bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult ); 
    95 #else 
    96         bool pullOcclusionQuery( unsigned int* NumOfFragments ); 
    9790        bool pullOcclusionQuery( unsigned int* NumOfFragments, const HW_OCCLUSIONQUERY flag  );  
    98 #endif // GTP_VISIBILITY_MODIFIED_OGRE 
    99  
    100         unsigned int getLastQuerysPixelcount() { return m_uintPixelCount; } 
     91        unsigned int getLastQuerysPixelcount() { return mPixelCount; } 
    10192 
    10293        // This functions are optional, it's a simple filter that simply skipps some hardware occlusion tests on visable objects only 
     
    115106          */ 
    116107 
    117         void setSkipRate( int skip ) { m_Skip = skip; }         // Using 2 only 50 % of the tests are actully made and 3 results in only 33% of the tests. So on. 
    118         int      getSkipRate() { return m_Skip; }  
     108        void setSkipRate( int skip ) { mSkipInterval = skip; }          // Using 2 only 50 % of the tests are actully made and 3 results in only 33% of the tests. So on. 
     109        int      getSkipRate() { return mSkipInterval; }  
    119110 
    120  
     111#ifdef GTP_VISIBILITY_MODIFIED_OGRE 
     112        bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult, const HW_OCCLUSIONQUERY flag = HWOCCLUSIONQUERY_FLUSH );  
     113#endif // GTP_VISIBILITY_MODIFIED_OGRE 
    121114//---------------------------------------------------------------------- 
    122115// Protected members 
     
    124117protected: 
    125118 
    126         unsigned int    m_uintPixelCount; 
    127         unsigned int    m_uintQuery[1]; 
     119        unsigned int    mPixelCount; 
     120        GLuint                  mQueryID; 
    128121        bool                    m_bOcclusionQuery; 
    129         int                             m_SkipCounter;          // m_SkipConter =  m_SkipConter % m_Skip; if ( m_SkipConter == 0 && m_uintPixelCount !=0 ) TestHWOcclusion else just return  
    130         static int              m_Skip;                         // This is shared by all instancies 
    131         bool                    m_bHWOcclusionSupport; 
     122        int                             mSkipCounter; 
     123        int                             mSkipInterval; 
     124        bool                    mHasOcclusionSupport; 
    132125}; 
    133  
    134126 
    135127} 
Note: See TracChangeset for help on using the changeset viewer.