XR8.GlTextureRenderer.pipelineModule()
XR8.GlTextureRenderer.pipelineModule({ vertexSource, fragmentSource, toTexture, flipY })`
Descripción
Crea un módulo de canalización que dibuja la imagen de la cámara en el lienzo.
Parámetros
| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
| vertexSource [Opcional] | Cadena | Un sombreador de vértices no operativo | La fuente del sombreador de vértices que se utilizará para el renderizado. |
| fragmentSource [Opcional] | Cadena | Un sombreador de fragmentos no-op | La fuente del fragment shader a utilizar para el renderizado. |
| toTexture [Opcional] | WebGlTexture | El lienzo | Una textura para dibujar. Si no se proporciona ninguna textura, el dibujo se hará en el lienzo. |
| flipY [Opcional] | Booleano | false | Si es verdadero, invierte la representación. |
Devuelve
El valor de retorno es un objeto {viewport, shader} puesto a disposición de
onProcessCpu y
onUpdate como:
processGpuResult.gltexturerenderer con las siguientes propiedades:
| Propiedad | Tipo | Descripción |
|---|---|---|
| ventana | `{ancho, alto, offsetX, offsetY}`` | La región del lienzo o textura de salida para dibujar; esto puede ser construido manualmente, o usando XR8.GlTextureRenderer.fillTextureViewport(). |
| sombreador | Un manejador del sombreador que se utiliza para dibujar la textura. |
processGpuResult.gltexturerenderer.viewport: { width, height, offsetX, offsetY }
| Propiedad | Tipo | Descripción |
|---|---|---|
| anchura | Número | El ancho (en píxeles) a dibujar. |
| altura | Número | La altura (en píxeles) a dibujar. |
| offsetX | Número | La coordenada x mínima (en píxeles) a dibujar. |
| offsetY | Número | La coordenada y mínima (en píxeles) a dibujar. |
Ejemplo
XR8.addCameraPipelineModule(XR8.GlTextureRenderer.pipelineModule())
XR8.addCameraPipelineModule({
name: 'mycamerapipelinemodule',
onProcessCpu: ({ processGpuResult }) => {
const {viewport, shader} = processGpuResult.gltexturerenderer
if (!viewport) {
return
}
const { width, height, offsetX, offsetY } = viewport
// ...
},