mirror of https://github.com/AxioDL/metaforce.git
CModelShaders: Make EExtendedShader an enum class
Prevents pollution of the urde namespace with general names like Flat, etc.
This commit is contained in:
parent
2f9dd38bbe
commit
d9664d165f
|
@ -359,7 +359,7 @@ CBooModel::ModelInstance* CBooModel::PushNewModelInstance(int sharedLayoutBuf) {
|
|||
std::vector<boo::ObjToken<boo::IShaderDataBinding>>& extendeds = newInst.m_shaderDataBindings.back();
|
||||
extendeds.reserve(pipelines->size());
|
||||
|
||||
int idx = 0;
|
||||
EExtendedShader idx{};
|
||||
for (const auto& pipeline : *pipelines) {
|
||||
if (idx == EExtendedShader::Thermal) {
|
||||
texs[8] = g_Renderer->x220_sphereRamp.get();
|
||||
|
@ -387,7 +387,7 @@ CBooModel::ModelInstance* CBooModel::PushNewModelInstance(int sharedLayoutBuf) {
|
|||
extendeds.push_back(ctx.newShaderDataBinding(pipeline, newInst.GetBooVBO(*this, ctx), nullptr,
|
||||
m_staticIbo.get(), 4, bufs, stages, thisOffs, thisSizes, 12, texs,
|
||||
nullptr, nullptr));
|
||||
++idx;
|
||||
idx = EExtendedShader(size_t(idx) + 1);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
|
|
@ -21,7 +21,7 @@ class ShaderTag;
|
|||
namespace urde {
|
||||
class CLight;
|
||||
|
||||
enum EExtendedShader : uint8_t {
|
||||
enum class EExtendedShader : uint8_t {
|
||||
Flat,
|
||||
Lighting,
|
||||
Thermal,
|
||||
|
@ -96,7 +96,7 @@ public:
|
|||
static void Initialize();
|
||||
static void Shutdown();
|
||||
|
||||
using ShaderPipelinesData = std::array<boo::ObjToken<boo::IShaderPipeline>, EExtendedShader::MAX>;
|
||||
using ShaderPipelinesData = std::array<boo::ObjToken<boo::IShaderPipeline>, size_t(EExtendedShader::MAX)>;
|
||||
using ShaderPipelines = std::shared_ptr<ShaderPipelinesData>;
|
||||
|
||||
using Material = DataSpec::DNAMP1::HMDLMaterialSet::Material;
|
||||
|
|
Loading…
Reference in New Issue