tanaka's Programming Memo

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

2012-01-01から1年間の記事一覧

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

遠くのキャラクタは非表示にし、一定距離まで近づいたら表示して動かし始めるような処理を実装したい場合、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現在)

USBでAndroid Remoteのインストール

Android Remoteのダウンロード ブラウザでhttp://files.unity3d.com/ricardo/AndroidRemote.apk に接続して、Android RemoteをPCにダウンロード。 adbのパスを通す http://www.techmaru.net/wordpress/20100516/androidsdk/ を参考にパスを通す。ただし「too…

Xperia Tablet Sやhtc EVO 3DのADBドライバー(2017/7/19追記)

(2017/7/19 SH-08Eの設定を追加) 事前設定 Android Studioをインストールして、起動して、Android SDKの設定を済ませる Android Studioの[Configure]>[Settings]を開く Google USB Driverをインストール タブレット側の設定 初期設定を終わらせる。 タブレッ…

Androidのキーコード

Input.GetKey()でキー状態を取得する際のキーコードは以下の通り。 メニュー KeyCode.Menu 戻る KeyCode.Escape 検索 KeyCode.F2 フォーカス KeyCode.F6 シャッター KeyCode.F5

RigidbodyのCollision Detection

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

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

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

GPSの時間とDateTimeの時間

デバッグ用にGPSの計測時間の代わりに、DateTimeの時間を使った際に変換を失敗して正常に動作しないことがあったので、違いについてメモ。 GPSの計測時間 Input.location.lastData.timestampで取得出来るdouble型の値。 前回取得したGPSのデータの時間を、19…

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…

Unity3.xの基本GUIのサンプル

Unityの公式サイトのリファレンスを参考に、基本GUIを一通り実装した。以下に、作成したパッケージと動作テスト用のWebページを掲載する。 サンプルコード内に、リファレンスを簡単に和訳したメモを記述してある。 サンプルパッケージ パッケージダウンロー…

Unity3.X+Androidで日本語描画

Windows上ではUTF16にすればすぐに描画できるが、Unity3.XのAndroidはダイナミックフォントに対応していないので、フォントの生成もする必要がある(Unity4では対応するらしい)。 Xperia Tablet Sで日本語の描画ができない(2012/11/28追記) SH-12C、HTC EVO 3…

ローカルにファイルを保存

簡単なデータなら、System.IOのFile.WriteAllBytes()で保存、File.ReadAllBytes()で読み込めた。 スクリプトファイルの冒頭に以下を追加して入出力関係のクラスを使用可能にする。 using System.IO; "testdata.bin"というデータをバイナリですべて読み込むと…

プラグイン、マイクからの録音、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…

UnityRemoteの接続方法

環境のセットアップ Androidのライセンスは不要。 Android SDKをインストール インストールプログラムは、管理者権限で実行する。 利用対象者は「Install for anyone using this computer.」を選択。 インストールが完了したら、管理者権限でAndroid SDK Man…

AntでFTPアップロード

参考 http://www.jajakarta.org/ant/ant-1.5/docs/ant-1.5/j/docs/manual/OptionalTasks/ftp.htmlAntはEclipseにプリインストールされているので、すぐに使える。 FTPタスクの実装 ftpタスクはAntのディストリビューションに含まれないので、外部ライブラリ(…

MySQLでの暗号化データの読み書き

Web

データ 暗号化するデータは「tinyblob(255文字)」か「blob(6万文字)」などのバイナリ型を利用。 記録バイト数は、暗号化前のバイト数+1を16の倍数に切り上げたバイト数。 暗号化処理 AES_ENCRYPT(データ,パスワード)を利用する。 SQLでのデータ登録例 insert…

植物認識の調査メモ

現状のまとめ 各公園に生えている植物のリストは公園情報センターで得られるので、そこからチェックリストを作成 撮影をした画像から近いものリストを表示して、ユーザーに選ばせる これを行うためのエンジンがあればよい あまりに違う写真は選べないように …

【作業メモ】採点ツールのWord2010への対応完了

Wordドキュメントの採点ツールのOffice2010対応と、採点データの作成完了。レポートの採点項目をリスト化したので、ぼちぼちレポートの採点&確認ページの開発を開始。 履修者データの登録とデータの暗号化 パスワードの生成と問い合わせ 履修データの登録 …

WPFでのアイコン設定

C#

実行ファイルのアイコン設定 EDGEでアイコン作成。16x16[16色]、32x32[16色]など。1つでもよい。 作成したアイコンファイルをプロジェクトに加える。 ソリューションエクスプローラのプロジェクト名を右クリックして、プロパティを選択。 アプリケーションタ…

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]を…

Word2010でファイルの詳細を修正する

Windows7(64bit)では、dsofile.dllが使えないようだったので、別の方法で、Officeファイルの詳細を変更した。 環境 Windows7 64bit Professional VisualStudio2010 Professional C# Office2010 実装方法 普通にC#のWindowsアプリケーションのプロジェクトを…

UnityでAndroidのタッチ操作

Input.touchCountで、現在、同時にタッチされている数を返す。SH-12Cでは5箇所まで同時に検出可能。 Input.GetTouch(index)で、0〜Input.touchCount-1までの押された場所のデータを、Touchクラスのインスタンスで返す。 // 0番目のタッチのデータをtchに取得…

Windows7(64bit)へのAndroidインストール

2012/2/29現在のセットアップ Android Developersのインストール手順に従って以下の通りセットアップをする(http://developer.android.com/sdk/installing.html) Java SE Development Kit 6の32bit版(x86)と64bit版(x64)を両方インストールする。 64bit版(x6…

UnityでAndroidのアプリを作成するまでのメモ

Androidはお試しが出来ないので、いきなり有料ライセンスが必要。日本円だと3万4千円(2012/2/22現在) ライセンスの購入はUnity Storeから。 支払いはPayPalが便利。 ドルやユーロでの支払いも可能になるので、為替相場次第では外貨で買う手もあり。ちなみに…

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

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