libultraship
Reimplementations of libultra (N64 SDK) functions for modern hardware
Loading...
Searching...
No Matches
Fast::Fast3dWindow Class Reference

Fast3D-based window and rendering context. More...

#include <Fast3dWindow.h>

Inheritance diagram for Fast::Fast3dWindow:
[legend]
Collaboration diagram for Fast::Fast3dWindow:
[legend]

Public Member Functions

 Fast3dWindow (std::shared_ptr< Ship::Config > config=nullptr, std::shared_ptr< Ship::ConsoleVariable > consoleVariables=nullptr, std::shared_ptr< Ship::ControlDeck > controlDeck=nullptr)
 
 Fast3dWindow (std::vector< std::shared_ptr< Ship::GuiWindow > > guiWindows, std::shared_ptr< Ship::Config > config=nullptr, std::shared_ptr< Ship::ConsoleVariable > consoleVariables=nullptr, std::shared_ptr< Ship::ControlDeck > controlDeck=nullptr)
 
 Fast3dWindow (std::shared_ptr< Ship::Gui > gui, std::shared_ptr< Ship::Config > config=nullptr, std::shared_ptr< Ship::ConsoleVariable > consoleVariables=nullptr, std::shared_ptr< Ship::ControlDeck > controlDeck=nullptr)
 
 Fast3dWindow (std::shared_ptr< Ship::Gui > gui, std::shared_ptr< FastMouseStateManager > mouseStateManager, std::shared_ptr< Ship::Config > config=nullptr, std::shared_ptr< Ship::ConsoleVariable > consoleVariables=nullptr, std::shared_ptr< Ship::ControlDeck > controlDeck=nullptr)
 
 ~Fast3dWindow ()
 
void Close () override
 Requests that the window and application close.
 
void RunGuiOnly () override
 Runs a single GUI-only tick without executing game logic.
 
void StartFrame () override
 Begins a new render frame; clears the back buffer and sets up state.
 
void EndFrame () override
 Ends the current render frame and presents it to the display.
 
bool IsFrameReady () override
 Returns true if the renderer is ready to begin a new frame.
 
void HandleEvents () override
 Processes pending OS/input events.
 
void SetCursorVisibility (bool visible) override
 Shows or hides the OS mouse cursor over the window.
 
uint32_t GetWidth () override
 Returns the current width of the window client area in pixels.
 
uint32_t GetHeight () override
 Returns the current height of the window client area in pixels.
 
int32_t GetPosX () override
 Returns the X position of the window's top-left corner on the desktop.
 
int32_t GetPosY () override
 Returns the Y position of the window's top-left corner on the desktop.
 
float GetAspectRatio () override
 Returns the current aspect ratio (width / height) of the window.
 
void SetMousePos (Ship::Coords pos) override
 Moves the mouse cursor to the given window-relative coordinates.
 
Ship::Coords GetMousePos () override
 Returns the current mouse cursor position relative to the window.
 
Ship::Coords GetMouseDelta () override
 Returns the mouse movement delta since the last frame.
 
Ship::CoordsF GetMouseWheel () override
 Returns the mouse wheel scroll delta for the current frame.
 
bool GetMouseState (Ship::MouseBtn btn) override
 Returns whether the given mouse button is currently pressed.
 
void SetMouseCapture (bool capture) override
 Enables or disables mouse capture (relative/locked mouse mode).
 
bool IsMouseCaptured () override
 Returns true if the mouse is currently captured.
 
uint32_t GetCurrentRefreshRate () override
 Returns the display's current refresh rate in Hz.
 
bool SupportsWindowedFullscreen () override
 Returns true if the backend supports a windowed-fullscreen (borderless) mode.
 
bool CanDisableVerticalSync () override
 Returns true if vertical sync can be disabled on this backend.
 
void SetResolutionMultiplier (float multiplier) override
 Sets the internal rendering resolution multiplier.
 
