[Particle Effects] HellHeavenFX Ogre Plugin

A place to show off your latest screenshots and for people to comment on them. Only start a new thread here if you have some nice images to show off!
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi HHVFx,

thank you so much for this fast response and for your new build against 1.8.
I really dont know why only a few people posted here that you did a great job here, but that doesnt count. :D

My game doesent crashs with your new plugin - but I have a question about the documentation - where can I find it?
( I know you had only a few procedures and classes, but I prefer to read them in a doc - with some good explemenations in. )

And... I didnt found a scaling function yet, I know I can scale the view matrix from the camera, but when I scale it,
it screws the whole particle animation - it shows only parts of it (only smoke and distortion) and its not rotating anymore, like a flat 2D picture.


Is there somewhere a hidden function where I can scale all particle effects?
... But I guess its only doable via the view matrix - maybe I calculate it wrong:

Here is the code (which I took from your example):

Code: Select all

 	Matrix4 worldTransforms;

	const Vector3& camPos = cam->getPosition();
	const Quaternion& camOri = cam->getOrientation();

	worldTransforms.makeTransform(camPos,Vector3(100), camOri);
	worldTransforms = worldTransforms.transpose();

	view.setHHFXScene(*mScene);
	// this is the same calculation, also screws all effects
        //Matrix4 camView = cam->getViewMatrix();
	//camView.setScale(Vector3(100));
        //view.setViewMatrix(camView );
        view.setViewMatrix(worldTransforms);
	view.setSceneManager(*mGameManager->mSceneManager);
	mScene->Render(view, camPos);

So, do you have any ideas how to scale all particle effects, without having such errors ?
Here is a screenshot where you can see the "Big Explosion" effect from your sample - with the errors.


I hope you can help me :)

Regards.
Attachments
error.jpg
error.jpg (110.27 KiB) Viewed 9107 times
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi,


I guess I figure it out:

You calculate your view matrix this way:

Code: Select all

	Matrix4 worldTransforms;

	const Vector3& camPos = mCamera->getPosition();
	const Quaternion& camOri = mCamera->getOrientation();

	worldTransforms.makeTransform(camPos, Vector3::UNIT_SCALE, camOri);
	worldTransforms = worldTransforms.transpose();
So I see you scaled your effects with Vector3::UNIT_SCALE - and all effects works perfect.
But when I modify this value, eg. to Vector3(20) - all effects are displayed totally wrong, its seems to me that only the sprites ( billboards ) are scaled. ( but they didnt rotate right )
So the "sparkles" which flies away arent scaled, and the "fly distance" also didnt scaled, so the whole effect is broken. ( The distortion effect works )

Just test it in your sample app, you will see the results.
I didnt found any scale function yet....


Here is the picture which shows the effect:

I hope somebody has an answer :)

Regards.
Attachments
error2.jpg
error2.jpg (209.79 KiB) Viewed 9073 times
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Hi !

Your "problem" is in fact that you cannot scale an effect in your app. All your effects have to be done in the editor and will render the same at run time in your game, so you have to scale/custom your effects in the editor, and simply spawn it.
We have custom params that can be set in the editor and modified at runtime in the game, this could solve your problem, but this is not implemented in the plugin yet, we keep it in mind for a next release :)

About our build versions, we build it with the official OgreSDK, if you have a custom build and want to use HellHeavenFX in your app, feel free to contact us ;)
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi,

ah okay. Thats a little bit sad to hear it I guess.

Scale functions are important in particle effects, or better in all 2D / 3D drawing librarys.
I guessed that the params map(NameValuePairList) is used for custom properties, but there is neither documentation nor help avaiable.

I really appreciate it when you work on your great plugin, create some docs about the way how it works ( and how you have to code it ) - and many more other features too :)

Do you have an idea when you are ready to publish the next release?

Regards.
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Hi,

We are actively working on the Linux port. The next release date depends on it, you will have more informations as soon as possible !
scrawl
OGRE Expert User
OGRE Expert User
Posts: 1119
Joined: Sat Jan 01, 2011 7:57 pm
x 216

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by scrawl »

Great to hear :D
microwest
Gnoblar
Posts: 2
Joined: Sun Jul 08, 2012 3:14 pm
x 1

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by microwest »

That's a pretty nice work of your team :shock: . I have some question about
using it in our programs.

We use Ogre 1.7.4 built and VC 9, but the HHFxOgrePlugin has compiled in VC 10.
Could your team release a vc 9 version using ogre 1.7.4 ?

I wonder if you could release the source code of the ogre plugin (a vcproj and cpps files).
For this will help to understand how to use it without documents and release it to any ogre
version with the participation of the community.

For HHFX I guess it do the most work of transformation and dynamics of the particles in the
underlying libraries. Ogre is just a visualized layer while it maybe do some post effects. So
the core of HHFX is in the underlying libraries. This makes it possible to apply HHFX to any
graphic engine ( DX, opengl, etc.).

After all, it's a pretty good work. When I saw the samples of audio spectrum sampler and mesh
sampling, that's a really stunning work.
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Hello microwest,

Thanks for your comments !

We cannot freely support different versions, so we chose to stick on the latest stable Ogre version.
As soon as possible, an indie offer could be available to deal with this custom builds needs.

The versions including source code have to be attached to a license agreement and a signed NDA.
velocityx
Gnoblar
Posts: 2
Joined: Fri Aug 17, 2012 7:10 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by velocityx »

i tryed to compile the sample of hellheaven fx in ogre,added all the stuff,lib,dll's,cfg's and etc. but in the end get this
OGRE EXCEPTION(5:ItemIdentityException):Menu "selectMenuFx" contains no item at position 0.in selectmenu:selectItem C:\ogre\ogresdk_vc10_v1-8-0\include\ogre\sdktrays.h(line 853)
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Hello velocityx,

Your error is because the sample cannot find a pack to load, so the menus are empty and thus no items inside.
If you look at the log in hellheaven.htm you will see in red:
[???]> Pack "../../Packs/SampleParticlesEditor" is empty.
This is the path to the effect's packs.
Check if it's correct, and dont forget to copy the packs to your projects too :)
Veggieto
Gnoblar
Posts: 4
Joined: Wed Sep 05, 2012 9:05 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by Veggieto »

Really a great job by your team, really impressive!
I'm having a problem trying to use your plugin for Ogre though, basically I'm getting the message "[HH_PARTICLES]> NO COMPILER BACKEND AVAILABLE !" all around the log, and I can't see to understand why.
Thanks for your great work anyways!
Treon
Kobold
Posts: 37
Joined: Mon Mar 07, 2011 2:30 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by Treon »

Amazing work, Keep it up!
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi HHVFx,


do you have any new information about your progress?

I decieded to use your HellHeaven Engine in my project, but without the ability to scale effects in runtime its hard to tune everything else.
I know you wrote that I have to scale the effects in the HellHeaven Editor - but I would appreciate it to do this in runtime.

Regards.
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Veggieto> The "compiler backend" is the dynamic library "bin/Release/Plugins/CBCPU_Emulation_Win32_Release.dll", that's used to run the particle scripts.
The problem most likely comes from the working directory, and where that dll is located relative to the executable.

We are preparing a new release sometime next week, with many bugfixes, and the runtime HHFx libraries will be a statically-linked to the Ogre plugin, so no more errors with dll paths like the one you got.

ScreenOfDeath > arbitrary scaling is a problem. Due to the way the particles are batched together across emitters, we can't have a per-instance scale. But we can look into adding support for a global scale, for all the effects. Would that be enough for your needs ?
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi,

I dont know the system behind HellHeaven, but as you described it, its seems impossible to scale effects individual.
So if you add a global scaling function - I guess everybody can live with this.

This is a good idea and i would appreciate it when add this function to your next release.

Maybe you could compile your new release against Ogre 1.8.1 ?

Thank you for listing.
k300021
Gnoblar
Posts: 1
Joined: Tue Sep 11, 2012 2:27 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by k300021 »

