Fantastic! Works great, totally pain free instancing.
Great !
I can’t wait to see what you could be doing with it ![]()
New update coming soon !
In the meantime, I would be happy to get some feedback from my current users, I some of you have some time to drop me a line, thanks ! ![]()
I’ve been running into performance dumps and they seem to be centered around creation/destruction of the emitter instance. It doesn’t appear to be affected by the quality controls but rather something to do with the renderer organizing everything. I put the emitter in a prefab, there is no pooling yet, the player fires the prefab and the renderer picks up the new emitters on the fly and it seems to be dumping when it has to do this.
I’ve been away for a few weeks and had put this on the backburner for a while but I noticed you’re looking for feedback so here is a bit. I planned to look into it further when I revisited the missile system.
Thanks a lot for the feedback ![]()
Maybe you should try to keep the emitter as a separated and permanent game object, and use particle spawners for your missiles, as I did in my homing missiles demo, you should have a deeper look at it.
By doing this, you don’t have to create/remove the main emitter anymore, and it’s better to keep it in place (even disabled) to prevent GC lags, until you are sure to not need it anymore.
Could you please send me a private message with a small package to reproduce this problem ? (I’ll try to do it on my side too)
By the way, the new update is on its way to the asset store ![]()
Version 1.11:
- Bug fix and code optimization in the particle emitter for the particles recycling
- Some tweaks in the particles renderer, to improve performances on low hardware
- Particles can now be immortal (set lifeTime to -1)
- The particles age is no longer stored in the color alpha channel, so now the alpha can be modified within the color gradient
- Particles can now have a Luminosity value, the homing missiles demo is updated with this new parameter
- Position variation added to the particle emitter, this allows a random position offset on particles spawning
- Multi threads added for meshes data generation and part of the meshes updates
- New clouds demo added, with a dedicated shader
- Project exported from Unity 4.0.0f7, since it’s the minimal version to get it to work
Now a new mesh is generated each 4096 particles (so one more draw call each time), to take advantage of the multi-threading sooner, in some parts of the meshes update process.
So you’ll get a few more drawcalls, but the meshes will be generated faster…
The web player demo is up to date with some new sample scenes, here : Unity Web Player | Puffy Smoke
Note : In the last demo, I’ve removed the 3D character and replaced it by a capsule to get a lighter package.
Luminosity example :

Cloud example with immortal particles :

The clouds are still a work in progress, so they are pretty basic. I’ve some more ideas to improve them in the next updates ![]()
Great looking Asset. Nice Work.
Would love to buy… but need it on IOS. Any news on this. ?
Cheers.
Hi,
I still don’t have any solution to test it on iOS… ![]()
Well done. Thanks Alesk. ![]()
Edit :
L’Asset Store indique une version 1.10 du 4 novembre 2013. Et non 1.11?!
Sorry for the misunderstanding : it’s still pending for review by the unity team, it should be available in a few days
EDIT : it’s up on the asset store ![]()
Outstanding! This will really help out in creating dust trails for vehicles. Excited about the continued work on this plugin and can’t wait to show what we’re cooking up with your plugin ![]()
Please make it work on Mobile. There are many mobile users and having a mobile version will Definitely Increase Sales.
Cheers.
I know… but since I don’t have a Mac and no Apple developper account, it will be difficult for me ![]()
So, if some Mac user could help me, please send me a private message.
EDIT : help found, thanks ![]()
Hi,
I need a new volunteer to help me to do some tests on iOS… I only need someone to compile and run the project on an iOS device, no scripting or shaders skills required (but if you got some, I’m interested too
)
Send me a private message if you have some minutes to help me !
Thanks
Wouldn’t it be easier to test it on Android than IOS if you want to check it is compatible with mobile ? You could just buy a cheap £30 android tablet and use the free version of unity to test it yourself. Both IOS and Android use opengl es2 so should be comparable. Also if you want to test it on opengles3 as well it is alot easier to do with android, obviously you would need a better tablet that supported opengles3 if you wantted to do that though you might also be able to find an android emulator for pc that could let you do it. If you need any tests done on android I don’t mind testing it out on my nexus 5 if you want.
Yes, but are you sure that the hardware will react the same way on an Android device and an Apple/iOS one ? Anyway, I’ll try your suggestion, thanks ![]()
Yes they should behave the same way pretty much as they are both certified opengles2 compliant. As long as you send them an opengles2 shader the hardware should do the rest. The only differences there might be is in how they handle texture compression. Android as default uses standard opengles texture compression while I believe IOS uses powervr texture compression. If you’r really worried you could make sure you get an android tablet with a powervr gpu in it because then you could tell unity to use powervr on android too if you wanted to see how it would look exactly. You might want to stay away from any tablet with a tegra 3 chip in it though as I believe they are not fully compatible with opengles and so display some things differently and don’t support shadows in unity correctly.
Other than that as long as you only use unity standard classes and don’t call any external dlls or platform specific features and android and ios should handle identically. The only difference between the 2 platforms is how they handle memory management and deal with caching and pooling. On the desktop unity tries to cache everything in memory if there is any free so when you first instantiate an object or call a class it is being loaded from ram rather than storage. IOS appears to try and cache a few things if it has memory but not all the time and android never caches anything unless explicitly asked to. Thats why its a good idea to use pools or specifically pre cache objects that need to be instantiated during runtime on mobile because then they will perform the same on all platforms.
ok, thanks for these details…
In the meantime, I’ve tried to build an android version, and got the “Android SDK does not include any platforms!” error message… with of course a platform in my sdk folder…
Why is this kind of stuff never straightforward, NEVER… ![]()
If you want to make it easy and have the storage space simply install the free android sdk from google and then tell the sdk manager to download all the platforms. It takes a while to install though as the script will actually go and ftp the files from all the different companies servers and some of those companies have pretty bad servers. Google provide instructions how to do this You will then probably get the great message that you don’t have a bundle identifier in unity. Just go into the project settings and enter anything in there as unity doesn’t check that it is valid bundle identifier, just make sure it is in the correct format and not the unity default on. As long as you have enabled your android device to be enabled for development and to allow apk installs from 3rd parties it should then just deploy automatically. If you tell the sdk manager to install all the platforms I think it also might install some pc emulators for android which you might be able to test with. I think it might be a hassle to get unity to deploy to them and obviously you won’t get a feel for the performance of an actual device so I think it would probably be easier for you to deploy to an actual device. If you tell unity just to build rather than to build and deploy though you might be able to use them.
Ok thanks, downloading everything… and I’ll test on an emulator… I’ve gotten some help, and made some progress, now I’m stuck on an iOS shader related problem.
More details can be found here : http://forum.unity3d.com/threads/132016-Normal-values-on-iOS?p=1500511&viewfull=1#post1500511
If someone knows what’s happening…
Ok, I’ve used the Android SDK Manager to download platforms 3 to 19, and still got the same error message… I’m cursed…
EDIT : solution found here : http://forum.unity3d.com/threads/182610-Impossible-to-publish-the-android-apk?p=1248228&viewfull=1#post1248228