#macroquad #gamedev #canvas #canvas2-d

macroquad-canvas-2d

为macroquad添加画布功能

10个版本

0.3.1 2024年2月13日
0.3.0 2024年2月13日
0.2.3 2022年9月25日
0.2.2 2022年3月3日
0.1.1 2021年4月23日

#321游戏开发

Download history 55/week @ 2024-04-02 55/week @ 2024-07-02

每月 55 次下载

Apache-2.0

13KB
179 代码行

Macroquad Canvas 2D

Macroquad Canvas 2D是一个简单的分辨率处理库,允许你专注于以固定分辨率制作游戏。

它受到Push的极大启发

如何使用它

导入库。

use macroquad_canvas_2d::*;

创建一个新的Canvas2D。

let canvas = Canvas2D::new(WIDTH as f32, HEIGHT as f32);

绘制!

loop {
  // Push canvas
  canvas.set_camera();
  {
    // Draw something inside the canvas
    // Clear background
    clear_background(WHITE);
    // Top left
    draw_rectangle(0.0, 0.0, 60.0, 60.0, RED);
    // Top right
    draw_rectangle(WIDTH as f32 - 60.0, 0.0, 60.0, 60.0, GRAY);
    // Bottom left
    draw_rectangle(0.0, HEIGHT as f32 - 60.0, 60.0, 60.0, GREEN);
    // Bottom right
    draw_rectangle(WIDTH as f32 - 60.0, HEIGHT as f32 - 60.0, 60.0, 60.0, BLUE);
  }
  // Pop canvas
  set_default_camera();

  // Draw canvas on screen
  canvas.draw_to_screen();

  next_frame().await
}

更多信息请查看示例!

待办事项

  • ✅ 将画布坐标转换为屏幕坐标的功能。
  • ✅ 鼠标位置和转换。
  • ✅ 摄像机移动和旋转。
    • ◻ 添加摄像机约束。
    • ◻ 添加摄像机效果,如震动。
  • ◻ 简单的后处理效果。

依赖项

~11MB
~237K SLoC