|
libultraship
Reimplementations of libultra (N64 SDK) functions for modern hardware
|
Classes | |
| union | AmbientData |
| struct | ColorCombiner |
| struct | Coord |
| Integer 2D coordinate used for depth sampling requests. More... | |
| struct | CoordUniforms |
| Buffer payload used for batched pixel-depth coordinate queries. More... | |
| class | DisplayList |
| struct | DrawUniforms |
| Per-draw uniforms consumed by Metal shader programs. More... | |
| union | F3DAmbient |
| struct | F3DAmbient_t |
| union | F3DGfx |
| struct | F3DGwords |
| union | F3DHilite |
| struct | F3DHilite_t |
| union | F3DLight |
| struct | F3DLight_t |
| struct | F3DLights0 |
| struct | F3DLights1 |
| struct | F3DLights2 |
| struct | F3DLights3 |
| struct | F3DLights4 |
| struct | F3DLights5 |
| struct | F3DLights6 |
| struct | F3DLights7 |
| struct | F3DLightsn |
| struct | F3DLookAt |
| struct | F3DPointLight_t |
| struct | F3DTrace |
| struct | F3DTri |
| union | F3DuObjBg |
| struct | F3DuObjBg_t |
| union | F3DuObjMtx |
| struct | F3DuObjMtx_t |
| struct | F3DuObjScaleBg_t |
| union | F3DuObjSprite |
| struct | F3DuObjSprite_t |
| union | F3DuObjSubMtx |
| struct | F3DuObjSubMtx_t |
| struct | F3DuObjTxSprite |
| union | F3DuObjTxtr |
| struct | F3DuObjTxtrBlock_t |
| struct | F3DuObjTxtrTile_t |
| struct | F3DuObjTxtrTLUT_t |
| union | F3DuSprite |
| struct | F3DuSprite_t |
| union | F3DVp |
| struct | F3DVp_t |
| union | F3DVtx |
| struct | F3DVtx_t |
| struct | F3DVtx_tn |
| class | Fast3dGui |
| Concrete Gui subclass for the Fast3D rendering backend. More... | |
| class | Fast3dWindow |
| Fast3D-based window and rendering context. More... | |
| class | FastMouseStateManager |
| Fast3D-specific mouse-state manager. More... | |
| struct | FBInfo |
| struct | FramebufferDX11 |
| Direct3D 11 framebuffer attachments and metadata. More... | |
| struct | FramebufferMetal |
| Framebuffer state for an offscreen or onscreen Metal render target. More... | |
| struct | FramebufferOGL |
| OpenGL framebuffer object and associated attachments. More... | |
| struct | FrameUniforms |
| Per-frame uniforms consumed by Metal shader programs. More... | |
| struct | GfxClipParameters |
| class | GfxDebugger |
| Graphics display-list debugger for the Fast3D renderer. More... | |
| struct | GfxDimensions |
| struct | GfxExecStack |
| class | GfxRenderingAPI |
| class | GfxRenderingAPIDX11 |
| Direct3D 11 implementation of the Fast3D rendering backend. More... | |
| class | GfxRenderingAPIMetal |
| Metal implementation of the Fast3D rendering API. More... | |
| class | GfxRenderingAPIOGL |
| OpenGL/OpenGLES implementation of the Fast3D rendering API. More... | |
| struct | GfxTextureCache |
| class | GfxWindowBackend |
| class | GfxWindowBackendDXGI |
| DXGI/Win32 window backend used by the Fast3D renderer on Windows. More... | |
| class | GfxWindowBackendSDL2 |
| SDL2 implementation of the Fast3D window/input backend. More... | |
| struct | GuiWindowInitData |
| Backend-specific data required to initialise the ImGui rendering context. More... | |
| struct | hash_pair_ff |
| class | Interpreter |
| class | Light |
| union | LightData |
| struct | LightEntry |
| struct | LightN64 |
| struct | LoadedVertex |
| struct | MaskedTextureEntry |
| class | Matrix |
| struct | PerDrawCB |
| Per-draw shader constants describing bound texture metadata. More... | |
| struct | PerFrameCB |
| Per-frame shader constants shared across draw calls. More... | |
| struct | PerPrimDepthCB |
| Per-draw depth constants used by primitive-depth rendering paths. More... | |
| struct | PointLightN64 |
| struct | RawTexMetadata |
| struct | RDP |
| struct | RenderingState |
| class | ResourceFactoryBinaryDisplayListV0 |
| class | ResourceFactoryBinaryLightV0 |
| class | ResourceFactoryBinaryMatrixV0 |
| class | ResourceFactoryBinaryTextureV0 |
| class | ResourceFactoryBinaryTextureV1 |
| class | ResourceFactoryBinaryVertexV0 |
| class | ResourceFactoryDisplayList |
| class | ResourceFactoryXMLDisplayListV0 |
| class | ResourceFactoryXMLVertexV0 |
| struct | RGBA |
| struct | RSP |
| struct | ShaderProgram |
| OpenGL shader program metadata cached by the Fast3D renderer. More... | |
| struct | ShaderProgramD3D11 |
| Compiled D3D11 shader program and pipeline-state cache entry. More... | |
| struct | ShaderProgramMetal |
| Cached Metal shader program and pipeline variants for one combiner key. More... | |
| class | Texture |
| struct | TextureCacheKey |
| struct | TextureCacheMapIter |
| struct | TextureCacheValue |
| struct | TextureData |
| Runtime Direct3D 11 texture state tracked by the renderer. More... | |
| struct | TextureDataMetal |
| Metal texture object metadata tracked by the renderer cache. More... | |
| struct | TextureInfo |
| Cached texture metadata tracked per texture id. More... | |
| class | Vertex |
| union | WindowEvent |
| Platform-agnostic wrapper around a window system event. More... | |
| struct | XYWidthHeight |
Typedefs | |
| typedef std::unordered_map< TextureCacheKey, struct TextureCacheValue, TextureCacheKey::Hasher > | TextureCacheMap |
| typedef std::pair< const TextureCacheKey, struct TextureCacheValue > | TextureCacheNode |
| typedef enum Fast::Attribute | Attribute |
| typedef union Fast::F3DVtx | F3DVtx |
| typedef struct Fast::F3DuSprite_t | F3DuSprite_t |
| typedef union Fast::F3DGfx | F3DGfx |
Enumerations | |
| enum | FilteringMode { FILTER_THREE_POINT , FILTER_LINEAR , FILTER_NONE } |
| enum | WindowBackend { FAST3D_DXGI_DX11 = 1 , FAST3D_SDL_OPENGL = 2 , FAST3D_SDL_METAL = 3 } |
| Identifies the graphics/windowing backend used by Fast3dWindow. More... | |
| enum | Attribute { MTX_PROJECTION , MTX_LOAD , MTX_PUSH , MTX_NOPUSH , CULL_FRONT , CULL_BACK , CULL_BOTH , MV_VIEWPORT , MV_LIGHT } |
| enum class | ResourceType { None = 0x00000000 , DisplayList = 0x4F444C54 , Light = 0x46669697 , Matrix = 0x4F4D5458 , Texture = 0x4F544558 , Vertex = 0x4F565458 } |
| enum class | TextureType { Error = 0 , RGBA32bpp = 1 , RGBA16bpp = 2 , Palette4bpp = 3 , Palette8bpp = 4 , Grayscale4bpp = 5 , Grayscale8bpp = 6 , GrayscaleAlpha4bpp = 7 , GrayscaleAlpha8bpp = 8 , GrayscaleAlpha16bpp = 9 } |
Functions | |
| std::string | gfx_direct3d_common_build_shader (size_t &numFloats, const CCFeatures &cc_features, bool include_root_signature, bool three_point_filtering, bool use_srgb) |
| Builds the HLSL shader source for the requested combiner features. | |
| constexpr int16_t | ShaderIdUnmask (int id) |
| void | gfx_set_target_ucode (UcodeHandlers ucode) |
| void | gfx_push_current_dir (char *path) |
| int32_t | gfx_check_image_signature (const char *imgData) |
| const char * | gfx_get_shader (int16_t id) |
| const char * | GfxGetOpcodeName (int8_t opcode) |
Variables | |
| constexpr size_t | MAX_SEGMENT_POINTERS = 16 |
| constexpr size_t | SHADER_ID_SHIFT = 17 |
| GfxExecStack | g_exec_stack |
| constexpr int8_t | RDP_G_SETCIMG = OPCODE(0xff) |
| constexpr int8_t | RDP_G_SETZIMG = OPCODE(0xfe) |
| constexpr int8_t | RDP_G_SETTIMG = OPCODE(0xfd) |
| constexpr int8_t | RDP_G_SETCOMBINE = OPCODE(0xfc) |
| constexpr int8_t | RDP_G_SETENVCOLOR = OPCODE(0xfb) |
| constexpr int8_t | RDP_G_SETPRIMCOLOR = OPCODE(0xfa) |
| constexpr int8_t | RDP_G_SETBLENDCOLOR = OPCODE(0xf9) |
| constexpr int8_t | RDP_G_SETFOGCOLOR = OPCODE(0xf8) |
| constexpr int8_t | RDP_G_SETFILLCOLOR = OPCODE(0xf7) |
| constexpr int8_t | RDP_G_FILLRECT = OPCODE(0xf6) |
| constexpr int8_t | RDP_G_SETTILE = OPCODE(0xf5) |
| constexpr int8_t | RDP_G_LOADTILE = OPCODE(0xf4) |
| constexpr int8_t | RDP_G_LOADBLOCK = OPCODE(0xf3) |
| constexpr int8_t | RDP_G_SETTILESIZE = OPCODE(0xf2) |
| constexpr int8_t | RDP_G_LOADTLUT = OPCODE(0xf0) |
| constexpr int8_t | RDP_G_RDPSETOTHERMODE = OPCODE(0xef) |
| constexpr int8_t | RDP_G_SETPRIMDEPTH = OPCODE(0xee) |
| constexpr int8_t | RDP_G_SETSCISSOR = OPCODE(0xed) |
| constexpr int8_t | RDP_G_SETCONVERT = OPCODE(0xec) |
| constexpr int8_t | RDP_G_SETKEYR = OPCODE(0xeb) |
| constexpr int8_t | RDP_G_SETKEYGB = OPCODE(0xea) |
| constexpr int8_t | RDP_G_RDPFULLSYNC = OPCODE(0xe9) |
| constexpr int8_t | RDP_G_RDPTILESYNC = OPCODE(0xe8) |
| constexpr int8_t | RDP_G_RDPPIPESYNC = OPCODE(0xe7) |
| constexpr int8_t | RDP_G_RDPLOADSYNC = OPCODE(0xe6) |
| constexpr int8_t | RDP_G_TEXRECTFLIP = OPCODE(0xe5) |
| constexpr int8_t | RDP_G_TEXRECT = OPCODE(0xe4) |
| constexpr int8_t | OTR_G_SETTIMG_OTR_HASH = OPCODE(0x20) |
| constexpr int8_t | OTR_G_SETFB = OPCODE(0x21) |
| constexpr int8_t | OTR_G_RESETFB = OPCODE(0x22) |
| constexpr int8_t | OTR_G_SETTIMG_FB = OPCODE(0x23) |
| constexpr int8_t | OTR_G_VTX_OTR_FILEPATH = OPCODE(0x24) |
| constexpr int8_t | OTR_G_SETTIMG_OTR_FILEPATH = OPCODE(0x25) |
| constexpr int8_t | OTR_G_TRI1_OTR = OPCODE(0x26) |
| constexpr int8_t | OTR_G_DL_OTR_FILEPATH = OPCODE(0x27) |
| constexpr int8_t | OTR_G_PUSHCD = OPCODE(0x28) |
| constexpr int8_t | OTR_G_MTX_OTR_FILEPATH = OPCODE(0x29) |
| constexpr int8_t | OTR_G_DL_OTR_HASH = OPCODE(0x31) |
| constexpr int8_t | OTR_G_VTX_OTR_HASH = OPCODE(0x32) |
| constexpr int8_t | OTR_G_MARKER = OPCODE(0x33) |
| constexpr int8_t | OTR_G_INVALTEXCACHE = OPCODE(0x34) |
| constexpr int8_t | OTR_G_BRANCH_Z_OTR = OPCODE(0x35) |
| constexpr int8_t | OTR_G_MTX_OTR = OPCODE(0x36) |
| constexpr int8_t | OTR_G_TEXRECT_WIDE = OPCODE(0x37) |
| constexpr int8_t | OTR_G_FILLWIDERECT = OPCODE(0x38) |
| constexpr int8_t | OTR_G_SETGRAYSCALE = OPCODE(0x39) |
| constexpr int8_t | OTR_G_EXTRAGEOMETRYMODE = OPCODE(0x3a) |
| constexpr int8_t | OTR_G_COPYFB = OPCODE(0x3b) |
| constexpr int8_t | OTR_G_IMAGERECT = OPCODE(0x3c) |
| constexpr int8_t | OTR_G_DL_INDEX = OPCODE(0x3d) |
| constexpr int8_t | OTR_G_READFB = OPCODE(0x3e) |
| constexpr int8_t | OTR_G_REGBLENDEDTEX = OPCODE(0x3f) |
| constexpr int8_t | OTR_G_SETINTENSITY = OPCODE(0x40) |
| constexpr int8_t | OTR_G_MOVEMEM_HASH = OPCODE(0x42) |
| constexpr int8_t | OTR_G_PUSH_SHADER = OPCODE(0x43) |
| constexpr int8_t | OTR_G_POP_SHADER = OPCODE(0x44) |
| constexpr int8_t | RDP_G_SETTILESIZE_INTERP = OPCODE(0x45) |
| constexpr int8_t | RDP_G_SETTARGETINTERPINDEX = OPCODE(0x46) |
| constexpr int8_t | RDP_G_LOADBLOCK_WIDE = OPCODE(0x47) |
| constexpr int8_t | RDP_G_VTX_WIDE = OPCODE(0x48) |
| constexpr int8_t | RDP_G_TRI1_WIDE = OPCODE(0x49) |
| typedef enum Fast::Attribute Fast::Attribute |
| typedef union Fast::F3DGfx Fast::F3DGfx |
| typedef struct Fast::F3DuSprite_t Fast::F3DuSprite_t |
| typedef union Fast::F3DVtx Fast::F3DVtx |
| typedef std::unordered_map<TextureCacheKey, struct TextureCacheValue, TextureCacheKey::Hasher> Fast::TextureCacheMap |
| typedef std::pair<const TextureCacheKey, struct TextureCacheValue> Fast::TextureCacheNode |
| enum Fast::Attribute |
| enum Fast::FilteringMode |
|
strong |
|
strong |
| enum Fast::WindowBackend |
Identifies the graphics/windowing backend used by Fast3dWindow.
These are the positive backend IDs registered by Fast3dWindow. The general convention for window backend IDs (int32_t) is: negative — no Window backend available (e.g. Window is not initialized) zero — no Window backend in use positive — backend defined by the Window subclass
| Enumerator | |
|---|---|
| FAST3D_DXGI_DX11 | |
| FAST3D_SDL_OPENGL | |
| FAST3D_SDL_METAL | |
| int32_t Fast::gfx_check_image_signature | ( | const char * | imgData | ) |
| std::string Fast::gfx_direct3d_common_build_shader | ( | size_t & | numFloats, |
| const CCFeatures & | cc_features, | ||
| bool | include_root_signature, | ||
| bool | three_point_filtering, | ||
| bool | use_srgb | ||
| ) |
Builds the HLSL shader source for the requested combiner features.
| const char * Fast::gfx_get_shader | ( | int16_t | id | ) |
| void Fast::gfx_push_current_dir | ( | char * | path | ) |
| void Fast::gfx_set_target_ucode | ( | UcodeHandlers | ucode | ) |
| const char * Fast::GfxGetOpcodeName | ( | int8_t | opcode | ) |
|
constexpr |
|
extern |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |