1#ifndef __H__SETUP_CLIENT__
2#define __H__SETUP_CLIENT__
4#include "../engine/world.h"
6#include "../engine/input.h"
9#include "../rendering/context.h"
10#include "../rendering/image.h"
11#include "../rendering/quads.h"
12#include "../rendering/shader.h"
13#include "../systems/camera.h"
14#include "../systems/construct.h"
15#include "../systems/input.h"
16#include "../systems/physics.h"
17#include "../systems/require.h"
18#include "../systems/scheduler.h"
41 allocator_free(data->
alloc, file_buffer);
88 render_constructs_data);
102 FILE *f = fopen(
"./schedule.tmp.graphviz",
"w+");
static system_requirements_declaration_t system_decl_camera_move
Definition camera.h:25
static void client_schedule_systems(client_data_t *data)
Definition client.h:93
static void client_data__load_assets(client_data_t *data)
Definition client.h:35
static void client__schedule_physics(client_data_t *data)
Definition client.h:68
static void client_data_init(client_data_t *data, allocator_t alloc)
Definition client.h:50
static void client__schedule_rendering(client_data_t *data)
Definition client.h:76
static void rendering_ctx_show_window(rendering_ctx_t *ctx)
Definition context.h:51
static void rendering_ctx_init(rendering_ctx_t *ctx)
Definition context.h:30
size_t sz
Definition defs.h:51
static void image_bind(image_t *image)
Definition image.h:51
static void * read_binary_file(allocator_t allocator, const char *filename, sz *size)
Read a binary file file of into memory.
Definition misc.h:9
static char * read_text_file(allocator_t allocator, const char *filename)
Definition misc.h:28
static void names_init()
Definition names.h:21
static system_requirements_declaration_t system_decl_integrate_velocity
Definition physics.h:18
static GLuint _gl_quad_vao
Definition quads.h:6
static void gl_quad_init()
Definition quads.h:8
static system_payload_t system_payload_new(world_t *world, input_t *input, rendering_ctx_t *rendering_ctx, double dt, double fdt)
Definition require.h:105
static void scheduler_dump_dependency_graph(scheduler_t *scheduler, FILE *out)
Definition scheduler.h:121
static void scheduler_set_parent_payload(scheduler_t *scheduler, system_payload_t payload)
Definition scheduler.h:209
static void scheduler_add_system_declared(scheduler_t *scheduler, system_requirements_declaration_t *declaration)
Definition scheduler.h:116
@ SCHEDULER_STRATEGY_RANDOM
Definition scheduler.h:11
static scheduler_t scheduler_new(scheduler_strategy_t strategy, allocator_t persistent_allocator, allocator_t temporary_allocator)
Definition scheduler.h:30
static void scheduler_add_system_declared_specific_data(scheduler_t *scheduler, system_requirements_declaration_t *declaration, void *system_specific_data)
Definition scheduler.h:85
A generic allocator type passed by value. Contains a fallback allocator and a set of function pointer...
Definition memory.h:30
world_t world
Definition client.h:27
scheduler_t scheduler
Definition client.h:30
input_t input
Definition client.h:29
allocator_t alloc
Definition client.h:26
rendering_ctx_t rendering_ctx
Definition client.h:28
global_assets_t assets
Definition client.h:32
image_t tileset_image
Definition client.h:22
shader_t tileset_shader
Definition client.h:21
The raw data of an image.
Definition image.h:10
Definition construct.h:11
GLuint program
Definition construct.h:12
GLuint vao
Definition construct.h:13
image_t * image
Definition construct.h:14
Definition scheduler.h:19
allocator_t persistent_allocator
Allocator for the data that persist over the scheduler's lifetime.
Definition scheduler.h:21
Small container and wrapper over OpenGL for shader-related things. In actually it is closer to what O...
Definition shader.h:15
GLuint gl_program
Definition shader.h:16
static system_requirements_declaration_t system_decl_render_constructs
Definition construct.h:64
static system_requirements_declaration_t system_decl_tick_thrusters
Definition construct.h:99
static void world_init(world_t *world)
Definition world.h:18