You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

29 lines
801 B

#pragma once
#include "camera.h"
#include "hexgrid.h"
#include "renderer.h"
#include "render_group.h"
#include "util.h"
struct slSceneDoc;
struct render_state;
slSceneDoc* slLoadFile(const char* data_dir, const char* scene_file, const char* schema_file);
void slFreeSceneDoc(slSceneDoc* sd);
bool slParseEntities(slSceneDoc* sd, Entity* entity_array, uint& entity_count, uint max_entities);
void slParseCamera(slSceneDoc* sd, camera& cam);
void slParseHexGrid(slSceneDoc* sd, hexgrid& hg, util_image& palette_image);
bool slParseGridHashMap(hexgrid& hg, const char* data_dir, const char* hexmap_schema_file);
bool slParseLights(slSceneDoc* sd, rg_point_light* lights, uint& num_lights, uint max_lights);
// TODO: this is pretty hacky atm just for testing
bool slSaveGridFile(hexgrid& hg);