pawengine/object.h
2025-02-09 18:48:25 +01:00

30 lines
672 B
C

#ifndef INCLUDE_WAYLANDCLIENT_OBJECT_H_
#define INCLUDE_WAYLANDCLIENT_OBJECT_H_
#include "dynarray.h"
// #include "vulkan_internal.h"
dyn_array_define(da_Object, struct Object *);
struct Scene {
struct Vk *vk;
struct Mem *mem;
struct da_Object objects;
struct da_Object insert_queue;
struct Register *reg;
float delta_secs;
long msecs;
};
struct Object {
struct Type *type;
void *data;
};
struct Scene *make_scene(struct Vk *vk, struct Register *reg);
void free_scene(struct Scene *scene);
void scene_tick(struct Scene *scene);
void scene_queue_insert(struct Scene *scene, char *name, void *object_data);
#endif // INCLUDE_WAYLANDCLIENT_OBJECT_H_