Axiom.RenderSystems.OpenGLES.GLESHardwareIndexBuffer.GLESHardwareIndexBuffer C# (CSharp) Méthode

GLESHardwareIndexBuffer() public méthode

public GLESHardwareIndexBuffer ( HardwareBufferManager mgr, IndexType idxType, int numIndexes, BufferUsage usage, bool useShadowBuffer ) : System
mgr Axiom.Graphics.HardwareBufferManager
idxType IndexType
numIndexes int
usage BufferUsage
useShadowBuffer bool
Résultat System
		public GLESHardwareIndexBuffer( HardwareBufferManager mgr, IndexType idxType, int numIndexes, BufferUsage usage, bool useShadowBuffer )
			: base( idxType, numIndexes, usage, false, useShadowBuffer )
		{
			if ( idxType == IndexType.Size32 )
			{
				throw new AxiomException( "32 bit hardware buffers are not allowed in OpenGL ES." );
			}

			if ( !useShadowBuffer )
			{
				throw new AxiomException( "Only support with shadowBuffer" );
			}

			OpenGL.GenBuffers( 1, ref _bufferId );
			GLESConfig.GlCheckError( this );
			if ( _bufferId == 0 )
			{
				throw new AxiomException( "Cannot create GL index buffer" );
			}

			OpenGL.BindBuffer( All.ElementArrayBuffer, _bufferId );
			GLESConfig.GlCheckError( this );
			OpenGL.BufferData( All.ElementArrayBuffer, new IntPtr( sizeInBytes ), IntPtr.Zero, GLESHardwareBufferManager.GetGLUsage( usage ) );
			GLESConfig.GlCheckError( this );
		}