最終更新: bokkuri_orz 2012年03月24日(土) 14:53:06履歴
ゲームを作るための各種ライブラリ、レベルデザインエディタなど、ゲームを作るための統合ツール。
以下のプラットフォームに対応している。
全部は確認してないし、抜けがあるかも…
ライセンス | その他 | |
PC | 不要 | |
iOS | 必要 | |
Android | 必要 | |
PS3 | 必要 | |
Xbox360 | 必要? | |
PSVita | 必要 | |
Wii | 必要 | |
Flash | ? | 3.5で対応されたばかり |
シーン | 一つのステージデータ。ここにGameObjectを配置してゲームを構成する。 |
ゲームオブジェクト(GameObject) | Transformという位置情報のコンポーネントを持ったオブジェクト。 ここにコンポーネントを付けてキャラやアイテムを作る。 |
コンポーネント(Component) | コリジョン、アニメーション、メッシュ、音、カメラ等、一つの機能をまとめたもの。 ユーザーオリジナルのコンポーネントを作れる。 |
プレハブ(Prefab) | GameObjectを複数まとめて(階層構造)一つにしたもの。グループ化みたいなもの。 |
プロジェクト(Project) | プレハブ、モデルデータ、スクリプトなどをまとめて管理している場所。 |
ヒエラルキー(Hierarchy) | シーン配置情報のようなもの。日本語では階層構造。 シーン内のすべてのGameObjectを改装構造で管理している。 |
シーンにマップパーツやキャラクター等のゲームオブジェクト(or プレハブ)を配置してゲームステージを作成する。
配置するものは全てGameObjectという単位。
あるいは、GameObjectを複数まとめたPrefabという単位になる。
最終的には、複数のシーンをまとめて一つのパッケージにビルド・出力する。
GameObject単体は何も持たないオブジェクト。
(正確には Transformという座標・回転・サイズと階層構造を持つコンポーネントを持つ。)
このGameObjectにゲームを構成する部品となるコンポーネントを複数持たせることができ、
別のGameObjectを子に持つことも出来る。
コンポーネントには、
- BoxCollider, SphereCollider 等のコリジョン
- モデルを動かしたり、人体モーション等を実装するアニメーション
- 音の発生源
- カメラ(フレームバッファ、レンダーターゲットへの描画、描画対象の選択)
また、コンポーネントは自由に作成でき、
プログラマはゲームに合わせたコンポーネントを作成するのが主な作業になる。
コンポーネントはスクリプト(C#, JavaScript, Boo)で記述する。
Unityが対応している3Dモデリングツール
- Maya
- Cinema 4D
- 3ds Max
- Cheetah3D
- Modo
- Lightwave
- Blender
対応しているファイルフォーマットは
- .FBX
- .dae
- .3DS
- .dxf
- .obj
詳細は以下のページ。
http://unity3d.com/support/documentation/Manual/Me...
Cg言語ベースらしいですが、Unity用に拡張された形になっている。
バーテックスシェーダー、フラグメントシェーダーが利用できる。
また、シェーダーの簡易版(?)としてサーフェイスシェーダーというのがある。
タイトルメニュー、ゲームシーンなど、別々のシーンファイルとして作成することになる。
タイトルメニュー
↓シーンの読み替え
ステージセレクト
↓シーンの読み替え
ゲーム本編:ステージ1
と言った感じ。
このシーンを読み替えた時に、シーン中(ヒエラルキー中)にあるゲームオブジェクトは一旦破棄される。
ゲームプレイデータの様な常駐させたいオブジェクトは特殊な方法で破棄されない様に設定する必要がある。
チュートリアルサイト
ここの 3DPlatformTutorial.pdf を読みながら、3DPlatformTutorialStart.zip のプロジェクトをいじると、
Unityの基本的な要素を理解しやすいかも。
※最新の Unity3.5に対応しているかどうか、未確認。
タグ
最新コメント