Oh, it's working except for PngDecoder::externBitmap.LoadWebGL():
$if !$prototyper && ( $platform == *.WebGL.* )
var string name = pure Name;
var handle handle = null;
var int32 frameX = RequestedFrameSize.x;
var int32 frameY = RequestedFrameSize.y;
var int32 format = (int32)pure Format;
FreeBitmap();
if ( name != "" )
{
native ( name, handle, frameX, frameY, format )
{
if ( frameX > 0 && frameY > 0 )
{
// For frame sets an internal resource is created to allow the standard resource loading process.
var bitmapRes = {};
var res = {};
if ( format === _unit.BitmapFormat.Alpha8 )
res.Format = _app._PIXEL_FORMAT_ALPHA8;
else
res.Format = _app._PIXEL_FORMAT_NATIVE;
res.FileName = name;
res.NoOfFrames = this.RequestedNoOfFrames;
res.FrameSize = this.RequestedFrameSize;
res.FrameDelay = this.FrameDelay;
res._this = null;
bitmapRes._class = function() { return _app.Resources.Bitmap; };
bitmapRes[0] = res;
handle = _app._LoadBitmap( res, this );
}
else
{
handle = _app._LoadExternBitmap( name, this );
}
}
}
bitmap = handle;
// Ask the attributes of the loaded bitmap
if ( bitmap != null )
{
var int32 noOfFrames = 1;
var point frameSize = <0,0>;
var int32 frameDelay = 0;
handle = bitmap;
native ( handle, noOfFrames, frameSize, frameDelay )
{
noOfFrames = handle.NoOfFrames;
frameSize = handle.FrameSize;
frameDelay = handle.FrameDelay;
}
/* Copy the bitmap attributes into the bitmap object */
pure FrameSize = frameSize;
pure NoOfFrames = noOfFrames;
pure FrameDelay = frameDelay;
// Can the bitmap run an animation sequence?
SetAnimated( ( pure FrameDelay > 0 ) && ( pure NoOfFrames > 1 ) );
}
else if ( DefaultBitmap != null )
{
defaultBitmapUsed = true;
bitmap = DefaultBitmap.bitmap;
pure FrameSize = DefaultBitmap.FrameSize;
pure NoOfFrames = DefaultBitmap.NoOfFrames;
pure FrameDelay = DefaultBitmap.FrameDelay;
}
$else
trace "Method 'loadWebGL()' is called on a non WebGL profile!";
$endif
// Force all affected views to update their aspect
notifyobservers this;