Distortion Renderer

This module renders the eyes textures into the display.

Summary

Important: This module functions must be called from the render thread.

Functions

void
Destroys and releases memory used by the provided distortion renderer object.
CardboardDistortionRenderer_renderEyeToDisplay ( CardboardDistortionRenderer *renderer, uint64_t target, int x, int y, int width, int height, const CardboardEyeTextureDescription *left_eye, const CardboardEyeTextureDescription *right_eye)
void
Renders eye textures to a rectangle in the display.
void
Sets the distortion Mesh for a particular eye.

Functions

CardboardDistortionRenderer_destroy

void CardboardDistortionRenderer_destroy( CardboardDistortionRenderer 
*renderer
)

Destroys and releases memory used by the provided distortion renderer object.

Must be called from render thread.

renderer Must not be null. When it is unmet, a call to this function results in a no-op.

Details
Parameters
renderer
Distortion renderer object pointer.

CardboardDistortionRenderer_renderEyeToDisplay

 void 
  
 CardboardDistortionRenderer_renderEyeToDisplay 
 ( 
  
  CardboardDistortionRenderer 
 
  
 * 
 renderer 
 , 
  
 uint64_t 
  
 target 
 , 
  
 int 
  
 x 
 , 
  
 int 
  
 y 
 , 
  
 int 
  
 width 
 , 
  
 int 
  
 height 
 , 
  
 const 
  
  CardboardEyeTextureDescription 
 
  
 * 
 left_eye 
 , 
  
 const 
  
  CardboardEyeTextureDescription 
 
  
 * 
 right_eye 
 ) 

Renders eye textures to a rectangle in the display.

Must be called from render thread.

renderer Must not be null. left_eye Must not be null. right_eye Must not be null. renderer.command_buffer Must be started. When it is unmet, a call to this function results in a no-op.

  • OpenGL ES 2.x or 3.x: GLuint .
  • Metal: CardboardMetalDistortionRendererTargetConfig* .
  • Vulkan: CardboardVulkanDistortionRendererTarget* . Parameters
    x
    x coordinate of the rectangle's lower left corner in pixels.
    y
    y coordinate of the rectangle's lower left corner in pixels.
    width
    Size in pixels of the rectangle's width.
    height
    Size in pixels of the rectangle's height.
    left_eye
    Left eye texture description.
    right_eye
    Right eye texture description.
Details
Parameters
renderer
Distortion renderer object pointer.
target
Target configuration. This parameter is some other type transformed via reinterpret_cast to a uint64_t . The original type of this parameter depends on the underlying API used as follows:

CardboardDistortionRenderer_setMesh

 void 
  
 CardboardDistortionRenderer_setMesh 
 ( 
  
  CardboardDistortionRenderer 
 
  
 * 
 renderer 
 , 
  
 const 
  
  CardboardMesh 
 
  
 * 
 mesh 
 , 
  
  CardboardEye 
 
  
 eye 
 ) 

Sets the distortion Mesh for a particular eye.

Must be called from render thread.

renderer Must not be null. mesh Must not be null. When it is unmet, a call to this function results in a no-op.

Details
Parameters
renderer
Distortion renderer object pointer.
mesh
Distortion mesh.
eye
Desired eye.

CardboardMetalDistortionRenderer_create

  CardboardDistortionRenderer 
 
  
 * 
  
 CardboardMetalDistortionRenderer_create 
 ( 
  
 const 
  
  CardboardMetalDistortionRendererConfig 
 
  
 * 
 config 
 ) 

Creates a new distortion renderer object.

It uses Metal as the rendering API. Must be called from the render thread.

Details
Parameters
config
Distortion renderer configuration.
Returns
Distortion renderer object pointer

CardboardOpenGlEs2DistortionRenderer_create

  CardboardDistortionRenderer 
 
  
 * 
  
 CardboardOpenGlEs2DistortionRenderer_create 
 ( 
  
 const 
  
  CardboardOpenGlEsDistortionRendererConfig 
 
  
 * 
 config 
 ) 

Creates a new distortion renderer object.

It uses OpenGL ES 2.0 as the rendering API. Must be called from the render thread.

Details
Parameters
config
Distortion renderer configuration.
Returns
Distortion renderer object pointer

CardboardOpenGlEs3DistortionRenderer_create

  CardboardDistortionRenderer 
 
  
 * 
  
 CardboardOpenGlEs3DistortionRenderer_create 
 ( 
  
 const 
  
  CardboardOpenGlEsDistortionRendererConfig 
 
  
 * 
 config 
 ) 

Creates a new distortion renderer object.

It uses OpenGL ES 3.0 as the rendering API. Must be called from the render thread.

Details
Parameters
config
Distortion renderer configuration.
Returns
Distortion renderer object pointer

CardboardVulkanDistortionRenderer_create

  CardboardDistortionRenderer 
 
  
 * 
  
 CardboardVulkanDistortionRenderer_create 
 ( 
  
 const 
  
  CardboardVulkanDistortionRendererConfig 
 
  
 * 
 config 
 ) 

Creates a new distortion renderer object.

It uses Vulkan as the rendering API. Must be called from the render thread.

Details
Parameters
config
Distortion renderer configuration.
Returns
Distortion renderer object pointer

Design a Mobile Site
View Site in Mobile | Classic
Share by: