当サイトではPRを含む商品リンクを使用しております。

macのUnityでSQLite-netを使う方法、テーブル作成、挿入、表示、削除まで

Unity

macのUnityのゲーム制作でDBを扱うためにSQLite-netを導入したい時のメモ

理論よりもまずは動かしたい

mac向けのためWindowsでは手順が異なる場合があります。

結論 macのUnityでSQLite-netを使う方法、テーブル作成、挿入、表示、削除まで

理論はわからずとも、動くようにします!

SQLite.csを入手して、プロジェクトのAsset内に置く

このgitからSQLite.csを入手します。

GitHub - praeclarum/sqlite-net: Simple, powerful, cross-platform SQLite client and ORM for .NET
Simple, powerful, cross-platform SQLite client and ORM for .NET - praeclarum/sqlite-net

UnityプロジェクトのAssets内にSQL用のフォルダを好きな名前つくります。SQLiteNetを作成しました。

そのフォルダに先ほどダウンロードした、SQLite.csを置きます。

macのUnityでSQLite-netを使いテーブル作成、挿入、表示、削除

テーブル作成、挿入、コンソール表示、テーブル削除(削除処理はコメントアウト中)のソースコードを用意しました。ので、これをダウンロードし、先ほど作成したSQL用のフォルダに配置します。

GitHub - KidaiRinboku/SQLite
Contribute to KidaiRinboku/SQLite development by creating an account on GitHub.

てきとうなオブジェクトをおいてアタッチします。

今回はスクエアのオブジェクトを作りました。

選択し、インスペクタービューでテスト用スクリプトをドラッグドロップで紐づけました。

こうすれば、ゲームを実行した瞬間に四角が読み込まれ、アタッチされたスクリプトも動きます。

エラーが出る、動かない時は

ターミナルを起動してUnityプロジェクトのホームディレクトリにcdコマンドで移動し

以下ページに書いてあるコマンドを動かします。

sqlite-net-pcl 1.9.172
SQLite-net is an open source and light weight library providing easy SQLite database storage for .NET, Mono, and Xamarin...

実行したら、テーブルが作成され、挿入され、挿入されたレコードを取得してログに表示しています。

2回実行してるので3x2でアイテムが6個入っています。

わからなくても動けば正義

GUIでmacのUnityでSQLite-netを使用する方法

↑までの方法は、C#を作成し、オブジェクトにアタッチしてStart()の中に処理を記載し、ゲームを実行することで一連のDB処理が流れるものでした。

そのままだとゲーム作成をしながらDB編集をするのが複雑になってしまうので、GUIで操作します。

Unityとは別のアプリケーションで、ゲームで呼び出す用のDBだけを編集します。

DBの実態はどこにあるのか

先ほどの私のgitにあるスクリプトを実行した場合、ゲームのホームディレクトリに「game.db」が作成されています。

これがDBファイルで、この中にテーブルのデータが入っています。

Unityとは別のツールでこの.dbファイルをいじってテーブルを更新すれば、Unityのゲームからも同じテーブルを参照して、

追加アドオンを入れたり、メニューを実装しなくても視覚的にテーブルを編集できます。

DB Browser for SQLiteで.dbを視覚的に扱う

DB Browserを使用します。

DB Browser for SQLite

ダウンロードしてインストールします。

DB Browser を起動し、先ほどのゲームで使用しているgame.dbをドラックドロップします。

これでUnityのゲームで使用するDBファイルをUnity外からGUIで更新する準備が整いました。

今後、UnityでDBを扱いたい時にNew Databaseを押して、ゲーム用フォルダ内に空っぽのDBをつくったもできるようになしました。

コメント

タイトルとURLをコピーしました