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;





 

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Magnum Lehar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值