I got a problem when I try to combine Starling + Away3d on a Android device. As soon as I show some Starling or Away3d content, it displays for a couple of frame and then the image disappear. This bug only occurs when I use both Away and Starling with depthAndStencil set to true.
I'm using the latest (MASTER) version of Starling, tried with AIR 3.7 and 3.8, Away 4.1.4 Gold. I also tried with different version of Starling (1.3) and Away3d (4.0, 4.1.1).
Everything is working in Windows, Mac, as swf, as AIR desktop, as AIR iOS, but not as AIR Android. I'm testing with a Nexus 10 running 4.2.2.
Here's my code to initialize stage3d. Again, If I only use the Starling init without stencil, then everything is fine (but obviously without my 3d assets).
var stage3DManager:Stage3DManager = Stage3DManager.getInstance(stage);
_stage3DProxy = stage3DManager.getFreeStage3DProxy(false, "baseline");
_stage3DProxy.addEventListener(Stage3DEvent.CONTEXT3D_CREATED, onContextCreated);
Hi,
I got a problem when I try to combine Starling + Away3d on a Android device. As soon as I show some Starling or Away3d content, it displays for a couple of frame and then the image disappear. This bug only occurs when I use both Away and Starling with depthAndStencil set to true.
I'm using the latest (MASTER) version of Starling, tried with AIR 3.7 and 3.8, Away 4.1.4 Gold. I also tried with different version of Starling (1.3) and Away3d (4.0, 4.1.1).
Everything is working in Windows, Mac, as swf, as AIR desktop, as AIR iOS, but not as AIR Android. I'm testing with a Nexus 10 running 4.2.2.
Here's my code to initialize stage3d. Again, If I only use the Starling init without stencil, then everything is fine (but obviously without my 3d assets).
var stage3DManager:Stage3DManager = Stage3DManager.getInstance(stage); _stage3DProxy = stage3DManager.getFreeStage3DProxy(false, "baseline"); _stage3DProxy.addEventListener(Stage3DEvent.CONTEXT3D_CREATED, onContextCreated);
private function onContextCreated(e:flash.events.Event):void { _stage3DProxy.removeEventListener(Stage3DEvent.CONTEXT3D_CREATED, onContextCreated); _stage3DProxy.width = stage.stageWidth; _stage3DProxy.height = stage.stageHeight; _away3dView = new View3D(); _away3dView.stage3DProxy = _stage3DProxy; _away3dView.shareContext = true; _starlingInstance = new Starling(StarlingRoot, stage, _stage3DProxy.viewPort, _stage3DProxy.stage3D, Context3DRenderMode.AUTO, "baseline"); _starlingInstance.addEventListener(starling.events.Event.ROOT_CREATED, onStarlingContextCreated); }
private function onStarlingContextCreated(e:starling.events.Event):void { _starlingInstance.stage3D.removeEventListener(starling.events.Event.ROOT_CREATED, onStarlingContextCreated); _starlingInstance.simulateMultitouch = false; _starlingInstance.enableErrorChecking = false; _starlingInstance.stage.frameRate = 30; _starlingInstance.viewPort = new Rectangle(0, 0, _screenWidth, _screenHeight); }
private function onEnterFrame():void { _stage3DProxy.clear(); _starlingInstance.nextFrame(); _away3dView.render(); _stage3DProxy.present(); }
Hopefully someone will be able to understand what it happening with this or point me to an existing bug report at Adobe.
Thanks