Luanti 5.10.0-dev
 
Loading...
Searching...
No Matches
particles.h File Reference
#include <string>
#include <sstream>
#include <vector>
#include <type_traits>
#include "irrlicht_changes/printing.h"
#include "irrlichttypes_bloated.h"
#include "tileanimation.h"
#include "mapnode.h"
#include "util/serialize.h"
#include "util/numeric.h"
+ Include dependency graph for particles.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ParticleParamTypes::Parameter< T, PN >
 
struct  ParticleParamTypes::VectorParameter< T, N >
 
struct  ParticleParamTypes::RangedParameter< T >
 
struct  ParticleParamTypes::TweenedParameter< T >
 
struct  ParticleTexture
 
struct  ServerParticleTexture
 
struct  CommonParticleParams
 
struct  ParticleParameters
 
struct  ParticleSpawnerParameters
 

Namespaces

namespace  ParticleParamTypes
 

Macros

#define DECL_PARAM_SRZRS(type)
 
#define DECL_PARAM_OVERLOADS(type)
 

Typedefs

template<bool cond, typename T >
using ParticleParamTypes::enableIf = typename std::enable_if<cond, T>::type
 
template<typename T >
using ParticleParamTypes::BlendFunction = T(float,T,T)
 
using ParticleParamTypes::f32Parameter = Parameter<f32, 1>
 
using ParticleParamTypes::v2fParameter = VectorParameter<v2f, 2>
 
using ParticleParamTypes::v3fParameter = VectorParameter<v3f, 3>
 
using ParticleParamTypes::v3fRange = RangedParameter<v3fParameter>
 
using ParticleParamTypes::f32Range = RangedParameter<f32Parameter>
 
using ParticleParamTypes::v2fTween = TweenedParameter<v2fParameter>
 
using ParticleParamTypes::v3fTween = TweenedParameter<v3fParameter>
 
using ParticleParamTypes::f32Tween = TweenedParameter<f32Parameter>
 
using ParticleParamTypes::v3fRangeTween = TweenedParameter<v3fRange>
 
using ParticleParamTypes::f32RangeTween = TweenedParameter<f32Range>
 

Enumerations

enum class  ParticleParamTypes::TweenStyle : u8 {
  ParticleParamTypes::fwd , ParticleParamTypes::rev , ParticleParamTypes::pulse , ParticleParamTypes::flicker ,
  ParticleParamTypes::TweenStyle_END
}
 
enum class  ParticleParamTypes::AttractorKind : u8 { ParticleParamTypes::none , ParticleParamTypes::point , ParticleParamTypes::line , ParticleParamTypes::plane }
 
enum class  ParticleParamTypes::BlendMode : u8 { ParticleParamTypes::alpha , ParticleParamTypes::add , ParticleParamTypes::sub , ParticleParamTypes::screen }
 

Functions

 ParticleParamTypes::DECL_PARAM_OVERLOADS (u8)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (s8)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (u16)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (s16)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (u32)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (s32)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (f32)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (v2f)
 
 ParticleParamTypes::DECL_PARAM_OVERLOADS (v3f)
 
template<typename E , enableIf< std::is_enum< E >::value, bool > = true>
void ParticleParamTypes::serializeParameterValue (std::ostream &os, E k)
 
template<typename E , enableIf< std::is_enum< E >::value, bool > = true>
void ParticleParamTypes::deSerializeParameterValue (std::istream &is, E &k)
 
template<typename T , size_t PN>
std::string ParticleParamTypes::dump (const Parameter< T, PN > &p)
 
template<typename T , size_t N>
std::string ParticleParamTypes::dump (const VectorParameter< T, N > &v)
 
template<typename T >
std::string ParticleParamTypes::dump (const RangedParameter< T > &r)
 
template<typename T >
std::string ParticleParamTypes::dump (const TweenedParameter< T > &t)
 

Macro Definition Documentation

◆ DECL_PARAM_OVERLOADS

#define DECL_PARAM_OVERLOADS ( type)
Value:
type interpolateParameterValue(float fac, const type a, const type b); \
type pickParameterValue (float* facs, const type a, const type b);
#define DECL_PARAM_SRZRS(type)
Definition particles.h:30

◆ DECL_PARAM_SRZRS

#define DECL_PARAM_SRZRS ( type)
Value:
void serializeParameterValue (std::ostream& os, type v); \
void deSerializeParameterValue(std::istream& is, type& r);