![]() |
GL CHOCO ENGINE
|
renderer_backendが保有するVBO機能の窓口を上位層に提供する More...
#include <stddef.h>#include "engine/renderer/renderer_core/renderer_types.h"#include "engine/renderer/renderer_backend/renderer_backend_types.h"

Go to the source code of this file.
Typedefs | |
| typedef struct renderer_backend_context | renderer_backend_context_t |
Functions | |
| renderer_result_t | renderer_backend_vertex_buffer_create (renderer_backend_context_t *backend_context_, renderer_backend_vbo_t **vertex_buffer_) |
| VBO内部状態管理構造体インスタンスのメモリを確保する | |
| void | renderer_backend_vertex_buffer_destroy (renderer_backend_context_t *backend_context_, renderer_backend_vbo_t **vertex_buffer_) |
| VBO内部状態管理構造体インスタンスを破棄する | |
| renderer_result_t | renderer_backend_vertex_buffer_bind (renderer_backend_context_t *backend_context_, renderer_backend_vbo_t *vertex_buffer_) |
| VBOをbindする | |
| renderer_result_t | renderer_backend_vertex_buffer_unbind (renderer_backend_context_t *backend_context_, renderer_backend_vbo_t *vertex_buffer_) |
| VBOをunbindする | |
| renderer_result_t | renderer_backend_vertex_buffer_vertex_load (renderer_backend_context_t *backend_context_, renderer_backend_vbo_t *vertex_buffer_, size_t load_size_, void *load_data_, buffer_usage_t usage_) |
| GPUの頂点情報格納バッファに頂点情報を転送する | |
renderer_backendが保有するVBO機能の窓口を上位層に提供する
| typedef struct renderer_backend_context renderer_backend_context_t |
Renderer Backend内部状態管理構造体前方宣言
| renderer_result_t renderer_backend_vertex_buffer_bind | ( | renderer_backend_context_t * | backend_context_, |
| renderer_backend_vbo_t * | vertex_buffer_ | ||
| ) |
VBOをbindする
| backend_context_ | bind用vtable保有構造体インスタンスへのポインタ |
| vertex_buffer_ | bind対象VBOハンドル構造体インスタンスへのポインタ |
| RENDERER_INVALID_ARGUMENT | 以下のいずれか
|
| RENDERER_BAD_OPERATION | backend_context_->vbo_vtable == NULL |
| RENDERER_SUCCESS | 処理に成功し、正常終了 |
| renderer_result_t renderer_backend_vertex_buffer_create | ( | renderer_backend_context_t * | backend_context_, |
| renderer_backend_vbo_t ** | vertex_buffer_ | ||
| ) |
VBO内部状態管理構造体インスタンスのメモリを確保する
| [in] | backend_context_ | VAOメモリ確保関数保有構造体インスタンスへのポインタ |
| [out] | vertex_buffer_ | メモリ確保対象VBO構造体インスタンスへのダブルポインタ |
| RENDERER_INVALID_ARGUMENT | 以下のいずれか
|
| RENDERER_BAD_OPERATION | backend_context_が未初期化 |
| RENDERER_NO_MEMORY | メモリ確保失敗 |
| RENDERER_LIMIT_EXCEEDED | メモリ管理システムのシステム使用可能範囲上限を超過 |
| RENDERER_SUCCESS | 処理に成功し、正常終了 |
| void renderer_backend_vertex_buffer_destroy | ( | renderer_backend_context_t * | backend_context_, |
| renderer_backend_vbo_t ** | vertex_buffer_ | ||
| ) |
VBO内部状態管理構造体インスタンスを破棄する
| backend_context_ | リソース破棄用vtable保有構造体インスタンスへのポインタ |
| vertex_buffer_ | 破棄対象インスタンスへのダブルポインタ |
| renderer_result_t renderer_backend_vertex_buffer_unbind | ( | renderer_backend_context_t * | backend_context_, |
| renderer_backend_vbo_t * | vertex_buffer_ | ||
| ) |
VBOをunbindする
| backend_context_ | unbind用vtable保有構造体インスタンスへのポインタ |
| vertex_buffer_ | unbind対象VBOハンドル構造体インスタンスへのポインタ |
| RENDERER_INVALID_ARGUMENT | 以下のいずれか
|
| RENDERER_BAD_OPERATION | backend_context_が未初期化 |
| RENDERER_SUCCESS | 処理に成功し、正常終了 |
| renderer_result_t renderer_backend_vertex_buffer_vertex_load | ( | renderer_backend_context_t * | backend_context_, |
| renderer_backend_vbo_t * | vertex_buffer_, | ||
| size_t | load_size_, | ||
| void * | load_data_, | ||
| buffer_usage_t | usage_ | ||
| ) |
GPUの頂点情報格納バッファに頂点情報を転送する
| backend_context_ | 転送用vtable保有構造体インスタンスへのポインタ |
| vertex_buffer_ | 転送対象VBOハンドルを保有する構造体インスタンスへのポインタ |
| load_size_ | 転送サイズ(byte) |
| load_data_ | 転送データ配列への先頭ポインタ |
| usage_ | バッファ用途 buffer_usage_t |
| RENDERER_INVALID_ARGUMENT | 以下のいずれか
|
| RENDERER_BAD_OPERATION | backend_context_が未初期化 |
| RENDERER_RUNTIME_ERROR | usage_の値が規定範囲外 |