void SetMsaaLevel (uint32_t value) override
 Sets the MSAA sample count.
 
void SetFullscreen (bool isFullscreen) override
 Switches between fullscreen and windowed mode.
 
bool IsFullscreen () override
 Returns true if the window is currently in fullscreen mode.
 
bool IsRunning () override
 Returns true while the window / render loop is running.
 
uintptr_t GetGfxFrameBuffer () override
 Returns a handle to the graphics API framebuffer object.
 
const char * GetKeyName (int32_t scancode) override
 Returns the human-readable name for a keyboard scancode.
 
std::string GetWindowBackendName () override
 Returns a human-readable name for the current window backend.
 
void SetCurrentDimensions (uint32_t width, uint32_t height) override
 Sets the window dimensions (size and position) and applies them immediately.
 
void SetCurrentDimensions (uint32_t width, uint32_t height, int32_t posX, int32_t posY) override
 Sets the window dimensions and position and applies them immediately.
 
void SetCurrentDimensions (bool isFullscreen, uint32_t width, uint32_t height) override
 Switches fullscreen state and sets the window dimensions.
 
void SetCurrentDimensions (bool isFullscreen, uint32_t width, uint32_t height, int32_t posX, int32_t posY) override
 Switches fullscreen state and sets the window dimensions and position.
 
Ship::WindowRect GetPrimaryMonitorRect () override
 Returns the bounding rectangle of the primary monitor.
 
void InitWindowManager ()
 
int32_t GetTargetFps ()
 
void SetTargetFps (int32_t fps)
 
void SetMaximumFrameLatency (int32_t latency)
 
void GetPixelDepthPrepare (float x, float y)
 
uint16_t GetPixelDepth (float x, float y)
 
void SetTextureFilter (FilteringMode filteringMode)
 
void SetRendererUCode (UcodeHandlers ucode)
 
void EnableSRGBMode ()
 
bool DrawAndRunGraphicsCommands (Gfx *commands, const std::unordered_map< Mtx *, MtxF > &mtxReplacements)
 
std::weak_ptr< InterpreterGetInterpreterWeak () const
 
std::shared_ptr< GfxDebuggerGetGfxDebugger () const
 Returns the graphics debugger for this Fast3D window.
 
- Public Member Functions inherited from Ship::Window
 Window (std::shared_ptr< Config > config=nullptr)
 
 Window (const std::vector< std::shared_ptr< GuiWindow > > &guiWindows, std::shared_ptr< Config > config=nullptr)
 Constructs a Window and pre-registers a list of GUI windows.
 
 Window (std::shared_ptr< Gui > gui, std::shared_ptr< Config > config=nullptr)
 Constructs a Window backed by a pre-constructed Gui instance.
 
 Window (std::shared_ptr< Gui > gui, std::shared_ptr< MouseStateManager > mouseStateManager, std::shared_ptr< Config > config=nullptr)
 Constructs a Window with both a Gui and a MouseStateManager.
 
virtual ~Window ()
 
int32_t GetWindowBackend ()
 Returns the current graphics backend identifier.
 
std::shared_ptr< std::vector< int32_t > > GetAvailableWindowBackends ()
 Returns the list of backends available on this platform.
 
bool IsAvailableWindowBackend (int32_t backendId)
 Returns true if the backend with the given ID is available on this platform.
 
int32_t GetLastScancode ()
 Returns the scancode of the last key event received.
 
void SetLastScancode (int32_t scanCode)
 Records the most recently received keyboard scancode.
 
void ToggleFullscreen ()
 Toggles between fullscreen and windowed mode.
 
float GetCurrentAspectRatio ()
 Returns the current aspect ratio, recomputed from GetWidth() / GetHeight().
 
void SaveWindowToConfig ()
 Persists window geometry and backend settings to the Config.
 
std::shared_ptr< GuiGetGui ()
 Returns the GUI overlay layer.
 
