Bug Issue: Actors on same layer don't always appear in correct Z-Order in Scene Designer


Pages: 1

BMJ

  • Level 3 Stencyler
June 15, 2016, 09:29:39 am
When layering actors in the scene designers, sometimes the actors on the same layer will not appear in the same z-order as they do at runtime. (Nothing to do with code ... this happens with minimal actors that don't have any logic whatsoever - nothing more than an image.) Also, sometimes moving actors *sideways* will change the z-order, both in the designer and at runtime.

Related to this(?) is that sometimes I will be adding "staircase" actors by starting at the top and working lower and lower, and each new one z-orders in front (as I assume they should), then all of a sudden, the next one will z-order BEHIND the one above it. Nothing seems to change this, so I create a new layer and keep going, but that further complicates an already complicated scene and is not desirable at all.


Issue updated by Justin - June 23, 2016, 04:29:44 am
  • Issue Assigned from (none) to Justin


Justin

  • Master Stencyler
  • *
February 18, 2019, 04:33:21 pm
As of b10291, actor ordering can be modified within the scene designer and is preserved at runtime.
  • Status changed from New to Resolved


LIBERADO

  • Expert Stencyler
  • *
March 06, 2019, 01:48:47 am
It still does not work properly.


Justin

  • Master Stencyler
  • *
March 06, 2019, 03:40:39 am
An example game would be more helpful.


LIBERADO

  • Expert Stencyler
  • *
March 06, 2019, 04:15:07 am
Example game attached, but after modifying the actor z-ordering within the scene designer, now I can't reopen the scene because I get the following error. If you are able to fix this error and open the scene, then you will see that the spinning actor which has spikes does not appear in the same z-order as it does at runtime.
Code: [Select]
java.lang.RuntimeException: java.lang.IndexOutOfBoundsException: Index: 6, Size: 0
at stencyl.sw.app.tasks.StencylWorker.done(StencylWorker.java:74)
at stencyl.sw.app.tasks.StencylWorker.done(StencylWorker.java:54)
at stencyl.sw.app.tasks.OpenResourceTask.done(OpenResourceTask.java:76)
at javax.swing.SwingWorker$5.run(SwingWorker.java:737)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:832)
at sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:842)
at javax.swing.Timer.fireActionPerformed(Timer.java:313)
at javax.swing.Timer$DoPostEvent.run(Timer.java:245)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.IndexOutOfBoundsException: Index: 6, Size: 0
at java.util.ArrayList.rangeCheckForAdd(ArrayList.java:661)
at java.util.ArrayList.add(ArrayList.java:473)
at stencyl.sw.editors.scene.layerviews.ActorLayer.addActorToLayer(ActorLayer.java:208)
at stencyl.sw.editors.scene.layerviews.InteractiveLayerView.addActorToLayer(InteractiveLayerView.java:79)
at stencyl.sw.editors.scene.EditorSceneModel.addActorToBuckets(EditorSceneModel.java:893)
at stencyl.sw.editors.scene.EditorSceneModel.addActor(EditorSceneModel.java:945)
at stencyl.sw.editors.scene.EditorSceneModel.<init>(EditorSceneModel.java:206)
at stencyl.sw.editors.scene.Designer.<init>(Designer.java:559)
at stencyl.sw.editors.scene.SceneMainPage.initDesigner(SceneMainPage.java:307)
at stencyl.sw.editors.scene.SceneMainPage.<init>(SceneMainPage.java:134)
at stencyl.sw.editors.scene.SceneTab.init(SceneTab.java:140)
at stencyl.sw.editors.scene.SceneTab.<init>(SceneTab.java:122)
at stencyl.sw.app.doc.Workspace.fetchEditorForResource(Workspace.java:832)
at stencyl.sw.app.doc.Workspace.finishOpenResource(Workspace.java:679)
at stencyl.sw.app.tasks.OpenResourceTask.doInBackground(OpenResourceTask.java:67)
at stencyl.sw.app.tasks.OpenResourceTask.doInBackground(OpenResourceTask.java:20)
at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at javax.swing.SwingWorker.run(SwingWorker.java:334)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
« Last Edit: March 06, 2019, 04:17:16 am by LIBERADO »


New attachment added by LIBERADO - March 06, 2019, 04:15:34 am


LIBERADO

  • Expert Stencyler
  • *
March 07, 2019, 12:16:54 am
Also, the new "Bring To Front In Layer" option doesn't work, it does nothing.
« Last Edit: March 07, 2019, 12:21:05 am by LIBERADO »


Justin

  • Master Stencyler
  • *
May 21, 2019, 09:00:58 pm
The issues are fixed in b10338.


LIBERADO

  • Expert Stencyler
  • *
May 21, 2019, 09:46:01 pm
Thanks.


Pages: 1

Details

  • Reported
    June 15, 2016, 09:29:39 am
  • Updated
    May 21, 2019, 09:46:01 pm

  • View Status
    Public
  • Type
    Bug
  • Status
    Resolved
  • Priority
    Normal
  • Version
    3.4.0 beta2
  • Fixed in
    (none)
  • Assigned to
    Justin
  • Category
    Scene Designer

Tags


Attachments

* Z_Order TEST.stencyl (343.93 kB - downloaded 47 times.)