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;

}

相关推荐
cyr___1 小时前
Unity教程(二十四)技能系统 投剑技能(中)技能变种实现
学习·游戏·unity·游戏引擎
1 天前
3D碰撞检测系统 基于SAT算法+Burst优化(Unity)
算法·3d·unity·c#·游戏引擎·sat
dzj20211 天前
Unity是如何把3D场景显示到屏幕上的——Unity的渲染过程
3d·unity·游戏引擎·渲染·图形学
不绝1913 天前
ARPG开发流程第一章——方法合集
算法·游戏·unity·游戏引擎
贵州晓智信息科技3 天前
Unity 性能优化全攻略
unity·性能优化·游戏引擎
unicrom_深圳市由你创科技3 天前
Unity 的UI动画调节
ui·unity·游戏引擎
咩咩觉主3 天前
Unity编辑器拓展 IMGUI与部分Utility知识总结(代码+思维导图)
unity·c#·编辑器·游戏引擎
龚子亦4 天前
【Unity开发】数据存储——XML
xml·unity·游戏引擎·数据存储·游戏开发
write_the_code4 天前
Unity国际版下载链接分享(非c1国内版)
unity·游戏引擎
Bulling_4 天前
unity动态背景制作
unity·游戏引擎