TombEngine/TR5Main/Game/drip.h

31 lines
836 B
C
Raw Normal View History

2020-06-15 19:59:08 +02:00
#pragma once
#include <d3d11.h>
#include <SimpleMath.h>
#include <array>
namespace T5M {
namespace Effects {
namespace Drip {
constexpr float DRIP_LIFE = 25.0f;
2020-06-18 14:24:52 +02:00
constexpr float DRIP_LIFE_LONG = 120.0f;
2020-06-15 19:59:08 +02:00
constexpr float DRIP_WIDTH = 4;
2020-06-18 14:24:52 +02:00
constexpr int NUM_DRIPS = 512;
2020-06-15 19:59:08 +02:00
struct DripParticle {
DirectX::SimpleMath::Vector3 pos;
DirectX::SimpleMath::Vector3 velocity;
DirectX::SimpleMath::Vector4 color;
int room;
float gravity;
2020-06-16 19:13:41 +02:00
float life;
2020-06-15 19:59:08 +02:00
float age;
float height;
bool active;
};
2020-06-18 14:24:52 +02:00
extern std::array<DripParticle, NUM_DRIPS> dripParticles;
2020-06-15 19:59:08 +02:00
void UpdateDrips();
DripParticle& getFreeDrip();
2020-06-16 19:13:41 +02:00
void SpawnWetnessDrip(DirectX::SimpleMath::Vector3 pos, int room);
void SpawnSplashDrips(Vector3& pos, int num, int room);
2020-06-18 14:24:52 +02:00
void SpawnGunshellDrips(Vector3& pos, int room);
2020-06-15 19:59:08 +02:00
}
}
}