Particle Editor (current version: debug 0.2.162)
Thanks for the comments all.
This, small project that I had first intended it to be, has really grown into something of a bigger project for me. And the feedback from you guys and my idéas keeps me going.
Jin, Rambus - Thanks guys
afecelis, nutpor - Admittedly there's a few features of the particle systems I still have to take a closer look at and implement sometime, to give user complete control. The affectors being a couple of those features, and possibility of using createPointEmitter instead of createBoxEmitter.
Regarding the save features, v0.1 has a c++ save function, found in the File menu, saves the current particle system to ParticleSystem.cpp in a basic way, it just fills a preset string with values from the system. However, one thing I have to take a closer look at is the fact that Irrlicht seems to change the relative path to the last folder you loaded something from, like a texture. So if you've loaded a different texture for the particle system, the cpp file will be saved in that folder.
And I never imagined this being a sticky, thanks, that's great motivation for me
And a couple of things I thought of yesterday, that could be implemented relatively easy:
I've updated the first post with easy access to download links and todo/feature list etc.
This, small project that I had first intended it to be, has really grown into something of a bigger project for me. And the feedback from you guys and my idéas keeps me going.
Jin, Rambus - Thanks guys
afecelis, nutpor - Admittedly there's a few features of the particle systems I still have to take a closer look at and implement sometime, to give user complete control. The affectors being a couple of those features, and possibility of using createPointEmitter instead of createBoxEmitter.
Regarding the save features, v0.1 has a c++ save function, found in the File menu, saves the current particle system to ParticleSystem.cpp in a basic way, it just fills a preset string with values from the system. However, one thing I have to take a closer look at is the fact that Irrlicht seems to change the relative path to the last folder you loaded something from, like a texture. So if you've loaded a different texture for the particle system, the cpp file will be saved in that folder.
And I never imagined this being a sticky, thanks, that's great motivation for me
And a couple of things I thought of yesterday, that could be implemented relatively easy:
- * Slider controls for offsetting the 3d cursor for more precise placement (inside geometry for instance).
* Saving 3d cursor positions for later use.
* Billboard placement.
I've updated the first post with easy access to download links and todo/feature list etc.
My solution to the relative path issue, I've set the editor to always load from workdir/textures/particles, so you have to copy any new textures there. Any thoughts on this is welcome
Code: Select all
void ParticleSystem::setParticleTexture(stringc &texture)
{
//! Get only the name of the texture.
s32 pos = texture.findLast('/');
stringc fileName;
if(pos > -1)
fileName = texture.subString(pos+1, strlen(texture.c_str()));
else
fileName = texture;
//! Set the full texture path, this will ALWAYS be in the particles dir. No matter where you load from.
stringc fullTextureName = workDir;
fullTextureName += L"textures\\particles\\";
fullTextureName += fileName;
printf("Texture name set to: %s\n", fullTextureName.c_str());
m_particleTexture = fullTextureName;
}
Its a good solution and the way most people would expect it to be. This is a great tool and I expecially want to thank you for releasing the source. Particle effects are soon in my project and I was thinking of making a kind of life fountain of effects in town square that changes randomly. Your project is DAM COOL.
THANKS
Umm would be great if I could specify the output directory so the ouput of the particle editor goes directy into my project folder
THANKS
Umm would be great if I could specify the output directory so the ouput of the particle editor goes directy into my project folder
Thanks drac_gd, that put a big smile on my face
I hope you find the editor useful.
I wanted to share some of todays updates with you guys, I've made some revisions to the ui, decreased the alpha a little, and added a bigger font.
And I have now added controls for gravity and fade-out affectors (which, as you might notice, are *squeezed* into the ui atm, not so pretty), which works for saving & loading in presets as well, of course
This however means that v0.1 presets will not be compatible with v0.2, well, I guess they could be loaded theoretically in my mind, but I wouldn't count on it. I will provide some presets for v0.2 though
This thing with multiple-particle systems has really gotten me to think of adding some kind of sets, let's say for instance that you build a waterfall consisting of several emitters, it would be great to add them to a set called "waterfall". But I think that'd require quite a bit of work, so I'll see when I take that on. I'll add it to my todo-list however.
Screenshot of current ui:
I hope you find the editor useful.
I wanted to share some of todays updates with you guys, I've made some revisions to the ui, decreased the alpha a little, and added a bigger font.
And I have now added controls for gravity and fade-out affectors (which, as you might notice, are *squeezed* into the ui atm, not so pretty), which works for saving & loading in presets as well, of course
This however means that v0.1 presets will not be compatible with v0.2, well, I guess they could be loaded theoretically in my mind, but I wouldn't count on it. I will provide some presets for v0.2 though
This thing with multiple-particle systems has really gotten me to think of adding some kind of sets, let's say for instance that you build a waterfall consisting of several emitters, it would be great to add them to a set called "waterfall". But I think that'd require quite a bit of work, so I'll see when I take that on. I'll add it to my todo-list however.
Screenshot of current ui:
@ afecelis
V0.2 pre-release 1 is now available: download
Please try it out, have a look around and get a sense for how it feels to use and work with. I gave it a stress test and had 120 emitters in the same scene, flipping back and forth around settings and I expected it to crash but I guess I wasn't screwing around enough for that to happen
One thing I can reproduce a crash with though, is loading presets after loading my environment, haven't figured out why yet, but if I just load the presets first, it's fine, from what I've noticed.
Anyone is welcome to test it, report bugs, and comment on features, what you'd like to see changed and so forth.
A couple of things about scenery (pk3, dmf):
PK3 files are loaded with the following assumptions:
The file name of the archive is map-filename.pk3,
and the name of the map is filename.bsp
If the dmf loader tries to load textures from the dmf-files' parent folder, place the map in a subfolder to the textures, it should work.
V0.2 pre-release 1 is now available: download
Please try it out, have a look around and get a sense for how it feels to use and work with. I gave it a stress test and had 120 emitters in the same scene, flipping back and forth around settings and I expected it to crash but I guess I wasn't screwing around enough for that to happen
One thing I can reproduce a crash with though, is loading presets after loading my environment, haven't figured out why yet, but if I just load the presets first, it's fine, from what I've noticed.
Anyone is welcome to test it, report bugs, and comment on features, what you'd like to see changed and so forth.
A couple of things about scenery (pk3, dmf):
PK3 files are loaded with the following assumptions:
The file name of the archive is map-filename.pk3,
and the name of the map is filename.bsp
If the dmf loader tries to load textures from the dmf-files' parent folder, place the map in a subfolder to the textures, it should work.
Hm, strange. I've just tested it, I guess my host is down now and then. But I'll email a copy
/Edit
Apparently not
/Edit
Apparently not
Please give the link above another trySMTP error from remote mail server after end of data:
host gmail-smtp-in.l.google.com [66.249.83.114]:
552 5.7.0 Illegal Attachment i12si3704995wxd
Thanks to afecelis, version 0.2 pre-release 1 is now finally available on a probably more reliable download location.
I'd like some comments before releasing next version, so I can fix bugs and implement features that suites the needs of anyone who might be interested in using this tool in the future.
Download from afecelis' mirror
I'd like some comments before releasing next version, so I can fix bugs and implement features that suites the needs of anyone who might be interested in using this tool in the future.
Download from afecelis' mirror
A real absence of replies, I must say. I think it might have something to do with finals and summer vacation coming up
I'm moving south for the summer myself next week, so it'll probably be a week or so until I get my hands on a computer, but I'll continue this project as soon as I can.
I spent a little while booting up a knoppix live cd and messed around with compiling the editor for linux, just had to make some adjustments to the source, but here's the initial result for those interested: Image
I personally prefer working in a linux environment whenever I can.
I'm moving south for the summer myself next week, so it'll probably be a week or so until I get my hands on a computer, but I'll continue this project as soon as I can.
I spent a little while booting up a knoppix live cd and messed around with compiling the editor for linux, just had to make some adjustments to the source, but here's the initial result for those interested: Image
I personally prefer working in a linux environment whenever I can.
I get a strange error. The error is
"The Procedure entry point
?createDevice@irr@@YAPAVIrrlichtDevice@1@W4E_DRIVER_TYPE@video@1@ABV?$dimension2d@H@core@1@I_N@@PAVIEventReciuever@1@PBD@Z
could not be located in the dynamic link library Irrlicht.dll
I can compile things ok, I don't see why this wouldn't work. It fails on my laptop and my desktop. Any ideas?
"The Procedure entry point
?createDevice@irr@@YAPAVIrrlichtDevice@1@W4E_DRIVER_TYPE@video@1@ABV?$dimension2d@H@core@1@I_N@@PAVIEventReciuever@1@PBD@Z
could not be located in the dynamic link library Irrlicht.dll
I can compile things ok, I don't see why this wouldn't work. It fails on my laptop and my desktop. Any ideas?
"That is not dead which can eternal lie, And with strange aeons even death may die."