Unity 使ってみた

phiary に引っ越しました. 毎日プログラミングやWebに関する情報を発信しています! RSS 登録してたまに覗いたり, tweet やハテブして拡散してもらえると幸いです.


Warning: file_get_contents(http://unity3d.com/support/documentation/ScriptReference/20_class_hierarchy.html): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/sites/heteml/users/p/h/i/phi1618/web/tmlife/main/wp-content/plugins/tmshortcode/tmshortcode.php on line 71
Pocket

今更ながら Unity 使ってみました.

前からとても興味のあった ScaleformUnity に統合されるということで 今のうちに使い慣れておこうということで.

本当にただ使ってみただけって感じですが, ちょっとしたゲーム(?)も作ってみたのでよかったら遊んでやって下さい.

Game

作ってみたゲーム(?)はこちらでプレイできます.

何秒間球を落とさずにいられるかというゲームです.

Web Player 用にビルドするのも設定をちょこっと変えるだけで簡単♪♪

Flow

制作フロー

  1. フィールド用Cube(Field) を設置
  2. 障害物用Cube(Cube) を Field の上に4つ設置
  3. 平行光源(Directional light) を設置
  4. 球(Sphere) を設置
  5. GUI Text(GUI Text Timer)を設置
  6. Field, Cube, Sphere を Rigidbody にする
  7. Field, Cube の Rigidbody だけ Is Kinematic にチェックを入れる
  8. Physic Material を設定. Bounciness を適度に設定
  9. Rigidbody に Physic Material を割り当てる
  10. キー傾き処理(KeyMove.js)を Cube に割り当てる
  11. タイマー更新処理(Timer.js)を GUI Text Timer 割り当てる

Scripting

ちなみにサポートされているスクリプトは C# と JavaScript. そうです! (私が)大好きなJavaScript がサポートされているんです!!

いやぁ~良いですねぇ~

書いたスクリプトはこれだけ

ボックスを傾ける

KeyMove.js

var inclineSpeed = 10.0;
function Update () {
  transform.Rotate(Input.GetAxis("Vertical")*inclineSpeed*Time.deltaTime, 0, -Input.GetAxis("Horizontal")*inclineSpeed*Time.deltaTime);
}

タイマー表示

Timer.js

function Update () {
  guiText.text = "Time : " + parseInt(Time.time);
}

Reference

参考にしたサイトは公式サイトのみ.

参考にした本は『 Unity入門 ~高機能ゲームエンジンによるマルチプラットフォーム開発~

作って学ぶタイプの非常に分かりやすい本でした.

導入から今回のサンプルを作るまでで約1時間程度.

導入も簡単ですし, スクリプトのドキュメントもわかりやすかったのでとくに詰まることなく制作できました.

今後, 仕事でゲームエンジンを使う機会も増えてくるので, 色々と使い込んでまとめていこうと思います.

TRACK BACK URL

POST COMMENT

メールアドレスが公開されることはありません。