OpenClonk
C4Particles.h File Reference
#include "C4ForbidLibraryCompilation.h"
#include "graphics/C4FacetEx.h"
#include "lib/C4Random.h"
#include "platform/StdScheduler.h"
#include <pcg/pcg_random.hpp>
#include <epoxy/gl.h>
#include "graphics/C4Shader.h"
Include dependency graph for C4Particles.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  C4ParticleDefCore
 
class  C4ParticleDef
 
class  C4ParticleValueProvider
 
class  C4ParticleProperties
 
class  C4Particle
 
struct  C4Particle::DrawingData
 
struct  C4Particle::DrawingData::Vertex
 
class  C4ParticleChunk
 
class  C4ParticleList
 
class  C4ParticleSystemDefinitionList
 
class  C4ParticleSystem
 

Typedefs

typedef float(C4ParticleValueProvider::* C4ParticleValueProviderFunction) (C4Particle *)
 
typedef bool(C4ParticleProperties::* C4ParticleCollisionCallback) (C4Particle *)
 

Enumerations

enum  C4ParticleValueProviderID {
  C4PV_Const , C4PV_Linear , C4PV_Random , C4PV_KeyFrames ,
  C4PV_Sin , C4PV_Cos , C4PV_Direction , C4PV_Step ,
  C4PV_Speed , C4PV_Wind , C4PV_Gravity
}
 
enum  C4ParticleAttachmentPropertyID { C4ATTACH_None = 0 , C4ATTACH_Front = 1 , C4ATTACH_Back = 2 , C4ATTACH_MoveRelative = 4 }
 
enum  C4ParticleCollisionFuncID { C4PC_Die , C4PC_Bounce , C4PC_Stop }
 

Variables

C4ParticleSystem Particles
 

Class Documentation

◆ C4Particle::DrawingData::Vertex

struct C4Particle::DrawingData::Vertex

Definition at line 243 of file C4Particles.h.

Class Members
float alpha
float b
float g
float r
float u
float v
float x
float y

Typedef Documentation

◆ C4ParticleCollisionCallback

typedef bool(C4ParticleProperties::* C4ParticleCollisionCallback) (C4Particle *)

Definition at line 105 of file C4Particles.h.

◆ C4ParticleValueProviderFunction

typedef float(C4ParticleValueProvider::* C4ParticleValueProviderFunction) (C4Particle *)

Definition at line 104 of file C4Particles.h.

Enumeration Type Documentation

◆ C4ParticleAttachmentPropertyID

Enumerator
C4ATTACH_None 
C4ATTACH_Front 
C4ATTACH_Back 
C4ATTACH_MoveRelative 

Definition at line 46 of file C4Particles.h.

47 {
48  C4ATTACH_None = 0,
49  C4ATTACH_Front = 1,
50  C4ATTACH_Back = 2,
52 };
@ C4ATTACH_None
Definition: C4Particles.h:48
@ C4ATTACH_Front
Definition: C4Particles.h:49
@ C4ATTACH_MoveRelative
Definition: C4Particles.h:51
@ C4ATTACH_Back
Definition: C4Particles.h:50

◆ C4ParticleCollisionFuncID

Enumerator
C4PC_Die 
C4PC_Bounce 
C4PC_Stop 

Definition at line 54 of file C4Particles.h.

55 {
56  C4PC_Die,
58  C4PC_Stop,
59 };
@ C4PC_Stop
Definition: C4Particles.h:58
@ C4PC_Bounce
Definition: C4Particles.h:57
@ C4PC_Die
Definition: C4Particles.h:56

◆ C4ParticleValueProviderID

Enumerator
C4PV_Const 
C4PV_Linear 
C4PV_Random 
C4PV_KeyFrames 
C4PV_Sin 
C4PV_Cos 
C4PV_Direction 
C4PV_Step 
C4PV_Speed 
C4PV_Wind 
C4PV_Gravity 

Definition at line 31 of file C4Particles.h.

32 {
33  C4PV_Const,
37  C4PV_Sin,
38  C4PV_Cos,
40  C4PV_Step,
41  C4PV_Speed,
42  C4PV_Wind,
44 };
@ C4PV_Direction
Definition: C4Particles.h:39
@ C4PV_Cos
Definition: C4Particles.h:38
@ C4PV_Linear
Definition: C4Particles.h:34
@ C4PV_Const
Definition: C4Particles.h:33
@ C4PV_Speed
Definition: C4Particles.h:41
@ C4PV_Sin
Definition: C4Particles.h:37
@ C4PV_Random
Definition: C4Particles.h:35
@ C4PV_Gravity
Definition: C4Particles.h:43
@ C4PV_Wind
Definition: C4Particles.h:42
@ C4PV_KeyFrames
Definition: C4Particles.h:36
@ C4PV_Step
Definition: C4Particles.h:40

Variable Documentation

◆ Particles