つむつむやったことない

他のチュートリアルも見ておこう。まずはInterface & Essentials。これ超基本だけど知らない操作もあるだろうから全部見た!見終わった!これで!私!うにちーますたー!!

チュートリアルでちゃんと学べたのか試すために、ゼロからゲームを作れるか試してみましょ。

数時間後

ごめんむり。すべてのオブジェクトをコードから生み出そうとしたけど、そんな方法わからんがな。諦めて別の方法を取ろう。すべてのオブジェクトはシーンに配置しましょう。動的生成なんて後回しだ。

まるとらずを配置して、重力の作用で、画面外へ落下。床を作るためにイカちゃん海の家を配置。当たり判定をどうやって作ろうかと思っていたら、線分配置も対応してんのな。輪郭をなぞってコリジョン完成。ゲームだから、まるとらずがどんどん増えていって欲しい。つーわけでプレハブ作って動的生成だー!

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-10-18-01-15-54

イカちゃんがまるとらずを投げる感じ?下にどんどん積み重なる。

クリックしたら消えて欲しい。マウス位置とクリック検知を仕込み、まるとらずとコリジョン取ってDestroy(this)を記述したらあら不思議、バグ!Destroy(gameObject)にしないとダメなんだってさ。thisだとC#コードだけ外れる。罠すぎるわ。

隣り合うとらも消えてほしいけど、隣り合ってるって判定どうすんの?判定時にコリジョンを大きくしたらいいのかしら。衝突時に相手のIDを保存させる方が楽かな?って、コリジョン判定してくれない。小一時間悩み抜いた末

void OnCollisionStay(Collision collision)

ではなくて

void OnCollisionStay2D(Collision2D collision)

このように2D指定しないとダメだってさ!気づかんわ!!

修正したけど永久ループでUnityフリーズ。あー、相互に呼びあって終わらんわコレ。

処理を修正して解決したけど別の問題が発覚。見た目では接触して隣り合ってるようにみえるけど、隙間があって接触してないから消えない。ゲームとして作り込むと、見た目との相違でプレイにストレス溜まる?コリジョン大きく取って判定したほうが良いのかな。コリジョンだけスケール変更できたら良いのに…。

%e3%82%b9%e3%82%af%e3%83%aa%e3%83%bc%e3%83%b3%e3%82%b7%e3%83%a7%e3%83%83%e3%83%88-2016-10-18-01-15-55

exe、apk、ブラウザ上の3つで動作確認OK。このサーバにUPしての動作もOKであった。

C#のコード量は50行程度なんだよね。それでも苦戦中

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください