littlewing

人間とコンピューターとメディアの接点をデザインするために考えたこと

unity

Unityでビジュアル要素 (ヘッドレス) 無しのCLIアプリを作成する

Unityでアプリケーションを作成する際に、コマンドラインでも操作したい事があると思います。 Server Buildのオプションと、Mono.Options を利用することで、簡単に作成することができたのでその方法をメモします。 サンプルコードも最後にあります。 何に使…

Unity Editor Preferences の設定をC#から変更する

Unity Cloud Build に限った事では無いのですが、 自動ビルド環境を構築する際、Unity Editorの Edit > Preferences の設定をC# scriptから変更したい場合があると思います。 普段触らないので毎回忘れるのでメモ。 UnityEditor.EditorPrefs で設定できる。 …

Unity Bolt Tips6. BoltでJson.netを使う

Bolt Tips 連続記事です 前回の続き Bolt でサーバ上のJsonを取得してParseしたのでその方法のメモ。 Jsonシリアライザの選定 UnityでJsonフォーマットを読み込む場合、標準では UnityEngine.JsonUtility が用意されています。 ただし、JsonUtilityは root要…

Unity Cloud Build でsubmodule + symbolic linkを使う

Unity Cloud Build で シンボリックリンクを使うための方法を調べたのでメモ。 マルチデバイス向けのUnity開発プロジェクトや、メインプロジェクト内で、他のリポジトリの特定のフォルダ/ライブラリのみを利用したい場合、submodule と symbolic linkをよく…

Unity Bolt Tips.5 日本語チュートリアルの動画・資料

Bolt Tips 連続記事です 前回の続き Unity Technologies Japan から、Boltの使い方を説明する日本語のチュートリアルが出ていたので貼っておきます。 Slide Share YouTube で公開されています。 YouTube ビジュアルスクリプティングシステムBoltを使ってみよ…

Unity でビルド時に自動でバージョンに日付を付与する

Unity でビルド時に自動でバージョンに日付を付与するEditor拡張 PlayerSettings.bundleVersion が0.1の時 ビルド時に 0.1.yyyymmddに変更します。 ビルド完了時、もしくはエラー発生時に PlayerSettings.bundleVersion を元に戻します。 Magic Leapの場合は…

UIWidgets メモ/リンク集

UIWidgets github.com github.com Flutterリファレンス Flutter:Widget一覧 Mateiral Design Icons Tipsなど 可変framerateを停止する 本家のReadmeにもあるが、unity 2019.3以降はUIWidgetsがOnDemandRenderAPIを使用して実装されるため、アニメーションが…

Unityで特定の点を中心にScaleを変化させる (ScaleAround)

UnityでGameObjectの原点ではなく、指定した点を中心にScaleを変更する方法。 rotationは原点と回転軸を指定して回転できる RotateAround があるけど、Scaleには無いので作った。 タッチパネルの2本指操作や、両手VRコントローラで拡大させる時に、拡大の中…

Unity Bolt Tips4.State Machine を利用する

Bolt Tips 連続記事です 前回の続き BoltではState Machineを記述することができます。 State Machine とは? State Machine は 1つ以上の状態(State)と 状態間の遷移(Transition)で構成されます。 状態は、特定のアクションを実行し続けます。 状態は、…

Unity Bolt Tips3.Formula Unitを利用する

Bolt Tips 連続記事 前回の続きです Boltには Formula Unit という、論理式や数式を直接評価できる強力なユニットがあります。 Formula Unit 利用例 簡単に言うと、Unit内で テキストコードを書くことで、if文や計算式を記述できます。 その使い方を書きます…

Unity Bolt Tips2.Boltの独自ノードをC#で作成する

Bolt Tips 連続記事です 前回の続きです BoltのノードはUnityのC#のメソッドが利用できるのですが、自分で関数ノードを作成して再利用する事もできます。 Boltのノード作成の基礎的なメモ MacroとEmbed BoltのフローのソースにはMacroかEmbedを選択して利用…

Unity Bolt Tips1.FlowGraph編集画面の使い方

UnityのBoltを触っていて、日本語の情報も少なく、編集画面の項目の意味がマニュアルにもちゃんと書かれてないので調べたメモ。 Bolt Tipsとして連続記事 になっています。 Asset Store Bolt | ビジュアルスクリプティング | Unity Asset Store マニュアル V…

MagicLeap用にUnity Native Pluginをビルドする(libjpeg-turbo)

Unity で作成したMagicLeapアプリでturbojpegライブラリを利用したくて、試行錯誤したのでメモ。 概要 高速jpegエンコード/デコ―ドができるlibjpeg-turboをWindows上でMagicLeap用にビルドして、Unityで使えた。 背景 MagicLeapでNativePluginを利用するには…

Quouaternionを使って、オブジェクトの回転と位置を一致させる

2つのGameObjectツリーどうしの座標系を合わせるために、親要素を動かすためのメモ /// <summary> /// Transform同時の位置と回転を合わせるために、親要素のTransformを動かす /// </summary> /// <param name="target">基準となるTransform</param> /// <param name="move">targetと一致させたいTransform</param> /// <param name="moveParent">実際に移動・回</param>…

Magic Leap/mldbコマンドのヘルプ

Magic Leap Oneを起動する Light Packのボタンを三秒長押し(ピポッと音がする) ※マニュアルでは3秒だが、実際は押すだけでOK? Light PackのLEDがついたら、コントローラのホームボタン(小さいポッチ)を3秒長押し(バイブレーションとLEDが動作する) 起…

HoloLens のUnityアプリで、カメラアクセスの許可がされているか確認する。

Vuforiaなどでカメラ機能を利用する際に、ユーザーが許可を与えなかったり、 OSバージョンアップ時に許可設定が吹っ飛んでしまった場合、そのまま続行すると例外でアプリがクラッシュしてしまいます。 そこで、カメラアクセスの許可が無いときに分岐する方法…

HoloLens のUnityアプリで、UWP AppPackageビルド後のバージョンを取得する

UnityのApplication.versionだと、PlayerSettingsのバージョンになってしまう。 AppPackage作成時のインクリメントに対応するには別の方法で取得しないといけない。 そう、こんな感じで #if !UNITY_EDITOR && UNITY_WSA using Windows.ApplicationModel; #en…

Unityで4つの点から球の中心と半径を求める(内包or面する場合)

空間上で複数の座標から球の中心と半径を求める必要があったので調べてみた。 球を特定するには最低4つの点が必要。 その1.全ての点が球の表面(外接)となる球を求める センサー値から回転軸を求める場合に使えるかも。(というかその為に考えた) gist.githu…

Oculus GO アプリで、マイクのパーミッションが出ないようにする

UnityでOculus Go アプリを開発していたら、マイクを利用していないのに起動時にマイク利用許可のパーミッションが表示される。 そのままでOculusの審査に出したら、リジェクトされてしまった。 OverView: The app must request the minimum number of permi…

HoloLensでXbox One用のゲームパッド2-その後

以前、HoloLensでXbox One S のゲームパッドを使う方法を書きましたが、 その時の課題の解決方法のがひとまずわかりました。 元記事はこちら littlewing.hatenablog.com この記事ではUnityのInputManagerを利用してキーを取得する方法を試したのですが、 Xbo…

Unityで利用する c++ のDLLを作成する。(Visual Studio 2017)

基本的に、以下のページにある手順で進めればNative Plugin を作成できるのですが 解説が、VS2013ベースになっているので、Visuai Studio 2017で実施した場合に ハマッた部分を、忘れないうちにスクショ付きでまとめました。 部分的にしか解説してないので、…

Unity 2017.3 で TouchScreenKeyboard が使えない

Unity 2017.3を利用してHoloLensアプリを開発する際に、キーボードが使えなくて困ったのでメモ。 D3DのHoloLensアプリケーションではキー入力が使えないのですが、 Unity 2017.2までは、 Build TypeをXAMLにして、TouchScreenKeyboardを利用すれば、自動的に…

HoloLens+Arucoを触ってみた

こちらのリポジトリの「HoloLensArucoTracking」を触ってみた https://github.com/KeyMaster-/HoloLensArucoTracking/ Editor用とHoloLens用のSceneがある。 使い方はReadme見れば大体わかる Unity 5.6.3とUnity 2017.3.b10でHoloLens実機ビルドできた。 you…

Unity EventをInspector上で登録できるようにする

説明用にメモ public なUnityEventを作成すると、Inspector上で、イベント内容を登録できるようになる using UnityEngine; using UnityEngine.Events; public class Hoge: MonoBehaviour{ public UnityEvent onInitialized; } このイベントはどこかで初期化…

Hologram Stability (ホログラムの安定性) の日本語訳

目次「ホログラムの安定性」 1. ホログラム安定性にかかわる用語 - Accuracy (正確性) - Jitter (ジッター/ゆらぎ) - Judder (ジャダー /振動) - Drift(ドリフト/ずれ) - Jumpness (ジャンプ) - Swim (およぐ) - Color separation(色分離) 2. フレームレ…

HoloLensでXbox One用のゲームパッドを使う

UnityでのHoloLensアプリ開発にXboxOne用のゲームパッド(コントローラー)を利用してみました。利用までの手順などをまとめます。 ちなみにある程度動作したのですが、一部うまく動いていない状況です。 調査と試行錯誤の記録としてメモしておきます。

HoloLensで「おっぱい曲面方程式」を可視化する

2011年に、「おっぱい曲面方程式という世紀の大発明」がされて以来、数多くの言語でこの方程式の実装が行われてきましたが、今回、満を持して複合現実デバイスHoloLensで実装をしてみました。

Unity開発/Visual Studio2015をカスタマイズして使い勝手を向上させる。(テーマの変更とか)

Unityでの開発のために、最近VisualStudioを使い始めた人も多いこの頃。 高機能なVisualStudioは、見慣れない操作メニューも満載で、使い勝手が悪いと思いつつ、カスタマイズせずにそのまま使っていると作業効率が落ちてしまいます。 コードエディタとして使…

Holographic Remotingについて(HoloLensCompanionKitを動かしてみる)

前回の記事「Windows HolographicとHoloLens」で、Windows Holographicプラットフォームの概要を書きましたが、デスクトップのUWPなどのアプリケーションとHoloLensを連携させるための機能としてHolographic Remotingが重要な技術的な要素となります。 Holog…

Google TangoのUnity開発環境を整える(Lenovo Phab 2 Pro)

Lenovo Phab 2 Proを手に入れたので、Tango機能を触ってみました。 書きかけなので、随時更新すると思います。