「Tips」の編集履歴(バックアップ)一覧はこちら

Tips」(2010/10/20 (水) 08:01:47) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

#contents *アセット ---- インポート可能なファイル形式は→[[Asset Importing>>http://unity3d.com/unity/features/asset-importing]]参考のこと。 **3Dモデル ***[[Lightwave3DからFBXファイルでボーンアニメーションを付けたオブジェクトをエクスポートする際の制限事項。>./Lightwave3DからFBXファイルをインポート1]] ***Blenderからのインポート方法 -Blender2.49bを利用し、FBXエクスポータで出力したものをインポートする方法をお勧めします。 -Blender2.5の.blendやFBXエクスポータで出力したものはインポートできません(2010/4/7現在) -インポートされるデータは以下になります(2010/4/7現在) --All nodes with position, rotation and scale. Pivot points and Names are also imported. --Meshes with vertices, polygons, triangles, UVs, and normals. --Bones --Skinned Meshes --Animations -※.blendを直接インポートできますが、内部的にBlenderのFBX変換を利用してインポートが行われます。 -※この方法ではIPO周りが読み込まれませんので、FBXエクスポータで出力してインポートするのが良いようです。(→[[参考>>http://forum.unity3d.com/viewtopic.php?t=43550]]) ***SketchUp(フリー版)からのインポート方法 SketchUpの.kmz形式の実体はzipファイルであり、COLLADA形式(.dae)のモデルを含んでいます。拡張子を.zipにリネームしてモデルを抽出すればUnityにインポート可能です。 *ゲームオブジェクト ---- *GUI ---- **画面全面に画像表示 GUI.DrawTexture()を使い、GUIレイヤにテクスチャを表示する方法で実現します。 やり方としては下記のスクリプトをカメラに割り当て、プロパティbgに画像を設定します。 public class NewBehaviourScript : MonoBehaviour { public Texture2D bg; void OnGUI () { GUI.DrawTexture(new Rect(0,0, Screen.width, Screen.height), bg); } } なお、ゲームオブジェクトの背面に表示するにはPro版でないとできないようです([[→参考>>http://www.unifycommunity.com/wiki/index.php?title=StaticBackground]]) **日本語表示 16 名前:名前は開発中のものです。[sage] 投稿日:2009/11/19(木) 15:05:58 ID:xSzD3fum 日本語をラベルにしたボタンを表示できたので記念パピコ 日本語のTTFファイルをアセットに追加した後、 スクリプトでpublicなGUISkinを定義したらそれがアセットに自動追加されるから、 インスペクタで各フォームアイテムのデフォルトフォントとしてさっきのTTFを指定したら行けた ちなみに公式ドキュメントはここ ttp://unity3d.com/support/documentation/Components/class-Font.html 追加情報: Windows版だと SJIS ○ (ただし、Inspector上だと文字化け。ゲーム画面では正しく表示される) UTF8 × (Inspector上では正しく表示されるが、Monoが文字列リテラルの終了を正しく認識できず、スクリプトがコンパイルできない) UTF8 BOM ○ UCS2 LE ○ UCS2 BE ○ MacOSX版だと SJIS × UTF8 × (Inspector上では正しく表示され、コンパイルも通るが、UnityGUIでは?に置換されて表示されてしまう) UTF8 BOM 不明 (手元にMacでUTF8 BOMを書けるエディタがなかった) UTF16 ○ UCS2 LE 未検証 UCS2 BE 未検証 UCS2 BEはUTF16互換なはずなので、Macとクロスプラットフォーム開発したい人はスクリプトをUTF16(UCS2 BE)で現状統一する必要がある。 *スクリプト ---- -スクリーンショット保存 →[[Application.CaptureScreenshot()>>http://unity3d.com/support/documentation/ScriptReference/Application.CaptureScreenshot.html]] -画面上のクリックした場所にあるオブジェクト名を取得 //C# void Update () { if (Input.GetMouseButtonUp(0)) { Ray clkRay = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit rh; if (Physics.Raycast(clkRay, out rh)) { Debug.Log("hit object name: " + rh.transform.root.name); } } } *その他 ---- -ショートカット一覧    
#contents *アセット ---- インポート可能なファイル形式は→[[Asset Importing>>http://unity3d.com/unity/features/asset-importing]]参考のこと。 **3Dモデル ***[[Lightwave3DからFBXファイルでボーンアニメーションを付けたオブジェクトをエクスポートする際の制限事項。>./Lightwave3DからFBXファイルをインポート1]] ***Blenderからのインポート方法 -Blender2.49bを利用し、FBXエクスポータで出力したものをインポートする方法をお勧めします。 -Blender2.5の.blendやFBXエクスポータで出力したものはインポートできません(2010/4/7現在) -インポートされるデータは以下になります(2010/4/7現在) --All nodes with position, rotation and scale. Pivot points and Names are also imported. --Meshes with vertices, polygons, triangles, UVs, and normals. --Bones --Skinned Meshes --Animations -※.blendを直接インポートできますが、内部的にBlenderのFBX変換を利用してインポートが行われます。 -※この方法ではIPO周りが読み込まれませんので、FBXエクスポータで出力してインポートするのが良いようです。(→[[参考>>http://forum.unity3d.com/viewtopic.php?t=43550]]) ***SketchUp(フリー版)からのインポート方法 SketchUpの.kmz形式の実体はzipファイルであり、COLLADA形式(.dae)のモデルを含んでいます。拡張子を.zipにリネームしてモデルを抽出すればUnityにインポート可能です。 *ゲームオブジェクト ---- *GUI ---- **画面全面に画像表示 GUI.DrawTexture()を使い、GUIレイヤにテクスチャを表示する方法で実現します。 やり方としては下記のスクリプトをカメラに割り当て、プロパティbgに画像を設定します。 public class NewBehaviourScript : MonoBehaviour { public Texture2D bg; void OnGUI () { GUI.DrawTexture(new Rect(0,0, Screen.width, Screen.height), bg); } } なお、ゲームオブジェクトの背面に表示するにはPro版でないとできないようです([[→参考>>http://www.unifycommunity.com/wiki/index.php?title=StaticBackground]]) **日本語表示 16 名前:名前は開発中のものです。[sage] 投稿日:2009/11/19(木) 15:05:58 ID:xSzD3fum 日本語をラベルにしたボタンを表示できたので記念パピコ 日本語のTTFファイルをアセットに追加した後、 スクリプトでpublicなGUISkinを定義したらそれがアセットに自動追加されるから、 インスペクタで各フォームアイテムのデフォルトフォントとしてさっきのTTFを指定したら行けた ちなみに公式ドキュメントはここ ttp://unity3d.com/support/documentation/Components/class-Font.html 追加情報: Unity3.0ではttfをアセットに含めたり、独自のGUISkinを定義したりすることなく日本語表示できる。(上の情報はバージョンが古いか、iPhone版とかの情報なのかも) ただし、文字コードに気をつける必要あり。セットで付いてくるテキストエディタ(UniSciTE(Windows版)/Unitron(Mac版))はいずれもデフォルトのエンコードがUTF8だと思うので、そのままだとでない。 Windows版だと SJIS ○ (ただし、Inspector上だと文字化け。ゲーム画面では正しく表示される。UniSciTEでは書けない) UTF8 × (Inspector上では正しく表示されるが、Monoが文字列リテラルの終了を正しく認識できず、スクリプトがコンパイルできない) UTF8 BOM ○ UCS2 LE ○ UCS2 BE ○ MacOSX版だと SJIS × UTF8 × (Inspector上では正しく表示され、コンパイルも通るが、UnityGUIでは?に置換されて表示されてしまう) UTF8 BOM 不明 (手元にMacでUTF8 BOMを書けるエディタがなかった) UTF16 ○ UCS2 LE 未検証 UCS2 BE 未検証 UCS2 BEはUTF16互換なはずなので、Macとクロスプラットフォーム開発したい人はスクリプトをUTF16(UCS2 BE)で現状統一する必要がある。 *スクリプト ---- -スクリーンショット保存 →[[Application.CaptureScreenshot()>>http://unity3d.com/support/documentation/ScriptReference/Application.CaptureScreenshot.html]] -画面上のクリックした場所にあるオブジェクト名を取得 //C# void Update () { if (Input.GetMouseButtonUp(0)) { Ray clkRay = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit rh; if (Physics.Raycast(clkRay, out rh)) { Debug.Log("hit object name: " + rh.transform.root.name); } } } *その他 ---- -ショートカット一覧    

表示オプション

横に並べて表示:
変化行の前後のみ表示:
目安箱バナー