@@ 34,12 34,31 @@ export function startRender() {
part_sprite_map: new Map(),
};
- app.stage.scale.set(0.4, 0.4);
-
app.ticker.add(() => {
- let camera_x = -player()?.transform.x!;
- let camera_y = -player()?.transform.y!;
- // RENDER STAGE 1: UPDATE SPRITES
+ global.rendering!.app.stage.x =
+ -player()?.transform.x! + window.innerWidth / 2;
+ global.rendering!.app.stage.y =
+ -player()?.transform.y! + window.innerHeight / 2;
+
+ for (let [id, part] of global.parts_map) {
+ let part_sprite;
+
+ if (global.rendering!.part_sprite_map.has(id)) {
+ part_sprite = global.rendering!.part_sprite_map.get(id)!;
+ } else {
+ part_sprite = PIXI.Sprite.from(part_texture_url(part.part_type));
+ global.rendering!.part_sprite_map.set(id, part_sprite);
+ console.log("adding part sprite");
+ global.rendering!.app.stage.addChild(part_sprite);
+ }
+
+ part_sprite.anchor.set(0.5);
+ part_sprite.height = PART_HEIGHT;
+ part_sprite.width = PART_WIDTH;
+ part_sprite.x = part.transform.x;
+ part_sprite.y = part.transform.y;
+ part_sprite.rotation = part.transform.rot;
+ }
for (let [id, planet] of global.planets_map) {
let planet_sprite;
@@ 50,18 69,19 @@ export function startRender() {
planet_texture_url(planet.planet_type),
);
global.rendering!.planet_sprite_map.set(id, planet_sprite);
- global.rendering!.app.stage.addChild(planet_sprite);
console.log("adding planet sprite");
+ global.rendering!.app.stage.addChild(planet_sprite);
}
- console.log(planet);
+ planet_sprite.anchor.set(0.5);
planet_sprite.height = planet.radius * 2;
planet_sprite.width = planet.radius * 2;
- planet_sprite.x = planet.transform.x - planet.radius - camera_x;
- planet_sprite.y = planet.transform.y - planet.radius - camera_y;
+ planet_sprite.x = planet.transform.x;
+ planet_sprite.y = planet.transform.y;
planet_sprite.rotation = planet.transform.rot;
}
- // RENDER STAGE 2: UPDATE PARTS
+ /*
+ // RENDER STAGE 1: UPDATE PARTS
for (let [id, part] of global.parts_map) {
let part_sprite;
@@ 76,9 96,11 @@ export function startRender() {
part_sprite.height = PART_HEIGHT;
part_sprite.width = PART_WIDTH;
- part_sprite.x = part.transform.x - PART_WIDTH - camera_x;
- part_sprite.y = part.transform.y - PART_HEIGHT - camera_y;
+ part_sprite.x = part.transform.x - PART_WIDTH;
+ part_sprite.y = part.transform.y - PART_HEIGHT;
part_sprite.rotation = part.transform.rot;
}
+
+ */
});
}