Skip to content

Commit b4c25f6

Browse files
committed
Fix timer
1 parent b5126cf commit b4c25f6

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ wasm-bindgen-test = "0.2"
4343

4444
[dependencies.web-sys]
4545
version = "0.3.19"
46-
features = ["CanvasRenderingContext2d", "HtmlCanvasElement", "Performance", "HtmlImageElement", "Window"]
46+
features = ["CanvasRenderingContext2d", "Document", "Element", "HtmlCanvasElement", "Performance", "HtmlImageElement", "Window"]
4747

4848
[dev-dependencies]
4949
wasm-bindgen-test = "0.2"

src/player.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ impl Player {
9494
pub fn tick(&mut self, dt: f64) {
9595
self.frame_accumulator += dt;
9696
let frame_time = 1000.0 / self.frame_rate;
97+
info!("{} / {}", self.frame_accumulator, frame_time);
9798
let needs_render = self.frame_accumulator >= frame_time;
9899
while self.frame_accumulator >= frame_time {
99100
self.frame_accumulator -= frame_time;

www/index.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,20 @@ function fileSelected() {
1616
}
1717
}
1818

19+
let timestamp = 0;
1920
function playSwf(swfData) {
2021
let canvas = document.getElementById("fluster-canvas");
2122
if (swfData && canvas) {
22-
player = Player.new(swfData, canvas);
23+
let data = new Uint8Array(swfData);
24+
player = Player.new(data);
25+
timestamp = performance.now();
2326
window.requestAnimationFrame(tickPlayer);
2427
}
2528
}
2629

27-
function tickPlayer(timestamp) {
28-
player.tick(timestamp);
30+
function tickPlayer(newTimestamp) {
31+
let dt = newTimestamp - timestamp;
32+
player.tick(dt);
33+
timestamp = newTimestamp;
2934
window.requestAnimationFrame(tickPlayer);
3035
}

0 commit comments

Comments
 (0)