174 lines
11 KiB
Plaintext
174 lines
11 KiB
Plaintext
rlVertexBuffer :: struct {
|
|
elementCount: int;
|
|
vertices: *float;
|
|
texcoords: *float;
|
|
colors: *uchar;
|
|
indices: *uint;
|
|
vaoId: uint;
|
|
vboId: [4]uint;
|
|
}
|
|
|
|
rlDrawCall :: struct {
|
|
mode: int;
|
|
vertexCount: int;
|
|
vertexAlignment: int;
|
|
textureId: uint;
|
|
}
|
|
|
|
rlRenderBatch :: struct {
|
|
bufferCount: int;
|
|
currentBuffer: int;
|
|
vertexBuffer: *rlVertexBuffer;
|
|
draws: *rlDrawCall;
|
|
drawCounter: int;
|
|
currentDepth: float;
|
|
}
|
|
|
|
rlMatrixMode :: proc(mode: int); @dont_mangle @api
|
|
rlPushMatrix :: proc(); @dont_mangle @api
|
|
rlPopMatrix :: proc(); @dont_mangle @api
|
|
rlLoadIdentity :: proc(); @dont_mangle @api
|
|
rlTranslatef :: proc(x: float, y: float, z: float); @dont_mangle @api
|
|
rlRotatef :: proc(angle: float, x: float, y: float, z: float); @dont_mangle @api
|
|
rlScalef :: proc(x: float, y: float, z: float); @dont_mangle @api
|
|
rlMultMatrixf :: proc(matf: *float); @dont_mangle @api
|
|
rlFrustum :: proc(left: double, right: double, bottom: double, top: double, znear: double, zfar: double); @dont_mangle @api
|
|
rlOrtho :: proc(left: double, right: double, bottom: double, top: double, znear: double, zfar: double); @dont_mangle @api
|
|
rlViewport :: proc(x: int, y: int, width: int, height: int); @dont_mangle @api
|
|
rlBegin :: proc(mode: int); @dont_mangle @api
|
|
rlEnd :: proc(); @dont_mangle @api
|
|
rlVertex2i :: proc(x: int, y: int); @dont_mangle @api
|
|
rlVertex2f :: proc(x: float, y: float); @dont_mangle @api
|
|
rlVertex3f :: proc(x: float, y: float, z: float); @dont_mangle @api
|
|
rlTexCoord2f :: proc(x: float, y: float); @dont_mangle @api
|
|
rlNormal3f :: proc(x: float, y: float, z: float); @dont_mangle @api
|
|
rlColor4ub :: proc(r: uchar, g: uchar, b: uchar, a: uchar); @dont_mangle @api
|
|
rlColor3f :: proc(x: float, y: float, z: float); @dont_mangle @api
|
|
rlColor4f :: proc(x: float, y: float, z: float, w: float); @dont_mangle @api
|
|
rlEnableVertexArray :: proc(vaoId: uint): bool; @dont_mangle @api
|
|
rlDisableVertexArray :: proc(); @dont_mangle @api
|
|
rlEnableVertexBuffer :: proc(id: uint); @dont_mangle @api
|
|
rlDisableVertexBuffer :: proc(); @dont_mangle @api
|
|
rlEnableVertexBufferElement :: proc(id: uint); @dont_mangle @api
|
|
rlDisableVertexBufferElement :: proc(); @dont_mangle @api
|
|
rlEnableVertexAttribute :: proc(index: uint); @dont_mangle @api
|
|
rlDisableVertexAttribute :: proc(index: uint); @dont_mangle @api
|
|
rlActiveTextureSlot :: proc(slot: int); @dont_mangle @api
|
|
rlEnableTexture :: proc(id: uint); @dont_mangle @api
|
|
rlDisableTexture :: proc(); @dont_mangle @api
|
|
rlEnableTextureCubemap :: proc(id: uint); @dont_mangle @api
|
|
rlDisableTextureCubemap :: proc(); @dont_mangle @api
|
|
rlTextureParameters :: proc(id: uint, param: int, value: int); @dont_mangle @api
|
|
rlCubemapParameters :: proc(id: uint, param: int, value: int); @dont_mangle @api
|
|
rlEnableShader :: proc(id: uint); @dont_mangle @api
|
|
rlDisableShader :: proc(); @dont_mangle @api
|
|
rlEnableFramebuffer :: proc(id: uint); @dont_mangle @api
|
|
rlDisableFramebuffer :: proc(); @dont_mangle @api
|
|
rlActiveDrawBuffers :: proc(count: int); @dont_mangle @api
|
|
rlBlitFramebuffer :: proc(srcX: int, srcY: int, srcWidth: int, srcHeight: int, dstX: int, dstY: int, dstWidth: int, dstHeight: int, bufferMask: int); @dont_mangle @api
|
|
rlEnableColorBlend :: proc(); @dont_mangle @api
|
|
rlDisableColorBlend :: proc(); @dont_mangle @api
|
|
rlEnableDepthTest :: proc(); @dont_mangle @api
|
|
rlDisableDepthTest :: proc(); @dont_mangle @api
|
|
rlEnableDepthMask :: proc(); @dont_mangle @api
|
|
rlDisableDepthMask :: proc(); @dont_mangle @api
|
|
rlEnableBackfaceCulling :: proc(); @dont_mangle @api
|
|
rlDisableBackfaceCulling :: proc(); @dont_mangle @api
|
|
rlSetCullFace :: proc(mode: int); @dont_mangle @api
|
|
rlEnableScissorTest :: proc(); @dont_mangle @api
|
|
rlDisableScissorTest :: proc(); @dont_mangle @api
|
|
rlScissor :: proc(x: int, y: int, width: int, height: int); @dont_mangle @api
|
|
rlEnableWireMode :: proc(); @dont_mangle @api
|
|
rlEnablePointMode :: proc(); @dont_mangle @api
|
|
rlDisableWireMode :: proc(); @dont_mangle @api
|
|
rlSetLineWidth :: proc(width: float); @dont_mangle @api
|
|
rlGetLineWidth :: proc(): float; @dont_mangle @api
|
|
rlEnableSmoothLines :: proc(); @dont_mangle @api
|
|
rlDisableSmoothLines :: proc(); @dont_mangle @api
|
|
rlEnableStereoRender :: proc(); @dont_mangle @api
|
|
rlDisableStereoRender :: proc(); @dont_mangle @api
|
|
rlIsStereoRenderEnabled :: proc(): bool; @dont_mangle @api
|
|
rlClearColor :: proc(r: uchar, g: uchar, b: uchar, a: uchar); @dont_mangle @api
|
|
rlClearScreenBuffers :: proc(); @dont_mangle @api
|
|
rlCheckErrors :: proc(); @dont_mangle @api
|
|
rlSetBlendMode :: proc(mode: int); @dont_mangle @api
|
|
rlSetBlendFactors :: proc(glSrcFactor: int, glDstFactor: int, glEquation: int); @dont_mangle @api
|
|
rlSetBlendFactorsSeparate :: proc(glSrcRGB: int, glDstRGB: int, glSrcAlpha: int, glDstAlpha: int, glEqRGB: int, glEqAlpha: int); @dont_mangle @api
|
|
rlglInit :: proc(width: int, height: int); @dont_mangle @api
|
|
rlglClose :: proc(); @dont_mangle @api
|
|
rlLoadExtensions :: proc(loader: *void); @dont_mangle @api
|
|
rlGetVersion :: proc(): int; @dont_mangle @api
|
|
rlSetFramebufferWidth :: proc(width: int); @dont_mangle @api
|
|
rlGetFramebufferWidth :: proc(): int; @dont_mangle @api
|
|
rlSetFramebufferHeight :: proc(height: int); @dont_mangle @api
|
|
rlGetFramebufferHeight :: proc(): int; @dont_mangle @api
|
|
rlGetTextureIdDefault :: proc(): uint; @dont_mangle @api
|
|
rlGetShaderIdDefault :: proc(): uint; @dont_mangle @api
|
|
rlGetShaderLocsDefault :: proc(): *int; @dont_mangle @api
|
|
rlLoadRenderBatch :: proc(numBuffers: int, bufferElements: int): rlRenderBatch; @dont_mangle @api
|
|
rlUnloadRenderBatch :: proc(batch: rlRenderBatch); @dont_mangle @api
|
|
rlDrawRenderBatch :: proc(batch: *rlRenderBatch); @dont_mangle @api
|
|
rlSetRenderBatchActive :: proc(batch: *rlRenderBatch); @dont_mangle @api
|
|
rlDrawRenderBatchActive :: proc(); @dont_mangle @api
|
|
rlCheckRenderBatchLimit :: proc(vCount: int): bool; @dont_mangle @api
|
|
rlSetTexture :: proc(id: uint); @dont_mangle @api
|
|
rlLoadVertexArray :: proc(): uint; @dont_mangle @api
|
|
rlLoadVertexBuffer :: proc(buffer: *void, size: int, dynamic: bool): uint; @dont_mangle @api
|
|
rlLoadVertexBufferElement :: proc(buffer: *void, size: int, dynamic: bool): uint; @dont_mangle @api
|
|
rlUpdateVertexBuffer :: proc(bufferId: uint, data: *void, dataSize: int, offset: int); @dont_mangle @api
|
|
rlUpdateVertexBufferElements :: proc(id: uint, data: *void, dataSize: int, offset: int); @dont_mangle @api
|
|
rlUnloadVertexArray :: proc(vaoId: uint); @dont_mangle @api
|
|
rlUnloadVertexBuffer :: proc(vboId: uint); @dont_mangle @api
|
|
rlSetVertexAttribute :: proc(index: uint, compSize: int, type: int, normalized: bool, stride: int, pointer: *void); @dont_mangle @api
|
|
rlSetVertexAttributeDivisor :: proc(index: uint, divisor: int); @dont_mangle @api
|
|
rlSetVertexAttributeDefault :: proc(locIndex: int, value: *void, attribType: int, count: int); @dont_mangle @api
|
|
rlDrawVertexArray :: proc(offset: int, count: int); @dont_mangle @api
|
|
rlDrawVertexArrayElements :: proc(offset: int, count: int, buffer: *void); @dont_mangle @api
|
|
rlDrawVertexArrayInstanced :: proc(offset: int, count: int, instances: int); @dont_mangle @api
|
|
rlDrawVertexArrayElementsInstanced :: proc(offset: int, count: int, buffer: *void, instances: int); @dont_mangle @api
|
|
rlLoadTexture :: proc(data: *void, width: int, height: int, format: int, mipmapCount: int): uint; @dont_mangle @api
|
|
rlLoadTextureDepth :: proc(width: int, height: int, useRenderBuffer: bool): uint; @dont_mangle @api
|
|
rlLoadTextureCubemap :: proc(data: *void, size: int, format: int): uint; @dont_mangle @api
|
|
rlUpdateTexture :: proc(id: uint, offsetX: int, offsetY: int, width: int, height: int, format: int, data: *void); @dont_mangle @api
|
|
rlGetGlTextureFormats :: proc(format: int, glInternalFormat: *uint, glFormat: *uint, glType: *uint); @dont_mangle @api
|
|
rlGetPixelFormatName :: proc(format: uint): *char; @dont_mangle @api
|
|
rlUnloadTexture :: proc(id: uint); @dont_mangle @api
|
|
rlGenTextureMipmaps :: proc(id: uint, width: int, height: int, format: int, mipmaps: *int); @dont_mangle @api
|
|
rlReadTexturePixels :: proc(id: uint, width: int, height: int, format: int): *void; @dont_mangle @api
|
|
rlReadScreenPixels :: proc(width: int, height: int): *uchar; @dont_mangle @api
|
|
rlLoadFramebuffer :: proc(width: int, height: int): uint; @dont_mangle @api
|
|
rlFramebufferAttach :: proc(fboId: uint, texId: uint, attachType: int, texType: int, mipLevel: int); @dont_mangle @api
|
|
rlFramebufferComplete :: proc(id: uint): bool; @dont_mangle @api
|
|
rlUnloadFramebuffer :: proc(id: uint); @dont_mangle @api
|
|
rlLoadShaderCode :: proc(vsCode: *char, fsCode: *char): uint; @dont_mangle @api
|
|
rlCompileShader :: proc(shaderCode: *char, type: int): uint; @dont_mangle @api
|
|
rlLoadShaderProgram :: proc(vShaderId: uint, fShaderId: uint): uint; @dont_mangle @api
|
|
rlUnloadShaderProgram :: proc(id: uint); @dont_mangle @api
|
|
rlGetLocationUniform :: proc(shaderId: uint, uniformName: *char): int; @dont_mangle @api
|
|
rlGetLocationAttrib :: proc(shaderId: uint, attribName: *char): int; @dont_mangle @api
|
|
rlSetUniform :: proc(locIndex: int, value: *void, uniformType: int, count: int); @dont_mangle @api
|
|
rlSetUniformMatrix :: proc(locIndex: int, mat: Matrix); @dont_mangle @api
|
|
rlSetUniformSampler :: proc(locIndex: int, textureId: uint); @dont_mangle @api
|
|
rlSetShader :: proc(id: uint, locs: *int); @dont_mangle @api
|
|
rlLoadComputeShaderProgram :: proc(shaderId: uint): uint; @dont_mangle @api
|
|
rlComputeShaderDispatch :: proc(groupX: uint, groupY: uint, groupZ: uint); @dont_mangle @api
|
|
rlLoadShaderBuffer :: proc(size: uint, data: *void, usageHint: int): uint; @dont_mangle @api
|
|
rlUnloadShaderBuffer :: proc(ssboId: uint); @dont_mangle @api
|
|
rlUpdateShaderBuffer :: proc(id: uint, data: *void, dataSize: uint, offset: uint); @dont_mangle @api
|
|
rlBindShaderBuffer :: proc(id: uint, index: uint); @dont_mangle @api
|
|
rlReadShaderBuffer :: proc(id: uint, dest: *void, count: uint, offset: uint); @dont_mangle @api
|
|
rlCopyShaderBuffer :: proc(destId: uint, srcId: uint, destOffset: uint, srcOffset: uint, count: uint); @dont_mangle @api
|
|
rlGetShaderBufferSize :: proc(id: uint): uint; @dont_mangle @api
|
|
rlBindImageTexture :: proc(id: uint, index: uint, format: int, readonly: bool); @dont_mangle @api
|
|
rlGetMatrixModelview :: proc(): Matrix; @dont_mangle @api
|
|
rlGetMatrixProjection :: proc(): Matrix; @dont_mangle @api
|
|
rlGetMatrixTransform :: proc(): Matrix; @dont_mangle @api
|
|
rlGetMatrixProjectionStereo :: proc(eye: int): Matrix; @dont_mangle @api
|
|
rlGetMatrixViewOffsetStereo :: proc(eye: int): Matrix; @dont_mangle @api
|
|
rlSetMatrixProjection :: proc(proj: Matrix); @dont_mangle @api
|
|
rlSetMatrixModelview :: proc(view: Matrix); @dont_mangle @api
|
|
rlSetMatrixProjectionStereo :: proc(right: Matrix, left: Matrix); @dont_mangle @api
|
|
rlSetMatrixViewOffsetStereo :: proc(right: Matrix, left: Matrix); @dont_mangle @api
|
|
rlLoadDrawCube :: proc(); @dont_mangle @api
|
|
rlLoadDrawQuad :: proc(); @dont_mangle @api
|