|
|
@@ -23,24 +23,31 @@ namespace BansheeEngine
|
|
|
QueryManager();
|
|
|
~QueryManager();
|
|
|
|
|
|
- /** Creates a new event query that allows you to get notified when GPU starts executing the query. */
|
|
|
- virtual SPtr<EventQuery> createEventQuery() const = 0;
|
|
|
+ /**
|
|
|
+ * Creates a new event query that allows you to get notified when GPU starts executing the query.
|
|
|
+ *
|
|
|
+ * @param[in] deviceIdx Index of the GPU device to create the query on.
|
|
|
+ */
|
|
|
+ virtual SPtr<EventQuery> createEventQuery(UINT32 deviceIdx = 0) const = 0;
|
|
|
|
|
|
/**
|
|
|
* Creates a new timer query that allows you to get notified of how much time has passed between query start and end.
|
|
|
+ *
|
|
|
+ * @param[in] deviceIdx Index of the GPU device to create the query on.
|
|
|
*/
|
|
|
- virtual SPtr<TimerQuery> createTimerQuery() const = 0;
|
|
|
+ virtual SPtr<TimerQuery> createTimerQuery(UINT32 deviceIdx = 0) const = 0;
|
|
|
|
|
|
/**
|
|
|
* Creates a new occlusion query that allows you to know how many fragments were rendered between query start and
|
|
|
* end.
|
|
|
*
|
|
|
- * @param[in] binary If query is binary it will not give you an exact count of fragments rendered, but will
|
|
|
- * instead just return 0 (no fragments were rendered) or 1 (one or more fragments were
|
|
|
- * rendered). Binary queries can return sooner as they potentially do not need to wait until
|
|
|
- * all of the geometry is rendered.
|
|
|
+ * @param[in] binary If query is binary it will not give you an exact count of fragments rendered, but will
|
|
|
+ * instead just return 0 (no fragments were rendered) or 1 (one or more fragments were
|
|
|
+ * rendered). Binary queries can return sooner as they potentially do not need to wait
|
|
|
+ * until all of the geometry is rendered.
|
|
|
+ * @param[in] deviceIdx Index of the GPU device to create the query on.
|
|
|
*/
|
|
|
- virtual SPtr<OcclusionQuery> createOcclusionQuery(bool binary) const = 0;
|
|
|
+ virtual SPtr<OcclusionQuery> createOcclusionQuery(bool binary, UINT32 deviceIdx = 0) const = 0;
|
|
|
|
|
|
/** Triggers completed queries. Should be called every frame. */
|
|
|
void _update();
|