ActionScript 3.0 :: When Objects Are Destroyed:Should They Be Removed From The Stage ?

Aug 8, 2010

I've noticed that using stage.addChild(obj)(i.e. creating objects on the fly) can slow down frame rates.I was told by several sources that one way to speed up a flash game engine (or any animation where instances are generated as you progress), is to reuse objects in what is known as object pooling.

First of all a bit of background:The game engine I'm working on can be found at: http:[url]....Most objects (i.e. bullets, particles, enemies...) are exported for actionscript, each with a set of actions that are performed each frame, and another set of actions upon being created.Each class has an array called instanceList, which keeps track of all objects currently within play.The main timeline contains an event.ENTER_FRAME function mainActions(event:Event):void, that loops through each of the instances and performs the actions associated wit11h each.It goes through each instance of each class by going through the static array instanceList().

Now what I plan to do is:Have a seperate static array for each class, called inactiveInstances,which keeps track of deleted objects.Introduce a function for adding the objects back to the stage (with the nesscessary variables reset), to give the impression of a new object being created.When objects are destroyed:Should they be removed from the stage and readded latter e.g. removeChild(obj2)/addChild(obj1)? e.g.

Code:
public function instance_destroy()
{
parent.removeChild(this)
//Remove all refferences and listeners[code].....

View 5 Replies


Similar Posts:


Flash :: Destroying Objects (and Their Children) Removed From Stage

Jan 25, 2012

I am working in on a Flex / Air application (using PureMVC) written virtually entirely in ActionScript 3 (i.e. we use very little of Flex). View components are added to a Canvas object in the main application window and these Views then load other movie clips, images files, etc.When I remove a View from the stage, I do so using application.canvas.removeChild(). This fires an event in my PureMVC mediator for that View, which removes any event listeners that were set up and everything appears to be dandy.However, the movie clips are still playing in the background. They are not causing any trouble on screen but they are simply there, playing somewhere in memory (e.g. I can see trace statements from them) and I want them gone. I suspect the View that was removed from the Canvas is still there too, but I can't prove it.

Setting the View to null doesn't do anything. I'm surprised that AS3 doesn't include any method to simply and effectively destroy a Display Object and all of its children.Is the only way to do this to tediously unload all of the movie clips, etc. and then hope that Flash will clean them up?

View 2 Replies

ActionScript 3.0 :: Event Listener Being Removed Automatically When The Movie Clip Is Removed From The Stage?

Aug 17, 2009

if i have a movie clip with an even listener attached to it, is the event listener being removed automatically when the movie clip is removed from the stage or should i always remove the event listeners manually?

View 4 Replies

Flash :: Objects Not Being Removed Without System.gc() Call?

Jan 23, 2012

After having some trouble with object deletion, I ran a simple test:Created a simple class with a weak reference listener for Event.ENTER_FRAME.Added a trace("I Exist!") call to the listened function.Instantiated a single instance with one reference in the Document Class.his worked as expected - the SWF file did nothing but print "I Exist!" every frame to the console. (In debug mode, of course.)What I did next did not work as I expected:I set the only reference of the object to be set to null on a mouse event, but the messages from the event listener of of said object still appeared in the console after the mouse event was fired and the reference set to null - meaning the object still existed!Calling System.gc() in the document class IMMEDIATELY stopped the event listener from printing further messages and seemingly deleted the item.

From what I understand, calling System.gc() is discouraged, but as it seems from this simple test the garbage collector is a big FAIL.Am I doing something wrong here in trying to dispose of the object, or should I simply call System.gc() every time I want to get rid of an object..?

View 4 Replies

ActionScript 3.0 :: Removed Objects - Squares Inside A Movieclip

Jan 14, 2009

i have many squares inside a movieclip, and i remove random some of this squares, what i need id: get the real with and heigth of my movieclip, after the squares are removed, i do a little exemplo, and anexed here,

[Code]....

View 1 Replies

ActionScript 3.0 :: Check For Objects In Memory That Have Been Removed From A Display Object?

Nov 21, 2010

Anyone know if there's a way to check for objects in memory that have been removed from a display object but not set to null?

View 1 Replies

ActionScript 3.0 :: RemoveEventListener When Removed From Stage?

Feb 15, 2010

I am sorry if this is a truly basic question, but how would I code as3 to remove an event listener when the current frame (in my case, section of my site) is no longer on the stage?ke the following code as an example:

function onClick(event:MouseEvent):void
{
doSomething();

[code].....

View 3 Replies

ActionScript 3.0 :: MovieClips Not Being Removed From Stage?

Jan 26, 2012

When bullets hit the wall of multi-colored blocks, when shot one by one, they disappear like they should. But if you hold down the Left Mouse Button, you will see that bullets stop in mid-travel and I can't figure out how to fix that.
See this occur in this SWF. Note:(Use A & D to move left to right, Z to add a new row, and Left Click to shoot)

Here's the important function in the Bullet class.

Code:
public function update():void {
if(global == null){
trace("Global es null.");

[Code]....

View 2 Replies

Actionscript 3 :: Determining When A DisplayObject Has Been Removed From The Stage?

Mar 3, 2012

The REMOVED_FROM_STAGE event is fired before the object is actually removed from the stage. I'm looking for a performant way to know when the object is finally removed.

View 3 Replies

ActionScript 3.0 :: Use Trace() To Check If Mc Is Removed Frm Stage?

May 17, 2010

In AS2, to check if the mc is removed frm stage, i wuld simply just need to do this:

Code:
removeMovieClip(mc);
trace(mc);

[code]......

View 4 Replies

ActionScript 3.0 :: Stage The Movieclip Cursor Is Removed?

Jan 29, 2011

I am trying to make it so when you click anwhere on the stage the movieclip cursor is removed.

Code:
stage.addEventListener(MouseEvent.CLICK,ketchremove);
function ketchremove (evt:MouseEvent):void
{
trace("I am removed");

[Code]...

View 7 Replies

ActionScript 3.0 :: Have A Loaded Swf Detect That It Is Being Removed From The Stage?

May 1, 2011

In the past, using Flash CS3 when I needed to remove timers or event listeners from a swf that had been loaded into a parent swf I'd use this inside the loaded swf:

Code:
this.addEventListener(Event.REMOVED_FROM_STAGE, deactivate, false, 0, true);
function deactivate(e:Event):void
{

[code]....

Now that I've upgraded to CS5 and am outputting to Flash Player 10 this no longer seems to work. The event fires right away. Does anyone know why this might be and if there's an alternative that I can use?I tried the unloadAndStop() method in the parent swf but I'm trying to remove some TweenMax delay timers and it doesn't seem to be working.

View 4 Replies

ActionScript 3.0 :: Getting A Loaded Swf To Detect That It Has Been Removed From The Stage?

Feb 7, 2012

In the past, using Flash CS3 when I needed to remove timers or event listeners from a swf that had been loaded into a parent swf I'd use this inside the loaded swf:

Code:
this.addEventListener(Event.REMOVED_FROM_STAGE, deactivate, false, 0, true);
function deactivate(e:Event):void

[code].....

View 1 Replies

ActionScript 3.0 :: Add More Of Removed Children Of Same Namewithout Displaying Previously Removed?

Apr 7, 2011

I want to remove all children of the name (mc1) but be able to add new one when I call the add function again Heres what I have

// Draws the squares

Code:
function drawIt(e:Event=null):void{
mc1.graphics.lineStyle(1);
mc1.graphics.beginFill(ITsColor);

[code]....

Removing all the (mc1) movieclips works fine, but when i click on the butotn to call drawIt again, all previous mc1's are displayed again with the new ones

View 2 Replies

ActionScript 3.0 :: Change The Order So That Currently Loaded Swf Is Removed From The Stage?

Nov 15, 2009

I have a main swf that I load external swfs onto the stage. I am trying to fix the loading order. Currently when a button is pressed, the swf is preloaded, the current swf is on the stage with the preloader showing, then the preloader disappears and the swf plays the outro transition.

how to change the order so that currently loaded swf is removed from the stage, show the preloader and then show the new swf.

Code:
package
{
import flash.display.MovieClip;
import flash.display.SimpleButton;

[Code].....

View 7 Replies

ActionScript 2.0 :: CS3 When Netstream Start Want An Object To Be Removed From The Stage?

Aug 12, 2010

I have two FLV files playing on the stage. The main FLV is instance is: MyVideothe 2nd is MyVideo2I have imported the videos using the wizard. The 2nd video is just a movie I created in Affter Effects that says...loading please wait....this is a really nice video and I don't want it to just use a standard preloader. Anyway, the goal is when the playback for "MyVideo" begins I would like "Myvideo2" to = visible = false;I have tried this many different ways and have been unsuccessful. I am obviously a newb at this. Also, does anyone know where I can get a list of all available eventListener actions...etc?

//var nc:NetConnection = new NetConnection();
//connection_nc.connect();
//var stream_ns:NetStream = new NetStream(connection_nc);

[code].....

View 1 Replies

ActionScript 3.0 :: Enemies Not Being Removed From Stage When Clicked On With Mouse?

May 17, 2011

I have ran into another problem, I have written the code for when I click on an enemy, it doesnt add a point to the score and it doesn't remove the enemy, I have a textfield which is called messageDisplay which is linked to the clickEnemy function.Here is the piece of code.
 
 stage.addEventListener(MouseEvent.CLICK, clickEnemy);                function clickEnemy(event:MouseEvent):void                {                if(cursor.hitTestObject(enemyAppear))                    {                        score++                        messageDisplay.text = String(score);                        enemyAppear.parent.removeChild(enemyAppear);                    }                }                stage.removeEventListener(MouseEvent.CLICK, clickEnemy);

View 2 Replies

ActionScript 3.0 :: Loading SWFs Into Same Loader And Removed From Stage?

Jan 4, 2009

I was told that if you load a new SWF into a loader that has an existing SWF that the second SWF will replace the object(the first SWF) in the loader and in the display list.Does this mean that the first SWF is removed from the stage once the second SWF is loaded? I am asking because I would like to know if my this.addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler1); in the first SWF will fire once the second SWF is loaded.

View 3 Replies

ActionScript 3.0 :: Loading SWFs Into Same Loader And Removed From Stage

Feb 16, 2011

I was told that if you load a new SWF into a loader that has an existing SWF that the second SWF will replace the object(the first SWF) in the loader and in the display list.

Does this mean that the first SWF is removed from the stage once the second SWF is loaded? I am asking because I would like to know if my this.addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler1); in the first SWF will fire once the second SWF is loaded.

View 0 Replies

ActionScript 3.0 :: ADDED Event In Document Class After Removed From Stage?

Aug 16, 2010

I am currently play with the document class (the class acts as main) constructor for a SWF file.
 
package {
import flash.display.*;
import flash.events.*;
public class TestSymbol extends MovieClip
{
public function TestSymbol()

[Code]...

View 9 Replies

ActionScript 1/2 :: Get The Movie Clip To Be Removed From The Stage If Close Is Released?

Dec 7, 2010

In the setOne_mc I have three buttons close_btn, min_btn and max_btn....I want the movie clip to be removed from the stage if close is released.I seem not to be conecting with the buttons...the clip appears on the screen.
 
menuBar_mc.dropMenu_mc.subMenu01_mc.onRelease = function() { holder_mc.attachMovie("setOne_mc","setOne_mc",2,{_x:0, _y:0}); halt();};holder_mc.setOne_mc.close_btn.onRelease = function() { go();};function go() { this.removeMovieClip();}
function halt() { menuBar_mc.dropMenu_mc.subMenu01_mc.enabled = false; menuBar_mc.dropMenu_mc.subMenu02_mc.enabled = false; menuBar_mc.dropMenu_mc.subMenu03_mc.enabled = false; menuBar_mc.dropMenu_mc.subMenu04_mc.enabled = false; menuBar_mc.dropMenu_mc.subMenu05_mc.enabled = false;}

View 8 Replies

Flash :: IDE - Art Gets Destroyed

Jan 27, 2010

What is the best route for an artist to take, when it comes to Flash? Is illustrator the best, since it doesn't use pixels, rather vectors? I had someone draw me something in photoshop, and when I resize it to make it much smaller than its original size, it looks like garbage, and you can see the pixels. Regardless if I resize it in photoshop (gimp) or flash, it looks like garbage if it is reduced in size. I have not dealt with alot of art in flash, so wondering what the best way around this is, besides having the artist draw everything to scale, since the scale is dynamic.

View 2 Replies

Flex :: Method That Gets Called Just Before Object Destroyed

Nov 19, 2009

Is there method that gets called just before object destroyed? So I can override it.

Like

protected override function beforeDestuction():void
{
trace("This object is about to be destroyed!");
}

View 4 Replies

Actionscript 2.0 :: Notice Destroyed Movie Clips

Jul 19, 2009

Ok, so i'm making a game using AS2 (AS3 confuses me even more than AS2) and so far it's going great, but i want it to move to the next level (or maybe a shop between levels) when all the enemies are destroyed... I have Code: Select allenemies = 15; for the amount of enemies on stage. I have Code: Select allif (explode) {this.removeMovieClip(); to get rid of the enemy and i have Code: Select allif(enemies == 0) {gotoAndPlay(3) } to take it to the next frame. I want to know how to update it so when an enemy is removed the original code of enemies = 15 gets updated, meaning when they are all gone it will go to the next frame

View 1 Replies

ActionScript 2.0 :: Clip Unloaded (destroyed) When ANY Other Link Is Clicked?

Feb 23, 2008

i want this clip unloaded (destroyed) when ANY other link is clicked. This clip is an empty container clip that will be generating child clips that will each be loading thumbnails for images. Obviously i need to destroy the parent clip to remove all children without looping, etc.

This movie clip ("TL") is created in a keyframe that is the stopping point of an animation. When a user clicks the Portfolio link from the menu, the menu hides itself, and then goes to a frame label where actionscript awaits. Once there, the AS tells the submenu movie to animate (play). The submenu then plays and stops when it hits a certain frame (the one with the 'stop();' code, lol), and that frame then contains actionscript that generates the Gallery Thumbnails' parent container ("TL"), via:

var TL:MovieClip = createMovieClip("TL",60);

and GT then creates movie clips for thumbnails to be contained in via:

TL.createEmptyMovieClip('Thumb' + i,TL.getDepth() -1);

All this works so far. Now, to get rid of the clip when any other button is clicked, i tell the gallery movie to play again, which alphas it out of sight. So, on the NEXT frame of the timeline AFTER the frame which the TL and children are created is where i need to place the actionscript to unload/remove them. The problem is that there is no method for this! It seems that all the methods for removing / unloading clips only apply to clips that were duplicated or instatiated from loading external files or attaching instances from the library...I need to remove this "TL" clip, and can't figure out how.

Code:
_root.mcMenuGalleryAnimation.attachMovie("thumbsList","TL",60);
TL._x = -300;
TL._y = 0;[code]....

View 7 Replies

ActionScript 3.0 :: Sound From Video Plays After Video Player Removed From Stage

Apr 30, 2011

I have a website [URL] when I go there if I click the video archives button then play a video then click on the home or photos button or one of the alternate background buttons on the left the video goes away as it should but not always the audio (especially when I click while the video is still buffering). Is there a command I can use to kill the sound from the flvPlayback component and nothing else(I have a mp3 player there also I so I don't want to use the SoundMatrix class. btw the videos are all played on an instance of the flvPlayback component.

View 7 Replies

ActionScript 3.0 :: Accessing Stage Objects From Other Objects?

Jul 24, 2010

I have drawn colored rods which I have placed in the library and have put one of each on the stage with instance names likeblueRod_mc, etc.I place them around with time-line code like
blueRod_mc.x = 300.0;I have now created an Actionscript class called Problem.I build a new object from Problem which I have called Riddle.But when I put blueRod_mc.x = 300.0 in a method (of Problem),I get the message that blueRod is not accessible.So I triedstage.blueRod_mc.x = 300.0;That did not work either.

View 9 Replies

Actionscript 3 :: Centering Objects On Stage And Auto-Scaling With Stage Resize

Oct 19, 2011

I'm writing a web based flash app that's written entirely in AS3. I have objects on the screen as part of a GUI. I would like the user to be able to resize the window, or make it full screen. I would like everything to auto-scale with the resize, but also remain in the same relative position on the stage.

View 1 Replies

Objects Appear Off Stage?

Aug 28, 2009

I am creating a program and have some objects that animate from off the stage to on the stage. When I run the program in the flash player the objects that are off stage are visible. Is there anyway to stop this from happening. I suppose I could create a layer with a frame in it that could cover the off stage objects, but I am just wondering if there is a better way.

View 3 Replies

Moveable Objects Within Stage?

May 7, 2009

have a bunch off mc's that are controllable through buttons and using the key controls, but i need to make it so they stay within a 600*600 area within the stage

View 3 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved