M client/src/rendering/renderer.rs => client/src/rendering/renderer.rs +10 -3
@@ 46,10 46,17 @@ impl Renderer for WebRenderer {
context.translate(camera_translate_x, camera_translate_y).map_err(|e: JsValue| e.as_string().unwrap())?;
for planet in &client.planets {
+ context.save();
+ context.set_transform(1f64, 0f64, 0f64, 1f64, 0f64, 0f64).map_err(|e: JsValue| e.as_string().unwrap())?;
+ context.translate(-planet.x, -planet.y).map_err(|e: JsValue| e.as_string().unwrap())?;
let texture_image = document.get_element_by_id(&format!("tex-{}", planet.planet_type.as_texture_id())).unwrap().dyn_into::<HtmlImageElement>().unwrap();
- context.draw_image_with_html_image_element_and_dw_and_dh(&texture_image, 95f64, 65f64, planet.radius*2f64, planet.radius*2f64).map_err(|e: JsValue| e.as_string().unwrap())?;
+ context.draw_image_with_html_image_element_and_dw_and_dh(&texture_image, -planet.radius, -planet.radius, planet.radius * 2f64, planet.radius * 2f64).map_err(|e: JsValue| e.as_string().unwrap())?;
+ context.restore();
}
-
+ // do not remove
+ // im making this smiley an easter egg soon
+ // i just have to go fix the broken build system first
+/*
context.begin_path();
// Draw the outer circle.
@@ 74,7 81,7 @@ impl Renderer for WebRenderer {
.unwrap();
context.stroke();
-
+*/
Ok(())
}
}=
\ No newline at end of file
M web/play.html => web/play.html +12 -2
@@ 20,7 20,7 @@
</div>
</div>
-<canvas style="width: 100%; height: 100%; background-color: forestgreen;" id="canvas"></canvas>
+<canvas style="width: 100%; height: 100%; background-color: purple;" id="canvas"></canvas>
<script type="module">
// If you're getting build errors here | you need to run `just build_client_bundle` first, to compile client code
@@ 111,7 111,17 @@
}
start = time;
- document.getElementById("canvas").getContext("2d").drawImage(document.getElementById("tex-earth"), 0, 0, 150 -2025, 2000, 2000);
+ //let earth_img = new Image();
+ //earth_img.src = get_texture("earth");
+ //document.getElementById("canvas").getContext("2d").drawImage(earth_img, 0, 0, 400, 400);
+
+ let canvas = document.getElementById("canvas");
+ let context = document.getElementById("canvas").getContext("2d");
+
+ //context.setTransform(1, 0, 0, 1, 0, 0);
+ //context.clearRect(0, 0, canvas.width, canvas.height);
+
+ //context.drawImage(document.getElementById("tex-earth"), -1000, -1000, 2000, 2000);
requestAnimationFrame(animateFrame);
}