凹みTips

C++、JavaScript、Unity、ガジェット等の Tips について雑多に書いています。

C#

Unity で Raymarching で描画したオブジェクトとのコリジョンを作ってみた

はじめに 前回の記事では G-Buffer を利用して Raymarching で数式から図形を描画する方法を紹介しました。 Unity で Command Buffer を使って Raymarching をしてみた - 凹みTips G-Buffer を利用して Raymarching して描画した図形はコライダが無いため、…

Unity で Command Buffer を使って Raymarching をしてみた

はじめに id:i-saint さんのこちらの記事(rendering fractals in Unity5 - primitive: blog)に触発されて勉強中です。Raymarching はポリゴンベースでなく、距離関数(distance function)と呼ばれる数式を元にオブジェクトをレンダリングする方法で、工夫…

Unity 5 の CommandBuffer を利用したレンダリングパイプラインの拡張について調べてみた

はじめに Unity 5 より利用できるようになった CommandBuffer を利用するとレンダリングパイプラインを拡張して色々な表現が可能となります。公式ブログにこの詳細が書いてあり、サンプルもブログ中またはドキュメント上で配布されています。 (English) Exte…

Unity でリップシンクができる OVRLipSync を試してみた

はじめに Oculus 社が Unity 向けのリップシンクライブラリ、OVRLipSync をリリースしました。 https://developer.oculus.com/downloads/audio/1.0.0-beta/Oculus_OVRLipSync_for_Unity_5/ Oculus Launch Avatar Lip Sync Plugin for Unity - Road to VR Ocu…

Unity で Desktop Duplication API を使ってスクリーンキャプチャしてみた

はじめに 以下のエントリではスクリーンキャプチャを System.Drawing.Graphics.CopyFromScreen() を別スレッドで回して行っていました。 qiita.com ここで触れられているようにネイティブでやった方が速いということもあり、本エントリでは Windows 8 から使…

Unity の Low-Level Native Plugin Interface を使ったテクスチャの更新 (Windows/D3D11 編)

はじめに 本エントリは以下のエントリの続編です。 tips.hecomi.com Low-Level Native Plugin Interface を利用すると OpenGL や DirectX から直接テクスチャの生成や更新を行うことが出来ます。前回のエントリでは Mac OS X 環境下での OpenGL を例に紹介し…

ネイティブプラグインから Unity の関数(Debug.Log 等)を呼び出す

はじめに ネイティブプラグインの作成時にネイティブ側から Unity の Debug.Log() を呼んでデバッグしたくなるときが多々あります。以下のエントリ(英語)で方法が紹介されていたのでやってみました。 Artificial stupidity: C++ Plugin Debug Log ざっくり…

Low-Level Native Plugin Interface を利用してネイティブから Unity のテクスチャを高速に更新する方法を調べてみた

はじめに Unity でネイティブ側(C/C++ 等)で作成したテクスチャを利用する方法はいくつかあって、テラシュールブログさんにまとめられています。 Unityでテクスチャを読む7つの方法 - テラシュールブログ Unityでテクスチャを読む7つの方法 4・5・6につい…

VR 向け高性能ステレオカメラの Ovrvision Pro を手に入れたので詳しく調べてみた

本エントリは Oculus Rift Advent Calendar 2015 12 日目の記事になります。昨日は @MuRo_CG さんによる「アニメの雰囲気をVRに持ってくる方法」でした。以前 Gear VR のデモを見せていただきましたがすごいアニメでした!(語彙力がない) はじめに Ovrvisi…

Unity で実行時にコードやコマンドを補完つきで実行できる uREPL を作ってみた

本エントリは Unity Advent Calnedar 5 日目の記事です。昨日は @tagia0212 さんによる uGUI で透明じゃないところだけに反応するボタンを作った (Unity) - Qiita でした。 はじめに サマーレッスンの VR コンソールの話を見て、Unreal Engine にはコマンド…

Unity で Android 向けの OpenCV x ArUco を利用した AR アプリを作ってみる

はじめに Unity で Android 用のアプリを作る際、Unity だけで出来ないことをやろうとするとプラグインを利用することになります。Android 向けのプラグインは大きく分けて 2 種類あり、一つは Android の機能を利用する Java プラグイン、もう 1 つは C/C++…

Unity 5.1 から導入された新しいネットワーク機能の UNET について詳しく調べてみた

はじめに Unity 5.1 よりマルチプレイヤ用のネットワークシステム(UNET)が追加されました。 (English) Unity 5.1 is here! – Unity Blog Announcing UNET – New Unity Multiplayer Technology – Unity Blog 古い Network 機能は今後 5.x のどこかのタイミ…

現実の手を直接 VR 内に持ち込めるようになった Leap Motion Core Asset v2.3.0 を詳しく調べてみた

はじめに VR 向け Leap Motion アセットに再び神アップデートがきました。 Unity Core Assets 2.3.0 + ImageHands - Leap Motion Community Gallery | Leap Motion Developers いくつかアップデートがある中で目玉は「Image Hand」という機能で、従来は 3D …

Unity でキャラクタの足の位置を地面の形状に合わせてみた

はじめに 段差や坂を登る時などに単にアニメーションさせているだけではコライダの位置に合わせてキャラクタが上下するだけで、片方の足は地面に付いているけど、もう片方の足の位置は地面から離れているといった不自然な表現になってしまいます。 これを解…

Particle を使って Line Renderer みたいな表現を作ってみた

はじめに Line Renderer で満足できない場面があったので Particle を密に並べて線っぽく見せるのを作ってみました。 デモ Particle Playground 2 を使った版(Web Player ビルド) Unity Web Player | Particle Playground 2 Line デフォルトの Particle Sy…

Unity で格好いいパーティクル表現を作れる Particle Playground 2 を色々試してみた

はじめに Unity の Particle System である Shuriken を使ってパーティクルを作っている人が多いと思います。 Unity - マニュアル: パーティクルシステム( Shuriken ) http://marupeke296.com/UNI_PT_No1_Shuriken.html ただより凝ったことをしたくなって…

Maya LT でスキニングモデリングに挑戦して Unity で動かしてみた

はじめに Maya LT でのモデリング練習記の続きです。前回はローポリキャラクタモデリングに挑戦してみました。 Maya LT でローポリキャラクタモデリングに挑戦して Unity で動かしてみた - 凹みTips そこで触れていたように、今回はスキニングモデリングに挑…

Unity WebGL x WebSocket で複数クライアント間の大量のオブジェクトを簡単に同期できる仕組みを作ってみた

はじめに まだ実験中なのですが、Unity WebGL x WebSocket で大量のクライアント間で大量のオブジェクトを同期できる仕組みを作っています。UNET や Photon によって近いうちに対応されると思うのですが、現状では使えないのと、制限なく扱えたりチューニン…

Unity 5 の WebGL で WebSocket を利用した通信をする方法について調べてみた

はじめに Unity の WebGL では現状ではネットワーク機能に制約がありますが、WebSocket は使えるようです。 (English) On the future of Web publishing in Unity – Unity Blog 以前の記事では外側の JavaScript で Socket.IO を通じて通信した内容を用いま…

Unity 5 の WebGL で外部からテクスチャを与える方法について調べてみた

はじめに Unity 5 の WebGL 出力で、外部(自分で書いた JavaScript のコード)からテクスチャを与えたいと思い、色々調べてみましたので情報を共有したいと思います。通常の画像をテクスチャとして指定する方法と、base64 エンコードした画像をテクスチャと…

筋電の Raw Data が取得できるようになった Myo SDK 0.8.0 を試してみた

はじめに 前回、Myo の記事について書きました。 筋電によるジェスチャコントロールが可能なアームバンド Myo が届いたので遊んでみた - 凹みTips この時点では筋電の生値が未だ取れない、と書いたのですが、公式ブログで生値が取れるようになったことが発表…

Oculus Rift x Leap Motion を使った指で空間に魔法を描いて発動できる Magic VR を作ってみた

この記事は Oculus Rift Advent Calendar 2014 19日目の記事です。前日は KaleidPlayer の作者の @faifx さんによる「視差無し立体視のススメ - とあるOculusRift使いの備忘秘録」でした。2D の動画/静止画の単眼立体視を行うには、なるべく遠い場所に置く…

筋電によるジェスチャコントロールが可能なアームバンド Myo が届いたので遊んでみた

はじめに 先週、昨年の 6 月にプリオーダーしていた Myo の Developer Kit が届きました。 Myo は Thalmic Labs 社によって開発されたワイヤレスなアームバンド型のジェスチャコントローラです。 価格はプリオーダー時が $149、現在は $199 です。 Buy Preor…

Unity 5 x WebGL について詳しく調べてみた

はじめに 本エントリは Unity Advent Calendar 2014 8日目の記事になります。 Unity 5 からは Build ターゲットに WebGL が追加されます。Unity 5 プリオーダ向けベータ版で現在試すことが出来ます。 Unity - Beta - Unity 5.0 今年の 3/18 に行われた GDC20…

Ovrvision SDK v2 x Oculus Rift DK2 で AR を楽しむ方法についてまとめてみた

はじめに Oculus Rift と組み合わせて立体視可能なスルー画を楽しめるステレオカメラ、Ovrvision の待望の DK2 版マウンタ及び SDK が発売・公開され、先週予約していたものが届きました。 Ovrvision 1 | Ovrvision Ovrvision 1 : Stereo camera for Oculus …

Unity のオーディオの再生・エフェクト・解析周りについてまとめてみた

はじめに Unity では単純に音を再生するだけではなくて、エフェクトを掛けたり解析したりする所まで含めて簡単に音を扱える仕組みが整っています。音の解析結果をグラフィカルに出力したり、逆に何らかの入力を音にフィードバックしたりすることもとても簡単…

Oculus Rift で頭の動き + タップで簡単に Unity 4.6 UI を選択できるやつを作ってみた

はじめに HMD での UI 操作は色々と議論がなされていると思いますが、中でも頭の向きを利用した UI は結構安定して操作できると個人的に感じています。頭は思ったよりも低カロリーで正確に動かすことが可能で、実際ブラウザ操作(リンククリック)もできるく…

Unity 4.6 から利用できる UI での EventSystem をカスタムする方法について調べてみた

はじめに Unity 4.6 から導入された新 UI システムでは、マウスやキーボード、キーパッドの入力を担当する Standalone Input Module と、タッチを担当する Touch Input Module によって、入力イベントが扱われます。何かしらの UI 要素を追加すると、自動で…

SerialPort または Uniduino を使った Unity と Arduino を連携させる方法調べてみた

はじめに Unity と Arduino を連携させて色々なセンサやアクチュエータを扱うことができるようになると、センサの値のビジュアライズだけに留まらず、3D モデルやゲームと連動した動きが色々と簡単に実現できるようになったり、逆にゲームの中に連動したこと…

ユニティちゃんが声に合わせて口パクしてくれるリップシンクアセットを作ってみた

はじめに 以前、Unity で MMD4Mecanim を利用した MMD モデルさん達がリップシンクしてしゃべってくれるアセットの作成を行いました。 Unity でリアルタイムにリップシンクする MMD4Mecanim LipSync Plugin を作ってみた - 凹みTips これを利用して、ユニテ…