PDA

View Full Version : A Solution For Eliminating Emitted Object Dissolve Smoke



RickRock_777
06-07-2009, 05:00 PM
Hi everyone:).

This thread may be beneficial to you, especially if you have been unsuccessful at eliminating the pesky smoke which appears as the lifespan of an emitted object ends. Sometimes the residual smoke is acceptable, but there are times when it has a negative impact on your visuals, or worse, impedes game play. Please be aware I have not done any significant amount of research in this area, such as experimenting with different materials and emitter timing/lifespans/etc., beyond what I have touched on here, so there is a possibility the following technique may not work for your specific application.

The technique described below provides an alternative method which does not use the Plasma Ball or Creature Brain, mainly because my objects are emitted on the thin layer. Had they been emitted on the thick layer, I would not have used these techniques anyway, as they result in the Plasma Ball and Creature Brain sounds as an annoying side affect.

As an example of what I'll be discussing here, I will be making reference to my Plasma Generator that I created for my level "Takken (Part 1)-The Beginning (Easy ver...)".

NOTE:In my Signature below, there is a link to a video of the level, but I did not have the Plasma Generator working without smoke at the time it was filmed, but I still recommend checking it out to see what it looked like before my recent tweaks. To see the generator in action without the smoke, you will need to check the EASY version level on LBP. If you do play it, please rate it appropriately, and provide some feedback in my Showcase
thread--it would be greatly appreciated!. The thread link is below in my Signature.

What I Tried On The First Generator Design (this technique had the residual dissolve smoke):
1. I emitted on the back thin layer, at .2 second intervals and lifespan .2 seconds, for 10 intervals, alternating glass and VR grid in the shape of an arc.
2. The arcs emit outward from the generator.
3. As one arc dissolved, another arc was emitted beside it X seconds later, and so on, until all 10 arcs had been emitted--then I start over with the first and repeat this sequence.
4. However, the arcs left the dissolve smoke.

What I Tried Second:
1. I changed the timing such that each arc was emitted at 1 second intervals with each having a lifespan .1 second longer than the previously emitted arc, with the first starting the sequence with a .1 second lifespan. Simply put, 10 arcs are emitted, the 1st at .1s lifespan, with each following arc with a lifespan incremented by .1s, such that the 10th arc has a 1s lifespan.
2. This worked for about 10 seconds, before reverting to the behavior mentioned above on the first design.
3. A critical point here is the newly emitted object must be touching the previously emitted object before it's lifespans expires. This is similar to the Plasma Ball technique, where the Plasma Ball is glued to the object.

How I Made It Work:
1. Since I could get it to work for a short period of time, I suspected there was a sync/timing issue in the file itself, as I had encountered timing issues before which were related to the file's Real World Timer (Another topic: see my posts in this thread link explaining the Real World Timer issue to LBPC member Green http://www.lbpcentral.com/forums/showthread.php?t=12048 ).
2. I cut around the Plasma Generator and captured it as an object, then exited without saving.
3. I then placed the object into a fresh Map (critical point: make sure Pause is On before placing the object). A fresh Map is basically a new file which has the Real World Timer initialized to zero.
4. I deleted all the emitters, saved the level, and then exited (critical point: exiting in this state ensures no residual timing issues transfer from the original object's emitters [a safer approach]).
5. I re-entered the level and turned Pause On immediately (very critical point regarding Pause being On again)
6. I placed new emitters around the generator, and set the frequency and lifespan timing identical to what I did on my second attempt above
7. I saved the level and went into Play Mode to verify functionality. It worked with no smoke, and continued to do so for approximately 15 minutes, which is when I decided to exit Play Mode.
8. I went back into Create Mode and captured the new generator as an object
9. I went into my level Takken in Create Mode with Pause On, deleted the old Plasma Generator and replaced it with the new one.
10 . I saved the level and went into Play Mode to verify functionality. It worked with no smoke, the same as it did in the fresh Map, and continued to do so for approximately 20 minutes before I decided it was stable.


I hope this thread has been helpful to our LBPC community:). Please let me know of your successes with this technique and the troubleshooting information provided. If you still have issues, or are unclear on some of the points made here, please leave a post, as I will monitor the thread for activity.

Rick

Silverleon
06-07-2009, 07:26 PM
Does it work for fast infinite emitting?
(Emit every 0.1 and lifespan of 0.1 continiously)

RickRock_777
06-07-2009, 11:16 PM
Does it work for fast infinite emitting?
(Emit every 0.1 and lifespan of 0.1 continiously)

Silverleon, In theory it should, as long as the emitted objects are touching. I know that if there is a gap between the emitted objects, it will not work.

In my post above I stated "Please be aware I have not done any significant amount of research in this area, such as experimenting with different materials and emitter timing/lifespans/etc., beyond what I have touched on here, so there is a possibility the following technique may not work for your specific application.". So, I have not specifically experimented with Frequency .1s and Lifespan .1s.

But I think the issue you are having may also be related to the Real World Timer, which is one reason I mention the timer in this thread. I recall you mentioning in your help thread that you got it to work, but it became unstable after a short time.

I think it's worth experimenting with your timing requirements in a blank level using the points made in the thread. I say this, as it initially did not work for me either until I performed the process explained above.

I do hope this information helps you.

Rick

Burnvictim42
06-08-2009, 08:40 AM
very good find there. You seem to find a lot of things having to do with the real world timer... i wonder what other goodies there are if one does things in a paused environment....

RickRock_777
06-08-2009, 12:08 PM
Hi Burnvicim42.

I've had a lot of issues in the past few weeks that have to do with critical timing and moving parts, and it's very frustrating. So, it's either throw in the towel and admit defeat, or experiment until a solution is found. I've just been lucky enough to find a solution to every problem so far.Developing with Pause On can definitely help in reducing the frequency of these occurrences.

Rick

brnxblze
06-09-2009, 12:37 AM
Thanks a lot for this info! I know it will be helpful to me in the future (when/if I start creating again.)

RickRock_777
06-09-2009, 12:44 AM
Your very welcome brnxblze.

Rick

Bear
06-16-2009, 04:30 PM
Wow. Thanks.

This'll no doubt be a massive help in the future.

dawesbr
06-16-2009, 07:59 PM
Quite complicated, but it's a common problem. Thanks for posting!

RickRock_777
06-17-2009, 12:54 AM
You're both welcome. Hope some of this technique will help you. I'll be trying on thick layers soon, and I hope it works there too...although, theoretically it should.:)