hi, i have a big problem when i use the FX editor. i dont know how to use the particle which i create in the editor in the OGRE, what i should put in the SDK and what i should do?

please help me~ thanks please explain in detail~~ i am rookie~"~
Treon
Kobold
Posts: 37
Joined: Mon Mar 07, 2011 2:30 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by Treon »

k300021 wrote:hi, i have a big problem when i use the FX editor. i dont know how to use the particle which i create in the editor in the OGRE, what i should put in the SDK and what i should do?

please help me~ thanks please explain in detail~~ i am rookie~"~
Just check the ogre sample?
tonydigital
Gnoblar
Posts: 20
Joined: Thu Dec 20, 2007 2:19 pm
x 1

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by tonydigital »

hi all
I have integrated HHFx into my project (guided by the plugin example HHFXSampleOgre - 1.8.0).
Now I have a problem when I try to load the example particles with:

m_selectedPack = "Packs/SampleParticlesEditor";
m_hhfxScene->GetHHFXBase().LoadPack(m_selectedPack.c_str());

the result of the code-line above is as follows (logMessage):

[INFO][???]> Exploring pack Packs/SampleParticlesEditor...
[INFO][???]> Root dir = (null)
[ERROR][???]> Pack "Packs/SampleParticlesEditor" is empty.

has someone an idea why the root-dir is null?

I have compared my compiler settings to those of the example.
I have copied the necessary media files to my project and integrated them into my resurces.cfg.
I have copied the required dll's to my project and added the HHvFx plugin to my plugins.cfg.

what did I miss?

if I specify the full path (to test the rest of my program)...
m_selectedPack = "D:/Libs/HHFxSDK_Ogre_redist_1-8-0/HHFxOgreSample/Packs/SampleParticlesEditor";
...the pack (Packs/SampleParticlesEditor) will be explored and the program works.

thanks for your help
tony
Treon
Kobold
Posts: 37
Joined: Mon Mar 07, 2011 2:30 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by Treon »

You can locate it from exe path not full system path.

Lets say it looks like this:

Packs (folder)
Bin (folder) -> Exe (inside Bin folder)

So path will be: "../Packs/SampleParticlesEditor"
tonydigital
Gnoblar
Posts: 20
Joined: Thu Dec 20, 2007 2:19 pm
x 1

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by tonydigital »

thanks for your quick response :)
yes you're right!
You can locate it from exe path -> m_selectedPack = "../../Packs/SampleParticlesEditor";
but unfortunately that generates the same consequential error as if you use the full system path.
m_selectedPack = "D:/Libs/HHFxSDK_Ogre_redist_1-8-0/HHFxOgreSample/Packs/SampleParticlesEditor";
  • [INFO][???]> Exploring pack ../../Packs/SampleParticlesEditor...
    [INFO][???]> Root dir = (null)
    [INFO][???]> -> HBO/Entities/Particles/Blast.hfx : Blast
    [INFO][???]> -> HBO/Entities/Particles/Blast_Small.hfx : Blast_Small
    [INFO][???]> -> HBO/Entities/Particles/BurnHit.hfx : BurnHit
    [INFO][???]> -> HBO/Entities/Particles/BurnHit_Small.hfx : BurnHit_Small
    [INFO][???]> -> HBO/Entities/Particles/ElectricOrb.hfx : ElectricOrb
    [INFO][???]> -> HBO/Entities/Particles/FlameThrower.hfx : FlameThrower
    [INFO][???]> -> HBO/Entities/Particles/Rain.hfx : Rain
    [INFO][???]> -> HBO/Entities/Particles/Snow.hfx : Snow
    [INFO][???]> -> HBO/Entities/Particles/Sparks.hfx : Sparks
    [INFO][???]> -> HBO/Entities/Particles/TorchFire.hfx : TorchFire
    [INFO][???]> -> HBO/Entities/Particles/Trails.hfx : Trails
    [INFO][???]> -> HBO/Entities/Particles/TurbulenceBlueTrail.hfx : TurbulenceBlueTrail
    [INFO][???]> -> HBO/Entities/Particles/TurbulenceCircles.hfx : TurbulenceCircles
    [INFO][???]> -> HBO/Entities/Particles/TurbulenceTrail.hfx : TurbulenceTrail


    [ERROR_CRITICAL][KR_FILE]> error opening file "Packs/Common/dependencies.txt" with access policy 0 error: The system can not find the specified path.


    --------------------------------------------------------------------------------------------------------
    Preloading FX "Blast"...
    --------------------------------------------------------------------------------------------------------
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterial"
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterialGraphics"
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterialGraphics"
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterialTexture"
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterialMathsMul"
    [WARNING][KR_BASE_OBJECT]> "HBO/Entities/Particles/Blast.hfx": unknown HBO handler: "CMaterialProxy"
    ...
    ...
    etc.
