FXPlugin 0.2, first 'official' release - download

A place for users of OGRE to discuss ideas and experiences of utilitising OGRE in their games / demos / applications.
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

FXPlugin 0.2, first 'official' release - download

Post by spookyboo »

The FXPlugin is an Ogre plugin that provides ready to use effects, which are created with one unique interface and can be put into your scene without too much hassle. The philosophy behind it is to "insert an effect and press play...". It took some time to sort things out first and because I'm a weekend hobbyist, my progress isn't at the level I want it to be (and I'm not really an artist). But I'm glad that my first milestone is reached. Summarised, my progression until now is that the 'core' code has the parts in place that I initially wanted. This includes:
  • - a mechanism for uniformly creating FX objects; by means of code or xml definition files
    - manage start, stop, fade(in/out), suspend and resume effects, all by means of a timer
    - support of pluggable FX packs
    - predefined particle system pools
    - 'core' effects based on 'particles', 'bi-particles', 'billboard', 'light', ' plane' and ' compositor/filter'
    - 'composite' effects, which are created by combining other effects into one (both in code and xml)
    - envelopes; scriptable movement of effects
    - doxygen API descriptions
I've also added some miscellanious stuff to the core, for instance the 'Mesh surface emitter'; an emitter that emits particles from the surface of a given mesh.

To complete version 0.2 I've included 5 demos and fxpack1, an effects pack, which isn't even close to finished, but containing 50+ xml's, several scripts (material, particles, envelopes) and textures to play with. The fxpack1 also includes custom C++ code for effects that cannot be created by means of the core effects, for instance 'heathaze' and 'shaking camera'.

What are my plans for version 0.3? Well, I'm not completely sure yet, but I want to add some new envelope types (i.e. based on Bezier curve/ spline), refine parts of the code (make it more efficient, speed things up, add setScale and setOrientation, ...), add some new effects (I still need some great, new explosions and an automated lensflare would be nice), extend some of the existing effects (Wounded filter, ...), read scrambled, binary file as alternative for plain xml, implement default LOD (if needed). GOOF support would be nice too. I'm looking forward to add an effect from the ' FXPlugin' into the scene by means of the MapEditor.

So, although this plugin is still in its infancies, expect that new features and content will be added. Download it, give it a try and let me know what you think of it. If you any trouble I will reply, but perhaps not immediatly, because an even greater deliverable (in fact 2) has been released; my baby twin is born. Two beautiful girls :lol:

You can download the FXPlugin at:
http://home.hetnet.nl/~spookyboo/download.html
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

Don´t forget to read the installation.txt, which can be found in ogrenew/PlugIns/FXPlugin/misc
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Re: FXPlugin 0.2, first 'official' release - download

Post by jacmoe »

spookyboo wrote:Two beautiful girls :lol:
Congratulations! :D

I will give the FXPlugin a whirl! What a nice Spring present! :)
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
User avatar
xavier
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 9481
Joined: Fri Feb 18, 2005 2:03 am
Location: Dublin, CA, US
x 22

Post by xavier »

Too cool, I am looking forward to working with this. :) Thanks spooky!
User avatar
Kencho
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4011
Joined: Fri Sep 19, 2003 6:28 pm
Location: Burgos, Spain
x 2
Contact:

Re: FXPlugin 0.2, first 'official' release - download

Post by Kencho »

spookyboo wrote:an even greater deliverable (in fact 2) has been released
Congrats! :) (and thanks!)
spookyboo wrote:my baby twin is born. Two beautiful girls :lol:
Congrats!! :D
Image
User avatar
syedhs
Silver Sponsor
Silver Sponsor
Posts: 2702
Joined: Mon Aug 29, 2005 3:24 pm
Location: Kuala Lumpur, Malaysia
x 47

Post by syedhs »

First of all congratss for the babies :)

Secondly, congrat also for your fx baby :wink: Looking forward to your fxplugin updated version.
User avatar
eugen
OGRE Expert User
OGRE Expert User
Posts: 1422
Joined: Sat May 22, 2004 5:28 am
Location: Bucharest
x 8
Contact:

Post by eugen »

cool plugin, great demos, congrats for your babies! :)
User avatar
Falagard
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2060
Joined: Thu Feb 26, 2004 12:11 am
Location: Toronto, Canada
x 3
Contact:

Post by Falagard »

I'm planning on integrating this into GOOF eventually Spooky. Good to see you're interested in the same thing :-)

Looks great!
User avatar
Olex
Hobgoblin
Posts: 593
Joined: Fri Apr 08, 2005 6:08 pm
Location: WA, USA

Post by Olex »

Nice work, I've been watching this. :D

A few Q's:
1. Any plans to make this run on Linux? What needs to be done to get it there?
2. Is PS2.0 a requirement for entire package, or just some effects? On your website it says: "ps 2.0 is needed for some effects", however I want to get a clearer answer.

P.S. Nice simple task schedule, you got there. http://home.hetnet.nl/~spookyboo/roadmap.html
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

Thanks guys. I'm still searching for a way to find the balance between quantity and quality. Some of the things are still a bit cheezy/unpolished.

2Olex
1. Any plans to make this run on Linux? What needs to be done to get it there?
I don't have plans myself to do this. There aren't any windows specific things used, although some of the shaders use hlsl and some textures are DDS. I don't know whether this is a problem in Linux.
2. Is PS2.0 a requirement for entire package, or just some effects? On your website it says: "ps 2.0 is needed for some effects", however I want to get a clearer answer.
ps2.0 is not required for the whole package. If you only use the core plugin you don't need it at all. Its only used for compositors and such. I assumed (maybe I'm wrong) that ps2.0 is currently supported in 90% of the cases.
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4
Contact:

Post by tuan kuranes »

Congrats to the whole family !

And Nice work, Thanks a lot for the release !
Could be a ogreaddons ? would ease proposing patches and so ?
(linux makefiles, hlsl to glsl shaders conversion, new effects, etc...)
User avatar
DaCracker
Gremlin
Posts: 192
Joined: Thu Jan 27, 2005 9:57 am
Location: Sweden
Contact:

Post by DaCracker »

Thanks alot, I really like it! :D
User avatar
BlasterN
Gnome
Posts: 378
Joined: Thu Mar 24, 2005 1:07 am
Location: Spain
Contact:

Post by BlasterN »

tuan kuranes wrote: Could be a ogreaddons ? would ease proposing patches and so ?
(linux makefiles, hlsl to glsl shaders conversion, new effects, etc...)
I don't tried yet (donwloading) but I think that this could be part of the core as a new plugin:
- if dont modify the core
- follow the same code conventions
- You work in the cross-plataform. maybe using CG Shaders.
I wont see any reason to dont it.

One q? It's compatible with the FX Plugin in ogre?

@spookyboo
Two girls!! Congratulations!
Works:
MapToMesh | Bengine B9 @ www.sourceforge.net/projects/maptoogremesh/
3DWorldStudio exporter@ www.blastern.info
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Post by jacmoe »

BlasterN wrote:One q? It's compatible with the FX Plugin in ogre?
If you mean the ParticleFX plugin, yes. It uses it.
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19269
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66
Contact:

Post by sinbad »

Congrats on all fronts :) I like the look of this.
User avatar
syedhs
Silver Sponsor
Silver Sponsor
Posts: 2702
Joined: Mon Aug 29, 2005 3:24 pm
Location: Kuala Lumpur, Malaysia
x 47

Post by syedhs »

@spookyboo,

I have tested it, it is definitely cool..! The code to implement your feature is simple and straightforward - but cant say the same for the library itself :wink:

As usual, I have a few comments:-

1) Many of the samples failed to run and this is the exception message:
Error #: -2147467259
Function: D3D9HLSLProgram::loadFromSource
Description: Cannot assemble D3D9 high-level shader fxplugin_filter_halftone_4_ps Errors:
(40): error X5608: Compiled shader code uses too many arithmetic instruction slots (69). Max. allowed by the target (ps_2_0) is 64.
I am using GeForce 7600GS.

As expected, when I removed/renamed the fxplugin_filter.material, the demos can be executed properly.

2) fxplugin_demo_sparkles.exe will bomb an error after a moment (maybe around 20 seconds - I didn't use a stop watch :roll: ). Looking at the Ogre.log didn't reveal anything.. it simply stopped. Could it be due to the renaming the material above?

3) Maybe a little early, but I couldn't reproduce the lightning effect in my scene. The compilations are all fine, hmm maybe I am missing something, but there are only two lines for lightning..hmmm

It is a great job however, and I fully support it to be in the official plugin - well if you dont mind!

Edit:
Item (3) could be an issue with my camera..
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

2syedhs,

