あむちょです。
Unityでブロック崩し的なものをつくる。
せっかくの3Dなので、カメラを二つ用意してみました。
正面と真上からの二画面です。
手抜きなので、スコアもクリアもないです。左右キーで動きます。
ブロック崩し
二画面の方法は。
まずHierarchyタグのcreateからcameraを選択。
そのままだとメインカメラと重なってしまうので、サイズとポジションを調整。
InspectorタグのNormalized View Port Rectから変更できます。
次にブロックとの接触判定。まずProjectタグのcreateからスクリプトを用意。
ファイルを開いて以下を追加。
<br /> var projectile : GameObject;</p> <p>function OnCollisionEnter(collision:Collision){</p> <p> if(collision.gameObject.name == "ball"){<br /> Destroy(gameObject);</p> <p> var clone : GameObject = Instantiate(projectile, transform.position, transform.rotation) as GameObject;</p> <p> yield WaitForSeconds(0.5);<br /> Destroy(clone);<br /> }</p> <p>}<br />
オブジェクトと接触するとOnCollisionEnter関数が呼ばれます。そこでボールとの接触だった場合、Destroy(gameObject)によって自身を消しています。その後の処理は爆発演出のためです。
このスクリプトをブロックにドラッグすればボールと接触した時に消せます。
次に爆発演出を読み込む。メニューのAssetからImport Package→Particlesで標準で用意されている効果を読み込む。
後はブロックのscriptのProjectileに好きな効果を選んで完了です。
今のとこ単純な形の物体だけなので、正直つまらないです。Blenderのモデルデータに対応しているので、そのうち、もうちょっとましなやつでも作ります。
家をぶっ壊すやつとか
[ad]