tanaka's Programming Memo

プログラミングについてのメモ。

Unityメモ

mac OS X 10.10 UnityのエディタをVisualStudioCodeにする

詳しくは以下を参照してください。【Unity、Mac】エディタをVisual Studio Codeに変更する。 | naichilab - Android iOSアプリ開発メモnaichilab.blogspot.jp環境セットアップ後も、新しいプロジェクトを作ると以下の設定をやらないと、オートコンプリートな…

Unityのネットワーク-同期処理-

前へ | 次へ 同期とは プレイヤーが画面に登場するようになりましたが、移動をすると実行するプログラムの間での位置がずれてしまいます。これを解決しましょう。 NetworkViewコンポーネント 各キャラクターの位置や姿勢、アニメは、全ての参加者の画面上で…

Unityのネットワーク-プレイヤーの作成と登場-

前へ | 次へプレイヤーを作成して、複数のプレイヤーが画面に登場するようにしてみましょう。 プレイヤーを作成する Unityに切り替えます。 [Hierarchy]ビューから[Create]>[3D Object]>[Sphere]を選択して球を生成します。 作成した[Sphere]の名前を「Playe…

Unityのネットワーク-ゲームサーバーの起動とクライアントからの接続-

前へ | 次へ 概要 マスターサーバーを使うのは骨が折れるので、ここではIPアドレスを直に指定して接続します。マスターサーバーの使い方は参考図書(Unityゲーム開発 オンライン3Dアクションゲームの作り方)に詳しいです。Unity5.0を対象とします。 macで作業…

Unityのネットワーク-Unity5.0時点での概要-

本記事は、Unity5.0以前の古いネットシステムのものです。Unity5.1からはUNetというより簡単で強力なマルチプレイヤー用の環境が実装されています。5.1以降で構わない場合は、UNetを先に調べてみてください。 Unity - Manual: Multiplayer and Networking 次…

Visual Studio Tools for Unityの使い方

Unity5のMono Developでは、日本語入力の際に候補が表示されないので、プログラムコードの編集にはVisual Studio2013 Communityなどがおすすめである。利用する際に少々設定が必要なので、ここにまとめる。なお、試したのはVisual Studio 2013 CommunityとUn…

Unityのエラーの行数がおかしい

Unity4.5.1において、エラー行数がエラー内容と一致しなくなることがある。コメントに日本語を利用していることが原因だったことがあり、ソースコードから日本語のコメントを削除したら治った。最新版では未確認。もともと日本語対応は微妙なところがあるの…

Unity4以降でのSetActiveRecursivelyの扱い

keyword : Unity4.x SetActiveRecursively 答え SetActive()を使う。 経緯 Unity4以前でゲームオブジェクトの有効/無効を操作するには、ゲームオブジェクトのactiveプロパティの値を直接操作していた。 // ゲームオブジェクトを有効にする gameObject.active…

Unity4.3の問題

keyword: Unity3D 4.3 VisualStudio 2008 起動しない MonoDevelop アンインストール専門学校でUnityを4.3にバージョンアップさせたらいろいろと起きたので、それについてメモ。 VisualStudioが起動しない Edit→PreferenceのExternal ToolsでエディタをVisual…

UnityのMobile基本ライセンスが無料化!

今まで有料だったiOSとAndroidの基本ライセンスに加え、BlackBerryとWindowsPhone8用のライセンスも無料化が発表されました。ショップから購入メニューが消えているので、すでに使えそうです。 Proライセンスは、これまで通りの価格です。 http://japan.unit…

UnityでVuforia