bool ShouldAutoCaptureMouse ()
 Returns true if the window should automatically capture the mouse when focused.
 
void SetAutoCaptureMouse (bool capture)
 Enables or disables automatic mouse capture on window focus.
 
bool ShouldForceCursorVisibility ()
 Returns true if the cursor should always be visible regardless of capture state.
 
void SetForceCursorVisibility (bool visible)
 Forces the cursor to remain visible even when captured.
 
int32_t GetFullscreenScancode ()
 Returns the scancode bound to the fullscreen toggle action.
 
int32_t GetMouseCaptureScancode ()
 Returns the scancode bound to the mouse-capture toggle action.
 
void SetFullscreenScancode (int32_t scancode)
 Binds a scancode to the fullscreen toggle action.
 
void SetMouseCaptureScancode (int32_t scancode)
 Binds a scancode to the mouse-capture toggle action.
 
std::shared_ptr< MouseStateManagerGetMouseStateManager ()
 Returns the MouseStateManager used to track mouse button and position state.
 
- Public Member Functions inherited from Ship::Component
 Component (const std::string &name, std::shared_ptr< Context > context=nullptr)
 Constructs a Component with the given name.
 
virtual ~Component ()
 
void Init (const nlohmann::json &initArgs=nlohmann::json::object())
 Performs one-time initialization of this component.
 
bool IsInitialized () const
 Returns true once Init() (or MarkInitialized()) has completed successfully.
 
const std::string & GetName () const
 Returns the name of this Component.
 
std::string ToString () const
 Returns a human-readable string representation (e.g. "Name (id)").
 
std::string ToTreeString (int depth=0) const
 Returns a human-readable tree representation of this component and its children.
 
 operator std::string () const
 Conversion operator to std::string; equivalent to ToString().
 
ParentComponentListGetParents ()
 Returns a mutable reference to the parent list.
 
const ParentComponentListGetParents () const
 Returns a const reference to the parent list.
 
ComponentListGetChildren ()
 Returns a mutable reference to the child list.
 
const ComponentListGetChildren () const
 Returns a const reference to the child list.
 
virtual std::shared_ptr< ComponentTryGetSharedComponent () noexcept
 Returns a shared_ptr to this Component when available, otherwise nullptr.
 
virtual std::shared_ptr< ComponentGetSharedComponent ()
 Returns a shared_ptr to this Component via the correct enable_shared_from_this base.
 
template<typename T >
bool HasInChildren () const
 Checks whether any descendant Component matches type T via BFS.
 
template<typename T >
std::shared_ptr< T > GetFirstInChildren () const
 Returns the first descendant that matches type T via BFS.
 
template<typename T >
std::shared_ptr< std::vector< std::shared_ptr< T > > > GetInChildren () const
 Returns all descendants that match type T via BFS.
 
template<typename T >
bool HasInParents () const
 Checks whether any ancestor Component matches type T via BFS.
 
template<typename T >
std::shared_ptr< T > GetFirstInParents () const
 Returns the first ancestor that matches type T via BFS.
 
template<typename T >
std::shared_ptr< std::vector< std::shared_ptr< T > > > GetInParents () const
 Returns all ancestors that match type T via BFS.
 
- Public Member Functions inherited from Ship::Part
 Part ()
 Constructs a Part and assigns it a unique ID.
 
 Part (std::shared_ptr< Context > context)
 Constructs a Part with an explicit Context reference and unique ID.
 
virtual ~Part ()=default
 
uint64_t GetId () const
 Returns the unique identifier for this Part.
 
bool operator== (const Part &other) const
 Compares two Parts for equality by their unique IDs.
 
std::shared_ptr< ContextGetContext () const
 Returns the Context this Part belongs to, or nullptr if unset.
 
void SetContext (std::shared_ptr< Context > ctx)
 Sets the Context this Part belongs to.
 

