#pragma once #include //#include #include #include #include namespace metaforce { class CParticleSwoosh; class CParticleSwooshShaders { public: enum class EShaderClass { Tex, NoTex }; struct Vert { zeus::CVector3f m_pos; zeus::CVector2f m_uv; zeus::CColor m_color; }; private: // static std::array, 2> m_texZWrite; // static std::array, 2> m_texNoZWrite; // static std::array, 2> m_texAdditiveZWrite; // static std::array, 2> m_texAdditiveNoZWrite; // // static std::array, 2> m_noTexZWrite; // static std::array, 2> m_noTexNoZWrite; // static std::array, 2> m_noTexAdditiveZWrite; // static std::array, 2> m_noTexAdditiveNoZWrite; public: static void Initialize(); static void Shutdown(); static EShaderClass GetShaderClass(CParticleSwoosh& gen); static void BuildShaderDataBinding(CParticleSwoosh& gen); }; } // namespace metaforce