- Timestamp:
- 05/30/05 03:20:23 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/VUT/work/ogre_changes/OgreMain/include/OgreHardwareOcclusionQuery.h
r92 r115 96 96 * Pulls the hardware occlusion query too see if there is a result. 97 97 * @retval NumOfFragments will get the resulting number of fragments. 98 * @param waitForResult if true, the query will wait until a result is available99 * @return True if success or false if not.100 * @Remarks Hardware occlusion is an assyncronius process the result may take a frame or so.101 * one idea is to test pass1 and if not visible skip pass2. Also note that objects102 * not visible must be tested evrey frame. Visable objects don't need testing every frame.103 * Testing non visable objects can be don unlit, no texture with low LOD object.104 * 0 will generate all the levels till 1x1. [default: 0]105 */106 #ifdef GTP_VISIBILITY_MODIFIED_OGRE107 virtual bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult ) = 0;108 #else109 virtual bool pullOcclusionQuery( unsigned int* NumOfFragments ) = 0;110 #endif111 /**112 * Pulls the hardware occlusion query too see if there is a result.113 * @retval NumOfFragments will get the resulting number of fragments.114 * @param waitForResult if true, the query will wait until a result is available115 98 * @return True if success or false if not. 116 99 * @Remarks In DX9 mode specifying OCCLUSIONQUERY_FLUSH as the flag, will case the driver to flush whatever API calls are batched. 117 100 * In OpenGL mode it makes no difference if you specify OCCLUSIONQUERY_FLUSH or OCCLUSIONQUERY_NOFLUSH. 118 101 */ 119 #ifdef GTP_VISIBILITY_MODIFIED_OGRE 120 virtual bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult, 121 const HW_OCCLUSIONQUERY flag ) = 0; 122 #else 123 virtual bool pullOcclusionQuery( unsigned int* NumOfFragments, 124 const HW_OCCLUSIONQUERY flag ) = 0; 125 #endif 102 virtual bool pullOcclusionQuery(unsigned int* NumOfFragments, const HW_OCCLUSIONQUERY flag = HWOCCLUSIONQUERY_FLUSH) = 0; 103 126 104 /** 127 105 * Let's you get the last pixel count with out doing the hardware occlusion test … … 143 121 virtual void setSkipRate( int skip ) = 0; 144 122 virtual int getSkipRate() = 0; 123 124 #ifdef GTP_VISIBILITY_MODIFIED_OGRE 125 /** 126 Pulls occlusion query. 127 @param NumOfFragments number of visible fragments if query result was available. 128 Last query result if query result was not yet available. 129 130 @param waitForResult if true, the function waits until the result is available. 131 Otherwise the function returns immediately, not waiting for the result. 132 @returns true if query result was available, false if result was not yet available 133 */ 134 virtual bool pullOcclusionQuery( unsigned int* NumOfFragments, const bool waitForResult, 135 const HW_OCCLUSIONQUERY flag = HWOCCLUSIONQUERY_FLUSH ) = 0; 136 #endif // GTP_VISIBILITY_MODIFIED_OGRE 137 145 138 //---------------------------------------------------------------------- 146 139 // Private members
Note: See TracChangeset
for help on using the changeset viewer.