-#ifndef PARTICLE_H
-#define PARTICLE_H
-
+#pragma once
#include "skaterift.h"
typedef struct particle_system particle_system;
/* render settings */
f32 scale, velocity_scale, width;
}
-static particles_grind = {
- .scale = 0.02f,
- .velocity_scale = 0.001f,
- .width = 0.0125f
-},
-particles_env = {
- .scale = 0.04f,
- .velocity_scale = 0.001f,
- .width = 0.25f
-};
-
-static void particle_alloc( particle_system *sys, u32 max );
-static void particle_system_update( particle_system *sys, f32 dt );
-static void particle_system_debug( particle_system *sys );
-static void particle_system_prerender( particle_system *sys );
-static void particle_system_render( particle_system *sys, camera *cam );
-
-static void particle_spawn( particle_system *sys,
- v3f co, v3f v, f32 lifetime, u32 colour );
-static void particle_spawn_cone( particle_system *sys,
- v3f co, v3f dir, f32 angle, f32 speed,
- f32 lifetime, u32 colour );
-
-#include "shaders/particle.h"
-
-#endif /* PARTICLE_H */
+extern particles_grind, particles_env;
+
+void particle_alloc( particle_system *sys, u32 max );
+void particle_system_update( particle_system *sys, f32 dt );
+void particle_system_debug( particle_system *sys );
+void particle_system_prerender( particle_system *sys );
+void particle_system_render( particle_system *sys, vg_camera *cam );
+
+void particle_spawn( particle_system *sys,
+ v3f co, v3f v, f32 lifetime, u32 colour );
+void particle_spawn_cone( particle_system *sys,
+ v3f co, v3f dir, f32 angle, f32 speed,
+ f32 lifetime, u32 colour );