#input #web-sys #gamedev #gameloop

web-sys-main-loop

为 web_sys 窗口提供主循环(或游戏循环)

8 个版本

0.1.8 2024 年 1 月 14 日
0.1.7 2024 年 1 月 14 日

#829游戏开发

Download history 12/week @ 2024-03-11 19/week @ 2024-04-01 95/week @ 2024-04-22

61 每月下载量

Apache-2.0

17KB
190

Crates.io Version Crates.io License docs.rs

web-sys-main-loop

正如其名所示,web-sys-main-loop 为基于 web_sys 的 WASM 页面提供主循环(在游戏开发社区中通常称为游戏循环),并提供输入处理。

文档

示例

use web_sys_main_loop::FrameState;
...
let window = web_sys::window().unwrap();
...
web_sys_main_loop::start(&window, move |frame_state: FrameState| {
    ...
    // Gets the position (X, Y) of the cursor in the window
    // context
    let curr_position = frame_state.mouse_state.get_position();
    ...
});

lib.rs:

web-sys-main-loop 为 web_sys 窗口提供主循环(或游戏循环)和输入处理。

示例

use web_sys_main_loop::FrameState;

let window = web_sys::window().unwrap();

web_sys_main_loop::start(&window, move |frame_state: FrameState| {
    ...
    // Gets the position (X, Y) of the cursor in the window
    // context
    let curr_position = frame_state.mouse_state.get_position();
    ...
});

依赖关系

~6.5–8.5MB
~170K SLoC