GithubHelp home page GithubHelp logo

as3isolib's People

Watchers

 avatar

as3isolib's Issues

r187 BitmapFill ColorTransform has no effect

I just got r187, excited to try BitmapFills on IsoBoxes, but found there was no 
way I could get the 
ColorTransform in the following to work:

    var f0:BitmapFill = new BitmapFill(srcClass, IsoOrientation.XY, null, new ColorTransform(0.6, 
0.6, 0.6));

I snooped around in BitmapFill.as, and it turns out that after the first call 
to (BitmapFill::set 
source), there are some cases where the old bitmapData is preserved, and the 
call has no effect. 
It's a one line fix, I believe, although I'm not particularly familiar with the 
source.

Also, the ColorTransform has no effect if the sourceObject is a BitmapData or 
Bitmap. This 
makes for slightly confusing API. I don't know if it would be appropriate to 
correct or simply 
document this, or perhaps do something else.

---

What version of the product are you using? On what operating system?

as3isolib r187, Flash Player 10, Flex SDK 3, Mac OS X 10.5.6

Original issue reported on code.google.com by [email protected] on 11 Feb 2009 at 11:18

Attachments:

IsoRectange Borders not drawn if Stroke not provided

What steps will reproduce the problem?
1. Create IsoRectangle Object without specifying Stroke
2. Add to Scene
3.

What is the expected output? What do you see instead?
Rectangle should default the Stroke to the DEFAULT_STROKE.
No borders are drawn.

What version of the product are you using? On what operating system?
Latest Trunk Code.

Please provide any additional information below.

Changed line 67 of IsoPolygon.as to

var stroke:IStroke = strokes.length >= 1 ? IStroke(strokes[0]) : 
DEFAULT_STROKE;




Original issue reported on code.google.com by [email protected] on 5 Sep 2009 at 6:42

Image do not render peoperly on isobox if dimentions are different

What steps will reproduce the problem?
1. Add isobox with image as per http://groups.google.com/group/as3isolib-
users-group/browse_thread/thread/136a32f2a0128ffa example
2. Replace wood.jog with custom image say with some text on image.
3. The image do not propery render if box dimentions are different say 
200, 100,100

What is the expected output? What do you see instead?
The expected output should be the image should render complete on each 
side. But it renders the image considering it as a squre box.

What version of the product are you using? On what operating system?
beta relaese with windows XP.

Please provide any additional information below.
We need to fill bitmap on the box. If box is square it works fine. When we 
change any one dimention the bitmap is not rendered properly. Please see 
the attached file.

Thanks
Sanjeev Kumar

Original issue reported on code.google.com by [email protected] on 24 May 2009 at 11:40

Attachments:

IsoScene.removeChildByID not testing for null result

I'm concerned that calling myScene.removeChildByID(id)   will still 
invalidate a scene even if the child does not exist, which would be non-
ideal.

Here's the code in question, from IsoScene.as:

override public function removeChildByID (id:String):INode
       {
           var child:INode = super.removeChildByID(id);
           child.removeEventListener(IsoEvent.INVALIDATE, 
child_invalidateHandler);
                     _isInvalidated = true;
                     return child;
       }

I haven't tested but expect the above code to fail when the call 
removeEventListener is performed on a null object.



Original issue reported on code.google.com by [email protected] on 22 Apr 2009 at 4:54

Node.as Error 1046: Type was not found or was not a compile-time constant: INode.

What steps will reproduce the problem?
1. Instanced IsoGrid or IsoScene
2.
3.

What is the expected output? What do you see instead?
I expected to the grid displayed on the stage, but received a 1046 error 
instead.

What version of the product are you using? On what operating system?
fp10 v1.0 

Windows 7

Please provide any additional information below.

I am trying to get started with AS3IsoLib by following in Flash CS5. I am 
following Lee Brimelow's Flex tutorial on gotoandlearn.com, but have run into a 
import problem. It is coming from inside AS3IsoLib. In the Node.as class, it is 
throwing 1046:Type was not found or was not a compile-time constant: INode.


1--Tried using the files from the SVN. Got the 1046 Error. Thinking that the 
SVN files were the cause
2--I downloaded the .zip file. Same exact 1046 Error
3--I thought it was an import issue, but they share the same package and the 
Node.as class was successfully found.
4--Maybe it was the location of ActionScript folder where I keep my libraries 
at. But I have always used it with no problems from Greensock, NResponder, and 
Papervision3D.




Original issue reported on code.google.com by [email protected] on 18 Jun 2011 at 5:31

Doesn't compile with Flex 4 beta 2

I'm trying to use FDT with Flex 4 beta 2 (build 10485) SDK to compile
tutorials.
Trying to compile tutorial 1:

package isotest {
    import as3isolib.display.primitive.IsoBox;
    import as3isolib.display.scene.IsoScene;

    import flash.display.Sprite;

    /**
     * @author Jan Klosinski, [email protected]
     * Nov 17, 2009
     */
    public class Tut1 extends Sprite {

        public function Tut1() {

            var box:IsoBox = new IsoBox();
            box.setSize(25, 25, 25);
            box.moveTo(200, 0, 0);

            var scene:IsoScene = new IsoScene();
            scene.hostContainer = this;
            scene.addChild(box);
            scene.render();

        }
    }
}

I'm getting this error in the library:

as3isolib/display/renderers/DefaultSceneLayoutRenderer.as(95): col: 10
Warning: Function value used where type Boolean was expected.  Possibly the
parentheses () are missing after this function reference.

                    if (collisionDetectionFunc)
                        ^

I'm using the source files, not SWC.

What configuration are you using to work with the library? Should I try
Flex 3.4 maybe?


Original issue reported on code.google.com by [email protected] on 18 Nov 2009 at 9:26

testing repos is deleted

Hi, your testing svn repos (as3isolib.googlecode.com/svn/testing) doesn't
seem to work anymore. Just as I was interested in how you make an
application with as3isolib.

Could you please upload it as a zip in the Downloads section?

Thanks a lot.

Original issue reported on code.google.com by wttewaall on 17 Apr 2009 at 11:44

Adding the same object twice to an IsoScene

What steps will reproduce the problem?
1. _isoScene.addChild(_isoGrid1)
2. Let IsoLib render/update everything
3. _isoScene.addChild(_isoGrid1)
4. Let IsoLib render/update everything
5. _isoScene.removeChild(_isoGrid1)
6. Let IsoLib render/update everything

What is the expected output? What do you see instead?

Expected:Expected is that _isoGrid1 is no longer a child to _isoScene.

What happens: IsoLib crashes when it tries to render.

What version of the product are you using? On what operating system?

Latest IsoLib, Windows 7.

Please provide any additional information below.

I think the issue lies in IsoContainer (or higher up) when it tries to add a 
child that already exists. Node (which IsoContainer extends) have a check for 
this case and then does nothing, IsoContainer on the other hand will proceed as 
usual even if the child isn't new.

My simple fix was to remove the check that Node does. So if you add a node 
which already is a child then it will first be removed and then added again.

Original issue reported on code.google.com by [email protected] on 20 Jul 2011 at 11:46

IsoContainer.includeInLayout flag don't work

What steps will reproduce the problem?
1. add IsoBox to IsoScene
2. set box.includeInLayout flag to false, render box
3. box is still in displayListChildren

What is the expected output? What do you see instead?
expected output: scene.displayListChildren.length = 0
see instead: scene.displayListChildren.length = 1

What version of the product are you using? On what operating system?
as3isolib fp10 r310, win7

Please provide any additional information below.
In IsoContainer::renderLogic you work with displayListChildren rather than 
displayListChildrenArray and child is actually removed from copy of real 
displayListChildrenArray.

Original issue reported on code.google.com by [email protected] on 20 Jan 2011 at 9:29

DefaultSceneLayoutRenderer.renderScene() - bug and solution

This bit of depth sorting code:

if ((objB.x < rightA) &&
    (objB.y < frontA) &&
    (objB.z < topA) &&
    (i !== j)) {
    behind.push(objB);
    output = true;
}

isn't sufficient on it's own because it only places an IsoSprite infront of 
another IsoSprite if it's to the right and below the one it's testing it 
against.
The issue is that an IsoSprite can be on the same y but to the right, in this 
case it should be placed infront of that IsoSprite. Same is true if it's on the 
same x and tested IsoSprite is below the other.
The Solution is to replace that if statement with this:

if (i !== j) {
    if ((objB.x < rightA) && (objB.y < frontA) && (objB.z < topA)) {
        behind.push(objB);
    }
    else if (objA.y == objB.y && objB.x < rightA) {
        behind.push(objB);
    }
    else if (objA.x == objB.x && objB.y < frontA) {
        behind.push(objB);
    }
}

Original issue reported on code.google.com by [email protected] on 25 May 2011 at 4:50

sorting problem when moving objects

What steps will reproduce the problem?
1. Add some IsoBox or IsoSprite to a scene using DefaultSceneLayoutRenderer
2. Move the objects
3.

What is the expected output? What do you see instead?
The objects should be renderer in the correct order but some objects are not in 
the correct order

What version of the product are you using? On what operating system?
r305

Please provide any additional information below.
download attachment to see the problem

Original issue reported on code.google.com by [email protected] on 14 Jun 2010 at 8:41

Attachments:

Node:getChildIndex slow

What steps will reproduce the problem?
1. Call Node:getChildIndex

What is the expected output? What do you see instead?

Node:getChildIndex currently duplicate Array:indexOf functionality.

What version of the product are you using? On what operating system?

as3isolib.v1.core

Please provide any additional information below.

It's proper to replace
-            var i:int;
-            while ( i < numChildren )
-            {
-                if ( child == childrenArray[ i ])
-                    return i;
-                i++;
-            }
-            return -1;

with:

+            return childrenArray.indexOf(child);

Original issue reported on code.google.com by [email protected] on 4 Nov 2012 at 1:55

Error #2006: The supplied index is out of bounds.

What steps will reproduce the problem?
1. Creating iso sprites then swaping their parents back and forth.

What is the expected output? What do you see instead?

Iso sprite to be added to scene.  It works untill in my application the 
index == 23, then it can no longer add isosprites to the scene.

Please use labels and text to provide additional information.

RangeError: Error #2006: The supplied index is out of bounds.
    at flash.display::DisplayObjectContainer/addChildAt()
    at as3isolib.core::IsoContainer/addChildAt()
    at as3isolib.display.scene::IsoScene/addChildAt()
    at as3isolib.data::Node/addChild()
    at IsoApplication/placeBuilding()
    at IsoApplication/MapBuildings()
    at nl.dpdk.services.remoting::RemotingProxy/onResult()
    at RemotingResponder/onResult()

Information i think is relevant to this range error.  I think IsoContainer 
is swaping a display objects parents, and when it happens a couple times, 
it produces an error.  I dont see any code about removing children before 
swaping parents, please look into this one. ;)
http://life.neophi.com/danielr/2007/06/rangeerror_error_2006_the_supp.html

Original issue reported on code.google.com by [email protected] on 28 Jan 2009 at 9:07

comparing two IsoGroup bounds

What steps will reproduce the problem?
1. creating two IsoGroup and detrmine their position (x, y, z)
2. using IsoGroup.isoBounds.intersects function to check if the two are 
coliding.

What is the expected output? What do you see instead?
I excpect to get false when the two IsoGroup are in different position and 
not toucing each other, but the isoBounds "think" the IsoGroup position is 
always the origin point (0, 0, 0).
beacause of that, I get always true from the intersects function.
it doesn't considering the position of the IsoGroup.


What version of the product are you using? On what operating system?
the last version of as3isolib

Please provide any additional information below.
I think the solution is quite simple.
just update the isoBounds properties according the IsoGroup current 
position.

thanks in advance

Original issue reported on code.google.com by [email protected] on 20 May 2010 at 8:40

IsoView not rendering IsoScene

What steps will reproduce the problem?
1. copy and paste the code to see a blank .swf...?
2.
3.

What is the expected output? What do you see instead?
I expected to have the IsoView follow the box


What version of the product are you using? On what operating system?
Latest Version of isolib; Mac


Please provide any additional information below.
Just copy and paste the code

Original issue reported on code.google.com by [email protected] on 9 Oct 2008 at 1:22

Attachments:

IsoScene.addChild throws a RangeError

What steps will reproduce the problem?

1. Set up an IsoScene which is rendered through an IsoView with the
DefaultViewRenderer.
2. Populate the scene with several Objects, some of which are outside the view.
3. Add a Child to the scene with IsoScene.addChild - bam:

RangeError: Error #2006: Der angegebene Index liegt außerhalb des
zulässigen Bereichs.
    at flash.display::DisplayObjectContainer/addChildAt()
    at
