18 个版本 (破坏性)

0.13.0-pre22018 年 12 月 10 日
0.13.0-pre02018 年 11 月 26 日
0.10.0 2018 年 6 月 22 日
0.6.0 2018 年 2 月 25 日
0.3.1 2017 年 6 月 8 日

#398GUI

Download history 8/week @ 2024-03-08 4/week @ 2024-03-15 14/week @ 2024-03-29 5/week @ 2024-04-05 7/week @ 2024-04-19 2/week @ 2024-04-26 7/week @ 2024-05-17 2/week @ 2024-05-24

每月 91 次下载

MIT / BSL-1.0

750KB
18K SLoC

Aldaron 设备接口

创建应用程序和视频游戏的轻量级平台无关设备接口抽象层。

Aldaron 设备接口旨在在某些方面成为新的 SDL,但并不专门针对视频游戏。此库还旨在替代像 GTK 这样的跨平台 GUI 工具包。最终,尽管如此,它比两者都要酷,而且更小!由于那些库是三个字母的缩写词,因此此库也必须是: ADI

入门

与像 SDL 这样的多个独立维护的项目不同,ADI 中所有内容都是一起的。默认情况下,所有内容都会构建(所有设备接口)。这通常不是您想要的,因此如果您只想使用 Cargo.toml 中的 screen API,则应这样指定 ADI

[dependencies.adi]
version = "0.13"
default-features = false
features = ["screen"]
path = "../adi"

感谢 Cargo,这比找到所有 SDL 库要简单得多!方便的是,功能名称与本文档中的模块名称相同,这使得它更容易使用!

模块/功能列表

模块/功能 更多信息
mic Linux 上的麦克风支持(Alsa)。TODO:Android、Windows、MacOS/iOS、Nintendo Switch、Web Assembly
speaker Linux 上的扬声器支持(Alsa)。TODO:Android、Windows、MacOS/iOS、Nintendo Switch、Web Assembly
screen Linux 和 Windows 上的屏幕支持。可以根据可用性在 OpenGL、OpenGLES 或 Vulkan 之间进行切换。TODO:Vulkan + Android、Vulkan + DirectFB 在 Raspberry Pi 上、Metal 或 MoltenVk 在 MacOS & iOS 上、Nintendo Switch 上的 Vulkan、Web Assembly 上的 WebGL
hid 人机界面设备,可能还具有触觉反馈(振动)。TODO:从屏幕中分离出来,在 Windows 上实现缺失的摇杆和触摸板支持,缺失的触摸
net 客户端/服务器 Wi-Fi 和以太网功能(比 std::net 更简单、更简单)。
drive 应用程序/驱动器存储(比 std::fs 更安全)。TODO:为每个平台找到存储位置,API 用于读取/写入 CD & DVD
usb 低级 USB 接口。在计算机和 Arduino、平板电脑或手机之间通过 USB 发送和接收数据包。
bluetooth 通过蓝牙发送和接收数据包。
cam 从网络摄像头或其他摄像头录制视频。
gps 通过GPS、WiFi、蜂窝基站或它们的组合实现地理位置定位。
sensor 陀螺仪、加速度计、距离传感器等。
gpio GPIO(通用输入/输出)用于电子产品。树莓派和Arduino是使用此功能的良好选择。

待办事项

一旦上述所有模块/功能都存在于crate中,并且不再有“待办事项”旁的标记,将发布1.0版本。


Plop Grizzly

依赖关系

~0–1MB
~13K SLoC