Protected Member Functions

void OnInit (const nlohmann::json &initArgs=nlohmann::json::object()) override
 Override this to implement component-specific initialization logic.
 
- Protected Member Functions inherited from Ship::Window
void OnInit (const nlohmann::json &initArgs) override
 Caches this Window on the MouseStateManager.
 
void SetWindowBackend (int32_t backend)
 Records the active graphics backend. Called by subclass constructors.
 
void AddAvailableWindowBackend (int32_t backend)
 Adds a backend to the list of backends available on this platform.
 
int32_t GetSavedWindowBackend ()
 Reads the saved window backend identifier from the config.
 
std::shared_ptr< ConfigGetConfig () const
 Returns the cached Config component after validating it is ready for use.
 
- Protected Member Functions inherited from Ship::Component
void MarkInitialized ()
 Marks this component as initialized without going through Init().
 
template<typename T >
std::shared_ptr< T > RequireDependency (const std::shared_ptr< T > &dependency, const std::string &dependencyName) const
 Returns a cached dependency after validating it exists and is initialized.
 
- Protected Member Functions inherited from Ship::Part
virtual void OnAdded (bool forced)
 Called after this Part has been added to a PartList.
 
virtual void OnRemoved (bool forced)
 Called after this Part has been removed from a PartList.
 

Static Protected Member Functions

static bool KeyDown (int32_t scancode)
 
static bool KeyUp (int32_t scancode)
 
static void AllKeysUp ()
 
static bool MouseButtonDown (int button)
 
static bool MouseButtonUp (int button)
 
static void OnFullscreenChanged (bool isNowFullscreen)
 

Detailed Description

Fast3D-based window and rendering context.

Fast3dWindow drives the Fast3D graphics pipeline and integrates with the Ship component hierarchy. The following dependencies are cached on the class:

Constructor & Destructor Documentation

◆ Fast3dWindow() [1/4]

Fast::Fast3dWindow::Fast3dWindow ( std::shared_ptr< Ship::Config config = nullptr,
std::shared_ptr< Ship::ConsoleVariable consoleVariables = nullptr,
std::shared_ptr< Ship::ControlDeck controlDeck = nullptr 
)

◆ Fast3dWindow() [2/4]

Fast::Fast3dWindow::Fast3dWindow ( std::vector< std::shared_ptr< Ship::GuiWindow > >  guiWindows,
std::shared_ptr< Ship::Config config = nullptr,
std::shared_ptr< Ship::ConsoleVariable consoleVariables = nullptr,
std::shared_ptr< Ship::ControlDeck controlDeck = nullptr 
)

◆ Fast3dWindow() [3/4]

Fast::Fast3dWindow::Fast3dWindow ( std::shared_ptr< Ship::Gui gui,
std::shared_ptr< Ship::Config config = nullptr,
std::shared_ptr< Ship::ConsoleVariable consoleVariables = nullptr,
std::shared_ptr< Ship::ControlDeck controlDeck = nullptr 
)

◆ Fast3dWindow() [4/4]

Fast::Fast3dWindow::Fast3dWindow ( std::shared_ptr< Ship::Gui gui,
std::shared_ptr< FastMouseStateManager mouseStateManager,
std::shared_ptr< Ship::Config config = nullptr,
std::shared_ptr< Ship::ConsoleVariable consoleVariables = nullptr,
std::shared_ptr< Ship::ControlDeck controlDeck = nullptr 
)

◆ ~Fast3dWindow()

Fast::Fast3dWindow::~Fast3dWindow ( )

Member Function Documentation

◆ AllKeysUp()

static void Fast::Fast3dWindow::AllKeysUp ( )
staticprotected

◆ CanDisableVerticalSync()

bool Fast::Fast3dWindow::CanDisableVerticalSync ( )
overridevirtual

Returns true if vertical sync can be disabled on this backend.

Implements Ship::Window.

◆ Close()

void Fast::Fast3dWindow::Close ( )
overridevirtual

Requests that the window and application close.

Implements Ship::Window.

◆ DrawAndRunGraphicsCommands()

bool Fast::Fast3dWindow::DrawAndRunGraphicsCommands ( Gfx *  commands,
const std::unordered_map< Mtx *, MtxF > &  mtxReplacements 
)

◆ EnableSRGBMode()

void Fast::Fast3dWindow::EnableSRGBMode ( )

◆ EndFrame()

void Fast::Fast3dWindow::EndFrame ( )
overridevirtual

Ends the current render frame and presents it to the display.

Implements Ship::Window.

◆ GetAspectRatio()

float Fast::Fast3dWindow::GetAspectRatio ( )
overridevirtual

Returns the current aspect ratio (width / height) of the window.

Implements Ship::Window.

◆ GetCurrentRefreshRate()

uint32_t Fast::Fast3dWindow::GetCurrentRefreshRate ( )
overridevirtual

Returns the display's current refresh rate in Hz.

Implements Ship::Window.

◆ GetGfxDebugger()

std::shared_ptr< GfxDebugger > Fast::Fast3dWindow::GetGfxDebugger ( ) const

Returns the graphics debugger for this Fast3D window.

◆ GetGfxFrameBuffer()

uintptr_t Fast::Fast3dWindow::GetGfxFrameBuffer ( )
overridevirtual

Returns a handle to the graphics API framebuffer object.

Implements Ship::Window.

◆ GetHeight()

uint32_t Fast::Fast3dWindow::GetHeight ( )
overridevirtual

Returns the current height of the window client area in pixels.

Implements Ship::Window.

◆ GetInterpreterWeak()

std::weak_ptr< Interpreter > Fast::Fast3dWindow::GetInterpreterWeak ( ) const

◆ GetKeyName()

const char * Fast::Fast3dWindow::GetKeyName ( int32_t  scancode)
overridevirtual

Returns the human-readable name for a keyboard scancode.

Parameters
scancodePlatform scancode value.
Returns
C-string name, or an empty string if unknown.

Implements Ship::Window.

◆ GetMouseDelta()

Ship::Coords Fast::Fast3dWindow::GetMouseDelta ( )
overridevirtual

Returns the mouse movement delta since the last frame.

Implements Ship::Window.

◆ GetMousePos()

Ship::Coords Fast::Fast3dWindow::GetMousePos ( )
overridevirtual

Returns the current mouse cursor position relative to the window.

Implements Ship::Window.

◆ GetMouseState()

bool Fast::Fast3dWindow::GetMouseState ( Ship::MouseBtn  btn)
overridevirtual

Returns whether the given mouse button is currently pressed.

Parameters
btnMouse button to query.

Implements Ship::Window.

◆ GetMouseWheel()

Ship::CoordsF Fast::Fast3dWindow::GetMouseWheel ( )
overridevirtual

Returns the mouse wheel scroll delta for the current frame.

Implements Ship::Window.

◆ GetPixelDepth()

uint16_t Fast::Fast3dWindow::GetPixelDepth ( float  x,
float  y 
)

◆ GetPixelDepthPrepare()

void Fast::Fast3dWindow::GetPixelDepthPrepare ( float  x,
float  y 
)

◆ GetPosX()

int32_t Fast::Fast3dWindow::GetPosX ( )
overridevirtual

Returns the X position of the window's top-left corner on the desktop.

Implements Ship::Window.

◆ GetPosY()

int32_t Fast::Fast3dWindow::GetPosY ( )
overridevirtual

Returns the Y position of the window's top-left corner on the desktop.

Implements Ship::Window.

◆ GetPrimaryMonitorRect()

Ship::WindowRect Fast::Fast3dWindow::GetPrimaryMonitorRect ( )
overridevirtual

Returns the bounding rectangle of the primary monitor.

Returns
WindowRect containing Left, Top, Right, Bottom of the primary display.

Implements Ship::Window.

◆ GetTargetFps()

int32_t Fast::Fast3dWindow::GetTargetFps ( )

◆ GetWidth()

uint32_t Fast::Fast3dWindow::GetWidth ( )
overridevirtual

Returns the current width of the window client area in pixels.

Implements Ship::Window.

◆ GetWindowBackendName()

std::string Fast::Fast3dWindow::GetWindowBackendName ( )
overridevirtual

Returns a human-readable name for the current window backend.

The base implementation returns an empty string. Concrete subclasses (e.g. Fast3dWindow) override this to return backend-specific names such as "OpenGL", "Metal", or "DirectX 11".

Reimplemented from Ship::Window.

◆ HandleEvents()

void Fast::Fast3dWindow::HandleEvents ( )
overridevirtual

Processes pending OS/input events.

Implements Ship::Window.

◆ InitWindowManager()

void Fast::Fast3dWindow::InitWindowManager ( )

◆ IsFrameReady()

bool Fast::Fast3dWindow::IsFrameReady ( )
overridevirtual

Returns true if the renderer is ready to begin a new frame.

Implements Ship::Window.

◆ IsFullscreen()

bool Fast::Fast3dWindow::IsFullscreen ( )
overridevirtual

Returns true if the window is currently in fullscreen mode.

Implements Ship::Window.

◆ IsMouseCaptured()

bool Fast::Fast3dWindow::IsMouseCaptured ( )
overridevirtual

Returns true if the mouse is currently captured.

Implements Ship::Window.

◆ IsRunning()

bool Fast::Fast3dWindow::IsRunning ( )
overridevirtual

Returns true while the window / render loop is running.

Implements Ship::Window.

◆ KeyDown()

static bool Fast::Fast3dWindow::KeyDown ( int32_t  scancode)
staticprotected

◆ KeyUp()

static bool Fast::Fast3dWindow::KeyUp ( int32_t  scancode)
staticprotected

◆ MouseButtonDown()

static bool Fast::Fast3dWindow::MouseButtonDown ( int  button)
staticprotected

◆ MouseButtonUp()

static bool Fast::Fast3dWindow::MouseButtonUp ( int  button)
staticprotected

◆ OnFullscreenChanged()

static void Fast::Fast3dWindow::OnFullscreenChanged ( bool  isNowFullscreen)
staticprotected

◆ OnInit()

void Fast::Fast3dWindow::OnInit ( const nlohmann::json &  initArgs = nlohmann::json::object())
overrideprotectedvirtual

Override this to implement component-specific initialization logic.

Called by Init() the first time it is invoked. After OnInit() returns without throwing, the component is marked as initialized. If OnInit() throws, the component remains uninitialized so Init() may be retried.

Parameters
initArgsJSON object with component-specific initialization arguments from the build hierarchy. Default implementation ignores them.

Components with initialization parameters (ResourceManager, Window, …) provide their own Init(…) overload instead of overriding this method.

The default implementation is a no-op.

Reimplemented from Ship::Component.

◆ RunGuiOnly()

void Fast::Fast3dWindow::RunGuiOnly ( )
overridevirtual

Runs a single GUI-only tick without executing game logic.

Implements Ship::Window.

◆ SetCurrentDimensions() [1/4]

void Fast::Fast3dWindow::SetCurrentDimensions ( bool  isFullscreen,
uint32_t  width,
uint32_t  height 
)
overridevirtual

Switches fullscreen state and sets the window dimensions.

Parameters
isFullscreentrue to enter fullscreen, false for windowed.
widthNew client-area width in pixels.
heightNew client-area height in pixels.

Implements Ship::Window.

◆ SetCurrentDimensions() [2/4]

void Fast::Fast3dWindow::SetCurrentDimensions ( bool  isFullscreen,
uint32_t  width,
uint32_t  height,
int32_t  posX,
int32_t  posY 
)
overridevirtual

Switches fullscreen state and sets the window dimensions and position.

Parameters
isFullscreentrue to enter fullscreen, false for windowed.
widthNew client-area width in pixels.
heightNew client-area height in pixels.
posXLeft edge of the window in screen coordinates.
posYTop edge of the window in screen coordinates.

Implements Ship::Window.

◆ SetCurrentDimensions() [3/4]

void Fast::Fast3dWindow::SetCurrentDimensions ( uint32_t  width,
uint32_t  height 
)
overridevirtual

Sets the window dimensions (size and position) and applies them immediately.

Parameters
widthNew client-area width in pixels.
heightNew client-area height in pixels.

Implements Ship::Window.

◆ SetCurrentDimensions() [4/4]

void Fast::Fast3dWindow::SetCurrentDimensions ( uint32_t  width,
uint32_t  height,
int32_t  posX,
int32_t  posY 
)
overridevirtual

Sets the window dimensions and position and applies them immediately.

Parameters
widthNew client-area width in pixels.
heightNew client-area height in pixels.
posXLeft edge of the window in screen coordinates.
posYTop edge of the window in screen coordinates.

Implements Ship::Window.

◆ SetCursorVisibility()

void Fast::Fast3dWindow::SetCursorVisibility ( bool  visible)
overridevirtual

Shows or hides the OS mouse cursor over the window.

Parameters
visibletrue to show, false to hide.

Implements Ship::Window.

◆ SetFullscreen()

void Fast::Fast3dWindow::SetFullscreen ( bool  isFullscreen)
overridevirtual

Switches between fullscreen and windowed mode.

Parameters
isFullscreentrue to enter fullscreen, false to return to windowed.

Implements Ship::Window.

◆ SetMaximumFrameLatency()

void Fast::Fast3dWindow::SetMaximumFrameLatency ( int32_t  latency)

◆ SetMouseCapture()

void Fast::Fast3dWindow::SetMouseCapture ( bool  capture)
overridevirtual

Enables or disables mouse capture (relative/locked mouse mode).

Parameters
capturetrue to capture, false to release.

Implements Ship::Window.

◆ SetMousePos()

void Fast::Fast3dWindow::SetMousePos ( Ship::Coords  pos)
overridevirtual

Moves the mouse cursor to the given window-relative coordinates.

Parameters
posTarget position in window pixels.

Implements Ship::Window.

◆ SetMsaaLevel()

void Fast::Fast3dWindow::SetMsaaLevel ( uint32_t  value)
overridevirtual

Sets the MSAA sample count.

Parameters
valueNumber of MSAA samples (e.g. 1, 2, 4, 8).

Implements Ship::Window.

◆ SetRendererUCode()

void Fast::Fast3dWindow::SetRendererUCode ( UcodeHandlers  ucode)

◆ SetResolutionMultiplier()

void Fast::Fast3dWindow::SetResolutionMultiplier ( float  multiplier)
overridevirtual

Sets the internal rendering resolution multiplier.

Parameters
multiplierValues > 1 super-sample; < 1 sub-sample.

Implements Ship::Window.

◆ SetTargetFps()

void Fast::Fast3dWindow::SetTargetFps ( int32_t  fps)

◆ SetTextureFilter()

void Fast::Fast3dWindow::SetTextureFilter ( FilteringMode  filteringMode)

◆ StartFrame()

void Fast::Fast3dWindow::StartFrame ( )
overridevirtual

Begins a new render frame; clears the back buffer and sets up state.

Implements Ship::Window.

◆ SupportsWindowedFullscreen()

bool Fast::Fast3dWindow::SupportsWindowedFullscreen ( )
overridevirtual

Returns true if the backend supports a windowed-fullscreen (borderless) mode.

Implements Ship::Window.


The documentation for this class was generated from the following file: