From 20b5825d924ef5aa37763cd71effefe5f7fd123e Mon Sep 17 00:00:00 2001 From: Beth Shi Date: Fri, 5 Jun 2015 11:39:55 -0700 Subject: [PATCH] p? --- media/texture/particle1.png | Bin 0 -> 5019 bytes src/client/config_client.json | 2 +- src/engine/graphics/GraphicsEngine.cpp | 2 +- src/engine/graphics/Particle3D.h | 24 ++++++++++++++++++++---- src/engine/graphics/Random.cpp | 3 ++- src/server/config_server.json | 8 ++++---- 6 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 media/texture/particle1.png diff --git a/media/texture/particle1.png b/media/texture/particle1.png new file mode 100644 index 0000000000000000000000000000000000000000..9d24e749fa41284aa70c69815b39323fcf3271f7 GIT binary patch literal 5019 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 literal 0 HcmV?d00001 diff --git a/src/client/config_client.json b/src/client/config_client.json index 63e14f4..190b3b4 100644 --- a/src/client/config_client.json +++ b/src/client/config_client.json @@ -1,7 +1,7 @@ { "ip": "127.0.0.1", "port": "9000", - "totalObjects": 1031, + "totalObjects": 2, "controls": { "MoveUp": "W", "MoveDown": "S", diff --git a/src/engine/graphics/GraphicsEngine.cpp b/src/engine/graphics/GraphicsEngine.cpp index 0434f17..ce5639a 100644 --- a/src/engine/graphics/GraphicsEngine.cpp +++ b/src/engine/graphics/GraphicsEngine.cpp @@ -251,7 +251,7 @@ void GraphicsEngine::Initialize() { m_quad = new Quad(0.5f, glm::vec3(1)); m_cube = new Cube(glm::vec3(), glm::quat(), glm::vec3(1), 0.5f); m_particleTex = HUD::makeHUD("../../media/texture/particle0.png"); - m_kyle = HUD::makeHUD("../../media/texture/particle0.png"); + m_kyle = HUD::makeHUD("../../media/texture/particle1.png"); // CAMERA diff --git a/src/engine/graphics/Particle3D.h b/src/engine/graphics/Particle3D.h index 1c051f8..5d32df3 100644 --- a/src/engine/graphics/Particle3D.h +++ b/src/engine/graphics/Particle3D.h @@ -20,6 +20,7 @@ struct Particle3D { glm::vec3 position; glm::vec3 velocity; glm::vec3 acceleration; + glm::vec3 rotation; glm::vec3 color; float size; float life, totalLife; @@ -76,18 +77,28 @@ class ParticleSystem : public Node { glm::vec3(0.29f, 0.f, 0.51f), glm::vec3(0.56f, 0.f, 1.f), }; //glm::vec3(0.f, 0.f, 0.f) }; - + if (type == P_PLAYER){ + numParticles = 100; + } + glm::vec3 v = Random::ballRand(Random::linearRand(Config::settings["gas"]["velocity"][0].asFloat(), Config::settings["gas"]["velocity"][1].asFloat())); for (int i = 0; i < numParticles; ++i) { // random on unit circle for now Particle3D p; p.position = Random::ballRand(Random::linearRand(0.5f, 0.5f)); if (type == P_PLAYER){ - p.color = colors[2]; + /*p.color = colors[2]; p.velocity = Random::ballRand(Random::linearRand(Config::settings["gas"]["velocity"][0].asFloat(), Config::settings["gas"]["velocity"][1].asFloat())); p.acceleration = glm::vec3(0, 0, Random::linearRand(Config::settings["gas"]["acceleration"][0].asFloat(), Config::settings["gas"]["acceleration"][1].asFloat())); p.life = Random::linearRand(Config::settings["gas"]["life"][0].asFloat(), Config::settings["gas"]["life"][1].asFloat()); p.totalLife = p.life; p.size = Random::linearRand(Config::settings["gas"]["size"][0].asFloat(), Config::settings["gas"]["size"][1].asFloat()); + */ + p.color = colors[2]; + p.velocity = v; + p.acceleration = glm::vec3(0,0,1);// glm::vec3(0, 0, Random::linearRand(Config::settings["gas"]["acceleration"][0].asFloat(), Config::settings["gas"]["acceleration"][1].asFloat())); + p.life = Random::linearRand(Config::settings["gas"]["life"][0].asFloat(), Config::settings["gas"]["life"][1].asFloat()); + p.totalLife = p.life; + p.size = Random::linearRand(Config::settings["gas"]["size"][0].asFloat(), Config::settings["gas"]["size"][1].asFloat()); } else{//RES p.velocity = Random::ballRand(Random::linearRand(Config::settings["particles"]["velocity"][0].asFloat(), Config::settings["particles"]["velocity"][1].asFloat())); @@ -155,8 +166,13 @@ class ParticleSystem : public Node { p.life -= timeElapsed; if (p.life < 0) it = m_particles.erase(it); else { - p.velocity += p.acceleration * timeElapsed; - p.position += p.velocity * timeElapsed + 0.5f * p.acceleration * timeElapsed * timeElapsed; + if (type == PType::P_PLAYER){ + //p.position + } + else{ + p.velocity += p.acceleration * timeElapsed; + p.position += p.velocity * timeElapsed + 0.5f * p.acceleration * timeElapsed * timeElapsed; + } ++it; } } diff --git a/src/engine/graphics/Random.cpp b/src/engine/graphics/Random.cpp index 87f9c6b..7a78a11 100644 --- a/src/engine/graphics/Random.cpp +++ b/src/engine/graphics/Random.cpp @@ -14,4 +14,5 @@ glm::vec3 Random::ballRand(float radius) { float Random::linearRand(float min, float max) { static std::uniform_real_distribution line(0.f, 1.f); return line(gen) * (max - min) + min; -} \ No newline at end of file +} + diff --git a/src/server/config_server.json b/src/server/config_server.json index 5a26569..acb2d92 100644 --- a/src/server/config_server.json +++ b/src/server/config_server.json @@ -3,10 +3,10 @@ "fps": 60, "ip": "127.0.0.1", "port": "9000", - "num resources": 1000, - "num clouds": 10, - "num pills": 10, - "num npcs": 10, + "num resources": 1, + "num clouds": 0, + "num pills": 0, + "num npcs": 0, "physics engine": { "gravity": 100,