
- 作者: BATA,まつだす
- 出版社/メーカー: 翔泳社
- 発売日: 2016/01/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
序文
『Unity5ゲーム開発レシピ』20日目。
この週末で1LDKの棲み家を丸2日かけてのんびり掃除しました。
パソコン内とか窓ガラスとか掃除し忘れていることに徐々に気づき始めています。
下半期の目標はスマホアプリを2つリリース、そして来年初リリース予定のWebアプリ2つの準備を完了させることです。
言うだけならタダですからね、とりあえず言っておきましょう。
進捗
- Part02 応用編
- Chapter02 フィールドとカメラを工夫して利用する
(学習時間:2.5時間)
コード実装部分
\Chapter1\PART02_CHAPTER02\011\before\dungeon\assets\Scripts\ImageBasedMap.cs
using UnityEngine; using System.Collections; public class ImageBasedMap : MonoBehaviour { // マップ2Dテクスチャ public Texture2D mapImage; // Wallプレハブ public GameObject chipPrefab; // Use this for initialization void Start () { // 画像幅と画像高を取得して1ピクセルずつ走査していく for (int w = mapImage.width - 1; w >= 0 ; w--) { for (int h = mapImage.height - 1; h >= 0; h--) { // ピクセルが白色なら壁 if (mapImage.GetPixel (w, h) == Color.white) { // 壁オブジェクトを生成 var obj = Instantiate (chipPrefab, new Vector3 (w, 0, h), Quaternion.identity) as GameObject; obj.transform.parent = transform; } } } } // Update is called once per frame void Update () { } }
実行結果
感想
やったこと。
- Navigationを利用したキャラクターの移動範囲の限定、特定の地点を移動させる仕組みの実装
- 実際のSceneの地形を簡易表示にしたミニマップの作成と表示
- 画像からSceneのオブジェクトを生成する仕組みの実装
- Scene全体を覆う3D空間のサイズを取得する仕組みの実装
スクリーンショットは2D画像(なぜ.psdなんだ)から3D迷路みたいなものを生成してみた図。
白と黒が元画像と3Dオブジェクトで反転しているのですごく分かりづらい。
アルゴリズム自体は割とアナログだ。
そのまま実用的かどうかはともかく、がんばれば等高線図から3D地形を生成するとか、QRコードバトラー的なものを作ってみるとか、いろいろ応用できそうな気はする。
カロリーメイトください。
BGM
調理場 / KREVA
www.youtube.com