|
libultraship
Reimplementations of libultra (N64 SDK) functions for modern hardware
|
OpenGL/OpenGLES implementation of the Fast3D rendering API. More...
#include <gfx_opengl.h>
Public Member Functions | |
| GfxRenderingAPIOGL (std::shared_ptr< Ship::ConsoleVariable > consoleVariable=nullptr, std::shared_ptr< Ship::ResourceManager > resourceManager=nullptr) | |
| Constructs the OpenGL renderer with optional shared dependencies. | |
| ~GfxRenderingAPIOGL () override=default | |
GfxRenderingAPI implementation | |
| const char * | GetName () override |
| int | GetMaxTextureSize () override |
| GfxClipParameters | GetClipParameters () override |
| void | UnloadShader (ShaderProgram *oldPrg) override |
| void | LoadShader (ShaderProgram *newPrg) override |
| ShaderProgram * | CreateAndLoadNewShader (uint64_t shaderId0, uint64_t shaderId1) override |
| ShaderProgram * | LookupShader (uint64_t shaderId0, uint64_t shaderId1) override |
| void | ShaderGetInfo (ShaderProgram *prg, uint8_t *numInputs, bool usedTextures[2]) override |
| void | ClearShaderCache () override |
| uint32_t | NewTexture () override |
| void | SelectTexture (int tile, uint32_t textureId) override |
| void | UploadTexture (const uint8_t *rgba32Buf, uint32_t width, uint32_t height) override |
| void | SetSamplerParameters (int sampler, bool linear_filter, uint32_t cms, uint32_t cmt) override |
| void | SetDepthTestAndMask (bool depth_test, bool z_upd) override |
| void | SetCurrentPrimDepth (float depth) override |
| void | SetZmodeDecal (bool decal) override |
| void | SetViewport (int x, int y, int width, int height) override |
| void | SetScissor (int x, int y, int width, int height) override |
| void | SetUseAlpha (bool useAlpha) override |
| void | DrawTriangles (float buf_vbo[], size_t buf_vbo_len, size_t buf_vbo_num_tris) override |
| void | Init () override |
| void | OnResize () override |
| void | StartFrame () override |
| void | EndFrame () override |
| void | FinishRender () override |
| int | CreateFramebuffer () override |
| void | UpdateFramebufferParameters (int fb_id, uint32_t width, uint32_t height, uint32_t msaa_level, bool opengl_invertY, bool render_target, bool has_depth_buffer, bool can_extract_depth) override |
| void | StartDrawToFramebuffer (int fbId, float noiseScale) override |
| void | CopyFramebuffer (int fbDstId, int fbSrcId, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1) override |
| void | ClearFramebuffer (bool color, bool depth) override |
| void | ClearDepthRegion (int x, int y, int w, int h) override |
| void | ReadFramebufferToCPU (int fbId, uint32_t width, uint32_t height, uint16_t *rgba16Buf) override |
| void | ResolveMSAAColorBuffer (int fbIdTarger, int fbIdSrc) override |
| std::unordered_map< std::pair< float, float >, uint16_t, hash_pair_ff > | GetPixelDepth (int fb_id, const std::set< std::pair< float, float > > &coordinates) override |
| void * | GetFramebufferTextureId (int fbId) override |
| void | SelectTextureFb (int fbId) override |
| void | DeleteTexture (uint32_t texId) override |
| void | SetTextureFilter (FilteringMode mode) override |
| FilteringMode | GetTextureFilter () override |
| void | SetSrgbMode () override |
| ImTextureID | GetTextureById (int id) override |
Public Member Functions inherited from Fast::GfxRenderingAPI | |
| virtual | ~GfxRenderingAPI ()=default |
Additional Inherited Members | |
Protected Attributes inherited from Fast::GfxRenderingAPI | |
| int8_t | mCurrentDepthTest = 0 |
| int8_t | mCurrentDepthMask = 0 |
| int8_t | mCurrentZmodeDecal = 0 |
| int8_t | mLastDepthTest = -1 |
| int8_t | mLastDepthMask = -1 |
| int8_t | mLastZmodeDecal = -1 |
| bool | mSrgbMode = false |
| float | mCurrentPrimDepth = 0.0f |
| bool | mPrimDepthDirty = true |
OpenGL/OpenGLES implementation of the Fast3D rendering API.
| Fast::GfxRenderingAPIOGL::GfxRenderingAPIOGL | ( | std::shared_ptr< Ship::ConsoleVariable > | consoleVariable = nullptr, |
| std::shared_ptr< Ship::ResourceManager > | resourceManager = nullptr |
||
| ) |
Constructs the OpenGL renderer with optional shared dependencies.
|
overridedefault |
|
overridevirtual |
Reimplemented from Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.
|
overridevirtual |
Implements Fast::GfxRenderingAPI.