Kohi Game Engine
forward_rendergraph_node.h
Go to the documentation of this file.
1 #ifndef _FORWARD_RENDERGRAPH_NODE_H_
2 #define _FORWARD_RENDERGRAPH_NODE_H_
3 
4 #include "defines.h"
5 #include "math/math_types.h"
6 #include "renderer/viewport.h"
7 
8 struct rendergraph;
9 struct rendergraph_node;
11 struct frame_data;
12 struct kresource_texture;
13 
14 struct directional_light;
16 struct viewport;
17 struct water_plane;
18 struct skybox;
19 
26 
29 KAPI b8 forward_rendergraph_node_cascade_data_set(struct rendergraph_node* self, f32 split, mat4 dir_light_space, u8 cascade_index);
30 KAPI b8 forward_rendergraph_node_static_geometries_set(struct rendergraph_node* self, struct frame_data* p_frame_data, u32 geometry_count, const struct geometry_render_data* geometries);
32 KAPI b8 forward_rendergraph_node_terrain_geometries_set(struct rendergraph_node* self, struct frame_data* p_frame_data, u32 geometry_count, const struct geometry_render_data* geometries);
33 KAPI b8 forward_rendergraph_node_water_planes_set(struct rendergraph_node* self, struct frame_data* p_frame_data, u32 count, struct water_plane** planes);
34 KAPI b8 forward_rendergraph_node_irradiance_texture_set(struct rendergraph_node* self, struct frame_data* p_frame_data, ktexture irradiance_cube_texture);
35 
37 KAPI b8 forward_rendergraph_node_camera_projection_set(struct rendergraph_node* self, struct camera* view_camera, mat4 projection_matrix);
38 
40 
41 #endif
This file contains global type definitions which are used throughout the entire engine and applicatio...
#define KAPI
Import/export qualifier.
Definition: defines.h:205
unsigned int u32
Unsigned 32-bit integer.
Definition: defines.h:25
_Bool b8
8-bit boolean type
Definition: defines.h:58
float f32
32-bit floating point number
Definition: defines.h:47
unsigned char u8
Unsigned 8-bit integer.
Definition: defines.h:19
KAPI b8 forward_rendergraph_node_register_factory(void)
KAPI b8 forward_rendergraph_node_load_resources(struct rendergraph_node *self)
KAPI b8 forward_rendergraph_node_viewport_set(struct rendergraph_node *self, viewport v)
KAPI b8 forward_rendergraph_node_cascade_data_set(struct rendergraph_node *self, f32 split, mat4 dir_light_space, u8 cascade_index)
KAPI void forward_rendergraph_node_set_skybox(struct rendergraph_node *self, struct skybox *sb)
KAPI void forward_rendergraph_node_destroy(struct rendergraph_node *self)
KAPI b8 forward_rendergraph_node_terrain_geometries_set(struct rendergraph_node *self, struct frame_data *p_frame_data, u32 geometry_count, const struct geometry_render_data *geometries)
KAPI b8 forward_rendergraph_node_initialize(struct rendergraph_node *self)
KAPI b8 forward_rendergraph_node_water_planes_set(struct rendergraph_node *self, struct frame_data *p_frame_data, u32 count, struct water_plane **planes)
KAPI b8 forward_rendergraph_node_static_geometries_set(struct rendergraph_node *self, struct frame_data *p_frame_data, u32 geometry_count, const struct geometry_render_data *geometries)
KAPI void forward_rendergraph_node_reset(struct rendergraph_node *self)
KAPI b8 forward_rendergraph_node_execute(struct rendergraph_node *self, struct frame_data *p_frame_data)
KAPI b8 forward_rendergraph_node_directional_light_set(struct rendergraph_node *self, const struct directional_light *light)
KAPI b8 forward_rendergraph_node_render_mode_set(struct rendergraph_node *self, u32 render_mode)
KAPI b8 forward_rendergraph_node_camera_projection_set(struct rendergraph_node *self, struct camera *view_camera, mat4 projection_matrix)
KAPI b8 forward_rendergraph_node_create(struct rendergraph *graph, struct rendergraph_node *self, const struct rendergraph_node_config *config)
KAPI b8 forward_rendergraph_node_irradiance_texture_set(struct rendergraph_node *self, struct frame_data *p_frame_data, ktexture irradiance_cube_texture)
u16 ktexture
Represents a texture to be used for rendering purposes, stored on the GPU (VRAM)
Definition: kresource_types.h:45
Contains various math types required for the engine.
Represents a camera that can be used for a variety of things, especially rendering....
Definition: camera.h:21
A directional light, typically used to emulate sun/moon light.
Definition: light_system.h:33
Engine-level current frame-specific data.
Definition: frame_data.h:11
Definition: renderer_types.h:35
The configuration for a rendergraph node.
Definition: rendergraph.h:124
Represents a single node in a rendergraph. A node is responsible for acquiring and maintaining its re...
Definition: rendergraph.h:67
Definition: rendergraph.h:92
Definition: skybox.h:19
Definition: viewport.h:6
Definition: water_plane.h:13
a 4x4 matrix, typically used to represent object transformations.
Definition: math_types.h:195