スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ --/--/-- --:-- ] スポンサー広告 | トラックバック(-) | コメント(-)

Unity入門 続き 

全26回中13回まで行っていたので、残りも進めていきます。
段々、実践的な内容が増えてきて嬉しい限り。
Prefabの動的生成やシーン遷移はゲーム作る際に必須だと思うので覚えて行きます。
ちなみに動画のスクリプトはJavaScriptですが、C#に書き換えてやっています。
とりあえず23回まで進んだので明日には何かできるはず。


<C#でそのまま出来なかった事>
・transform.position.z += 0.1f;が出来ない
 - private変数へのアクセスになると思われるので、Translate関数を使う。
 - vectorの代入はtransform.position += new Vector3(0,0,0.1);とすれば可能
・コリジョン定義関数
 - private void OnCollisionEnter(Collision collision)になる
・GUIテキスト関数定義
 - void OnGUI ()
・GUIラベル設定のRectにはnewが必要(というか基本的にVector3含めオブジェクトはnewで生成する必要がある)
 - GUI.Label (new Rect(10, 10, 200, 50), "Game Over", m_Style);

<自分用メモ>
・オブジェクト生成
 public GameObject m_Ball; ←Publicで作ってInspector上でオブジェクトを入れる
 Instantiate (m_Ball, transform.position, transform.rotation); ←これで生成
・GUIテキスト挿入
 public GUIStyle m_Style; ←Inspector上でフォントサイズ等設定する。
 void OnGUI () {
  GUI.Label (new Rect(10, 10, 200, 50), "Game Over", m_Style);
 }
・シーンの遷移
 [File]->[Build Settings...]でシーンを追加する必要有り。
 ※ここでの順番を間違えないように、MainとGameOverならMainが上に来るように。
 Application.LoadLevel("シーン名");
・フレーム数のカウンター
 Time.frameCount
・ランダム値取得
 Random.Range(-5.0f, 5.0f)
・ポジション移動での挙動の違い
 transform.position -= new Vector3(0.0f,0.0f,0.2f);
 transform.Translate(0.0f,0.0f,-0.2f);
 同じに見えるけど、前者は位置情報に直接入れているけど、後者は行列を掛けているっぽい?
 回転を入れると挙動が変わるので、ちょっと微妙な感じ。
 問題はRotateとTranslateの順番に関係なく挙動が変わるのでposition -=を選ばされる事。


[ 2013/11/20 23:59 ] unity | TB(0) | CM(0)

次はUnity入門の動画サイトで 

Unity入門という動画で説明しているサイトがありますので、そちらをやります。
http://dotinstall.com/lessons/basic_unity

1回あたり3分での説明なので、割と手軽にできます。とりあえず13回ぐらいまでやりました。
公式HPのチュートリアル終了後ですが、それなりに発見もあって良いサイトだと思います。

特に貼る画像はないんですが、動画ではこんなサンプル作りますよ的な物。
unity_study001_ss.jpg

この雪だるまがプレハブ(Prefab)化されているわけですが、これかなり使いそうですね。
テンプレートというか、Photoshopで言うとスマートオブジェクトがほぼこれな感じ。
プレイヤーにしろ、敵にしろ、ゲームに出てくる単位で全部プレハブ化してもいい気がするな。

あとは、他のエディタを使う話があったので、VisualStudio使えないかと思ったのですが、2005は古すぎてダメっぽい。
2012 Expressでは以下のサイトの方法でいけるようなので、MonoDevelopに不満が出たらやってみよう。
http://unity.creator.ms/unity-018.html



<個人的メモ>
・Assetsは共通リソース、プロジェクトに紐づくのでシーン間で使いまわせる。
・[GameObject]->[Align With View]->現在のSceneでの見た目になるようにカメラを動かす
 - ライトでもいけた。
・デバッグログ出力
 Debug.Log("文字列");
 ※C#って+で文字列繋げるんですね…、C++と比べてこの辺はかなり楽。

[ 2013/11/20 17:28 ] unity | TB(0) | CM(0)

はじめてのUnityやってみた 

まずは公式にある、はじめてのUnityから触る事にしましょうか。
http://japan.unity3d.com/developer/document/tutorial/my-first-unity/
(残念ながらまだ第1回しか完成していない模様)

unityについては右も左も分からないので、極力簡単な物から入った方がいいはず。

C++に慣れているため、いきなりGUI的に画面を作ると色々混乱するのだけれど、
要するに今画面に出ている物がゲーム中の1シーンとしてファイル保存単位になる模様。
シーンを複数組み合わせて1プロジェクトを作る、と。

載ってる内容以外にも色々調べながらメモりながらでも2時間程度でチュートリアルは終了。
感想としては、ざっくり作るのには便利だけど、ゲームとして色々調整するには慣れが要りそう。
そしてMonoDevelopが日本語対応できていないのが痛い…(一応入力だけはできるけど)

ちなみに作ったやつはこんな感じで動作します。(要UnityPlayer)
http://www6.plala.or.jp/poro/unity/study000/Output.html

Unity ブロック崩しスタディSS

キーボードの左右もしくはA,Dで動きますが、物理挙動でたまに変な動きしますね。
壁との間に挟んだりするとすごいスピードで吹っ飛んでボールがなくなります…。
ここまでシンプルだと、物理要らないんじゃないかという気がしなくもないけど、コード書く量は増えるだろう。



<チュートリアル補足>
・スクリプトの追加でインスペクターパネルにドラッグ&ドロップとあるが、下の方(Add Componentボタンの下辺り)じゃないとダメ。(一度決定するとその名前でクラスが作られて割と悩んだ)
・C#で書く場合、クラス名とスクリプト名は一致させる必要有り。
 後は変数定義をfloatに書き換えるだけで動いた。
・書かれてないけど、ラケットにもRigitBody追加しないと当然ダメ。

<個人的メモ>
・右クリック押しながらASDWでカメラをFPS移動
・[GameObject]->[Create Empty]でEmptyオブジェクトを作って、ドラッグ&ドロップで親子付け可能。
 - Emptyオブジェクトも適当な座標に配置されるので、親子付け前にTransformをReset推奨。
・MonoDevelopエディタの配色が嫌いなら、[Tools]->[Options...]の[Syntax Highlighting]からVisualStudioとか選択できる。
[ 2013/11/19 19:20 ] unity | TB(0) | CM(0)

unity始めてみました。 

大体5年ぶりの更新となりますが、unity始めました。
http://japan.unity3d.com/

ちょっと前にやった時は、無料版では色々できない事も多くて微妙だったんですが、
最近大分色々入ってきたようですね。

・Android,iOSへの出力可能に
・リアルタイムシャドウが使用可能に
・2D関連の機能追加


と、何か色々作れそうな気がしてきました。
uGUIというGUI特化の物も計画されているようで、流石にそろそろ勉強しないとな、と。
個人的に楽しみなのはShuriken(パーティクルシステム)なんだけども。

とりあえずチュートリアル的なサイトや書籍が出ているので、それをやりつつ軽くまとめて行きたいと思います。

[ 2013/11/17 20:55 ] unity | TB(0) | CM(0)

速いようでゆっくりな時間 

明けましておめでとうございます。
久しぶりな管理人です。

今年は予定通りに冬季休暇をいただいて、実家に帰っていました。
その休みも明日までと言う事で、あっという間のようでしたが、
逆にいままで仕事をしていた感覚からすると、ゆっくり流れているように感じました。

仕事をすると一年があっという間に過ぎるというのは本当のようで、
ガンガン歳を取っていきます_no

年齢相応の知識と経験、考え方を身につけられるよう、今年も頑張っていきたいと思います。
[ 2009/01/03 23:50 ] 通常日記 | TB(0) | CM(2)
プロフィール

poro

  • Author:poro
  • プログラマやってる人です。
    絵とかも好きだったり、
    何か作りたいとか最近考えているらしい。
ブロとも申請フォーム


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。