package Ġorg . open rnd r . internal Ċ Ċ import Ġorg . open rnd r . color . Color RGB a Ċ import Ġorg . open rnd r . draw .* Ċ import Ġjava . nio . Buffer Ċ Ċ /** Ċ Ġ* Ġ Ġbuilt - in Ġshader Ġgenerators Ċ Ġ*/ Ċ interface ĠShader Generators Ġ{ ĊĠĠĠ Ġfun Ġvertex Buffer Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġvertex Buffer Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġimage Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġimage Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġcircle Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġcircle Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġfont Image Map Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġfont Image Map Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġrectangle Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġrectangle Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġexpansion Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġexpansion Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġfast Line Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġfast Line Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĊĠĠĠ Ġfun Ġmesh Line Fragment Shader ( shade Structure : ĠSh ade Structure ): ĠString ĊĠĠĠ Ġfun Ġmesh Line Vertex Shader ( shade Structure : ĠSh ade Structure ): ĠString Ċ } ĊĊ Ċ /** Ċ Ġ* ĠDriver Ġinterface . ĠThis Ġis Ġthe Ġinternal Ġinterface Ċ Ġ*/ Ċ interface ĠDriver Ġ{ ĊĊĠĠĠ Ġval Ġcontext ID : ĠLong ĊĊĊĠĠĠ Ġfun Ġcreate Shader ( vs Code : ĠString , Ġfs Code : ĠString ): ĠShader ĊĊĠĠĠ Ġfun Ġcreate Shade Style Manager ( vertex Shader Generator : Ġ( Shade Structure ) Ġ-> ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Shader Generator : Ġ( Shade Structure ) Ġ-> ĠString ): ĠSh ade Style Manager ĊĊĠĠĠ Ġfun Ġcreate RenderTarget ( width : ĠInt , Ġheight : ĠInt , Ġcontent Scale : ĠDouble Ġ= Ġ 1 . 0 , Ġmultis ample : ĠBuffer Mult is ample Ġ= ĠBuffer Mult is ample . Disabled ): ĠRender Target ĊĊĠĠĠ Ġfun Ġcreate Color Buffer ( width : ĠInt , Ġheight : ĠInt , Ġcontent Scale : ĠDouble , Ġformat : ĠColor Format , Ġtype : ĠColor Type , Ġmultis ample : ĠBuffer Mult is ample Ġ= ĠBuffer Mult is ample . Disabled ): ĠColor Buffer ĊĠĠĠ Ġfun Ġcreate Color Buffer From Url ( url : ĠString ): ĠColor Buffer ĊĠĠĠ Ġfun Ġcreate Color Buffer FromFile ( filename : ĠString ): ĠColor Buffer ĊĊĠĠĠ Ġfun Ġcreate Depth Buffer ( width : ĠInt , Ġheight : ĠInt , Ġformat : ĠDepth Format , Ġmultis ample : ĠBuffer Mult is ample Ġ= ĠBuffer Mult is ample . Disabled ): ĠDepth Buffer ĊĠĠĠ Ġfun Ġcreate Buffer Texture ( element Count : ĠInt , Ġformat : ĠColor Format , Ġtype : ĠColor Type ): ĠBuffer Texture ĊĊĠĠĠ Ġfun Ġcreate Cub emap ( width : ĠInt , Ġformat : ĠColor Format , Ġtype : ĠColor Type ): ĠC ub emap ĊĠĠĠ Ġfun Ġcreate Cub emap From Urls ( urls : ĠList < String >): ĠC ub emap ĊĊĠĠĠ Ġfun Ġcreate Resource Thread ( f : Ġ() Ġ-> ĠUnit ): ĠResource Thread ĊĠĠĠ Ġfun Ġcreate Draw Thread () Ġ: ĠDraw Thread ĊĊĠĠĠ Ġfun Ġclear ( r : ĠDouble , Ġg : ĠDouble , Ġb : ĠDouble , Ġa : ĠDouble ) ĊĠĠĠ Ġfun Ġclear ( color : ĠColor RGB a ) Ġ{ ĊĠĠĠĠĠĠĠ Ġclear ( color . r , Ġcolor . g , Ġcolor . b , Ġcolor . a ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcreate Dynamic VertexBuffer ( format : ĠVertex Format , Ġvertex Count : ĠInt ): ĠVertex Buffer ĊĠĠĠ Ġfun Ġcreate Static VertexBuffer ( format : ĠVertex Format , Ġbuffer : ĠBuffer ): ĠVertex Buffer ĊĊĠĠĠ Ġfun Ġcreate Dynamic Index Buffer ( element Count : ĠInt , Ġtype : ĠIndex Type ): ĠIndex Buffer ĊĊĠĠĠ Ġfun Ġdraw VertexBuffer ( shader : ĠShader , Ġvertex Buffers : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw Primitive : ĠDraw Primitive , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvertex Offset : ĠInt , Ġvertex Count : ĠInt ) ĊĊĠĠĠ Ġfun Ġdraw Indexed VertexBuffer ( shader : ĠShader , Ġindex Buffer : ĠIndex Buffer , Ġvertex Buffers : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw Primitive : ĠDraw Primitive , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindex Offset : ĠInt , Ġindex Count : ĠInt ) ĊĊĊĠĠĠ Ġfun Ġdraw Instances ( shader : ĠShader , Ġvertex Buffers : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinstance Attributes : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw Primitive : ĠDraw Primitive , Ġvertex Offset : ĠInt , Ġvertex Count : ĠInt , Ġinstance Count : ĠInt ) ĊĊĠĠĠ Ġfun Ġdraw Indexed Instances ( shader : ĠShader , Ġindex Buffer : ĠIndex Buffer , Ġvertex Buffers : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinstance Attributes : ĠList < VertexBuffer >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw Primitive : ĠDraw Primitive , Ġindex Offset : ĠInt , Ġindex Count : ĠInt , Ġinstance Count : ĠInt ) ĊĊĠĠĠ Ġfun ĠsetState ( draw Style : ĠDraw Style ) ĊĊĠĠĠ Ġval Ġfont Image Map Manager : ĠFont Map Manager ĊĠĠĠ Ġval Ġfont Vector Map Manager : ĠFont Map Manager ĊĠĠĠ Ġval Ġshader Generators : ĠShader Generators ĊĠĠĠ Ġval Ġactive RenderTarget : ĠRender Target ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġwaits Ġfor Ġall Ġdrawing Ġto Ġcomplete ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġfinish () ĊĊĊĠĠĠ Ġfun Ġinternal Shader Resource ( resourceId : ĠString ): ĠString ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġlateinit Ġvar Ġdriver : ĠDriver ĊĠĠĠĠĠĠĠ Ġval Ġinstance : ĠDriver Ġget () Ġ= Ġdriver ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠWait Ġfor Ġthe Ġ[ Driver ] Ġto Ġfinish Ġdrawing Ċ Ġ*/ Ċ fun Ġfinish () Ġ{ ĊĠĠĠ ĠDriver . instance . finish () Ċ }