pub struct AnySamplesPassedQuery { /* private fields */ }Expand description
A query type that allows you to know whether any sample has been written to the output during the operations executed with this query.
§OpenGL
This is usually a query of type GL_ANY_SAMPLES_PASSED or
GL_ANY_SAMPLES_PASSED_CONSERVATIVE.
However if the backend doesn’t support conservative queries, glium will automatically fall
back to a non-conservative query. If the backend doesn’t support either types but supports
GL_SAMPLES_PASSED, then glium will automatically use a GL_SAMPLES_PASSED query instead.
Implementations§
Source§impl AnySamplesPassedQuery
impl AnySamplesPassedQuery
Sourcepub fn new<F>(
facade: &F,
conservative: bool,
) -> Result<AnySamplesPassedQuery, QueryCreationError>
pub fn new<F>( facade: &F, conservative: bool, ) -> Result<AnySamplesPassedQuery, QueryCreationError>
Builds a new query.
If you pass true for conservative, then OpenGL may use a less accurate algorithm,
leading to a faster result but with more false positives.
Source§impl AnySamplesPassedQuery
impl AnySamplesPassedQuery
Sourcepub fn get(self) -> bool
pub fn get(self) -> bool
Returns the value of the query. Blocks until it is available.
This function doesn’t block if is_ready would return true.
Note that you are strongly discouraged from calling this in the middle of the rendering process, as it may block for a long time.
Queries should either have their result written into a buffer, be used for conditional rendering, or stored and checked during the next frame.
Sourcepub fn to_buffer_u32(
&self,
target: BufferSlice<'_, u32>,
) -> Result<(), ToBufferError>
pub fn to_buffer_u32( &self, target: BufferSlice<'_, u32>, ) -> Result<(), ToBufferError>
Writes the result of the query to a buffer when it is available.
This function doesn’t block. Instead it submits a commands to the GPU’s commands queue and orders the GPU to write the result of the query to a buffer.
This operation is not necessarily supported everywhere.