Rustでunityプラグイン
これは
RustでUnityプラグイン作れるらしいのを試した記事です。
まずはじめに
この間HelloWorldしたRust。 Unity用のプラグイン書いてみたいなーと思って始めたので調べてみた。
結論
素晴らしい記事と
素晴らしいものがあったのでこれを使う。とてもありがたい。
ここからは
すばらしい結論が出たところで手を動かしていった結果をつらつらと書いていきます。
Rustのバージョン確認
今使っているのはWindowsなのでPowerShellで以下のコマンドを実行
rustc --version
Rustの開発環境
今はPowerShell+VSCodeで。
ショートカット使うのでそんなに苦じゃないけどスマートさに欠けるのでその辺はおいおいクリアにしていく。
プラグインを作っていくステップ
1.Rustのプロジェクトを作る
2.Cargo.tomlファイルを編集する
3.lib.rs作ってやりたいことを書く
4.ビルドする
5.Rustプロジェクトフォルダに「target」ができておりその下にdllが作成されている。
6.UnityプロジェクトのPluginsに完成品を入れてあげる
7.完成
1.Rustのプロジェクトを作る
以下のコマンドで。プロジェクト名は好きなものを
cargo new 好きなプロジェクト名
2.Cargo.tomlファイルを編集する
今回は参考にさせてもらった内容をそのまま利用した。
基本的には[lib]以降を追記してあげる形になる。
[package] name = "samplerust" version = "0.1.0" authors = ["XXXXXXX"] edition = "2018" [lib] name = "unity_rust" # the name of the library that will be generated crate-type = ["dylib"]
後になって気づいたがRustのドキュメントに詳しく記載あったのでこちらも確認を行った。
きれいに動くと気持ちいいけどわからないとこあるの気持ち悪いよね…
nameにはDLLにつけたい名前
crate-typeで使えるオプションはdylib、rlib、staticlib、cdylib、と proc-macro
詳しくは↓
The Manifest Format - The Cargo Book
4.ビルドする
cargo build
あるいは
cargo build --release
5.Rustプロジェクトフォルダに「target」ができておりその下にdllが作成されている。
できてるやったー
6.UnityプロジェクトのPluginsに完成品を入れてあげる
取り込みがうまくいかない…ので今日はここまで。
できなかったところはちょっと調べます。