content of dependencies.txt :
  • $ROOT$/Engine



I think the best way to fix all the problems is to find out why RootDir is null.
who has an idea?
ScreenOfDeath
Kobold
Posts: 36
Joined: Wed Feb 01, 2012 2:38 pm
Location: Germany
x 2

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by ScreenOfDeath »

Hi,

You have to put a file named "hh_root" ( without extension )
inside your media directory.

I used the original file - which contains following text:
this file tags the directory it is in as a base resource directory. when launching an hh binary with a current directory in one of the subfolders of a directory containing an "hh_root" file, kr_file will recurse down the directory hierarchy until it finds an hh_root file, and reset its current directory to the one the file has been found in...
I guess this will fix your problem.
tonydigital
Gnoblar
Posts: 20
Joined: Thu Dec 20, 2007 2:19 pm
x 1

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by tonydigital »

ScreenOfDeath wrote:Hi,

You have to put a file named "hh_root" ( without extension )
inside your media directory.

I used the original file - which contains following text:
this file tags the directory it is in as a base resource directory. when launching an hh binary with a current directory in one of the subfolders of a directory containing an "hh_root" file, kr_file will recurse down the directory hierarchy until it finds an hh_root file, and reset its current directory to the one the file has been found in...
I guess this will fix your problem.
thank you!!!
that is exactly the point that i have missed!
now it is working :D
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Hi guys !

Good news: Finally a new release, lots of bugfixes and improvements in the plugin code itself, mainly:

- fixed materials, some were broken
- fixed MovableObjects that were never destroyed by the plugin
- removed the 'hh_root' file alltogether
- removed the HHFX .dll dependencies on the plugin (as well as the compiler backend some of you had trouble with), it is statically linked to our runtime so now you only have to care about a single .dll file.
- added support for global uniform scaling as suggested by ScreenOfDeath (currently a hack, performance will be degraded when the scale is != 1.0, this is in the TODO-list of the next release)
- Ogre 1.8.1 support

You can grab it here:
http://www.hhvfx.com/downloads/Ogre/HHF ... bg_x32.zip

56 Mb download, contains Ogre 1.7.4, 1.8.0, and 1.8.1 versions.

You will notice the directory layout of the package has changed a bit, see doc/README.txt for more details. The .sln is in ./source_tree/projects/vs2010/
You do not need to run 'sdk_install.bat', it will work without it.
slemh
Gnoblar
Posts: 4
Joined: Mon Dec 12, 2011 1:50 pm

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by slemh »

One issue I found with the new SDK.

Code: Select all

// load a pack
	m_selectedPack = "../Packs/SampleParticlesOgre";
This Pack does not come with the SDK however "../Packs/SampleParticlesEditor" exist. If I change this, it works.
User avatar
HHVFx
Gnoblar
Posts: 22
Joined: Mon Oct 17, 2011 1:29 pm
x 20

Re: [Particle Effects] HellHeavenFX Ogre Plugin

Post by HHVFx »

Problem fixed, renamed the directory in Packs/SampleParticlesOgre, the code was correct, wrong folder packaged.
The archive has been updated in-place, same download URL :)
Thanks for reporting this !
Post Reply