アフィリエイト広告を利用しています

現在ははてなブログで投稿しています!

広告

posted by fanblog

2017年08月06日

【unity5】スクリプトからオブジェクトを動かす

オブジェクトを移動させるのは、
そんなに難しい処理を必要としません。


が!プレイヤーの移動とかになると
あまり使われなかったりします。


プレイヤーの移動には、
CharacterController」や
(↑キャラクターコントローラー)
Rigidbodyに速度を加える
が良く使われると思います。

特にキャラクターコントローラーですかね?
良く使われるのは。


まぁ、僕はRigidbodyの方を使うんですが(笑)


っと、話が逸れましたね。
戻しましょう。


それで、この「位置を動かして移動」と
いうのは……よく考えると、あまり
使い道が無いような……?


ですがまぁ、知っておいて
損は無いと思います!


スポンサードリンク




this.transform.position

まずはゲームオブジェクトの位置の取得から
やっていきましょうか。


これが分からないと何も出来ません。
足したり、引いたりとかね。

だって

「何に足すのか、何から引けば良いのか」

が分からないですからね。


ゲームオブジェクトの位置の取得は
二種類の方法があります。

……といっても、
たどる道が違うだけなんですがね!


1.
//ゲームオブジェクトとして変数を宣言
GameObject obj;

void Start () {
 //obj.transform.positionでobjの位置が取得出来る
 Debug.Log(obj.transform.position);


2.
//Transformとして変数を宣言
Transform objTrans;

void Start () {
 //objTrans.positionでobjの位置が取得出来る
 //もう既にTransformだから
 Debug.Log(objTrans.position);


この2つの方法で、位置が取得出来ます。


僕がよく使うのは、
一番目の方ですかね。


なんか楽ですし。


実際に動かしてみる

無駄な部分ははぶきますね。

//ゲームオブジェクトとして変数を宣言
GameObject obj;

void Update () {
 //objの位置を変える
 obj.transform.position.x += 1;


これだと、
objのx軸に1ずつ足していく
という処理になります。


言葉で表すと、
「高速で右に移動していく」
ですかね。


なぜ高速かというと、
Update関数に書いてあるので…。


取り敢えず、こんな感じで動かせます。


また気が向けばもう少し
難しい処理で動かしてみましょうかね…?

では、また!



スポンサードリンク







投稿コメント
* 気軽にコメントくださいー *

※ ブログに表示されるのは、主の承認が必要なので時間がかかります!
  コメントに気づかない場合もありますので、返信が遅れる場合も...

お名前:

メールアドレス:


ホームページアドレス:

コメント: 必須項目

この記事へのトラックバックURL
https://fanblogs.jp/tb/6564109
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
検索
プロフィール
ピノまっちゃさんの画像
ピノまっちゃ
どうも、ピノまっちゃ(PinoMatcha)です!
ゲーム制作をちょこまか頑張ってる大学生で、プログラミングも独学です。
ですので実力は全然ですが、最善を尽くして頑張っております!

名前の由来はピノの抹茶味が好きだからじゃなくて、ピノと抹茶が好きだからです!


更新 : 不定期!
プロフィール
新着記事
最新のコメント
更新事項
2018/8/2 定期更新への変更の報告に追記しました。

2018/5/10 「続きを読む」機能の使い方がやっと分かりました。

2017/9/14 プレイヤーを動かす:関数の解説の一部を書き直しました。

2017/8/1 【unity5】カメラ移動・回転させる方法に多数の画像を追加しました。
カテゴリーアーカイブ
YouTubeチャンネル
Fantiaリンク
よければ応援お願いします!

Pixivアカウント
現在、調整中です…
×

この広告は30日以上新しい記事の更新がないブログに表示されております。