as3isolib.core::IsoContainer/addChildAt()[D:\projects\AnyrayFlex\src\as3isolib\c
ore\IsoContainer.as:119]
    at
as3isolib.display.scene::IsoScene/addChildAt()[D:\projects\AnyrayFlex\src\as3iso
lib\display\scene\IsoScene.as:146]
    at
as3isolib.data::Node/addChild()[D:\projects\AnyrayFlex\src\as3isolib\data\Node.a
s:225]
    at
xi::CityView/mouseMoveHandler()[D:\projects\AnyrayFlex\src\xi\CityView.as:175]


My diagnosis:

The IsoContainer.addChildAt function tries to call the AS3 addChildAt
function of the IsoScene's mainContainer (a Sprite), passing an index which
corresponds to the total number of this IsoContainer's children.
However, due to the ViewRenderer, the number of children which are actually
displayed can be smaller.

My Solution for now is a small modification in IsoContainer.as:

override public function addChildAt (child:INode, index:uint):void
{
    if (child is IIsoContainer)
    {
        super.addChildAt(child, index);

        if (IIsoContainer(child).includeInLayout)
        {
            displayListChildrenArray.push(child);
            if (index > mainContainer.numChildren) {
                trace("index too large: ", index, "should be <",
mainContainer.numChildren);
                index = mainContainer.numChildren;
            }
            mainContainer.addChildAt(IIsoContainer(child).container, index);
        }
    }

    else
        throw new Error("parameter child does not implement IContainer.");
}



Original issue reported on code.google.com by [email protected] on 4 Jan 2009 at 3:01

EventDispatcherProxy.as Line 42

What steps will reproduce the problem?
1. Running from flash CS4 rather than Flex.
2. Specificialy, running the bitmap test example.
3. Using packages rather than the fl.

What is the expected output? What do you see instead?

To see a grid with an iso box, that has a bitmap from a loaded png.

What version of the product are you using? On what operating system?

The test example upladed most recently as of 12/26/08.  Flash IDE cs4.

Please provide any additional information below.

The error seems random.  As if an event or function is sometimes run 
before its loaded.  If I compile 6 times in a row, 1 or 2 times it will 
not throw the error and load fine.

EventDispatcherProxy.as, Line 42
Source:
public class EventDispatcherProxy implements IEventDispatcher, 
IEventDispatcherProxy
Error:
1044: Interface method set proxyTarget in namespace 
eDpLib.events:IEventDispatcherProxy not implemented by class 
eDpLib.events:EventDispatcherProxy.

AND

Node.as Line 185, IsoDisplayObject.as Line 590, IsoView.as Line 195, 
IsoSprite.as Line 95, IsoPrimitive.as Line 364 and IsoPolygon.as Line 51.
Source:
return value.parent == this;
Warning: 3590: void used where a Boolean value was expected.  The 
expression will be type coerced to Boolean.

The last few can be fixed by casting Boolean() around the returns.  
Althought I dont know if it would produce any side effects.  However, im 
not sure about the interface error, my only guess is that something isnt 
run in time.

Original issue reported on code.google.com by [email protected] on 27 Dec 2008 at 12:35

Node:removeChildByID duplicates Node:getChildIndex functional

What steps will reproduce the problem?
1. Node:removeChildByID duplicates Node:getChildIndex functional inside it.

What is the expected output? What do you see instead?

Node:removeChildByID should use Node:getChildIndex for searching in 
childrenArray.

What version of the product are you using? On what operating system?

as3isolib.v1.core

Please provide any additional information below.

-               //remove from children array
-               var i:uint;
-               
-               for ( i; i < childrenArray.length; i++ )
-               {
-                   if ( child == childrenArray[ i ])
-                   {
-                       childrenArray.splice( i, 1 );
-                        delete childrenIdDict[child.id];
-                       break;
-                   }
-               }

+                var childIndex:int = getChildIndex(child);
+                
+                if (childIndex >= 0) {
+                    childrenArray.splice(childIndex, 1);
+                }

Original issue reported on code.google.com by [email protected] on 4 Nov 2012 at 2:00

Add support for object instantiation parameters


please implement support for initialization parameters to the constructors 
of the most commonly used classes such as:

IsoView
IsoScene
IsoGrid
IsoBox
IsoSprite

If possible, for all or at least some of those the first param should be 
the 'id'.

