2024-05-11 23:24:13 +02:00
|
|
|
package gxm
|
|
|
|
|
|
|
|
|
|
import "core:c"
|
|
|
|
|
import "base:intrinsics"
|
|
|
|
|
import sce "../common"
|
|
|
|
|
|
|
|
|
|
foreign import gxm "system:SceGxm_stub"
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Gets the start address of the texture data.
|
|
|
|
|
*
|
|
|
|
|
* @param gxt pointer to the GXT data
|
|
|
|
|
* @return A pointer to the start of the texture data
|
|
|
|
|
*/
|
|
|
|
|
sceGxtGetDataAddress :: proc(gxt: rawptr) -> rawptr {
|
|
|
|
|
header := cast(^SceGxtHeader)gxt
|
|
|
|
|
return cast(rawptr)((cast(uintptr)gxt) + auto_cast header.dataOffset)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
foreign gxm {
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmInitialize :: proc(#by_ptr params: SceGxmInitializeParams) -> c.int ---
|
|
|
|
|
sceGxmVshInitialize :: proc(#by_ptr params: SceGxmInitializeParams) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmTerminate :: proc() -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmGetNotificationRegion :: proc() -> ^c.uint ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmNotificationWait :: proc(#by_ptr notification: SceGxmNotification) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmMapMemory :: proc(base: rawptr, size: SceSize, attr: SceGxmMemoryAttribFlags) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmUnmapMemory :: proc(base: rawptr) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmMapVertexUsseMemory :: proc(base: rawptr, size: SceSize, offset: ^c.uint) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmUnmapVertexUsseMemory :: proc(base: rawptr) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmMapFragmentUsseMemory :: proc(base: rawptr, size: SceSize, offset: ^c.uint) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmUnmapFragmentUsseMemory :: proc(base: rawptr) -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmDisplayQueueAddEntry :: proc(oldBuffer: ^SceGxmSyncObject, newBuffer: ^SceGxmSyncObject, callbackData: rawptr) -> c.int ---
|
|
|
|
|
sceGxmDisplayQueueFinish :: proc() -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmSyncObjectCreate :: proc(syncObject: ^^SceGxmSyncObject) -> c.int ---
|
|
|
|
|
sceGxmSyncObjectDestroy :: proc(syncObject: ^SceGxmSyncObject) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmCreateContext :: proc(#by_ptr params: SceGxmContextParams, _context: ^^SceGxmContext) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDestroyContext :: proc(_context: ^SceGxmContext) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmCreateDeferredContext :: proc(#by_ptr params: SceGxmDeferredContextParams, _context: ^^SceGxmContext) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDestroyDeferredContext :: proc(_context: ^SceGxmContext) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetValidationEnable :: proc(_context: ^SceGxmContext, enable: SceBool) ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetVertexProgram :: proc(_context: ^SceGxmContext, #by_ptr vertexProgram: SceGxmVertexProgram) ---
|
|
|
|
|
sceGxmSetFragmentProgram :: proc(_context: ^SceGxmContext, #by_ptr fragmentProgram: SceGxmFragmentProgram) ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmReserveVertexDefaultUniformBuffer :: proc(_context: ^SceGxmContext, uniformBuffer: ^rawptr) -> c.int ---
|
|
|
|
|
sceGxmReserveFragmentDefaultUniformBuffer :: proc(_context: ^SceGxmContext, uniformBuffer: ^rawptr) -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmSetVertexDefaultUniformBuffer :: proc(_context: ^SceGxmContext, uniformBuffer: rawptr) -> c.int ---
|
|
|
|
|
sceGxmSetFragmentDefaultUniformBuffer :: proc(_context: ^SceGxmContext, uniformBuffer: rawptr) -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmSetVertexStream :: proc(_context: ^SceGxmContext, streamIndex: c.uint, streamData: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetVertexTexture :: proc(_context: ^SceGxmContext, textureIndex: c.uint, #by_ptr texture: SceGxmTexture) -> c.int ---
|
|
|
|
|
sceGxmSetFragmentTexture :: proc(_context: ^SceGxmContext, textureIndex: c.uint, #by_ptr texture: SceGxmTexture) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmSetVertexUniformBuffer :: proc(_context: ^SceGxmContext, bufferIndex: c.uint, bufferData: rawptr) -> c.int ---
|
|
|
|
|
sceGxmSetFragmentUniformBuffer :: proc(_context: ^SceGxmContext, bufferIndex: c.uint, bufferData: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetAuxiliarySurface :: proc(_context: ^SceGxmContext, surfaceIndex: c.uint, #by_ptr surface: SceGxmAuxiliarySurface) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetPrecomputedFragmentState :: proc(_context: ^SceGxmContext, #by_ptr precomputedState: SceGxmPrecomputedFragmentState) ---
|
|
|
|
|
sceGxmSetPrecomputedVertexState :: proc(_context: ^SceGxmContext, #by_ptr precomputedState: SceGxmPrecomputedVertexState) ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDrawPrecomputed :: proc(_context: ^SceGxmContext, #by_ptr precomputedDraw: SceGxmPrecomputedDraw) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDraw :: proc(_context: ^SceGxmContext, primType: SceGxmPrimitiveType, indexType: SceGxmIndexFormat, indexData: rawptr, indexCount: c.uint) -> c.int ---
|
|
|
|
|
sceGxmDrawInstanced :: proc(_context: ^SceGxmContext, primType: SceGxmPrimitiveType, indexType: SceGxmIndexFormat, indexData: rawptr, indexCount: c.uint, indexWrap: c.uint) -> c.int ---
|
|
|
|
|
sceGxmSetVisibilityBuffer :: proc(_context: ^SceGxmContext, bufferBase: rawptr, stridePerCore: c.uint) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmBeginScene :: proc(_context: ^SceGxmContext, flags: c.uint, #by_ptr renderTarget: SceGxmRenderTarget, #by_ptr validRegion: SceGxmValidRegion, vertexSyncObject: ^SceGxmSyncObject, fragmentSyncObject: ^SceGxmSyncObject, #by_ptr colorSurface: SceGxmColorSurface, #by_ptr depthStencil: SceGxmDepthStencilSurface) -> c.int ---
|
|
|
|
|
sceGxmMidSceneFlush :: proc(_context: ^SceGxmContext, flags: c.uint, vertexSyncObject: ^SceGxmSyncObject, #by_ptr vertexNotification: SceGxmNotification) -> c.int ---
|
|
|
|
|
sceGxmEndScene :: proc(_context: ^SceGxmContext, #by_ptr vertexNotification: SceGxmNotification, #by_ptr fragmentNotification: SceGxmNotification) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmBeginCommandList :: proc(_context: ^SceGxmContext) -> c.int ---
|
|
|
|
|
sceGxmExecuteCommandList :: proc(_context: ^SceGxmContext, list: ^SceGxmCommandList) -> c.int ---
|
|
|
|
|
sceGxmEndCommandList :: proc(_context: ^SceGxmContext, list: ^SceGxmCommandList) -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmSetFrontDepthFunc :: proc(_context: ^SceGxmContext, depthFunc: SceGxmDepthFunc) ---
|
|
|
|
|
sceGxmSetBackDepthFunc :: proc(_context: ^SceGxmContext, depthFunc: SceGxmDepthFunc) ---
|
|
|
|
|
sceGxmSetFrontFragmentProgramEnable :: proc(_context: ^SceGxmContext, enable: SceGxmFragmentProgramMode) ---
|
|
|
|
|
sceGxmSetBackFragmentProgramEnable :: proc(_context: ^SceGxmContext, enable: SceGxmFragmentProgramMode) ---
|
|
|
|
|
sceGxmSetFrontDepthWriteEnable :: proc(_context: ^SceGxmContext, enable: SceGxmDepthWriteMode) ---
|
|
|
|
|
sceGxmSetBackDepthWriteEnable :: proc(_context: ^SceGxmContext, enable: SceGxmDepthWriteMode) ---
|
|
|
|
|
sceGxmSetFrontLineFillLastPixelEnable :: proc(_context: ^SceGxmContext, enable: SceGxmLineFillLastPixelMode) ---
|
|
|
|
|
sceGxmSetBackLineFillLastPixelEnable :: proc(_context: ^SceGxmContext, enable: SceGxmLineFillLastPixelMode) ---
|
|
|
|
|
sceGxmSetFrontStencilRef :: proc(_context: ^SceGxmContext, sref: c.uint) ---
|
|
|
|
|
sceGxmSetBackStencilRef :: proc(_context: ^SceGxmContext, sref: c.uint) ---
|
|
|
|
|
sceGxmSetFrontPointLineWidth :: proc(_context: ^SceGxmContext, width: c.uint) ---
|
|
|
|
|
sceGxmSetBackPointLineWidth :: proc(_context: ^SceGxmContext, width: c.uint) ---
|
|
|
|
|
sceGxmSetFrontPolygonMode :: proc(_context: ^SceGxmContext, mode: SceGxmPolygonMode) ---
|
|
|
|
|
sceGxmSetBackPolygonMode :: proc(_context: ^SceGxmContext, mode: SceGxmPolygonMode) ---
|
|
|
|
|
sceGxmSetFrontStencilFunc :: proc(_context: ^SceGxmContext, func: SceGxmStencilFunc, stencilFail: SceGxmStencilOp, depthFail: SceGxmStencilOp, depthPass: SceGxmStencilOp, compareMask: c.uchar, writeMask: c.uchar) ---
|
|
|
|
|
sceGxmSetBackStencilFunc :: proc(_context: ^SceGxmContext, func: SceGxmStencilFunc, stencilFail: SceGxmStencilOp, depthFail: SceGxmStencilOp, depthPass: SceGxmStencilOp, compareMask: c.uchar, writeMask: c.uchar) ---
|
|
|
|
|
sceGxmSetFrontDepthBias :: proc(_context: ^SceGxmContext, factor: c.int, units: c.int) ---
|
|
|
|
|
sceGxmSetBackDepthBias :: proc(_context: ^SceGxmContext, factor: c.int, units: c.int) ---
|
|
|
|
|
sceGxmSetTwoSidedEnable :: proc(_context: ^SceGxmContext, enable: SceGxmTwoSidedMode) ---
|
|
|
|
|
sceGxmSetViewport :: proc(_context: ^SceGxmContext, xOffset: c.float, xScale: c.float, yOffset: c.float, yScale: c.float, zOffset: c.float, zScale: c.float) ---
|
|
|
|
|
sceGxmSetWClampValue :: proc(_context: ^SceGxmContext, clampValue: c.float) ---
|
|
|
|
|
sceGxmSetWClampEnable :: proc(_context: ^SceGxmContext, enable: SceGxmWClampMode) ---
|
|
|
|
|
sceGxmSetRegionClip :: proc(_context: ^SceGxmContext, mode: SceGxmRegionClipMode, xMin: c.uint, yMin: c.uint, xMax: c.uint, yMax: c.uint) ---
|
|
|
|
|
sceGxmSetDefaultRegionClipAndViewport :: proc(_context: ^SceGxmContext, xMax: c.uint, yMax: c.uint) ---
|
|
|
|
|
sceGxmSetCullMode :: proc(_context: ^SceGxmContext, mode: SceGxmCullMode) ---
|
|
|
|
|
sceGxmSetViewportEnable :: proc(_context: ^SceGxmContext, enable: SceGxmViewportMode) ---
|
|
|
|
|
sceGxmSetWBufferEnable :: proc(_context: ^SceGxmContext, enable: SceGxmWBufferMode) ---
|
|
|
|
|
sceGxmSetFrontVisibilityTestIndex :: proc(_context: ^SceGxmContext, index: c.uint) ---
|
|
|
|
|
sceGxmSetBackVisibilityTestIndex :: proc(_context: ^SceGxmContext, index: c.uint) ---
|
|
|
|
|
sceGxmSetFrontVisibilityTestOp :: proc(_context: ^SceGxmContext, op: SceGxmVisibilityTestOp) ---
|
|
|
|
|
sceGxmSetBackVisibilityTestOp :: proc(_context: ^SceGxmContext, op: SceGxmVisibilityTestOp) ---
|
|
|
|
|
sceGxmSetFrontVisibilityTestEnable :: proc(_context: ^SceGxmContext, enable: SceGxmVisibilityTestMode) ---
|
|
|
|
|
sceGxmSetBackVisibilityTestEnable :: proc(_context: ^SceGxmContext, enable: SceGxmVisibilityTestMode) ---
|
|
|
|
|
|
|
|
|
|
sceGxmSetYuvProfile :: proc(_context: ^SceGxmContext, index: c.uint, profile: SceGxmYuvProfile ) -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmFinish :: proc(_context: ^SceGxmContext) ---
|
|
|
|
|
|
|
|
|
|
sceGxmPushUserMarker :: proc(_context: ^SceGxmContext, tag: cstring) -> c.int ---
|
|
|
|
|
sceGxmPopUserMarker :: proc(_context: ^SceGxmContext) -> c.int ---
|
|
|
|
|
sceGxmSetUserMarker :: proc(_context: ^SceGxmContext, tag: cstring) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmPadHeartbeat :: proc(#by_ptr displaySurface: SceGxmColorSurface, displaySyncObject: ^SceGxmSyncObject) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmPadTriggerGpuPaTrace :: proc() -> c.int ---
|
|
|
|
|
|
|
|
|
|
sceGxmColorSurfaceInit :: proc(surface: ^SceGxmColorSurface, colorFormat: SceGxmColorFormat, surfaceType: SceGxmColorSurfaceType, scaleMode: SceGxmColorSurfaceScaleMode, outputRegisterSize: SceGxmOutputRegisterSize, width: c.uint, height: c.uint, strideInPixels: c.uint, data: rawptr) -> c.int ---
|
|
|
|
|
sceGxmColorSurfaceInitDisabled :: proc(surface: ^SceGxmColorSurface) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceIsEnabled :: proc(#by_ptr surface: SceGxmColorSurface) -> SceBool ---
|
|
|
|
|
sceGxmColorSurfaceGetClip :: proc(#by_ptr surface: SceGxmColorSurface, xMin: ^c.uint, yMin: ^c.uint, xMax: ^c.uint, yMax: ^c.uint) ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetClip :: proc(surface: ^SceGxmColorSurface, xMin: c.uint, yMin: c.uint, xMax: c.uint, yMax: c.uint) ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetScaleMode :: proc(#by_ptr surface: SceGxmColorSurface) -> SceGxmColorSurfaceScaleMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetScaleMode :: proc(surface: ^SceGxmColorSurface, scaleMode: SceGxmColorSurfaceScaleMode) ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetData :: proc(#by_ptr surface: SceGxmColorSurface) -> rawptr ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetData :: proc(surface: ^SceGxmColorSurface, data: rawptr) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetFormat :: proc(#by_ptr surface: SceGxmColorSurface) -> SceGxmColorFormat ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetFormat :: proc(surface: ^SceGxmColorSurface, format: SceGxmColorFormat) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetType :: proc(#by_ptr surface: SceGxmColorSurface) -> SceGxmColorSurfaceType ---
|
|
|
|
|
sceGxmColorSurfaceGetStrideInPixels :: proc(#by_ptr surface: SceGxmColorSurface) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmDepthStencilSurfaceInit :: proc(surface: ^SceGxmDepthStencilSurface, depthStencilFormat: SceGxmDepthStencilFormat, surfaceType: SceGxmDepthStencilSurfaceType, strideInSamples: c.uint, depthData: rawptr, stencilData: rawptr) -> c.int ---
|
|
|
|
|
sceGxmDepthStencilSurfaceInitDisabled :: proc(surface: ^SceGxmDepthStencilSurface) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceGetBackgroundDepth :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> c.float ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDepthStencilSurfaceSetBackgroundDepth :: proc(surface: ^SceGxmDepthStencilSurface, backgroundDepth: c.float) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceGetBackgroundStencil :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> c.uchar ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDepthStencilSurfaceSetBackgroundStencil :: proc(surface: ^SceGxmDepthStencilSurface, backgroundStencil: c.uchar) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceIsEnabled :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> SceBool ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDepthStencilSurfaceSetForceLoadMode :: proc(surface: ^SceGxmDepthStencilSurface, forceLoad: SceGxmDepthStencilForceLoadMode) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceGetForceLoadMode :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> SceGxmDepthStencilForceLoadMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDepthStencilSurfaceSetForceStoreMode :: proc(surface: ^SceGxmDepthStencilSurface, forceStore: SceGxmDepthStencilForceStoreMode ) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceGetForceStoreMode :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> SceGxmDepthStencilForceStoreMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetGammaMode :: proc(#by_ptr surface: SceGxmColorSurface) -> SceGxmColorSurfaceGammaMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetGammaMode :: proc(surface: ^SceGxmColorSurface, gammaMode: SceGxmColorSurfaceGammaMode) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmColorSurfaceGetDitherMode :: proc(#by_ptr surface: SceGxmColorSurface) -> SceGxmColorSurfaceDitherMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmColorSurfaceSetDitherMode :: proc(surface: ^SceGxmColorSurface, ditherMode: SceGxmColorSurfaceDitherMode) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmDepthStencilSurfaceGetFormat :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> SceGxmDepthStencilFormat ---
|
|
|
|
|
sceGxmDepthStencilSurfaceGetStrideInSamples :: proc(#by_ptr surface: SceGxmDepthStencilSurface) -> c.uint ---
|
|
|
|
|
|
|
|
|
|
sceGxmProgramCheck :: proc(#by_ptr program: SceGxmProgram) -> c.int ---
|
|
|
|
|
sceGxmProgramGetSize :: proc(#by_ptr program: SceGxmProgram) -> c.uint ---
|
|
|
|
|
sceGxmProgramGetType :: proc(#by_ptr program: SceGxmProgram) -> SceGxmProgramType ---
|
|
|
|
|
sceGxmProgramIsDiscardUsed :: proc(#by_ptr program: SceGxmProgram) -> SceBool ---
|
|
|
|
|
sceGxmProgramIsDepthReplaceUsed :: proc(#by_ptr program: SceGxmProgram) -> SceBool ---
|
|
|
|
|
sceGxmProgramIsSpriteCoordUsed :: proc(#by_ptr program: SceGxmProgram) -> SceBool ---
|
|
|
|
|
sceGxmProgramGetDefaultUniformBufferSize :: proc(#by_ptr program: SceGxmProgram) -> c.uint ---
|
|
|
|
|
sceGxmProgramGetParameterCount :: proc(#by_ptr program: SceGxmProgram) -> c.uint ---
|
|
|
|
|
|
|
|
|
|
sceGxmProgramGetParameter :: proc(#by_ptr program: SceGxmProgram, index: c.uint) -> ^SceGxmProgramParameter ---
|
|
|
|
|
sceGxmProgramFindParameterByName :: proc(#by_ptr program: SceGxmProgram, name: cstring) -> ^SceGxmProgramParameter ---
|
|
|
|
|
sceGxmProgramFindParameterBySemantic :: proc(#by_ptr program: SceGxmProgram, semantic: SceGxmParameterSemantic, index: c.uint) -> ^SceGxmProgramParameter ---
|
|
|
|
|
sceGxmProgramParameterGetIndex :: proc(#by_ptr program: SceGxmProgram, #by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterGetCategory :: proc(#by_ptr parameter: SceGxmProgramParameter) -> SceGxmParameterCategory ---
|
|
|
|
|
sceGxmProgramParameterGetName :: proc(#by_ptr parameter: SceGxmProgramParameter) -> cstring ---
|
|
|
|
|
sceGxmProgramParameterGetSemantic :: proc(#by_ptr parameter: SceGxmProgramParameter) -> SceGxmParameterSemantic ---
|
|
|
|
|
sceGxmProgramParameterGetSemanticIndex :: proc(#by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterGetType :: proc(#by_ptr parameter: SceGxmProgramParameter) -> SceGxmParameterType ---
|
|
|
|
|
sceGxmProgramParameterGetComponentCount :: proc(#by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterGetArraySize :: proc(#by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterGetResourceIndex :: proc(#by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterGetContainerIndex :: proc(#by_ptr parameter: SceGxmProgramParameter) -> c.uint ---
|
|
|
|
|
sceGxmProgramParameterIsSamplerCube :: proc(#by_ptr parameter: SceGxmProgramParameter) -> SceBool ---
|
|
|
|
|
|
|
|
|
|
sceGxmFragmentProgramGetProgram :: proc(#by_ptr fragmentProgram: SceGxmFragmentProgram) -> ^SceGxmProgram ---
|
|
|
|
|
sceGxmVertexProgramGetProgram :: proc(#by_ptr vertexProgram: SceGxmVertexProgram) -> ^SceGxmProgram ---
|
|
|
|
|
|
|
|
|
|
sceGxmShaderPatcherCreate :: proc(#by_ptr params: SceGxmShaderPatcherParams, shaderPatcher: ^^SceGxmShaderPatcher) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmShaderPatcherSetUserData :: proc(shaderPatcher: ^SceGxmShaderPatcher, userData: rawptr) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherGetUserData :: proc(shaderPatcher: ^SceGxmShaderPatcher) -> rawptr ---
|
|
|
|
|
sceGxmShaderPatcherDestroy :: proc(shaderPatcher: ^SceGxmShaderPatcher) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmShaderPatcherRegisterProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, #by_ptr programHeader: SceGxmProgram, programId: ^SceGxmShaderPatcherId) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmShaderPatcherUnregisterProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, programId: SceGxmShaderPatcherId) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherForceUnregisterProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, programId: SceGxmShaderPatcherId) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherGetProgramFromId :: proc(programId: SceGxmShaderPatcherId) -> ^SceGxmProgram ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmShaderPatcherSetAuxiliarySurface :: proc(shaderPatcher: ^SceGxmShaderPatcher, auxSurfaceIndex: c.uint, #by_ptr auxSurface: SceGxmAuxiliarySurface) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherCreateVertexProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, programId: SceGxmShaderPatcherId, attributes: [^]SceGxmVertexAttribute, attributeCount: c.uint, streams: [^]SceGxmVertexStream, streamCount: c.uint, vertexProgram: ^^SceGxmVertexProgram) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherCreateFragmentProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, programId: SceGxmShaderPatcherId, outputFormat: SceGxmOutputRegisterFormat, multisampleMode: SceGxmMultisampleMode, #by_ptr blendInfo: SceGxmBlendInfo, #by_ptr vertexProgram: SceGxmProgram, fragmentProgram: ^^SceGxmFragmentProgram) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmShaderPatcherCreateMaskUpdateFragmentProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, fragmentProgram: ^^SceGxmFragmentProgram) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherAddRefVertexProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, vertexProgram: ^SceGxmVertexProgram) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherAddRefFragmentProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, fragmentProgram: ^SceGxmFragmentProgram) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherGetVertexProgramRefCount :: proc(shaderPatcher: ^SceGxmShaderPatcher, fragmentProgram: ^SceGxmVertexProgram, count: ^c.uint) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherGetFragmentProgramRefCount :: proc(shaderPatcher: ^SceGxmShaderPatcher, fragmentProgram: ^SceGxmFragmentProgram, count: ^c.uint) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherReleaseVertexProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, vertexProgram: ^SceGxmVertexProgram) -> c.int ---
|
|
|
|
|
sceGxmShaderPatcherReleaseFragmentProgram :: proc(shaderPatcher: ^SceGxmShaderPatcher, fragmentProgram: ^SceGxmFragmentProgram) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmShaderPatcherGetHostMemAllocated :: proc(#by_ptr shaderPatcher: SceGxmShaderPatcher) -> c.uint ---
|
|
|
|
|
sceGxmShaderPatcherGetBufferMemAllocated :: proc(#by_ptr shaderPatcher: SceGxmShaderPatcher) -> c.uint ---
|
|
|
|
|
sceGxmShaderPatcherGetVertexUsseMemAllocated :: proc(#by_ptr shaderPatcher: SceGxmShaderPatcher) -> c.uint ---
|
|
|
|
|
sceGxmShaderPatcherGetFragmentUsseMemAllocated :: proc(#by_ptr shaderPatcher: SceGxmShaderPatcher) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureInitSwizzled :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, mipCount: c.uint) -> c.int ---
|
|
|
|
|
sceGxmTextureInitSwizzledArbitrary :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, mipCount: c.uint) -> c.int ---
|
|
|
|
|
sceGxmTextureInitLinear :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, mipCount: c.uint) -> c.int ---
|
|
|
|
|
sceGxmTextureInitLinearStrided :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, byteStride: c.uint) -> c.int ---
|
|
|
|
|
sceGxmTextureInitTiled :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, mipCount: c.uint) -> c.int ---
|
|
|
|
|
sceGxmTextureInitCube :: proc(texture: ^SceGxmTexture, data: rawptr, texFormat: SceGxmTextureFormat, width: c.uint, height: c.uint, mipCount: c.uint) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetType :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureType ---
|
|
|
|
|
sceGxmTextureValidate :: proc(#by_ptr texture: SceGxmTexture) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetMinFilter :: proc(texture: ^SceGxmTexture, minFilter: SceGxmTextureFilter) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetMinFilter :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureFilter ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetMagFilter :: proc(texture: ^SceGxmTexture, magFilter: SceGxmTextureFilter) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetMagFilter :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureFilter ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetMipFilter :: proc(texture: ^SceGxmTexture, mipFilter: SceGxmTextureMipFilter) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetMipFilter :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureMipFilter ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetUAddrMode :: proc(texture: ^SceGxmTexture, addrMode: SceGxmTextureAddrMode) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetUAddrMode :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureAddrMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetVAddrMode :: proc(texture: ^SceGxmTexture, addrMode: SceGxmTextureAddrMode) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetVAddrMode :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureAddrMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetFormat :: proc(texture: ^SceGxmTexture, texFormat: SceGxmTextureFormat ) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetFormat :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureFormat ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetLodBias :: proc(texture: ^SceGxmTexture, bias: c.uint) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetLodBias :: proc(#by_ptr texture: SceGxmTexture) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetStride :: proc(texture: ^SceGxmTexture, byteStride: c.uint) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetStride :: proc(#by_ptr texture: SceGxmTexture) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetWidth :: proc(texture: ^SceGxmTexture, width: c.uint) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetWidth :: proc(#by_ptr texture: SceGxmTexture) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetHeight :: proc(texture: ^SceGxmTexture, height: c.uint) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetHeight :: proc(#by_ptr texture: SceGxmTexture) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetData :: proc(texture: ^SceGxmTexture, data: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetData :: proc(#by_ptr texture: SceGxmTexture) -> rawptr ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetMipmapCount :: proc(texture: ^SceGxmTexture, mipCount: c.uint) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetMipmapCount :: proc(#by_ptr texture: SceGxmTexture) -> c.uint ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
|
|
|
|
sceGxmTextureSetPalette :: proc(texture: ^SceGxmTexture, paletteData: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetPalette :: proc(#by_ptr texture: SceGxmTexture) -> rawptr ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTextureGetGammaMode :: proc(#by_ptr texture: SceGxmTexture) -> SceGxmTextureGammaMode ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmTextureSetGammaMode :: proc(texture: ^SceGxmTexture, gammaMode: SceGxmTextureGammaMode) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmGetPrecomputedVertexStateSize :: proc(#by_ptr vertexProgram: SceGxmVertexProgram) -> c.uint ---
|
|
|
|
|
sceGxmPrecomputedVertexStateInit :: proc(precomputedState: ^SceGxmPrecomputedVertexState, #by_ptr vertexProgram: SceGxmVertexProgram, memBlock: rawptr) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedVertexStateSetDefaultUniformBuffer :: proc(precomputedState: ^SceGxmPrecomputedVertexState, defaultBuffer: rawptr) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmPrecomputedVertexStateGetDefaultUniformBuffer :: proc(#by_ptr precomputedState: SceGxmPrecomputedVertexState) -> rawptr ---
|
|
|
|
|
sceGxmPrecomputedVertexStateSetAllTextures :: proc(precomputedState: ^SceGxmPrecomputedVertexState, #by_ptr textures: SceGxmTexture) -> c.int ---
|
|
|
|
|
sceGxmPrecomputedVertexStateSetTexture :: proc(precomputedState: ^SceGxmPrecomputedVertexState, textureIndex: c.uint, #by_ptr texture: SceGxmTexture) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedVertexStateSetAllUniformBuffers :: proc(precomputedState: ^SceGxmPrecomputedVertexState, bufferDataArray: ^rawptr) -> c.int ---
|
|
|
|
|
sceGxmPrecomputedVertexStateSetUniformBuffer :: proc(precomputedState: ^SceGxmPrecomputedVertexState, bufferIndex: c.uint, bufferData: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmGetPrecomputedFragmentStateSize :: proc(#by_ptr fragmentProgram: SceGxmFragmentProgram) -> c.uint ---
|
|
|
|
|
sceGxmPrecomputedFragmentStateInit :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, #by_ptr fragmentProgram: SceGxmFragmentProgram, memBlock: rawptr) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedFragmentStateSetDefaultUniformBuffer :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, defaultBuffer: rawptr) ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmPrecomputedFragmentStateGetDefaultUniformBuffer :: proc(#by_ptr precomputedState: SceGxmPrecomputedFragmentState) -> rawptr ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedFragmentStateSetAllTextures :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, textureArray: [^]SceGxmTexture) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmPrecomputedFragmentStateSetTexture :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, textureIndex: c.uint, #by_ptr texture: SceGxmTexture) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedFragmentStateSetAllUniformBuffers :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, bufferDataArray: ^rawptr) -> c.int ---
|
|
|
|
|
sceGxmPrecomputedFragmentStateSetUniformBuffer :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, bufferIndex: c.uint, bufferData: rawptr) -> c.int ---
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmPrecomputedFragmentStateSetAllAuxiliarySurfaces :: proc(precomputedState: ^SceGxmPrecomputedFragmentState, auxSurfaceArray: [^]SceGxmAuxiliarySurface) -> c.int ---
|
|
|
|
|
sceGxmGetPrecomputedDrawSize :: proc(#by_ptr vertexProgram: SceGxmVertexProgram) -> c.uint ---
|
|
|
|
|
sceGxmPrecomputedDrawInit :: proc(precomputedDraw: ^SceGxmPrecomputedDraw, #by_ptr vertexProgram: SceGxmVertexProgram, memBlock: rawptr) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmPrecomputedDrawSetAllVertexStreams :: proc(precomputedDraw: ^SceGxmPrecomputedDraw, streamDataArray: ^rawptr) -> c.int ---
|
|
|
|
|
sceGxmPrecomputedDrawSetVertexStream :: proc(precomputedDraw: ^SceGxmPrecomputedDraw, streamIndex: c.uint, streamData: rawptr) -> c.int ---
|
|
|
|
|
sceGxmPrecomputedDrawSetParams :: proc(precomputedDraw: ^SceGxmPrecomputedDraw, primType: SceGxmPrimitiveType, indexType: SceGxmIndexFormat, indexData: rawptr, indexCount: c.uint) ---
|
|
|
|
|
sceGxmPrecomputedDrawSetParamsInstanced :: proc(precomputedDraw: ^SceGxmPrecomputedDraw, primType: SceGxmPrimitiveType, indexType: SceGxmIndexFormat, indexData: rawptr, indexCount: c.uint, indexWrap: c.uint) ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmGetRenderTargetMemSize :: proc(#by_ptr params: SceGxmRenderTargetParams, driverMemSize: ^c.uint) -> c.int ---
|
|
|
|
|
sceGxmCreateRenderTarget :: proc(#by_ptr params: SceGxmRenderTargetParams, renderTarget: ^^SceGxmRenderTarget) -> c.int ---
|
|
|
|
|
sceGxmRenderTargetGetHostMem :: proc(#by_ptr renderTarget: SceGxmRenderTarget, hostMem: ^rawptr) -> c.int ---
|
|
|
|
|
sceGxmRenderTargetGetDriverMemBlock :: proc(#by_ptr renderTarget: SceGxmRenderTarget, driverMemBlock: ^SceUID) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmDestroyRenderTarget :: proc(renderTarget: ^SceGxmRenderTarget) -> c.int ---
|
|
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmSetUniformDataF :: proc(uniformBuffer: rawptr, #by_ptr parameter: SceGxmProgramParameter, componentOffset: c.uint, componentCount: c.uint, sourceData: ^c.float) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
|
2024-05-13 19:02:17 +02:00
|
|
|
sceGxmTransferCopy :: proc(width: c.uint32_t, height: c.uint32_t, colorKeyValue: c.uint32_t, colorKeyMask: c.uint32_t, colorKeyMode: SceGxmTransferColorKeyMode, srcFormat: SceGxmTransferFormat, srcType: SceGxmTransferType, srcAddress: rawptr, srcX: c.uint32_t, srcY: c.uint32_t, srcStride: c.int32_t, destFormat: SceGxmTransferFormat, destType: SceGxmTransferType, destAddress: rawptr, destX: c.uint32_t, destY: c.uint32_t, destStride: c.int32_t, syncObject: ^SceGxmSyncObject, syncFlags: c.uint32_t, #by_ptr notification: SceGxmNotification) -> c.int ---
|
|
|
|
|
sceGxmTransferDownscale :: proc(srcFormat: SceGxmTransferFormat, srcAddress: rawptr, srcX: c.uint, srcY: c.uint, srcWidth: c.uint, srcHeight: c.uint, srcStride: c.int, destFormat: SceGxmTransferFormat, destAddress: rawptr, destX: c.uint, destY: c.uint, destStride: c.int, syncObject: ^SceGxmSyncObject, syncFlags: c.uint, #by_ptr notification: SceGxmNotification) -> c.int ---
|
|
|
|
|
sceGxmTransferFill :: proc(color: c.uint32_t, destFormat: SceGxmTransferFormat, destAddress: rawptr, destX: c.uint32_t, destY: c.uint32_t, destWidth: c.uint32_t, destHeight: c.uint32_t, destStride: c.int32_t, syncObject: ^SceGxmSyncObject, syncFlags: c.uint32_t, #by_ptr notification: SceGxmNotification) -> c.int ---
|
2024-05-13 16:04:23 +02:00
|
|
|
sceGxmTransferFinish :: proc() -> c.int ---
|
2024-05-11 23:24:13 +02:00
|
|
|
}
|