var scene = {}; var assets = AssetBatch([ { path: 'test.png', type: Asset.TYPE_TEXTURE, format: Texture.FORMAT_RGBA } ]); var cam; var camPos; var testEntity; var testPos; var testRenderable; var texEntry; scene.init = async function() { assets.lock(); await assets.loaded(); Console.print('Scene Init'); texEntry = assets.entry(0); // Camera at (3, 3, 3) looking at origin cam = Entity.create(); camPos = cam.add(Component.POSITION); cam.add(Component.CAMERA); camPos.localPosition = new Vec3(3, 3, 3); camPos.lookAt(new Vec3(0, 0, 0)); // Test entity with textured quad at origin testEntity = Entity.create(); testPos = testEntity.add(Component.POSITION); testRenderable = testEntity.add(Component.RENDERABLE); testRenderable.texture = texEntry.texture; testRenderable.type = Renderable.SPRITEBATCH; testRenderable.sprites = [ [0, 0, 1, 1, 0, 1, 1, 0] ]; // testPos.localPosition = new Vec3(0, 0, 0); } scene.dispose = function() { Console.print('Scene Dispose'); Entity.dispose(cam); Entity.dispose(testEntity); assets.unlock(); }; module.exports = scene;