UnityでVuforia2.0を動かす際のメモ。 必要環境 Unity Pro JavaSDK Vuforia (https://www.vuforia.com/) Unity Extension Download Unity Extension x.x.xx for Android free 30-days trial でUnity Proにして、Unityを再起動すると、Android SDKはなくても…

AssetStore Couldn't decompress package

Asset Storeから何かダウンロードして、インポートする際に、以下のエラーが出た場合、Error while importing package: Couldn't decompress packageパーミッションが不足している可能性がある。Unityを管理者権限で起動すると、うまくインポートできた。

ゲームオブジェクトの有効、無効

遠くのキャラクタは非表示にし、一定距離まで近づいたら表示して動かし始めるような処理を実装したい場合、GameObjectクラスの「SetActiveRecursively(フラグ)」を利用すると便利。 Start()関数内などで、 gameObject.SetActiveRecursively(false); として、…

参考教材

Vantan Game AcademyさんのUnity講義サイト。参考になります!http://code.google.com/p/vga-unity/

古いバージョンのダウンロード

Ver3.5.6は以下のURLからダウンロードできた。 http://download.unity3d.com/download_unity/UnitySetup-3.5.6.exeVer3.Xは、「3.5.6」の部分を欲しいバージョンに書き換えればダウンロードできる模様。 (2012/11/21現在)

RigidbodyのCollision Detection

かなり怪しい日本語ですが、Collision Detectionの説明の和訳。 Collision Detection オブジェクトの動きが速すぎて、他のオブジェクトをすり抜ける場合に使う。 Discrete(個別、分離) シーンに存在する他の全てのオブジェクトと衝突判定をしたい際に利用す…

Rigidbodyで、めり込んだり、跳ね返らない

Unityでは、初期設定として1を1mとして扱うことになっている。その設定のまま、5cmのオブジェクトを登場させるとサイズは0.05となる。ところがUnityのRigidbodyでは、一定以上小さい速度は省略されるようで、5cm程度のものを動かしていると、衝突しても跳ね…

SculptrisからUnityへのモデルの読み込み

多摩大学の学祭で学生さんたちによるSculptrisの使い方教室がありました。お邪魔してコネコネとキャラクタを作成。せっかく作ったのだから動かしてみたいと、Unityへのインポートをしてみました。以下、手順です。 データのエクスポート モデリングを完了さ…

Blenderからの読み込み、座標軸

3Dツール(Blender)からUnityへのモデルの読み込みと、リジッドボディに制御を任せる際の注意点をまとめる(Unity3.5)。 座標軸 UnityとBlenderの座標系をまとめる。 Unityの座標系 右がX+。 上がY+。 奥がZ+。 Blenderの座標系 右がX+。 上がZ+。 奥がY+。 Bl…

Terrainの高さの取得

地形(Terrain)の指定の座標の高さを得ようと、GetInterpolatedHeight()にマップのX座標とZ座標を指定して戻り値を得てみたが、正しい値が取得できなかった。解決策を探して、Unity Forumで以下を発見。 TerrainData.GetInterporatedHeightGetInterpolatedHei…

プラグイン、マイクからの録音、JavaとC、ARエンジンなどのメモ

何年かぶりに本格的なオリジナル作品に取り組み始めました。Unityならサクサクっとと思ってたのですが、案外Unityってスマホからのデータの取得が不完全??とりあえず以下のような課題にぶち当たりました。 GPSの精度不足。 Androidではdoubleで取得できる…

分割読み込みと日本語

アセットを外部から読み込む AssetBundlesを利用する。AssetBundlesは、モデルやテクスチャ、シーン、汎用バイナリなど、あらゆるアセットをまとめたファイル。それをサーバやローカルから読み込んで、シーン内に生成できる。ただし、利用にはProライセンス…

OnTriggerEnter / OnCollisionEnter

Rigidbody+Colliderのゲームオブジェクトで動作する。以下の組み合わせで動作する。「Rigidbody+Collider」対「Rigidbody+Collider」 「Rigidbody+Collider」対「Collider」 「Rigidbody+Collider」対「CharacterController」 「CharacterController」対「Co…

UnityのAndroidとiOSのBASICライセンスが2012/4/8まで無料

表題の通り、AndroidとiOSのBASICライセンスが4/8まで無料で入手できます。一先ず入手しておくのが吉。1)「https://store.unity3d.com/products」に接続 2)「Unity FREE」を選択してから、AndroidとiOSの[+ FREE until April 8th.]を選択 3)[Add to Cart]を…

透過PNGをPlaneに張り付けて透過させる

透過PNGなど、透明情報の設定されている画像を読み込む。 マテリアルを作成して、テクスチャを適用する。 マテリアルのShaderをTranspalant→Diffuseに設定。 マテリアルをオブジェクトに貼り付ける。

3ds Maxからのデータの読み込みの一部翻訳

◆3D Studio Maxからのオブジェクトのインポート もし3Dオブジェクトを3dsMaxで作成したのであれば、【.max】ファイルであればそのままプロジェクトに追加出来る。あるいは、それらの3DオブジェクトをUnityが対応しているAutodesk.FBXフォーマットにエクスポ…

キャラクタコントローラ(CharacterController)

歩き回るキャラクタを作る時に便利。 Update()やFixedUpdate()内で、GetComponent("CharacterController")でインスタンスを呼び出して、SimpleMove()やMove()で移動。SimpleMove()はx,z平面の移動のみでよい場合に使う。重力落下はしてくれるが、yの入力を無…