feat(game): 添加基础游戏引擎和渲染模块
- 新增游戏引擎核心模块,包括初始化和运行逻辑 - 实现基本的渲染功能,支持控制台输出 - 添加物理引擎基础,包括碰撞检测 - 集成日志系统,用于调试和信息输出 - 创建窗口和输入管理模块
This commit is contained in:
44
game_engine/ge_core.h
Normal file
44
game_engine/ge_core.h
Normal file
@@ -0,0 +1,44 @@
|
||||
#ifndef __GE_CORE_H__
|
||||
#define __GE_CORE_H__
|
||||
|
||||
#include <ge_common.h>
|
||||
#include <render/ge_render.h>
|
||||
#include <timer/ge_timer.h>
|
||||
|
||||
struct ge_engine_core;
|
||||
typedef struct ge_engine_core ge_core_t;
|
||||
|
||||
/**
|
||||
* Callback Function
|
||||
*/
|
||||
typedef void (*ge_init_func_t)(ge_core_t* core);
|
||||
typedef void (*ge_exit_func_t)(ge_core_t* core);
|
||||
typedef void (*ge_run_func_t)(ge_core_t* core);
|
||||
|
||||
typedef enum ge_engine_state {
|
||||
GE_ENGINE_STATE_RUNNING,
|
||||
GE_ENGINE_STATE_EXIT,
|
||||
} ge_engine_state_t;
|
||||
|
||||
struct ge_engine_core {
|
||||
struct {
|
||||
ge_init_func_t init;
|
||||
ge_exit_func_t exit;
|
||||
ge_run_func_t run;
|
||||
} callbacks;
|
||||
ge_engine_state_t state;
|
||||
|
||||
ge_render_t render;
|
||||
ge_timer_t timer;
|
||||
struct {
|
||||
ge_uint_t fps;
|
||||
} configs;
|
||||
};
|
||||
|
||||
/**
|
||||
* Basic Call
|
||||
*/
|
||||
void ge_engine_init(ge_core_t *core);
|
||||
void ge_engine_run(ge_core_t *core);
|
||||
|
||||
#endif // __GE_CORE_H__
|
||||
Reference in New Issue
Block a user