40 lines
849 B
TypeScript
40 lines
849 B
TypeScript
let cube:Primitive;
|
|
let shader:Shader;
|
|
let camera:Camera;
|
|
let texture:Texture;
|
|
|
|
const init = () => {
|
|
print('Main invoked');
|
|
|
|
// 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);
|
|
|
|
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,0,0);
|
|
primitiveDraw(cube, 0, -1);
|
|
}
|
|
|
|
const dispose = () => {
|
|
cameraDispose(camera);
|
|
shaderDispose(shader);
|
|
} |