Grafik
Nu börjar det bli dags att lägga till grafik i vårt spel så det börjar se ut som ett riktigt spel. Vi kommer göra det i tre omgångar, för att det inte ska bli för mycket ändringar på en gång. Till en början kommer vi lägga in inladdningen av texturer direkt i vår main-funktion och byta ut ritnings-funktionerna i huvudloopen. I ett senare kaptitel kommer vi titta på att bryta ut det till separata delar.
Innan vi ändrar någon kod behöver vi ladda ner alla resurser som behövs. Ladda
ner det här paketet med grafik och ljud och packa upp det och
lägg filerna i en katalog som heter assets
i rotkatalogen för ditt spel.
Alla resurser är public domain och har framförallt hämtats från webbplatsen
OpenGameArt.org där det finns alla möjliga
resurser för att skapa spel.
Filstrukturen för ditt spel bör nu se ut såhär:
.
├── Cargo.lock
├── Cargo.toml
├── README.md
├── assets
│ ├── 8bit-spaceshooter.ogg
│ ├── atari_games.ttf
│ ├── button_background.png
│ ├── button_clicked_background.png
│ ├── enemy-big.png
│ ├── enemy-medium.png
│ ├── enemy-small.png
│ ├── explosion.png
│ ├── explosion.wav
│ ├── laser-bolts.png
│ ├── laser.wav
│ ├── ship.png
│ └── window_background.png
└── src
├── main.rs
└── starfield-shader.glsl
Uppdatera webbpubliceringen
Om du ordnade med att publicera ditt spel till Github Pages i första kapitlet behöver du även uppdatera .github/workflows/deploy.yml
så att assets inkluderas i publiceringen:
Dels behöver assets
-katalogen skapas:
mkdir -p ./deploy/assets
Och assets
-filerna skall kopieras på plats:
cp -r assets/ ./deploy/
Den fullständiga deploy-konfigurationen skall se ut så här:
name: Build and Deploy
on:
push:
branches:
- main # If your default branch is named something else, change this
permissions:
contents: write
pages: write
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: wasm32-unknown-unknown
override: true
- name: Build
run: cargo build --release --target wasm32-unknown-unknown
- name: Prepare Deployment Directory
run: |
mkdir -p ./deploy/assets
cp ./target/wasm32-unknown-unknown/release/my-game.wasm ./deploy/
cp index.html ./deploy/
cp -r assets/ ./deploy/
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./deploy
Committa och pusha och verifiera att spelet funkar som förut på:
https://<ditt-github-namn>.github.io/<repository-namn>
.