unityでプレハブの生成及びその関数呼び出し

AndEngine入れてやってみようとしたら意味不明なエラーでできぬ
諸々再インストール時間かかるし別のことやってるしかねえよ~




備忘録&同じとこで躓いてる人の助けになればこれ幸い
unityのプレハブ生成とそいつの関数呼び出し


プレハブ生成自体は調べればすぐ出てくるし
その関数の呼び出し方もなんとなーしには出てくるけど正直あいまいな感じになってたので
手軽にまとめ


例えば
・4つのオブジェクトを生成したい
・生成するオブジェクトは不定(プレイヤーが選択する)であるため、プレハブの固定は出来ない
・生成したオブジェクトに生成された番号を与えたい
という状況があるとする。
コントローラー4つ使うなら各オブジェクトに自身の主を定めておきたいし
生成時に何かしら働きかけて数値を入れたい。

的な状況だとして、色々コードをぶち込んでみる。


各4つのプレハブは
obj_A obj_B...みたいにもう作ってあるとして

var pre_A:GameObject;
var pre_B:GameObject;
var pre_C:GameObject;
var pre_D:GameObject;
と記述しておく。

ほいでもう一つ
var obj:GameObject;
と置いとく。


awakeとかstart関数に入ったらプレハブを生成。

Instantiate(pre_A, new Vector3(0, 0, 0), Quaternion.identity);

でとりあえず生成は出来る。
位置やら向きやらは数値をいじる。



これだと生成しておしまいなので、

obj = Instantiate(pre_A, new Vector3(0, 0, 0), Quaternion.identity);

にする。


これでobjに生成したプレハブのデータが渡されたので、
中身を弄ろうと思えば弄ることができる。


ただ、プログラム側はobjだけだとこいつにどういうスクリプトが入ってて
どういう変数、関数があるのか分からないので、それも渡してあげる。

obj.GetComponent(スクリプト名).func(0);

これで、objつまり生成したプレハブに備わってる関数を好きに呼び出せる。
まぁこれで数値弄るなりなんか実行するなり。おわり


あ、あとこのスクリプトを実装したオブジェクトにちゃんと作ったプレハブを渡すこと。


panama.png

unityで複数コントローラー

広告が出るのが癪なのとなにも使ってないのはもったいないので
製作してるものとかUnity,AndroidSDK等備忘録ややり方等適当に書きたい
ほんで広告消したい




unityを使ってのゲーム製作で4つのコントローラーを使わんといかんのに
色々検索してもやり方が乗ってない。
コントローラーのスティック設定の仕方しか出てこない。それはわかってんのよ!


とりあえずEdit>Project settings>Inputでキーの入力を設定できるので開く。
Horizontal、Verticalがそれぞれデフォルトで二つあるが、
下の方の二つが親切にも全てのジョイスティック(4つつないでも全部)に対応してるので抹殺。


joy1.png

新しい項目を作って(上にあるsizeを増やすと勝手に新しい枠が出てくる)
適当に名前付け。
で、TypeをJoystickにしてJoy Numを使用するコントローラー番号にする。
1P専用にしたいのでここは1。
これで1Pコン限定スティック(左右)の完成。
縦はY Axisにして、Invertにチェック(入れないと上下が逆になる)。


joyb.png

ボタンはこう。
押した強さとか関係ないので、数値は上記みたいに。
Positive Buttonには「joystick (コントローラー番号) button (ボタン番号)」と入力。


何がひどいかってググると出てくるunityマニュアル(公式、英語日本語共に)のinputの項目に
例として「joystick 0 button 0」とか書いてあるけど「joystick 0」はない。
joystick番号は1からなので、0と入れるとエラーなのか何も入力してないものとして
弾かれて入力した文字が消える。


とりあえず、これを使用するコントローラー分用意すれば完成。
Input.GetButton();は文字列で受けて付けているので
var hor = "Horizontal"+PlayerNum;
Input.GetButton(hor);とでもやれば後は勝手にInputから探してくれる。


多分こんな感じ。




あと雛ちゃん。
kani.png
プロフィール

いすぃ

Author:いすぃ
ゲームを作ってたりゲームしてたり何もしてなかったりしてます

お仕事あれば請け負います。
ゲーム作ってみたい!とか初歩からプログラムやってみたい!って人もご一報ください。

ゲーム面白かったよ!
今後も応援するよ!などなどの意味で下記から心ばかりの支援をしていただけると本当に助かります。
Enty


twitter
ニコニココミュ
pixiv

最新記事
カテゴリ
最新コメント
最新トラックバック
月別アーカイブ
kaunta-
検索フォーム
リンク
スポンサードリンク