Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2010-11-17 22:49:18 +0000
committerStijn Buys <ingar@osirion.org>2010-11-17 22:49:18 +0000
commitee017172af06f4b247038510e5ef7f8ac3596f66 (patch)
treed5103d67ed5e403a651c9963e8ae6e6aa2d5240d /src/render/renderext.cc
parent145ce988324b8b7b1f2b329f618ad5c6dfc4aac9 (diff)
Cleaned up model::Mapfile axis related keys in the map reader, added warning messages where approriate. Support for multiple particle systems in render::ParticleScript. Cleaned up render::ParticleScript member variable names. Added support for axis related keys and scale key in particle scripts.
Diffstat (limited to 'src/render/renderext.cc')
-rw-r--r--src/render/renderext.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/render/renderext.cc b/src/render/renderext.cc
index 5f24e85..049b3de 100644
--- a/src/render/renderext.cc
+++ b/src/render/renderext.cc
@@ -54,15 +54,14 @@ RenderExt::RenderExt(core::Entity *entity) : core::Extension(core::Extension::Re
flare->set_texture(Textures::load(flarename.str()));
}
- for (model::Model::ParticleSystems::iterator pit = model->particles().begin(); pit != model->particles().end(); pit++) {
- model::Particles *particlesystem = (*pit);
+ for (model::Model::ParticleSystems::const_iterator pit = model->particles().begin(); pit != model->particles().end(); pit++) {
+ // model attachment location tag
+ const model::Particles *particlesystem = (*pit);
- // TODO multiple particlesystems per script
-
// load particle systems
- ParticleScript *script = ParticleScript::load(particlesystem->script());
- if (script) {
- if (script->type() == render::ParticleScript::Trail) {
+ const ParticleScript *script = ParticleScript::load(particlesystem->script());
+ while (script) {
+ if ( script->type() == render::ParticleScript::Trail) {
Trail *trail = new Trail(script, entity, particlesystem);
state_particles.push_back(trail);
} else if (script->type() == render::ParticleScript::Jet) {
@@ -75,6 +74,7 @@ RenderExt::RenderExt(core::Entity *entity) : core::Extension(core::Extension::Re
Flame *flame = new Flame(script, entity, particlesystem);
state_particles.push_back(flame);
}
+ script = script->next();
}
}