itouhiroはてなブログスマートフォン用の表示で見るitouhiroはてなブログこの広告は、90日以上更新していないブログに表示しています。http://unity-yb.github.io/の本でUnityを学ぶ。4.xC#の環境とズレがある。そこで、その差を埋めながら学ぶのをこのブログに記録しておくぞ。ネットではver3の本は今となっては役に立たないぞとか言われてるけど、そうなの?そんなことはないぞ。後述するけどパーティクルもアニメーションも旧システムが残されてるから、それを選べば、この本はそのまま実行できる。無料版Unityを取得する。UnityスタートガイドUnity3.4の後、2013年10月現在はいろいろUnityも変わった。iPhoneを無料版で使用できる。Unity3.5より、パーティクルシステムが新しくなった。Shuriken(シュリケン)と呼ばれる。Unity4.0より、アニメーションシステムが新しくなった。Mecanim(メカニム)と呼ばれる。Unity4.0より、モバイル版でもダイナミックフォント使用可能になった。Unity4.2より、デスクトップ版のみリアルタイムシャドウを無料版で使用できる。Unity3.5より、外部バージョン管理システムを無料版で使用できる。Unity4.2ではForceTextも可能。Unity3.5でFlash出力(プレビュー版)が有効になり、Unity4.0以降は製品版を購入できたが、Unity4.2の前にFlash出力停止された。無料になってるんだね。右ドラッグ(右クリックしたあと押したままマウス移動)視点の平行移動ホイールドラッグ(ホイールをクリックしたあと押したままマウス移動)で可能だ。....と思ったのだが、「Alt+ドラッグ」と「右ドラッグ」は挙動が違う。ONにしているが、これRigidBodyを与えない場合でも同じ挙動なんだよな。PhysicMaterialもRigidBodyなくても指定できるし。Windowsアプリにしたら、いきなり最大化でどう停止するかこまった。Alt+Enterで通常のウィンドウに戻った。Unity3とUnity4の違いは、この章では現れなかった。JavaScript(JS)をC#に書き換えるのは、この章では以下だけだ。30.0fこの章はスクリプト2行しか書かないからね。違うけど、これは最初から入力されて用意されてるから問題じゃないだろ。モバイル向けにビルドChapter2で作ったサンプルを、モバイル向けに再設計している。ソースコードを2行書き換えている。PlayerSettingのBundleIdentifier(バンドル識別子)に「地域コード.開発者名.アプリ名」使うののが一般的らしい。「jp.yamada.BallAndCube」みたいに。この章はそれだけかな。}と書くこともできる。関数の返り値の型「:void」とか「:int」とかは書いてもいいけど省略できるんだ。ちなみに本物のJavaScriptでは「:void」とか指定するとダメだぞ。JavaScriptは特殊なんだ。「function」は要らないJavaScriptで「:void」「:Collider」のように書いていた「:」以下の型指定を、関数名・変数名の「前」に書くこれを守ればあとは機械的に書き換えればよい。UnityのJavaScriptは本物と違うのか....。C#は本物と同じだぞ。JavaScriptをC#に書き換えるのは、この章では以下だ。//C#では「function」はいらない。//C#では代入文など型を推定できる場合、型を「var」とも書ける。Application.LoadLevel("Title");}こんな感じ。WaitForSeconds(2.0);と書き換えるだけでは動作しないんだよね。以下に詳しく書いてある。今回はInvoke()で置き換えた。書くが、JSでVector3.forwardのように既に指定済みの数値を使う場合、C#でもVector3.forwardでよい。この要領で、ほかも書き換えればいい。今回はJavaScript→C#の書き換え箇所も多めだね。yieldを除けば、機械的な書き換えですむから難しくないよ。Unity3とUnity4の違いだが、フォント関連に違いがある。「Unity3.4ではモバイルでダイナミックフォントが使えない」とこの本に書いてあるが、Unity4.0以降はモバイルでもダイナミックフォント使えるようになってる。デスクトップ(Windows/Mac)の設定のままで、モバイル(Android/iPhone)でも文字表示できるぞ。あとAndroidの[戻る]ボタンで終了するために、TitleScreen.csとGravityController.csのUpdate()に以下を入れておくとよい。Application.Quit();思ったんだが、これは画面横より縦のほうがいい気がする。縦にする場合、操作方向が変わるので以下の変更が必要だ。(7)月別アーカイブはてなブログをはじめよう!itouhiroさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。