aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-11-08 08:32:05 +0800
committerchai <chaifix@163.com>2018-11-08 08:32:05 +0800
commit186c68f964868eff0ba543777f47ff036735ef77 (patch)
tree5018aca298c2c7e3d7788e692cbb8f7c778fb2fe /src
parent78138dc8e08cebff3b8630cab5b54951061844b8 (diff)
*更新粒子系统
Diffstat (limited to 'src')
-rw-r--r--src/libjin/Core/je_configuration.h2
-rw-r--r--src/libjin/Graphics/particles/je_particle_emitter.cpp9
-rw-r--r--src/libjin/Graphics/particles/je_particle_system.h2
-rw-r--r--src/libjin/Graphics/shaders/je_shader.h5
-rw-r--r--src/libjin/Math/je_bezier_curve.cpp0
-rw-r--r--src/libjin/Math/je_bezier_curve.h17
-rw-r--r--src/libjin/Math/je_random.cpp15
-rw-r--r--src/libjin/Math/je_random.h18
-rw-r--r--src/lua/modules/graphics/je_lua_graphics.cpp6
9 files changed, 67 insertions, 7 deletions
diff --git a/src/libjin/Core/je_configuration.h b/src/libjin/Core/je_configuration.h
index 3ef52c8..80e2748 100644
--- a/src/libjin/Core/je_configuration.h
+++ b/src/libjin/Core/je_configuration.h
@@ -53,4 +53,6 @@
#define jin_ai
+#define JIN_EXPORT __declspec(dllexport)
+
#endif // __JE_COMMON_MODULES_H__ \ No newline at end of file
diff --git a/src/libjin/Graphics/particles/je_particle_emitter.cpp b/src/libjin/Graphics/particles/je_particle_emitter.cpp
index ded7b8b..63d3393 100644
--- a/src/libjin/Graphics/particles/je_particle_emitter.cpp
+++ b/src/libjin/Graphics/particles/je_particle_emitter.cpp
@@ -1,5 +1,11 @@
+#include <time.h>
+
+#include "../../math/je_random.h"
+
#include "je_particle_emitter.h"
+using namespace JinEngine::Math;
+
namespace JinEngine
{
namespace Graphics
@@ -7,6 +13,9 @@ namespace JinEngine
namespace Particles
{
+ // Particle emitter
+ static RandomGenerator rnd(time(NULL));
+
ParticleEmitter::ParticleEmitter(ParticleSystem& ps)
: mParticleSystem(ps)
{
diff --git a/src/libjin/Graphics/particles/je_particle_system.h b/src/libjin/Graphics/particles/je_particle_system.h
index 76d86fa..afa96b2 100644
--- a/src/libjin/Graphics/particles/je_particle_system.h
+++ b/src/libjin/Graphics/particles/je_particle_system.h
@@ -54,7 +54,7 @@ namespace JinEngine
void update(float sec);
///
- /// Render particle system it self.
+ /// Render particle system.
///
void render(int x, int y, float sx = 1, float sy = 1, float r = 0, float ax = 0, float ay = 0);
diff --git a/src/libjin/Graphics/shaders/je_shader.h b/src/libjin/Graphics/shaders/je_shader.h
index d89b827..2009e79 100644
--- a/src/libjin/Graphics/shaders/je_shader.h
+++ b/src/libjin/Graphics/shaders/je_shader.h
@@ -25,8 +25,9 @@ namespace JinEngine
///
/// Built in shader program.
///
- /// Built in shader program written with custom shading language called JSL (jin shading language). A JSL
- /// program is compiled into glsl, so most glsl built in functions and structs are available in JSL.
+ /// Built in shader program written with custom shading language called JSL (jin shading language). A
+ /// JSL program is compiled into glsl, so most glsl built in functions and structs are available in
+ /// JSL.
///
class Shader
{
diff --git a/src/libjin/Math/je_bezier_curve.cpp b/src/libjin/Math/je_bezier_curve.cpp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/libjin/Math/je_bezier_curve.cpp
diff --git a/src/libjin/Math/je_bezier_curve.h b/src/libjin/Math/je_bezier_curve.h
new file mode 100644
index 0000000..6925baf
--- /dev/null
+++ b/src/libjin/Math/je_bezier_curve.h
@@ -0,0 +1,17 @@
+#ifndef __JIN_BEZIER_CURVE_H__
+#define __JIN_BEZIER_CURVE_H__
+
+namespace JinEngine
+{
+ namespace Math
+ {
+
+ class BezierCurve
+ {
+
+ };
+
+ } // namespace Math
+} // namespace JinEngine
+
+#endif \ No newline at end of file
diff --git a/src/libjin/Math/je_random.cpp b/src/libjin/Math/je_random.cpp
new file mode 100644
index 0000000..a8f3310
--- /dev/null
+++ b/src/libjin/Math/je_random.cpp
@@ -0,0 +1,15 @@
+#include "je_random.h"
+
+namespace JinEngine
+{
+ namespace Math
+ {
+
+
+
+ RandomGenerator::RandomGenerator()
+ {
+ }
+
+ }
+} \ No newline at end of file
diff --git a/src/libjin/Math/je_random.h b/src/libjin/Math/je_random.h
index ff58918..0bcdec7 100644
--- a/src/libjin/Math/je_random.h
+++ b/src/libjin/Math/je_random.h
@@ -1,14 +1,28 @@
#ifndef __JE_RANDOM_H__
#define __JE_RANDOM_H__
+#include "../common/je_types.h"
+
namespace JinEngine
{
namespace Math
{
+ ///
+ /// A random number generator.
+ ///
+ class RandomGenerator
+ {
+ public:
+ RandomGenerator();
+ explicit RandomGenerator(uint32 seed);
+
+ uint32 rand(uint32 min, uint32 max);
+ float rand(float min, float max);
+ };
- }
-}
+ } // namespace Math
+} // namespace JinEngine
#endif \ No newline at end of file
diff --git a/src/lua/modules/graphics/je_lua_graphics.cpp b/src/lua/modules/graphics/je_lua_graphics.cpp
index c45a939..3befdde 100644
--- a/src/lua/modules/graphics/je_lua_graphics.cpp
+++ b/src/lua/modules/graphics/je_lua_graphics.cpp
@@ -502,8 +502,10 @@ namespace JinEngine
LUA_IMPLEMENT RenderMode strtomode(const char* str)
{
std::string s = std::string(str);
- if (s == "fill") return RenderMode::FILL;
- else if (s == "line") return RenderMode::LINE;
+ if (s == "fill")
+ return RenderMode::FILL;
+ else if (s == "line")
+ return RenderMode::LINE;
else return RenderMode::NONE;
}