Hi all,

I had the same issue to solve, I added a flag ( View3D.as /
DefaultRenderer.as / RendererBase.as ) to disable present method or
not after render

To get the bitmapdata

var bitmapdata:BitmapData = new BitmapData( width, height, true,
0xFF0000 );
view3D.render(false);
view3D.renderer.context.drawToBitmapData(bitmapdata);

Here is the modifications :

********* [ View3D.as ]

Before
public function render() : void
...
context.present();
}
else    _renderer.render(_entityCollector, null, 0, 7);
...

After
public function render(present:Boolean = true) : void
...
if (present) context.present();
}
else    _renderer.render(_entityCollector, null, 0, 7, present);
...

********* [ DefaultRenderer.as ]

Before
arcane override function render(entityCollector : EntityCollector,
target : TextureBase = null, surfaceSelector : int = 0,
additionalClearMask : int = 7 ) : void
...
super.render(entityCollector, target, surfaceSelector,
additionalClearMask);
...

After
arcane override function render(entityCollector : EntityCollector,
target : TextureBase = null, surfaceSelector : int = 0,
additionalClearMask : int = 7, present:Boolean = true) : void
...
super.render(entityCollector, target, surfaceSelector,
additionalClearMask, present);
...

********* [ RendererBase.as ]

Before
protected function executeRender(entityCollector : EntityCollector,
target : TextureBase = null, surfaceSelector : int = 0,
additionalClearMask : int = 7 ) : void
...
if (_swapBackBuffer && !target ) _context.present();
...

After
protected function executeRender(entityCollector : EntityCollector,
target : TextureBase = null, surfaceSelector : int = 0,
additionalClearMask : int = 7, present: Boolean = true) : void
...
if (_swapBackBuffer && !target && present) _context.present();
...

Regards,

Reply via email to