40 void TimeStepUpdate(
const float timeStep);
77 void AddInstance(
Sfx &inst) {
return m_instances[inst.m_type].push_back(inst); }
87 coord_downscale(1.0f) {}
91 float coord_downscale;
97 static bool SplitMaterialData(
const std::string &spec, MaterialData &output);
100 static MaterialData m_materialData[
TYPE_NONE];
nlohmann::json Json
Definition: Json.h:8
SFX_TYPE
Definition: Sfx.h:21
@ TYPE_NONE
Definition: Sfx.h:25
@ TYPE_DAMAGE
Definition: Sfx.h:23
@ TYPE_SMOKE
Definition: Sfx.h:24
@ TYPE_EXPLOSION
Definition: Sfx.h:22
Definition: RenderState.h:25
Definition: Renderer.h:39
void Cleanup()
Definition: Sfx.cpp:221
static Graphics::RenderState * alphaState
Definition: Sfx.h:69
static void AddThrustSmoke(const Body *b, float speed, const vector3d &adjustpos)
Definition: Sfx.cpp:191
Sfx & GetInstanceByIndex(const SFX_TYPE t, const size_t i)
Definition: Sfx.h:76
static std::unique_ptr< Graphics::Material > explosionParticle
Definition: Sfx.h:68
static void Add(const Body *, SFX_TYPE)
Definition: Sfx.cpp:167
static std::unique_ptr< Graphics::Material > damageParticle
Definition: Sfx.h:65
static void ToJson(Json &jsonObj, const FrameId f)
Definition: Sfx.cpp:122
static Graphics::RenderState * alphaOneState
Definition: Sfx.h:71
void AddInstance(Sfx &inst)
Definition: Sfx.h:77
static void TimeStepAll(const float timeStep, FrameId f)
Definition: Sfx.cpp:200
static Graphics::RenderState * additiveAlphaState
Definition: Sfx.h:70
static void Uninit()
Definition: Sfx.cpp:421
static std::unique_ptr< Graphics::Material > ecmParticle
Definition: Sfx.h:66
static std::unique_ptr< Graphics::Material > smokeParticle
Definition: Sfx.h:67
size_t GetNumberInstances(const SFX_TYPE t) const
Definition: Sfx.h:75
SfxManager()
Definition: Sfx.cpp:115
static void AddExplosion(Body *)
Definition: Sfx.cpp:177
static void RenderAll(Graphics::Renderer *r, FrameId f, const FrameId camFrame)
Definition: Sfx.cpp:237
static void Init(Graphics::Renderer *r)
Definition: Sfx.cpp:361
static void FromJson(const Json &jsonObj, FrameId f)
Definition: Sfx.cpp:143
float AgeBlend() const
Definition: Sfx.cpp:104
void SetPosition(const vector3d &p)
Definition: Sfx.cpp:79
const vector3d & GetPosition() const
Definition: Sfx.h:35
void SaveToJson(Json &obj)
Definition: Economy.cpp:285
Definition: Background.h:13
EffectType
Definition: Material.h:27
@ EFFECT_BILLBOARD
Definition: Material.h:45