21#ifndef GLCE_ENGINE_RENDERER_RENDERER_BACKEND_RENDERER_BACKEND_INTERFACE_INTERFACE_SHADER_H
22#define GLCE_ENGINE_RENDERER_RENDERER_BACKEND_RENDERER_BACKEND_INTERFACE_INTERFACE_SHADER_H
void(* pfn_renderer_shader_destroy)(renderer_backend_shader_t **shader_handle_)
シェーダーハンドル構造体インスタンスを破棄する
Definition: interface_shader.h:67
renderer_result_t(* pfn_renderer_shader_compile)(shader_type_t shader_type_, const char *shader_source_, renderer_backend_shader_t *shader_handle_)
シェーダーソースをコンパイルし、シェーダーオブジェクトハンドルを初期化する
Definition: interface_shader.h:96
renderer_result_t(* pfn_renderer_shader_create)(renderer_backend_shader_t **shader_handle_)
シェーダーハンドル構造体インスタンスのメモリを確保し、renderer_backend_shader_tインスタンスのフィールドを全て0で初期化する
Definition: interface_shader.h:51
renderer_result_t(* pfn_renderer_shader_link)(renderer_backend_shader_t *shader_handle_)
コンパイル済みのシェーダーオブジェクトをリンクし、シェーダープログラムハンドルを初期化する
Definition: interface_shader.h:119
renderer_result_t(* pfn_renderer_shader_use)(renderer_backend_shader_t *shader_handle_, uint32_t *out_program_id_)
シェーダープログラムの使用開始をグラフィックスAPIに伝える
Definition: interface_shader.h:137
struct renderer_shader_vtable renderer_shader_vtable_t
シェーダー機能仮想関数テーブル
renderer_backend内で共通して使用するデータ構造を提供する
レンダラーレイヤー全体で使用されるデータ型を提供する
shader_type_t
上位層でシェーダー種別の識別にグラフィックスAPI固有の型を使用しないで済むよう、シェーダー種別リストを定義
Definition: renderer_types.h:69
renderer_result_t
レンダラーレイヤー実行結果コード定義
Definition: renderer_types.h:35
シェーダープログラム/シェーダーオブジェクトのハンドルを保持する構造体
Definition: concrete_shader.c:108
シェーダー機能仮想関数テーブル
Definition: interface_shader.h:143
pfn_renderer_shader_link renderer_shader_link
Definition: interface_shader.h:147
pfn_renderer_shader_create renderer_shader_create
Definition: interface_shader.h:144
pfn_renderer_shader_compile renderer_shader_compile
Definition: interface_shader.h:146
pfn_renderer_shader_use renderer_shader_use
Definition: interface_shader.h:148
pfn_renderer_shader_destroy renderer_shader_destroy
Definition: interface_shader.h:145