読者です 読者をやめる 読者になる 読者になる

Unity5(C#)初心者・入門者向けチュートリアル ひよこのたまご

AndroidやiOS向けアプリを簡単に作れるゲーム開発環境Unity(ユニティ)の使い方を、チュートリアル方式で一緒に学びましょう!

【Unity4】道路をループ生成! Prefab, 条件分岐(if文)【レースゲーム4】

Unity レースゲーム チュートリアル

いつもひよこのたまごをご利用下さいましてありがとうございます!
おかげ様でチュートリアル数も10ゲーム目となりました!
チュートリアル一覧は
こちら からどうぞ!


スポンサーリンク

Unity5.1.1p3 Personal(2015年7月)

f:id:hiyotama:20150505151209p:plain

 

前回の続きです〜

 

今の状態だと、ある程度進むと車が崖から落ちてしまいますので、道路を延々と続くようにしたいと思います〜

 

【目標】道路を無限に伸ばし、車が走り続けられるようにする

 

f:id:hiyotama:20150503174843p:plain

わかりづらくて申し訳ありません〜

道路1から道路2に入ってしばらくしたら、道路1を道路2の前方に移動させ、逆に道路2から道路1に入ってしばらくしたら、同じように道路2を道路1の前方に移動させる、というのを繰り返していこうと思います〜

 

【課題1】地面と道路をPrefab化する

まずはCourseオブジェクトをGreenオブジェクトの子オブジェクトにしましょう〜

 

f:id:hiyotama:20150503182711p:plain

子オブジェクト化

 

次にこのGreenオブジェクトをPrefabして、Prefabのコピーを2つ作ります〜

それぞれ「Green1」、「Green2」と名前をつけて下さい〜

 

f:id:hiyotama:20150503182944p:plain

Project欄へPrefab化し、コピー元削除後、Prefabを2つ生成する

 

Green2のPositionを変更して、Car1オブジェクトの後ろ側に持っていきましょう〜Green2のTransform情報を貼っておきます〜

 

f:id:hiyotama:20150503183203p:plain

position.zを1000から-1000に変更

 

【課題2】一定距離進んだら、地面を移動させる

 

以下のScript(createScript)を、MainCameraに貼り付けて下さい〜

 

 

public変数が2つあるので、それぞれGreen1とGreen2を指定してあげましょう〜

 

f:id:hiyotama:20150503185606p:plain

ドラッグ&ドロップ!

 

各Greenの長さが2000なので、Greenの中心値である1000をMainCamera超えたタイミングで、各GreenのpositionZの値がborderの値よりも小さければ、2000先の位置に移動させることができます〜

 

例えば最初のborderである1000をMainCameraが超えた時、Green1のposition.zは1000、Green2のposition.zは-1000なので、border1000よりも小さい(1000は含まない)Green2のposition.zが-1000から3000へと変更されます〜

 

次のborderである3000をMainCameraが超えた時、Green1のposition.zは1000、Green2のposition.zは3000なので、border3000よりも小さい(3000は含まない)Green1のposition.zが1000から5000へ変更されます〜というのを延々と繰り返すというわけです!

 

離れたところから見てみましょう〜

 

f:id:hiyotama:20150503191730p:plain

ゲームスタート!

 

f:id:hiyotama:20150503191815p:plain

border1000を超えた!

 

f:id:hiyotama:20150503191846p:plain

border3000を超えた!

 

非常に地味な確認となりましたが、きちんと機能しております〜

 

今回はここまでです〜

ありがとうございました〜

 

【Unity開発4】下準備【ドライビングゲーム1】

【Unity開発4】車を走らせたい!【ドライビングゲーム2】

【Unity開発4】車をジャンプさせたい!【ドライビングゲーム3】

【Unity開発4】道路を無限に伸ばし続ける【ドライビングゲーム4】

【Unity開発4】敵キャラをランダムで生成する【ドライビングゲーム5】

【Unity開発4】レベルによるスピード制限機能を追加する!【ドライビングゲーム6】

【Unity開発4】制限時間を設ける【ドライビングゲーム7】

【Unity開発4】タイトル・ゲームオーバーを仕上げる!【ドライビングゲーム8】