Claude Chappe' Curse - A C Game
Logo Institut d'Informatique Claude Chappe Logo Université de Le Mans Logo Raeptor Production
 
Loading...
Searching...
No Matches
RenderTarget Class Reference

A structure to handle render targets. More...

#include <framebuffer.h>

Inheritance diagram for RenderTarget:
Collaboration diagram for RenderTarget:

Public Member Functions

void constructor (int width, int height)
 Constructor for the render target class.
 
void update ()
 Updates the render target.
 
void load (FILE *file)
 Loads data from a file.
 
void save (FILE *file)
 Saves the current state to the specified file.
 
void is_render_target (bool *render_target)
 Checks if the current target is a render target.
 
void free ()
 Frees the resources allocated for the render target.
 
- Public Member Functions inherited from Node
void constructor ()
 Constructor for the Node class.
 
void initialize_node ()
 Initializes a node.
 
void get_glow_shader (Shader *shader)
 Retrieves the glow shader.
 
void get_settings_data (void ***ptr, int *length)
 Retrieves settings data.
 
void load ()
 Loads the necessary resources or data for the node.
 
void save (FILE *file)
 Saves the current state to the specified file.
 
void prepare_render (mat4 modelMatrix, Shader activeShader)
 Renders a node using the specified model matrix and shader.
 
void render ()
 Renders the node.
 
void update_global_position (vec3 pos, vec3 rot, vec3 scale)
 Updates the global position of a node.
 
void update (vec3 pos, vec3 rot, vec3 scale)
 Updates the position, rotation, and scale of a node.
 
void on_resize ()
 Handles the resize event for the node.
 
void free ()
 Frees the resources allocated by the object.
 
void is_cshape (bool *cshape)
 Checks if the current shape is a custom shape.
 
void is_body (bool *body)
 Sets the body status of the node.
 
void is_area (bool *area)
 Checks if the current node is within a specified area.
 
void is_render_target (bool *render_target)
 Sets the render target status.
 
void is_gui_element (bool *result)
 Determines if the current node is a GUI element.
 
void add_child (Node *child)
 Adds a child node to a parent node.
 
void add_child_and_realloc (Node *child)
 Adds a child node to a parent node and reallocates memory if necessary.
 
void remove_child (Node *child)
 Removes a child node from a parent node.
 
void remove_child_and_realloc (Node *child)
 Removes a child node from a parent node and reallocates memory if necessary.
 
void remove_child_and_free (Node *child)
 Removes a child node from a parent node and frees the memory of the child node.
 
void remove_child_and_free_and_realloc (Node *child)
 Removes a child node from a parent node, frees the memory of the child node, and reallocates memory if necessary.
 
int index_of_child (Node *child)
 Retrieves the index of a child node in a parent node's children array.
 
void print (int level)
 Prints the details of a node at a specified level of indentation.
 
void emit_ready (...)
 Emits the 'ready' signal for the node.
 
void emit_update (...)
 Emits an update event for the node.
 
void emit_signal (...)
 Emits a signal if the node has a script and the script has a signal handler.
 

Public Attributes

FBO fbo
 
TextureMap texture
 
int w
 
int h
 
Mouse mouse
 
- Public Attributes inherited from Node
void * object
 
struct Node ** children
 
struct Nodeparent
 
u16 length
 
u8 type
 
u8 flags
 
vec3 pos
 
vec3 rot
 
vec3 scale
 
vec3 globalPos
 
vec3 globalRot
 
vec3 globalScale
 
Behaviorbehavior
 
BehaviorAttributeattribute
 
u8 attributes_count
 
Shader shader
 

Additional Inherited Members

- Static Public Attributes inherited from Node
static Shader glowShader = 0
 A static Shader variable used for glow effect.
 

Detailed Description

A structure to handle render targets.

This structure contains the necessary components to manage render targets, including the framebuffer and texture map.

Note
The render target is used to render to a texture instead of the screen.

Member Function Documentation

◆ constructor()

void RenderTarget::constructor ( int  width,
int  height 
)
inline

Constructor for the render target class.

This function initializes a render target with the specified width and height.

Parameters
widthThe width of the render target.
heightThe height of the render target.

◆ update()

void RenderTarget::update ( )
inline

Updates the render target.

This function is responsible for updating the state of the render target. It performs necessary operations to ensure the render target is up-to-date.

◆ load()

void RenderTarget::load ( FILE *  file)
inline

Loads data from a file.

This function reads data from the given file and processes it accordingly.

Parameters
fileA pointer to the FILE object that represents the file to be read.

◆ save()

void RenderTarget::save ( FILE *  file)
inline

Saves the current state to the specified file.

This function writes the current state of the render target to the given file. The file must be opened in a mode that allows writing.

Parameters
fileA pointer to a FILE object that identifies the file to which the state will be saved.

◆ is_render_target()

void RenderTarget::is_render_target ( bool *  render_target)
inline

Checks if the current target is a render target.

This function sets the value of the provided boolean pointer to indicate whether the current target is a render target.

Parameters
render_targetA pointer to a boolean variable that will be set to true if the current target is a render target, or false otherwise.

◆ free()

void RenderTarget::free ( )
inline

Frees the resources allocated for the render target.

This function is responsible for releasing any memory or resources that were allocated for the render target. It should be called when the render target is no longer needed to avoid memory leaks.

Member Data Documentation

◆ fbo

FBO RenderTarget::fbo

◆ texture

TextureMap RenderTarget::texture

◆ w

int RenderTarget::w

◆ h

int RenderTarget::h

◆ mouse

Mouse RenderTarget::mouse

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