1) Can't explain this. Maybe an ATI/NVidia thing? No ps2.0 afterall? I'll try to adjust the shader in the next release.
2) I still have to test the demos for a longer period (> 2 hours). Perhaps some kind of stack overflow. I´ve experienced something similar when I set the quota in the particlescript to a large value (> 10.000), but 2000 should work fine.
3) Could be that you moved the camera. If you want more forks, experiment with the fxplugin_lightning.xml. Change values of the lines
depth="5" and chanceToBranch="0.01". I also don't set the seed for the Math:: RangeRandom() function. Different seed gives different type of fork.
persoontje
Halfling
Posts: 47
Joined: Sun Jun 04, 2006 7:59 am
Location: The Netherlands
Contact:

Post by persoontje »

Your plugin looks great, and I can build it, but unfortunaly it doesnt run.
I get this error:

Code: Select all

09:54:07: An exception has been thrown!

-----------------------------------
Details:
-----------------------------------
Error #: 4
Function: ParticleSystemManager::_createEmitter
Description: Cannot find requested emitter type.. 
File: ..\src\OgreParticleSystemManager.cpp
Line: 283
Stack unwinding: <<beginning of stack>>
Do you know what this is, and how to fix it?
persoontje
Halfling
Posts: 47
Joined: Sun Jun 04, 2006 7:59 am
Location: The Netherlands
Contact:

Post by persoontje »

persoontje wrote:Your plugin looks great, and I can build it, but unfortunaly it doesnt run.
I get this error:

Code: Select all

09:54:07: An exception has been thrown!

-----------------------------------
Details:
-----------------------------------
Error #: 4
Function: ParticleSystemManager::_createEmitter
Description: Cannot find requested emitter type.. 
File: ..\src\OgreParticleSystemManager.cpp
Line: 283
Stack unwinding: <<beginning of stack>>
Do you know what this is, and how to fix it?
I've traced the error. It is in the particle file of the fx demosfxplugin_demo.paticle)

When this file is in the resources .cfg file I get that error. Also the ogre particle doesnt work then. When I remove that file the ogre demo works, but the particlefx demo needs it, so that doesnt work

Do you know how to fix this?
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

Did you add the fxplugin to plugins.cfg ?
If you didn't, it doesn't recognize the fxplugin at all.
persoontje
Halfling
Posts: 47
Joined: Sun Jun 04, 2006 7:59 am
Location: The Netherlands
Contact:

Post by persoontje »

spookyboo wrote:Did you add the fxplugin to plugins.cfg ?
If you didn't, it doesn't recognize the fxplugin at all.
I've forgotten that :roll:
But I'm now on linux, so I'll look later if it works then.
persoontje
Halfling
Posts: 47
Joined: Sun Jun 04, 2006 7:59 am
Location: The Netherlands
Contact:

Post by persoontje »

persoontje wrote:
spookyboo wrote:Did you add the fxplugin to plugins.cfg ?
If you didn't, it doesn't recognize the fxplugin at all.
I've forgotten that :roll:
But I'm now on linux, so I'll look later if it works then.
It works better now, but I still get an error:

Code: Select all

-----------------------------------
Details:
-----------------------------------
Error #: -2147467259
Function: D3D9HLSLProgram::loadFromSource
Description: Cannot assemble D3D9 high-level shader fxplugin_filter_halftone_4_ps Errors:
(40): error X5608: Compiled shader code uses too many arithmetic instruction slots (69). Max. allowed by the target (ps_2_0) is 64.
. 
File: ..\src\OgreD3D9HLSLProgram.cpp
Line: 63
Stack unwinding: <<beginning of stack>>
Do you know what this is?
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

I bet you have a NVidia card. Currently there is no structural solution.
Try removing the reference to fxplugin_filter_halftone_4_ps script in the fxplugin_filter.program file.
persoontje
Halfling
Posts: 47
Joined: Sun Jun 04, 2006 7:59 am
Location: The Netherlands
Contact:

Post by persoontje »

spookyboo wrote:I bet you have a NVidia card. Currently there is no structural solution.
Try removing the reference to fxplugin_filter_halftone_4_ps script in the fxplugin_filter.program file.
You win :D. Yes I've got a nvidia geforce 6600 go. :x

Could you explain what the error is? I'll try to remove that reference when I'm finished with my homework :(
User avatar
spookyboo
Silver Sponsor
Silver Sponsor
Posts: 1141
Joined: Tue Jul 06, 2004 5:57 am
x 150
Contact:

Post by spookyboo »

I'm not sure. Could be that the compiled shader code results in less arithmetic instructions on my ATI card.
Post Reply