vulkan游戏引擎game_types.h和生成build.bat实现

1.game_types.h

#pragma once

#include "core/application.h"

typedef struct game{

application_config app_config;

b8 (*initialize)(struct game* game_inst);

b8 (*update)(struct game* game_inst,f32 delta_time);

b8 (*render)(struct game* game_inst,f32 delta_time);

void (*on_resize)(struct game* game_inst,u32 width,u32 height);

void* state;

//Application state

void* application_state;

}game;

2.build.bat

REM Build script for engine

@ECHO OFF

SetLocal EnableDelayedExpansion

REM Get a list of all the .c files

SET cFilenames=

FOR /R %%f in (*c) do (

SET cFilenames=!cFilenames! %%f

)

REM echo "Files:" %cFilenames%

SET assembly=engine

SET compilerFlags=-g -shared -Wvarargs -Wall -Werror

REM -Wall -Werror

SET includeFlags=-Isrc -I%VULKAN_SDK%/Include

SET linkerFlags=-luser32 -lvulkan-1 -L%VULKAN_SDK%/Lib

SET defines=-D_DEBUG -DKEXPORT -D_CRT_SECURE_NO_WARNINGS

ECHO "Building %assembly%%..."

clang %cFilenames% %compilerFlags% -o ../bin/%assembly%.dll %defines% %includeFlags% %linkerFlags%

相关推荐
地平线开发者1 分钟前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶
董董灿是个攻城狮26 分钟前
大模型连载2:初步认识 tokenizer 的过程
算法
地平线开发者1 小时前
地平线 VP 接口工程实践(一):hbVPRoiResize 接口功能、使用约束与典型问题总结
算法·自动驾驶
罗西的思考1 小时前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
桦说编程2 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
躺平大鹅4 小时前
Java面向对象入门(类与对象,新手秒懂)
java
HXhlx4 小时前
CART决策树基本原理
算法·机器学习
Wect5 小时前
LeetCode 210. 课程表 II 题解:Kahn算法+DFS 双解法精讲
前端·算法·typescript
初次攀爬者5 小时前
RocketMQ在Spring Boot上的基础使用
java·spring boot·rocketmq