Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

EXT_disjoint_timer_query: Methode getQueryObjectEXT()

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die Methode EXT_disjoint_timer_query.getQueryObjectEXT() der WebGL-API gibt den Zustand eines Abfrageobjekts zurück.

Syntax

js
getQueryObjectEXT(query, pname)

Parameter

query

Ein WebGLQuery-Objekt, zu dem Informationen zurückgegeben werden sollen.

pname

Ein GLenum, der angibt, welche Informationen zurückgegeben werden sollen. Muss ext.QUERY_RESULT_EXT oder ext.QUERY_RESULT_AVAILABLE_EXT sein.

Rückgabewert

Hängt von pname ab:

  • Wenn pname den Wert ext.QUERY_RESULT_EXT hat: Ein GLuint64EXT, der das Abfrageergebnis enthält.
  • Wenn pname den Wert ext.QUERY_RESULT_AVAILABLE_EXT hat: Ein GLboolean, der angibt, ob ein Abfrageergebnis verfügbar ist.

Beispiele

js
const ext = gl.getExtension("EXT_disjoint_timer_query");
const query = ext.createQueryEXT();
ext.beginQueryEXT(ext.TIME_ELAPSED_EXT, query);

// Draw
ext.endQueryEXT(ext.TIME_ELAPSED_EXT);

// At some point in the future, after returning control to the browser
const available = ext.getQueryObjectEXT(query, ext.QUERY_RESULT_AVAILABLE_EXT);
const disjoint = gl.getParameter(ext.GPU_DISJOINT_EXT);

if (available && !disjoint) {
  // See how much time the rendering of the object took in nanoseconds.
  const timeElapsed = ext.getQueryObjectEXT(query, ext.QUERY_RESULT_EXT);
}

Spezifikationen

Spezifikation
WebGL EXT_disjoint_timer_query Extension Specification

Browser-Kompatibilität

Siehe auch