I implemented a few of those in my local copy and I can attest that it 
really helps in reducing code verbosity.

I suggest all or at least most of these parameters should be optional.
As you know, optional constructor parameters do not break existing code.


Original issue reported on code.google.com by [email protected] on 22 Apr 2009 at 5:09

IsoScene.mainContainer.graphics.clear() comsume too much CPU

Reproduce steps
1. Create a demo like tutorial 7 but with moving duration of 10 seconds 
(and with no styling renderer)
2. Run the demo and click on the grid to move the box
3. Observe CPU consumption

Expected result:
- CPU consumption < 10%

Actual result:
- CPU goes up to 50-55%

What version of the product are you using?
- AS3IsoLib fp9 revision 247

On what operating system?
- Windows 7 RC, CPU Intel Core 2 Duo 2.53GHz, 2GB RAM

Please provide any additional information below:
- When I comment out the line: mainContainer.graphics.clear() in IsoScene 
class, CPU usage reduces and is as expected.


Original issue reported on code.google.com by [email protected] on 30 Jul 2009 at 2:11

Bitmap Fill not positioned correctly for IsoBox top, front and right faces. Dimensional offset

What steps will reproduce the problem?
1. create an isoBox of any given width, length and height
2. apply a bitmap fill of matching width and length to the top face
3. notice the bitmap seems to be offset from the expected origin of the face

What is the expected output? What do you see instead?
The bitmap image should match the intended point of the applied-to face


Please use labels and text to provide additional information.


Original issue reported on code.google.com by jwopitz on 9 Jun 2009 at 5:00

porting the as3isolib to another platform

The as3isolib is a great library and very useful for many developers, 
especially because isometric games are very popular all over the web. As much 
as i love to work with Flash and ActionScript, it is still a problem that the 
Flash Plugin is not available on all platforms - sure you can build a native 
application with the AIR runtime, but if some of us would like to target the 
web it is a problem.

