Added init struct (resource loading helpers)

This commit is contained in:
2020-04-21 19:04:08 +02:00
parent 7165f9ee89
commit a519a9696c
13 changed files with 81 additions and 14 deletions

10
sunpy/canvas/__init__.js Normal file
View File

@@ -0,0 +1,10 @@
// Depends
import "../core/__init__.js";
import "../node/__init__.js";
// Map
import "./entity.js";
import "./helpers.js";
import "./renderer.js";
import "./gl/texture.js";

View File

@@ -8,5 +8,11 @@ export class Sprite extends Entity {
constructor(image) {
if (!(image instanceof Image))
throw TypeError("Image has to be instance of `Image`");
this.image = image;
}
async render(renderNode) {
}
}

View File

@@ -0,0 +1,9 @@
precision mediump float;
uniform sampler2D u_texture;
varying vec2 v_texcoord;
void main() {
gl_FragColor = texture2D(u_texture, v_texcoord);
}

View File

@@ -0,0 +1,11 @@
attribute vec4 position;
attribute vec2 texcoord;
uniform mat4 u_matrix;
varying vec2 v_texcoord;
void main() {
gl_Position = u_matrix * position;
v_texcoord = texcoord;
}

View File

@@ -0,0 +1,23 @@
//const fs = await (await fetch("./shaders/texture.fs")).text();
export async function compile() {
/*
const fs = await (await fetch("./shaders/texture.fs")).text();
const vs = await (await fetch("./shaders/texture.vs")).text();
*/
const fs = import("./shaders/texture.fs");
const vs = import("./shaders/texture.vs");
window.fs = fs;
window.vs = vs;
console.log("done");
}
export function drawImage(gl, tex, texWidth, texHeight, dstX, dstY) {
gl.bindTexture(gl.TEXTURE_2D, tex);
gl.useProgram(program); // TODO
}

0
sunpy/canvas/helpers.js Normal file
View File