Class: GeometrySystem

PIXI.systems.GeometrySystem

System plugin to the renderer to manage geometry.

new PIXI.systems.GeometrySystem (renderer)

Name Type Description
renderer PIXI.Renderer

The renderer this System works for.

Extends

Members

boundBuffers Object.<number, PIXI.Buffer> readonly

A cache of currently bound buffer, contains only two members with keys ARRAY_BUFFER and ELEMENT_ARRAY_BUFFER

canUseUInt32ElementIndex boolean readonly

true if support gl.UNSIGNED_INT in gl.drawElements or gl.drawElementsInstanced

hasInstance boolean readonly

true if has ANGLE_instanced_arrays extension

hasVao boolean readonly

true if we has *_vertex_array_object extension

managedBuffers object readonly

Cache for all buffers by id, used in case renderer gets destroyed or for profiling

managedGeometries object readonly

Cache for all geometries by id, used in case renderer gets destroyed or for profiling

The renderer this manager works for.

Methods

activateVao (geometry, program) protected

Activate vertex array object

Name Type Description
geometry PIXI.Geometry

Geometry instance

program PIXI.Program

Shader program instance

bind (geometry, shader)

Binds geometry so that is can be drawn. Creating a Vao if required

Name Type Description
geometry PIXI.Geometry

instance of geometry to bind

shader PIXI.Shader optional

instance of shader to use vao for

checkCompatibility (geometry, program) protected

Check compability between a geometry and a program

Name Type Description
geometry PIXI.Geometry

Geometry instance

program PIXI.Program

Program instance

contextChange () overrides

Sets up the renderer context and necessary buffers.

destroy () inherited

Generic destroy methods to be overridden by the subclass

disposeAll (contextLost)

dispose all WebGL resources of all managed geometries and buffers

Name Type Default Description
contextLost boolean false optional

If context was lost, we suppress gl.delete calls

disposeBuffer (buffer, contextLost)

Disposes buffer

Name Type Default Description
buffer PIXI.Buffer

buffer with data

contextLost boolean false optional

If context was lost, we suppress deleteVertexArray

disposeGeometry (geometry, contextLost)

Disposes geometry

Name Type Default Description
geometry PIXI.Geometry

Geometry with buffers. Only VAO will be disposed

contextLost boolean false optional

If context was lost, we suppress deleteVertexArray

draw (type, size, start, instanceCount)

Draw the geometry

Name Type Description
type Number

the type primitive to render

size Number optional

the number of elements to be rendered

start Number optional

Starting index

instanceCount Number optional

the number of instances of the set of elements to execute

getSignature (geometry, program)String protected

Takes a geometry and program and generates a unique signature for them.

Name Type Description
geometry PIXI.Geometry

to get signature from

program PIXI.Program

to test geometry against

Returns:
Type Description
String Unique signature of the geometry and program

initGeometryVao (geometry, program) protected

Creates or gets Vao with the same structure as the geometry and stores it on the geometry. If vao is created, it is bound automatically.

Name Type Description
geometry PIXI.Geometry

Instance of geometry to to generate Vao for

program PIXI.Program

Instance of program

Reset and unbind any active VAO and geometry

unbind () protected

Unbind/reset everything

updateBuffers () protected

Update buffers