見出し画像

PlaydateゲームをLuaで作る - 環境構築してビルドできるようにする


ソースコードを書いてビルドしてPlaydate Simulatorで確認する方法。この状態を目指します!

前提

  • できるだけ記事を短くするため説明は最小限です

    • 「パスを通す」「ターミナルの使い方」あたりの説明が荒いですが、一般的なITエンジニアの知識なので検索すればいろいろ出てきます。この辺は自分で調べてください

  • 環境はMac

やり方

1. SDKをダウンロードする

ここからSDKをダウンロードし、zipを解凍する

画像は2024/07/28、Version2.5.0時点のもの

"PlaydateSDK"というフォルダの中にいろいろ入っている
今重要なのはbinディレクトリの中にある"pdc"と"Playdate Simulator"の2つ

2. pdcコマンドを使えるようにする

PlaydateSDK/bin/pdcに対してパスを通し、ターミナルからpdcコマンドを使えるようにする
この「パスを通す」のやり方をカンタンに説明するのは難しい
説明記事は色々あるので「Mac パスを通す」検索してみてください
参考になりそうなのはこれ

Macのアプリ「ターミナル」を起動して、"pdc"と入力し、結果が以下のように、「usage: pdc なんちゃらかんちゃら」となったらOK

$ pdc
usage: pdc [-sdkpath <path>] [-I <path>] [-s] [-u] [-m] [--version] <input> [output]
  input: folder containing scripts and assets (or lua source, with -m flag)
  output: folder for compiled game resources (will be created, defaults to <input>.pdx)
  -sdkpath: use the SDK at the given path instead of the default
  -I/--libpath: add the given path to the list of folders to search when resolving imports
  -s/--strip: strip debug symbols
  -u/--no-compress: don't compress output files
  -m/--main: compile lua script at <input> as if it were main.lua
  -v/--verbose: verbose mode, gives info about what the compiler is doing
  -q/--quiet: quiet mode, suppresses non-error output
  -k/--skip-unknown: skip unrecognized files instead of copying them to the pdx folder
  --check-fonts: perform additional validation on font data (may produce false warnings)
  --version: show pdxversion

3. カンタンなplaydate用ゲームファイルを作ってみる

ビルドを試すだけなので本当に簡単なものを作る
適当な場所に新しいディレクトリを作成し(ここでは"playdateGame"という名前にする)、その中に"Source"というディレクトリを作る
そのSourceディレクトリの中に"main.lua"というテキストファイルを作る
main.luaの内容を以下のようにする

import "CoreLibs/graphics"

local gfx <const> = playdate.graphics

function playdate.update()
    gfx.drawText("Hello, World!", 100, 100)
end

今、「playdateGame」というディレクトリに「Source」というディレクトリがあり、その中に「main.lua」というファイルがある状態

4. ビルドしてみる

ターミナルを起動する
先ほど作った「playdateGame」ディレクトリへ移動する
「playdateGame」ディレクトリがホームディレクトリにある場合は以下のコマンドでOK

$ cd ~/playdateGame

この状態でlsコマンドを実行すると下記のように「Source」フォルダが表示されるはず

$ ls
Source

この状態で、下記のコマンドを実行する

$ pdc Source playdateGame.pdx

成功するとターミナルには何も表示されない
もう一度lsコマンドを実行してディレクトリの中身を見てみると、新たに「playdateGame.pdx」というのが増えているのがわかる

$ ls
Source           playdateGame.pdx

MacのFinderアプリでもこのディレクトリの中身を確認してみると、以下のようになっているはず

playdateGame.pdxがある!

これでビルドは成功している

5. ビルドしたファイルをPlaydate Simulatorで実行してみる

手順1でダウンロードしたSDKのbinディレクトリの中に「Playdate Simulator」というのがある
これは、PC上でPlaydateの動作を確認するためのもの
起動してみるとこのようなものが表示される

Playdate Simulator。各種ボタンは押せる

これで、先ほどビルドしたplaydateGame.pdxが本当にPlaydate用ゲームファイルとして動作するのか確認してみる
やり方は簡単で、この起動したPlaydate Simulatorの上に、playdateGame.pdxのファイルをドラッグ・ドロップするだけ

playdateGame.pdxをPlaydate Simulatorの上にドラッグ・ドロップする

するとこうなる

ビルドしたPlaydateゲームが動いた!

こうなっていれば成功
こうなっていなければ、main.luaの記述内容に何か間違いがあるので見直してみてください
ちなみにキーを入力しても何も動きはしません
キー入力によって何かを動かす方法についてはまた別の記事で説明したいと思います

終わり

慣れていない人とっては、コードを書くことよりもビルドできる環境を作る方が難しいかも
頑張って!!

この記事が気に入ったらサポートをしてみませんか?