Back

CreateGLView

Returns a GLView object.

app.CreateGLView( width, height, options ) -> app object - GLView

Example - DrawImage



function OnStart()
{
    lay = app.CreateLayout( "Linear", "FillXY" );

    glview = app.CreateGLView( 1, 1, "Fast2d" );
    lay.AddChild( glview );

    img = glview.CreateImage( "/Sys/Img/Hello.png", DrawFrame );

    app.AddLayout( lay );
}

function DrawFrame()
{
    glview.DrawImage( img, 0.25, 0.3, 0.5, -1, 45 );

    glview.Render();
}
    Copy     Copy All       Run      

Example - Render Loop



var angle = 0;

function OnStart()
{
    lay = app.CreateLayout( "Linear", "FillXY" );

    glview = app.CreateGLView( 1, 1, "Fast2d" );
    lay.AddChild( glview );

    img = glview.CreateImage( "/Sys/Img/Hello.png", StartRendering );

    app.AddLayout( lay );
}

function StartRendering()
{
    setInterval( DrawFrame, 1000/30 );
}

function DrawFrame()
{
    glview.DrawImage( img, 0.25, 0.3, 0.5, -1, angle );

    angle = angle + 10;
    if( angle == 360 ) angle = 0;

    glview.Render();
}
    Copy     Copy All       Run      

Example - DrawSprite



var spriteCount = 8;
var srcWidth = 50;
var srcHeight = 60;
var frameCount = 0;

function OnStart()
{
    lay = app.CreateLayout( "Linear", "FillXY" );

    glview = app.CreateGLView( 1, 1, "Fast2d" );
    lay.AddChild( glview );

    img = glview.CreateImage( "/Sys/Img/Sprint.png", StartRendering );

    app.AddLayout( lay );
}

function StartRendering()
{
    setInterval(DrawFrame, 1000/30);
}

function DrawFrame()
{
    var spriteIndex = Math.floor(frameCount / 2) % spriteCount;

    var sx = spriteIndex * srcWidth;
    var sy = 0;

    glview.DrawSprite( img, sx, sy, srcWidth, srcHeight,
                0.3, 0.4, 0.3, -1 );

    glview.Render();

    frameCount++;
}
    Copy     Copy All       Run      

The following methods are avaiable on the GLView object:

  CreateImage( file, callback ) -> app object - app GLView image
  Destroy()
  DrawImage( image, x, y, w, h, angle )
  DrawSprite( sheet, sx, sy, sw, sh, dx, dy, dw, dh )
  Exec( p1, p2, p3, p4 )
  Execute( p1, p2, p3, p4 )
  Explode()
  Focus()
  GetAbsHeight() -> number - integer
  GetAbsWidth() -> number - integer
  GetContext() -> object - ctx
  GetHeight( options ) -> number - fraction of screen height
  GetLeft( options ) -> number - fraction of screen width
  GetPosition( options ) -> object - { left: fraction of parent width, top: fraction of parent height, right: fraction of parent width, bottom: fraction of parent height }
  GetTop( options ) -> number - fraction of screen height
  GetType() -> string - "GLView"
  GetVisibility() -> string - "Show" or "Hide" or "Gone"
  GetWidth( options ) -> number - fraction of screen width
  Gone()
  Hide()
  IsEnabled() -> boolean
  IsOverlap( obj, depth ) -> boolean
  IsVisible() -> boolean
  Release()
  Render()
  SetScale( x, y )
  Show()
  _parent -> app object - app layout
  aspect -> number - float
  canvas -> object
  ctx -> object - {
  clearRect(x,y,width,height)
  _drawCommands:str
  _globalAlpha: float
  capture(x,y,w,h,fileName,successCallback,errorCallback)
  drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh)
  loadTexture(image,successCallback,errorCallback)
  render()
  resetTransform()
  restore()
  rotate(angle)
  save()
  scale(a,d)
  setTransform(a,b,c,d,tx,ty)
  transform(a,b,c,d,tx,ty)
  translate(tx,ty)
  unloadTexture(image)
}
  height -> number - integer
  id -> string - "#id"
  width -> number - integer

number - fraction of screen width
number - fraction of screen height
string - "fast2d"
number
set color effects
?
string - path to file or folder ( "/absolute/..." or "relative/..." )
function()
create dso_glv can be drawn on GLV
destroys object
unknown
calls _gfx.Exec()
destroys object with explode animation and sound
?
get height in pixels
get width in pixels
get screen relative height
get distance to left parent border
get distance to upper parent border
GetVisibility
get screen relative width
Set visibility "Gone"
Set visibility "Hide"
IsEnabled
app object
return wether obj overlap with an other
IsVisible
?
execute draw commands
string -
  hexadecimal: "#rrggbb", "#aarrggbb"
  colourName: "red", "green", ...
SetBackColor
SetBackColorRadial
changes the background image
string - "Add" or "Multiply" or "?"
adjust color
boolean
en/disable object
move object from current position
function( event )
called when user touches object
function( event )
called when finger comes down
function( event )
called when finger was moved over screen
function( event )
called when finger leaves screen
set surrounding borders
SetPosition
number - factor
SetScale
change object size
SetTouchable
string - "Show" or "Hide" or "Gone"
change visibility mode
Set visibility "Show"
?
parent layout - undefined if not added to a layout
width/height relation
[HTMLDivElement]
includes draw functions
height
object id
width
{
    source: app object,
    action: string - "Down" or "Move" or "Up",
    count: number - integer,
    X: number - fraction of screen width,
    Y: number - fraction of screen height,
    x: list - [ x1, x2, x3 ],
    y: list - [ y1, y2, y3 ]
}