Some weeks ago i started a project called "dartflash" and the name pretty much 
says what it is - it is a port of the Flash API to Googles upcoming Dart 
programming language (http://www.dartlang.org). There are other projects like 
"EaselJS" who did the same for JavaScript but the API is not very compatible to 
the original API and JavaScript is far from ActionScript. Dart on the other 
hand is very similar to ActionScript and it is a joy to work with it when you 
come from the ActionScript world.

Here are some samples and a game i have ported from ActionScript to Dart:
http://www.dartflash.com
http://www.dartflash.com/apps/escape/escape.html

The source of the dartflash library (including all samples and the game) is 
available here:
https://github.com/bp74/dartflash

Sorry for the long introduction, here comes my suggestion/question:

It would be great if someone would port the as3isolib to something like the 
dartisolib using dartflash. Many programmers would be able to port their Flash 
games to HTML5 in an easy and fast way. So i ask if someone is interested? I 
would do it by myself too, but my spare time is limited to and my main focus is 
on improving the dartflash library. So please check out Dart and the dartflash 
library, hope you will like it.

Original issue reported on code.google.com by [email protected] on 17 Aug 2012 at 8:36

DepthSorting performance

I'm running to an issue where when I have 2500 actor on a grid of 50x50, the 
depth sorting is really slow to execute.

Have you worked on that?

Original issue reported on code.google.com by [email protected] on 10 Jun 2010 at 8:36

syntax error in the engine

What steps will reproduce the problem?
1. I DOWNLOADED THE LATEST VERSION OF THE ENGINE
2. I tried to test the first tutorial sample 
3.

---

What is the expected output? What do you see instead?

i got a syntax error in the class

1084: Syntax error: expecting identifier before lessthan.
private var styleRendererFactories:Vector.<IFactory> = new Vector.<IFactory>();

styl1084: Syntax error: expecting identifier before
lessthan.eRendererFactories = Vector.<IFactory>(value);
------

What version of the product are you using? On what operating system?
this is the version link
http://as3isolib.googlecode.com/svn/trunk/fp10/download/as3isolib.zip

i use flash cs3 on windows Xp
----
Please provide any additional information below.
i have an old version of the engine.
it worked fine in sample 1
but in other samples their was some new features not supported in the old
version

would you please tell me how to over come the issue of the new version

Original issue reported on code.google.com by [email protected] on 9 Mar 2010 at 5:48

probably major on coordinate managing

What steps will reproduce the problem?
box = new IsoBox();
faceColors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
box.faceColors= faceColors;
box.width =5;
box.height =5;
box.length =50;
box.moveTo(0, 5, 0);
scene.addChild(box);
var grid:IsoGrid = new IsoGrid();
scene.addChild(grid);
scene.render();

What is the expected output? What do you see instead?

the box doesn't appear where it suppose to be.
it suppose to be after the green axe but it appears below zero for both
axes the green and the blue... 

What version of the product are you using? On what operating system?

both last download and svn.

see the swf to see what happen

Original issue reported on code.google.com by [email protected] on 7 Nov 2008 at 1:17

Attachments:

Class is called Pt

Come on guys, follow convention and use a proper, unshortened name like
IsoPoint or Iso3DPoint or 3DPoint

Original issue reported on code.google.com by [email protected] on 14 Apr 2010 at 2:35

sdffs

What steps will reproduce the problem?
1.
2. xcsv
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 20 Jun 2011 at 5:31

depth sorting algorithm not sorting properly in various scenarios

What steps will reproduce the problem?
Put many boxes on stage (lay them on the grid) and try to move one just
near another.

What is the expected output? What do you see instead?
I see (but rarely) that the box behind is for some time displayed in front
of the box that is in the front.

What version of the product are you using? On what operating system?
Vista 64bit.

Please provide any additional information below.

Solution: I changed the sorting routine to:

////////////////////////////////////////////////////
        //  SORT
        ////////////////////////////////////////////////////

        private function isoDepthSort (childA:Object, childB:Object):int
        {
            var boundsA:IBounds = childA.isoBounds;
            var boundsB:IBounds = childB.isoBounds;

            if (boundsA.right <= boundsB.left)
                return -1;

            else if (boundsA.front <= boundsB.back)
                return -1;

            else if (boundsA.top <= boundsB.bottom)
                return -1;

            else if (boundsA.left >= boundsB.right)
                return 1;

            else if (boundsA.back >= boundsB.front)
                return 1;

            else if (boundsA.bottom >= boundsB.top)
                return 1;

            else
                return 0;
        }

I just moved all 3 "<=" "if"-s to the top - somehow now it works (but
didn't do much testing).
Aditionally, I think that this algorithm should run faster because it exits
the testing loop earlier. That's because statistically the items appearing
earlier in the array are already sorted in the loop before, so it exits the
loop somewhere in the upper 3 "if"-s.

Btw I don't know what's the "return 0;" for - because this can happen by
error only (?). Two different objects in the list shouldn't have the same
depth (?).

Original issue reported on code.google.com by [email protected] on 12 Mar 2009 at 10:06

isInvalidated is still true when the RENDER event fires

What steps will reproduce the problem?

1. Setup a handler for RENDER event of an IsoScene
2. On the handler, check for the value of scene.isInvalidated

What is the expected output? What do you see instead?

Expected: isInvalidated returns false
Currently: isInvalidated returns true


Original issue reported on code.google.com by [email protected] on 22 Apr 2009 at 5:24

IsoView.rangeOfMotionTarget does not respect currentZoom

What steps will reproduce the problem?
1. Set the limitRangeOfMotion and rangeOfMotionTarget properties of the IsoView 
to a large iso object, such as a grid. Add UI elements to enable zooming and 
panning of the iso view.
2. Pan to the edge of the object in the IsoView, works correctly.
3. Zoom the IsoView and then try panning again, unexpected behaviour.

What is the expected output? What do you see instead?
That the viewable area would be locked to only display the object used for the 
rangeOfMotionTarget, taking into account the zoom of the iso view.

Instead, when zoomed in we can pan too far past the object. The inverse may be 
true too when zooming out.

What version of the product are you using? On what operating system?
Revision 306 on OSX 10.5.8

Please provide any additional information below.
Great library, thank you!

Original issue reported on code.google.com by [email protected] on 5 Aug 2010 at 3:39

Cannot set frame rate on Actionscript project when using as3isolib

What steps will reproduce the problem?

In Flex Builder 3:
1. stage.frameRate = 31; or
2. -default-frame-rate 31 (compiler argument) or
3. [SWF(frameRate="31")] (metadata of main class)

What is the expected output? What do you see instead?
Flash on 31 FPS. I see Flash on default (12) FPS.

What version of the product are you using? On what operating system?
Vista Professional 64 bit

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 12 Mar 2009 at 9:54

IsoView isoToLocal changes the given point

What steps will reproduce the problem?
1. call IsoView.isoToLocal(p)
2. p0 is changed

What is the expected output? What do you see instead?
p0 not changed


Please provide any additional information below.

public function isoToLocal( isoPt:Pt ):Point {
    isoPt = IsoMath.isoToScreen( isoPt );
    [...]
}

should be changed to:
public function isoToLocal( isoPt:Pt ):Point {
    isoPt = IsoMath.isoToScreen( isoPt, true );
    [...]
}

Original issue reported on code.google.com by [email protected] on 25 Jun 2011 at 2:13

[fp10]IsoContainer.displayListChildren problem

This problem only in fp10 as3isolib.

Please checkout the displayerListChildre's getter of IsoContainer class:

                public function get displayListChildren():Array
                {
                        var temp:Array = [];
                        var child:IIsoContainer;

                        for each ( child in displayListChildrenArray )
                                temp.push( child );

                        return temp;
                }

It alway create a new clone of "displayListChildrenArray". So it useless if 
push/splice it. The "displayListChildrenArray" is untouchable from outside.

And in IsoContainer's renderLogic function, if it's not included layout, it 
will be removed from parent's displayListChildren. In fact, this will never 
happen!

Original issue reported on code.google.com by [email protected] on 28 Jul 2011 at 7:57

moveTo and moveBy round the numeric input to integers

What steps will reproduce the problem?
1. Add an IsoBox to the scene
2. Use myIsoBox.moveTo(0.5, 1.2, 0) (or moveBy, if preferred)
3. Render the scene
4. Check the box's coordinates with myIsoBox.x, .y and .z

What is the expected output? What do you see instead?
I expect the box to be at coordinates (0.5, 1.2, 0), since Flash supports 
decimal values.
Instead, the box will be at coordinates (1, 1, 0).

What version of the product are you using? On what operating system?
as3isolib.v1.core, Windows 7

Original issue reported on code.google.com by [email protected] on 27 Dec 2011 at 1:09

Memory leak in IsoScene.removeChild

What steps will reproduce the problem?
1. call removeChild
2. look in Flex profiler to see what instance stick around

What's happening is when you call addChild it adds this listener:

child.addEventListener(IsoEvent.INVALIDATE, child_invalidateHandler);

which when called does this:

invalidatedChildrenArray.push(child);

The problem is that when you call IsoScene.removeChild it doesn't remove child 
from the invalidatedChildrenArray. Here's a solution that fixes it, replace 
IsoScene.removeChildByID(id:String) with this:

        override public function removeChildByID (id:String):INode
        {
            var child:INode = super.removeChildByID(id);
            if (child)
            {
                child.removeEventListener(IsoEvent.INVALIDATE, child_invalidateHandler);

                if (invalidatedChildrenArray) {
                    for (var i:int = 0; i < invalidatedChildrenArray.length; i++) {
                        if (invalidatedChildrenArray[i] == child) {
                            invalidatedChildrenArray.splice(i, 1);
                            break;
                        }
                    }
                }
                bIsInvalidated = true;
            }

            return child;
        }

Original issue reported on code.google.com by [email protected] on 23 Mar 2011 at 4:46

No way to specify background for IsoView

There is no way to specify background mc for IsoView instead of making changes 
in IsoView.as file. Would we great if IsoView.bgContainer will be protected or 
public setter and will be possible to set it through subclassing or direct 
calling. 


Original issue reported on code.google.com by [email protected] on 24 Aug 2010 at 9:12

AS3 Isolib game development

I need to develop a isometric game on facebook like farmvillie, barnbuddy or 
etc. I found couple of frame works (link is here) to develop it, but they not 
simple as isolib. So I decided to go with as3 isolib. Google project for that 
is here.

But I could not find a A-Z tutorial for as3 isolib, except basic (adding 
scenes, adding map and etc). I want more stuff. So Can you please suggest me a 
advance as3 isolib tutorial (I googled it 100 times) ?

Anyway if you have suggestion for frame work except isolib to develop isometric 
game,let me know it also.

Thanks

Original issue reported on code.google.com by [email protected] on 22 Mar 2012 at 9:04

getChildByID is slow (has O(n) complexity)

What steps will reproduce the problem?
1. Node.as getChildByID is dramatically slow. It has O(n) complexity.

What is the expected output? What do you see instead?

Node::addChildAt expects to has O(1) complexity, but it used getChildByID 
internal.

What version of the product are you using? On what operating system?

as3isolib.v1.core

Please provide any additional information below.

If it really NEEDS to check children ids, it's better to make support 
dictionary in parallel to childrenArray. Sample diff provided.

Original issue reported on code.google.com by [email protected] on 4 Nov 2012 at 1:35

Attachments:

Bug

Use fp10 only

view.viewRenderers = [new ClassFactory(DefaultViewRenderer)];


ArgumentError: Error #2025: 提供的 DisplayObject 
必须是调用者的子级。
    at flash.display::DisplayObjectContainer/setChildIndex()
    at as3isolib.core::IsoContainer/setChildIndex()[D:\workspace\Flex Builder
3\As3isolib\src\as3isolib\core\IsoContainer.as:155]
    at as3isolib.display.scene::IsoScene/setChildIndex()[D:\workspace\Flex
Builder 3\As3isolib\src\as3isolib\display\scene\IsoScene.as:169]
    at
as3isolib.display.renderers::DefaultSceneLayoutRenderer/place()[D:\workspace\Fle
x
Builder
3\As3isolib\src\as3isolib\display\renderers\DefaultSceneLayoutRenderer.as:153]
    at
as3isolib.display.renderers::DefaultSceneLayoutRenderer/renderScene()[D:\workspa
ce\Flex
Builder
3\As3isolib\src\as3isolib\display\renderers\DefaultSceneLayoutRenderer.as:120]
    at as3isolib.display.scene::IsoScene/renderLogic()[D:\workspace\Flex
Builder 3\As3isolib\src\as3isolib\display\scene\IsoScene.as:344]
    at as3isolib.core::IsoContainer/render()[D:\workspace\Flex Builder
3\As3isolib\src\as3isolib\core\IsoContainer.as:276]
    at <anonymous>()[D:\workspace\Flex Builder 3\arpg\src\arpg.as:336]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at com.gskinner.motion::GTween/setPosition()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:733]
    at com.gskinner.motion::GTween/handleTick()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:826]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at HybridTicker/tick()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:906]

Original issue reported on code.google.com by [email protected] on 30 Oct 2009 at 3:00

Download link is not working

What steps will reproduce the problem?
1. go to the proj page http://code.google.com/p/as3isolib/
2. Under "using as3isolib" headline the is a link "here(fp10 only)"
   - click that link.
3. "here(fp10 only)" will take you to the following url of a zip
   file -
   http://as3isolib.googlecode.com/svn/trunk/fp10/download/as3isolib.zip

   But the link is broken and there was no other way to
   download the source code!!!

Original issue reported on code.google.com by [email protected] on 24 Jan 2011 at 8:59

No way to eliminate view borders



I'm not sure if view borders affect performance enough, but it would be 
nice that there was a way to turn them off.

something like: 

view.drawBorder = false;

Original issue reported on code.google.com by [email protected] on 14 Apr 2009 at 5:16

scene.addChild sceneRemoveChild issue

What steps will reproduce the problem?
1.Create iso scene 
2.Add an IsoBox to it
3.remove IsoBox by using IsoScene(scene).removeChild(_box)
4.Add another IsoBox to the scene, render scene

What is the expected output? What do you see instead?
Expected output: continues to work, no crashes
Current output: [Fault] exception, information=Error: parameter child is not 
found within node structure, unless first i set includeInLayout=false;

What version of the product are you using? On what operating system?
as3isolib.v1.core.swc, Windows 7

Please provide any additional information below.

Suggested change is to remove the includeInLayout functionality from 
IIsoContainer, so that scene.addChild() scene.removeChild() behaves the same 
ways as flash display list, without extra flags required. Loose objects should 
be handled by the code implementing the engine, not the engine itself. If there 
is a reason behind this architecture, please provide more information in wiki


Original issue reported on code.google.com by [email protected] on 16 Dec 2011 at 3:52

Using the last updates

What steps will reproduce the problem?
1. I try to execute the examples

What is the expected output? What do you see instead?

This error: abc bytecode decoding failed


What version of the product are you using? On what operating system?

The last version and windows xp

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 9 Nov 2009 at 7:56

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.