38 lines
No EOL
831 B
JavaScript
38 lines
No EOL
831 B
JavaScript
import * as GL from '/gl/gl.js'
|
|
import { gen_cube } from './cube.js'
|
|
|
|
async function main() {
|
|
|
|
var Renderer = new GL.Renderer()
|
|
var Scene = new GL.Scene()
|
|
var Camera = new GL.Camera()
|
|
|
|
var Shader = new GL.Shader(
|
|
await GL.readFileAsync("shader/simple.vert"),
|
|
await GL.readFileAsync("shader/simple.frag")
|
|
)
|
|
|
|
var Material = new GL.Material(Shader)
|
|
|
|
var cube_data = gen_cube()
|
|
var Mesh = new GL.Mesh(cube_data[2])
|
|
.store(cube_data[0], 3)
|
|
.store(cube_data[1], 3)
|
|
.finish()
|
|
|
|
var Cube = new GL.Entity(Mesh)
|
|
Cube.position.z = -5;
|
|
|
|
Scene.add(Material, Cube)
|
|
|
|
const a = new GL.Vec3(1,1,1)
|
|
|
|
Renderer.FOV = 70
|
|
|
|
GL.Loop(() => {
|
|
Renderer.draw(Scene, Camera)
|
|
Cube.rotation.add(a)
|
|
});
|
|
}
|
|
|
|
main() |