/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 - 2 0 2 1 ĠAnt on ĠTr ush kov Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġapp . the le ma . test . anim Ċ Ċ import Ġapp . the le ma . anim . Frame 2 D Anim Ċ import Ġapp . the le ma . anim . Frame 2 D Anim Conf Ċ import Ġapp . the le ma . app . APP Ċ import Ġapp . the le ma . gl . GL Ċ import Ġapp . the le ma . gl . GL _ COLOR _ BUFFER _ BIT Ċ import Ġapp . the le ma . gl . GL _ DEPTH _ BUFFER _ BIT Ċ import Ġapp . the le ma . img . Texture 2 D Ċ import Ġapp . the le ma . math . Mat 3 Ċ import Ġapp . the le ma . gl . Screen Quad Ċ import Ġapp . the le ma . shader . post . Post Shader Ċ import Ġapp . the le ma . test . Test Ċ Ċ class ĠFrame 2 D Matrix Anim Test : ĠTest Ġ{ ĊĠĠĠ Ġoverride Ġval Ġname : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ" Frame Ġ 2 D Ġanimation " ĊĊĠĠĠ Ġoverride Ġfun Ġtest Main () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġshader Ġ= ĠPost Shader ( frag Code Ġ= Ġ""" Ċ varying Ġvec 2 Ġuv ; Ċ Ċ uniform Ġsampler 2 D Ġtex ; Ċ uniform Ġmat 3 Ġanim Matrix ; Ċ Ċ void Ġmain () Ġ{ ĊĠĠĠ Ġvec 3 Ġuv Animated Ġ= Ġanim Matrix Ġ* Ġvec 3 ( uv . x , Ġ 1 . 0 Ġ- Ġuv . y , Ġ 1 . 0 ); Ġ// ĠY Ġis Ġf lipped ĊĠĠĠ Ġgl _ Frag Color Ġ= Ġtexture 2 D ( tex , Ġuv Animated . xy ); Ċ } Ċ """) ĊĠĠĠĠĠĠĠ Ġshader [" tex "] Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġval Ġanim Conf Ġ= ĠFrame 2 D Anim Conf ( 4 , Ġ 4 ) ĊĠĠĠĠĠĠĠ Ġanim Conf . loop Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġanim Conf . speed Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠ Ġval Ġanim Ġ= ĠFrame 2 D Anim ( anim Conf ) ĊĊĠĠĠĠĠĠĠ Ġval Ġanim Matrix Ġ= ĠMat 3 () ĊĊĠĠĠĠĠĠĠ Ġval Ġtex Ġ= ĠTexture 2 D (" Hit - Yellow . png ") ĊĊĠĠĠĠĠĠĠ ĠAPP . on Render Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanim . update ( APP . deltaTime ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġanim . set To ( anim Matrix ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtex . bind ( 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshader . bind () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshader [" anim Matrix "] Ġ= Ġanim Matrix ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠScreen Quad . render ( shader ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }