试着使用SDL2复刻曹操传(一)

对古董老游戏的复刻,使用SDL再合适不过了,废话不多说,新建工程然后开搞!

对于IDE,本人选择jetbrains系列的CLion:

游戏程序总框架:

 根据上图编写main.c文件:

     

#define SDL_MAIN_HANDLED

#include <stdio.h>
#include "core/texture/texture.h"
#include "core/timer/timer.h"
#include "stdbool.h"
#include "SDL2/SDL_image.h"


//常量----屏幕大小及帧刷新率(暂定)
const int SCREEN_WIDTH = 800;
const int SCREEN_HEIGHT = 600;
const int SCREEN_FPS = 60;
const int SCREEN_TICKS_PER_FRAME = 1000 / SCREEN_FPS;

//声明全局变量
SDL_Window* g_window = NULL;
SDL_Renderer* g_renderer = NULL;
SDL_bool g_game_quit = false;
int g_screen_width = SCREEN_WIDTH;
int g_screen_height = SCREEN_HEIGHT;
int g_screen_fps =  SCREEN_FPS;
int g_screen_tpf = SCREEN_TICKS_PER_FRAME;

//函数声明
void game_init();
void game_load();
void game_loop();
void game_render();
void game_update(float dt);
void game_close();

struct Texture map;

int main()
{
    game_init();
    game_load();
    game_loop();
    game_close();
    return 0;
}

 void game_init()
{
    // initialize SDL
    if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER) < 0)
    {
        printf("SDL could not initi
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值