KudanAR - iOS
ARRenderTarget Class Reference

#import <ARRenderTarget.h>

+ Inheritance diagram for ARRenderTarget:
+ Collaboration diagram for ARRenderTarget:

Instance Methods

(void) - addViewPort:
 
(void) - addViewPort:zOrder:
 
(void) - removeViewPort:
 
(void) - clearViewPorts
 
(instancetype) - initWithWidth:height:
 
(ARViewPort *) - createDefaultViewPort
 
(void) - addDelegate:
 
(UIImage *) - screenshot
 
(BOOL) - checkFBO
 
(void) - bindBuffer
 
(void) - bindCaptureBuffer
 
(void) - draw
 
(void) - drawForCapture
 

Properties

NSArray * viewPorts
 
NSUInteger numberOfViewPorts
 
float width
 
float height
 
NSArray * delegates
 
NSInteger priority
 
BOOL hasDepth
 
BOOL hasStencil
 
BOOL manualDraw
 
NSDictionary * captureColourToNode
 
BOOL touchEventReceived
 
CGPoint touchPoint
 

Detailed Description

A render target represents a target buffer for rendering.

Method Documentation

- (void) addDelegate: (id< ARRenderTargetDelegate >)  delegate

Add a delegate to receive rendering events for this render target.

Example of use:

ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
[renderTarget addDelegate:self];
Parameters
delegateARRenderTargate delegate.
- (void) addViewPort: (ARViewPort *)  viewPort

Add a viewport to this render target.

Example of use:

ARViewPort *viewPort = [[ARViewPort alloc] initWithOffsetX:0 y:0 height:100 width:100];
ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
[renderTarget addViewPort:viewPort];
Parameters
viewPortThe viewport to add.
- (void) addViewPort: (ARViewPort *)  viewPort
zOrder: (NSInteger)  zOrder 

Add a viewport to this render target and set its z-order.

Example of use:

ARViewPort *viewPort = [[ARViewPort alloc] initWithOffsetX:0 y:0 height:100 width:100];
ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
[renderTarget addViewPort:viewPort zOrder:-10];
Parameters
viewPortThe viewport to add.
zOrderThe render priority of this viewport. Any value is fine, lower values are rendered first.
- (void) bindBuffer

Binds frame buffer objects for use in OpenGL.

- (void) bindCaptureBuffer

Binds capture frame buffer. Used for touch detection.

- (BOOL) checkFBO

Check frame buffer status.

- (void) clearViewPorts

Remove all viewports from this render target.

Example of use:

[renderTarget clearViewPorts];
- (ARViewPort *) createDefaultViewPort

Creates a default viewport with dimensions matching the resolution of this render target and no offset.

Example of use:

ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
ARViewPort *viewPort = [renderTarget createDefaultViewPort];
Returns
The new viewport.
- (void) draw

Draws render target to screen.

- (instancetype) initWithWidth: (float)  width
height: (float)  height 

Initialise an ARRenderTarget using the given width and height.

Example of use:

ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
Parameters
widthThe width, in pixels, of the render target.
heightThe height, in pixels, of the render target.

Implemented in ARExtractedCameraTexture, and ARRenderTargetTexture.

- (void) removeViewPort: (ARViewPort *)  viewPort

Remove a viewport from this render target.

Example of use:

[rederTarget removeViewPort:viewPort];
Parameters
viewPortThe viewport to remove.
- (UIImage *) screenshot

Take a screenshot of this render target. Resolution of the image is the same as the resolution of the render target.

Example of use:

ARRenderTarget *renderTarget = [[ARRenderTarget alloc] initWithWidth:100 height:100];
UIImage screenshot = [renderTarget screenshot];
Returns
The screenshot.

Property Documentation

- (NSArray*) delegates
readnonatomicassign

The list of all added delegates.

- (BOOL) hasDepth
readwritenonatomicassign

Whether this render target has a depth buffer.

- (BOOL) hasStencil
readwritenonatomicassign

Whether this render target has a stencil buffer.

- (float) height
readwritenonatomicassign

The height, in pixels, of this render target.

- (BOOL) manualDraw
readwritenonatomicassign

Whether this render target is drawn automatically each frame, or whether it has to be drawn explicitly. Default NO - drawn automatically.

- (NSUInteger) numberOfViewPorts
readnonatomicassign

The number of viewports contained by this render target.

- (NSInteger) priority
readwritenonatomicassign

The priority of this render target relative to other render targets. Any value is fine. Lower is rendered first.

- (BOOL) touchEventReceived
readwritenonatomicassign

Whether the screen has been touched.

- (CGPoint) touchPoint
readwritenonatomicassign

Coordinates for where the screen was touched.

- (NSArray*) viewPorts
readwritenonatomicassign

The list of ARViewPort objects that this render target contains. These are rendered based on viewport z-order.

- (float) width
readwritenonatomicassign

The width, in pixels, of this render target.


The documentation for this class was generated from the following file: