![]() |
Gamedev Framework (gf) 1.2.0
A C++17 framework for 2D games
|
A window that can serve as a target for 2D drawing. More...
#include <gf/RenderWindow.h>
Public Member Functions | |
RenderWindow (Window &window) | |
Constructor. More... | |
~RenderWindow () | |
Destructor. More... | |
virtual Vector2i | getSize () const override |
Return the size of the rendering region of the target. More... | |
void | setActive () override |
Activate the render target for rendering. More... | |
void | display () |
Display on screen what has been rendered to the window so far. More... | |
Image | capture () const |
Copy the current contents of the render window to an image. More... | |
![]() | |
RenderTarget (Vector2i size) | |
Constructor. More... | |
virtual | ~RenderTarget () |
Destructor. More... | |
RenderTarget (const RenderTarget &)=delete | |
Deleted copy constructor. More... | |
RenderTarget & | operator= (const RenderTarget &)=delete |
Deleted copy assignment. More... | |
virtual Vector2i | getSize () const =0 |
Return the size of the rendering region of the target. More... | |
virtual void | setActive () |
Activate the render target for rendering. More... | |
Region | getCanonicalScissorBox () |
Get the current canonical scissor box. More... | |
void | setCanonicalScissorBox (const Region &box) |
Define the canonical scissor box. More... | |
RectI | getScissorBox () |
Get the current scissor box. More... | |
void | setScissorBox (const RectI &box) |
Define the scissor box. More... | |
void | clear (const Color4f &color) |
Clear the entire target with a single color. More... | |
void | clear () |
Clear the entire target. More... | |
RangeF | getAliasedLineWidthRange () const |
Get the range for aliased line width. More... | |
float | getLineWidth () const |
Get the line width. More... | |
void | draw (const Vertex *vertices, std::size_t count, PrimitiveType type, const RenderStates &states=RenderStates()) |
Draw primitives defined by an array of vertices. More... | |
void | draw (const Vertex *vertices, const uint16_t *indices, std::size_t count, PrimitiveType type, const RenderStates &states=RenderStates()) |
Draw primitives defined by an array of vertices and their indices. More... | |
void | draw (const VertexBuffer &buffer, const RenderStates &states=RenderStates()) |
Draw a vertex buffer to the render target. More... | |
void | draw (Drawable &drawable, const RenderStates &states=RenderStates()) |
Draw a drawable object to the render target. More... | |
void | customDraw (const void *vertices, std::size_t size, std::size_t count, PrimitiveType type, Span< const RenderAttributeInfo > attributes, const RenderStates &states=RenderStates()) |
Draw primitives defined by an array of custom vertices. More... | |
void | customDraw (const void *vertices, std::size_t size, const uint16_t *indices, std::size_t count, PrimitiveType type, Span< const RenderAttributeInfo > attributes, const RenderStates &states=RenderStates()) |
Draw primitives defined by an array of custom vertices and their indices. More... | |
void | customDraw (const VertexBuffer &buffer, Span< const RenderAttributeInfo > attributes, const RenderStates &states=RenderStates()) |
Draw a custom vertex buffer to the render target. More... | |
void | setView (const View &view) |
Change the current active view. More... | |
const View & | getView () const |
Get the view currently in use in the render target. More... | |
Region | getCanonicalViewport (const View &view) const |
Get the canonical viewport of a view, applied to this render target. More... | |
RectI | getViewport (const View &view) const |
Get the viewport of a view, applied to this render target. More... | |
Vector2f | mapPixelToCoords (Vector2i point, const View &view) const |
Convert a point from target coordinates to world coordinates. More... | |
Vector2f | mapPixelToCoords (Vector2i point) const |
Convert a point from target coordinates to world coordinates, using the current view. More... | |
Vector2i | mapCoordsToPixel (Vector2f point, const View &view) const |
Convert a point from world coordinates to target coordinates. More... | |
Vector2i | mapCoordsToPixel (Vector2f point) const |
Convert a point from world coordinates to target coordinates, using the current view. More... | |
Additional Inherited Members | |
![]() | |
Image | captureFramebuffer (unsigned name) const |
Capture the given framebuffer. More... | |
A window that can serve as a target for 2D drawing.
gf::RenderWindow is the main class of the graphics module. It defines an OS window that can be painted using the other classes of the graphics module.
Here is a typical rendering and event loop with a gf::RenderWindow:
gf::RenderWindow::RenderWindow | ( | Window & | window | ) |
Constructor.
window | The window to render to |
gf::RenderWindow::~RenderWindow | ( | ) |
Destructor.
Image gf::RenderWindow::capture | ( | ) | const |
Copy the current contents of the render window to an image.
This is a slow operation, whose main purpose is to make screenshots of the application.
void gf::RenderWindow::display | ( | ) |
Display on screen what has been rendered to the window so far.
This function is typically called after all OpenGL rendering has been done for the current frame, in order to show it on screen.
|
overridevirtual |
Return the size of the rendering region of the target.
Implements gf::RenderTarget.
|
overridevirtual |
Activate the render target for rendering.
This function activates the render target. You should call this function before you want to draw something to the target.
Reimplemented from gf::RenderTarget.