23 releases
0.2.3 | Aug 24, 2024 |
---|---|
0.2.2 | Jul 13, 2024 |
0.2.1 | May 30, 2024 |
0.1.16 | Feb 11, 2024 |
0.0.0 | Jun 9, 2021 |
#206 in Game dev
84 downloads per month
5.5MB
120K
SLoC
PlayDate API
Mostly high-level rusty API for the Playdate handheld gaming system.
Usage with cargo-playdate is strongly recommended.
What's inside
Covered parts of API:
- controls
- display
- file system
- graphics (with color)
- lua
- scoreboards
- sound
- sprite
- system (with menu)
- sys - base, low-level cffi bindings
Plus some extensions to make it all more rust-ish.
Not yet covered parts:
- json
How to start
Look at the examples.
Examples
Here is available examples. You car run it with following command:
# Simulator:
cargo playdate run -p=playdate --example=hello-world --features=entry-point
# Device:
cargo playdate run -p=playdate --example=video --features=entry-point --device
More information how to use cargo-playdate in help: cargo playdate --help
.
Prerequisites
Follow the instructions for:
- SDK
- cargo-playdate
- playdate-sys (prerequisites only)
Hello World
There is multiple ways to learn and start.
Following two is just a quick introduction. In details it all will be explained soon in the wiki.
Short Way
- Install cargo-playdate.
cd where/your/project/will/be
cargo playdate init --lib --full-metadata --deps="playdate"
(more about it)cargo playdate run
Done. Now take a look at long way below for details what's happen.
Alternative Way
Just run cargo new <your options>
and add do following:
- Add [playdate crate][playdate-crate] as dependency to your project
#![no_std]
for library, or#![no_std] #![no_main]
for executable binary- Look at existing example for api-parts like that
- Add minimally required metadata to build package:
package.metadata.playdate.bundle-id = "com.yourcompany.game"
- Read about playdate metadata format if needed
- Install cargo-playdate to build your project
- Run
cargo playdate run
- Help this project somehow.
Made with ❤️🔥 by me.
This software is not sponsored or supported by Panic.