let cube:Primitive; let shader:Shader; let camera:Camera; let texture:Texture; let n:number; const init = () => { print('Main invoked'); n = 0; // Create Quad cube = primitiveCreate(); quadInit(cube, 0, -1, -1, 0, 0, 1, 1, 1, 1); // Create Camera camera = cameraCreate(); // Load Shader shader = shaderCreate(); assetShaderLoad(shader, "shaders/textured.vert", "shaders/textured.frag"); // Texture load texture = textureCreate(); assetTextureLoad(texture, "test_texture.png"); } const update = () => { shaderUse(shader); shaderUseTexture(shader, texture); n += epochGetDelta(); cameraLookAt(camera, 3,3,3, 0,0,0); cameraPerspective(camera, 45, 16/9, 0.01, 100); shaderUseCamera(shader, camera); shaderUsePosition(shader, 0,0,0, 0,n,0); primitiveDraw(cube, 0, -1); } const dispose = () => { cameraDispose(camera); shaderDispose(shader); }