vulkan游戏引擎renderer_backend实现

1.renderer_backend.h

#pragma once

#include "renderer_types.inl"

struct platform_state;

b8 renderer_backend_create(renderer_backend_type type,struct platform_state* plat_state,renderer_backend* out_renderer_backend);

void renderer_backend_destroy(renderer_backend* renderer_backend);

2.renderer_backend.c

#include "renderer_backend.h"

#include "vulkan/vulkan_backend.h"

b8 renderer_backend_create(renderer_backend_type type,struct platform_state* plat_state,renderer_backend* out_renderer_backend)

{

out_renderer_backend->plat_state = plat_state;

if(type == RENDERER_BACKEND_TYPE_VULKAN)

{

out_renderer_backend->initialize = vulkan_renderer_backend_initialize;

out_renderer_backend->shutdown = vulkan_renderer_backend_shutdown;

out_renderer_backend->begin_frame = vulkan_renderer_backend_begin_frame;

out_renderer_backend->update_global_state = vulkan_renderer_update_global_state;

out_renderer_backend->end_frame = vulkan_renderer_backend_end_frame;

out_renderer_backend->resized=vulkan_renderer_backend_on_resized;

out_renderer_backend->update_object = vulkan_backend_update_object;

// out_renderer_backend->create_texture = vulkan_renderer_create_texture;

//out_renderer_backend->destroy_texture = vulkan_renderer_destroy_texture;

return true;

}

return false;

}

void renderer_backend_destroy(renderer_backend* renderer_backend)

{

renderer_backend->initialize = 0;

renderer_backend->shutdown = 0;

renderer_backend->begin_frame = 0;

renderer_backend->update_global_state = 0;

renderer_backend->end_frame= 0;

renderer_backend->resized=0;

renderer_backend->update_object = 0;

//renderer_backend->create_texture = 0;

//renderer_backend->destroy_texture = 0;

}

相关推荐
Avalon7123 小时前
Unity中自定义协程的实现
游戏·unity·c#·游戏引擎
IMPYLH3 小时前
Lua 的 select 函数
java·开发语言·笔记·后端·junit·游戏引擎·lua
jtymyxmz5 小时前
《Unity shader》10.1.5 菲涅尔反射
unity·游戏引擎
老朱佩琪!5 小时前
Unity文字排版错位问题
经验分享·unity·游戏引擎
jtymyxmz5 小时前
《Unity Shader》9.4.3 使用帧调试器查看阴影绘制过程
unity·游戏引擎
jtymyxmz6 小时前
《Unity Shader》10.3.1 在Unity中实现简单的程序纹理
unity·游戏引擎
jtymyxmz6 小时前
《Unity Shader》11.2.1 序列帧动画
unity·游戏引擎
qq_4286396113 小时前
虚幻基础:虚幻中的if与switch
游戏引擎·虚幻
UX201716 小时前
Unity中的Color.HSVToRGB
unity·游戏引擎
jtymyxmz17 小时前
《Unity Shader》10.1.2 创建用于环境映射的立方体纹理
unity·游戏引擎