11#ifndef INCGUARD_MGL_D3D11_SPRITE_RENDERER_H_1615013087
12#define INCGUARD_MGL_D3D11_SPRITE_RENDERER_H_1615013087
15#if defined(MGL_RENDERER_ENABLE_D3D11)
24namespace MGL::Render::D3D11
63 bool InitializeShader() noexcept;
64 bool InitializeVertexBuffer() noexcept;
65 bool InitializeSamplerState() noexcept;
67 ID3D11VertexShader *GetVertexShader(
size_t size) noexcept;
68 ID3D11SamplerState *GetSamplerState(
SamplerType samplerType) noexcept;
73 size_t _attributeCount;
75 CComPtr<ID3D11Buffer> _vertexBuffer;
80 CComPtr<ID3D11VertexShader> shader;
82 std::vector<VertexShader> _vertexShaderArray;
83 CComPtr<ID3D11PixelShader> _pixelShader;
84 CComPtr<ID3D11InputLayout> _inputLayout;
92 CComPtr<ID3D11SamplerState> _samplers[kSamplerStateMax];
94 SharedTextureResource _currentTexture;
95 SamplerType _currentSamplerType;
96 bool _isEnabledBlending;
Direct3D11用オブジェクトレンダラ基底クラス
Definition mgl_d3d11_object_renderer.h:23
Direct3D11用スプライトレンダラ
Definition mgl_d3d11_sprite_renderer.h:28
virtual void Flush(const FlushParameter &flushParameter) noexcept override
描画の実行
Definition mgl_d3d11_sprite_renderer.cc:115
bool IsFull() const noexcept
アトリビュートのストックが上限に達しているかを取得
Definition mgl_d3d11_sprite_renderer.h:57
SpriteRenderer() noexcept
コンストラクタ
Definition mgl_d3d11_sprite_renderer.cc:51
static constexpr size_t kAttributeMax
アトリビュートの最大数
Definition mgl_d3d11_sprite_renderer.h:41
virtual bool Initialize() noexcept override
初期化処理
Definition mgl_d3d11_sprite_renderer.cc:74
void Add(const Attribute &attribute, const FlushParameter &flushParameter, SharedTextureResource texture, SamplerType samplerType, bool isEnabledBlending) noexcept
アトリビュートの追加
Definition mgl_d3d11_sprite_renderer.cc:203
MGL Direct3D11用オブジェクトレンダラ基底クラス
SamplerType
サンプラー
Definition mgl_render_types.h:59
std::shared_ptr< MGL::Render::TextureResource > SharedTextureResource
共有するテクスチャリソースの型
Definition mgl_texture_resource.h:145
描画に使用するパラメータ
Definition mgl_d3d11_object_renderer.h:27
スプライト用アトリビュート
Definition mgl_d3d11_sprite_renderer.h:32
float rotate
回転角度
Definition mgl_d3d11_sprite_renderer.h:37
float offset[2]
オフセット(表示位置)
Definition mgl_d3d11_sprite_renderer.h:33
float textureCoord[4]
テクスチャ座標
Definition mgl_d3d11_sprite_renderer.h:35
float color[4]
マスクカラー
Definition mgl_d3d11_sprite_renderer.h:36
float pivot[2]
回転ピボット
Definition mgl_d3d11_sprite_renderer.h:38
float scale[2]
スケール値
Definition mgl_d3d11_sprite_renderer.h:34