MGL::Render::TextureGenerator#

概要#

TextureGeneratorはプラットフォーム毎に異なるテクスチャ生成処理の差異を吸収するためのインターフェースクラスです。MGL::Render::TextureStorageクラスは環境毎に異なるテクスチャリソースを包括的に扱えるように、このインターフェースを介してテクスチャを生成します。

注釈

このインターフェースクラスは独自のレンダラを実装する際に必要となるものです。既存のレンダラを利用する限りはこのクラスを仕様を知る必要はありません。

宣言#

namespace MGL::Render
{
    class TextureGenerator;
}

メンバ情報#

種類

名前

内容

純粋仮想関数

MakeTextureResource

テクスチャリソースの生成


MakeTextureResource#

テクスチャリソースの生成

宣言#

namespace MGL::Render
{
    class TextureGenerator
    {
        virtual SharedTextureResource MakeTextureResource() noexcept = 0;
    };
}

戻り値#

SharedTextureResource

生成したテクスチャリソース

説明#

テクスチャリソースクラスを生成して返します。継承先のクラスにおいては、目的となるレンダラ用のテクスチャリソースを生成して返してください。

利用例#

// MGL::Render::TextureResourceを継承したYourTextureResourceを生成する関数の実装例
virtual MGL::Render::SharedTextureResource YourTextureGenerator::MakeTextureResource() noexcept override
{
    return MGL::STL::make_shared<YourTextureResource>();
}

関連#