C++
はじめに 前回の記事で Windows Graphics Capture の解説を行いました。 tips.hecomi.com 記事中でも触れたのですが、調査の目的としては OVR Toolkit などにも使われている拙作の uWindowCapture にこの API を導入するためでした。従来の設計に合わせるの…
はじめに i_saint さんの記事で Windows 10 April 2018 Update (1803) より Windows Graphics Capture という API が追加されたのを最近知りました。 qiita.com docs.microsoft.com ざっくり言えば HWND や HMONITOR から直接 ID3D11Texture2D を引っ張って…
はじめに Unity 内で Windows でウィンドウを個別にキャプチャするアセットの uWindowCapture を v.0.6.0 へ更新しましたので内容の紹介です(≒ 今月はネタがないのでバグ修正報告です)。 uWindowCapture は Unity のメインスレッドを邪魔することなく複数…
はじめに 主要な VR 向けのデスクトップ表示アプリ(Virtual Desktop や Bigscreen など)では、PC だけでなくモバイル VR もサポートしています。これを実現するには、キャプチャしたデスクトップ画面をリモートへ低遅延で転送しなければなりません。また、…
はじめに 前回の記事で NVIDIA のハードウェアエンコーダである NVENC(および NVDEC)を使いやすくした NvPipe を Unity で使えるようにしたアセットの紹介をしました。 tips.hecomi.com しかし問題点として、NvPipe はバッファのポインタしか食わせる口が…
はじめに NvPipe は NVIDIA 製 GPU に搭載されたハードウェアエンコーダ(NVENC)およびデコーダ(NVDEC)機能を簡単に C 言語で使えるようにラップした NVIDIA 製のライブラリです。 github.com NVENC および NVDEC は NVIDIA Video Codec SDK に含まれ、対…
はじめに 以前、CustomTextureUpdate の記事を書きました。 tips.hecomi.com この API は、ネイティブ(DLL 側)からバッファのポインタを渡してあげるだけでプラットフォーム間の差異(OpenGL や DirectX 固有のテクスチャの更新方法)を気にせず且つ簡単に…
はじめに 本エントリでは先ほど公開した uWindowCapture という Windows において個別のウィンドウをキャプチャできるアセットの解説を行います。本アセットで実現できることは以下のようなものです。 ウィンドウを個別にキャプチャ 背面やデスクトップ画面…
はじめに VR 向けのバーチャルデスクトップを作っているとハンドコントローラを使ったポインタによる UI 等で指した場所の操作をしたくなります。こういった場合は kernel32.dll 経由でマウス操作をエミュレーションすることが多いと思いますが、Windows で…
はじめに 前回は以下の記事で低レベルネイティブプラグインインターフェースを使ったテクスチャのアップデートについての解説を行いました: tips.hecomi.com しかし前回のプロジェクトでは以下の点で複数プラットフォーム対応が面倒という問題がありました…
はじめに Unity で画像をネイティブ側で非同期に読み込みたい、というお話が Twitter で出ていたので、やってみました。 従来の問題点 StreamingAssets ディレクトリやウェブから WWW や UnityWebRequest で持ってきた画像ファイルを使う場合、Unity にデコ…
はじめに 主に Windows での開発の話になります。 Unity でネイティブプラグインの開発していると、一番困るのが DLL の更新です。Unity では DLL を読み込むとエディタを再起動するまで解放してくれないため、エディタ実行中に DLL を置き換えることが出来…
はじめに 以下のエントリではスクリーンキャプチャを System.Drawing.Graphics.CopyFromScreen() を別スレッドで回して行っていました。 qiita.com ここで触れられているようにネイティブでやった方が速いということもあり、本エントリでは Windows 8 から使…
はじめに 本エントリは以下のエントリの続編です。 tips.hecomi.com Low-Level Native Plugin Interface を利用すると OpenGL や DirectX から直接テクスチャの生成や更新を行うことが出来ます。前回のエントリでは Mac OS X 環境下での OpenGL を例に紹介し…
はじめに ネイティブプラグインの作成時にネイティブ側から Unity の Debug.Log() を呼んでデバッグしたくなるときが多々あります。以下のエントリ(英語)で方法が紹介されていたのでやってみました。 Artificial stupidity: C++ Plugin Debug Log ざっくり…
はじめに Unity でネイティブ側(C/C++ 等)で作成したテクスチャを利用する方法はいくつかあって、テラシュールブログさんにまとめられています。 Unityでテクスチャを読む7つの方法 - テラシュールブログ Unityでテクスチャを読む7つの方法 4・5・6につい…
はじめに Unity で Android 用のアプリを作る際、Unity だけで出来ないことをやろうとするとプラグインを利用することになります。Android 向けのプラグインは大きく分けて 2 種類あり、一つは Android の機能を利用する Java プラグイン、もう 1 つは C/C++…
はじめに 前回の記事で書いたように 8/1、8/2 に東京ビッグサイトにて開催された MFT 2015 へ友達と趣味で制作していた LITTAI というゲームを出展してきました。お越しくださった皆様、ありがとうございました! LITTAI は Lit Table Interface の略の造語…
はじめに ArUco は BSD ライセンスで配布されている OpenCV をベースにした軽量な AR ライブラリです。 ArUco: a minimal library for Augmented Reality applications based on OpenCV | Aplicaciones de la Visión Artificial 以下の様な 2 次元マーカを 1…
はじめに 仕事が立て込んでいて書くのが遅れてしまいましたが、8/23、24 でソフトピアジャパンで行われた Ogaki Mini Maker Faire 2014 (OMMF2014) に、レゴで出来た自由に組み替えられるステージにプロジェクションしてインタラクティブに遊べるゲーム Mont…
はじめに 通常のカメラ画に AR オブジェクトを描画すると、解像感や色のズレで AR オブジェクトにバーチャルっぽさを感じてしまいます。そこで逆に現実の世界の方をバーチャルっぽくしてあげることで、AR オブジェクトに感じる違和感が低減されるのではない…
はじめに Point Cloud Libarary(PCL)の勉強を始めました。 PCL - Point Cloud Library (PCL) 【シリーズ「PCLを触ってみよう!」第一回】3D点群処理ライブラリ「Point Cloud Library」の概要 | DERiVE ブログ & メルマガ Point Cloud Library - Wikipedia P…
はじめに 以前、Oculus Rift と Ovrvision で現実の世界を OpenCV で加工して見るエントリを書きました(Oculus Rift × OVRVISION × OpenCV で線画だけの世界を覗いてみた - 凹みTips)。今回は、以前のものをちょっとだけ高速化して、かつ他のエフェクトを…
はじめに OVRVISION(オーバービジョン)が届きました! Ovrvision : Oculus Riftに装着するステレオカメラ Oculus Rift にマウントできる軽量、VGA、低レイテンシ、60 fps なステレオカメラです。いくつかのイベントで触らせて頂いていたのですが、完成度が…
はじめに Oculus Rift のデモを行っていると、HMD をつけていない観客は左右に分割された Oculus Rift 用の映像を見ることになり、デモ効果が薄れてしまいます(本当はフルスクリーンや 3D メガネで立体視したい)。ということを、Twitter で @koukiwf さん…
Unity 5.2 以降について Unity 5.2 より Low-Level Native Plugin Interface のお作法が少し変更になりましたので、最新の情報についてはドキュメントをご参照下さい。 Unity - マニュアル: 低レベルネイティブプラグインインターフェース はじめに Unity で…
はじめに 有償のプロ版限定ですが、Unity でネイティブプラグインと連携してテクスチャを操作できると、OpenCV で色々変更を加えたりと表現の幅が色々と広がります。調べてみましたのでメモします。 環境 Mac OS X 10.9.1 Unity 4.3.2f1 (Pro) 先行技術 No h…
はじめに Oculus Rift を使用して、VR 内のキャラと目が合う、握手できるなどの衝撃体験を @GOROman さんが実現されて話題になっています。 Dive into VR - Oculus Rift + Razer Hydra feat. Miku - YouTube Oculus Rift で 初音ミク と握手をしてみた - Mik…
はじめに 先日書きました Maker Faire Tokyo 2013 でレゴへのプロジェクションマッピングネタで出展してきた - 凹みTips でも使用していた Qt から OSC を扱うカスタム QML 要素を紹介します。 OSC とは OpenSound Control の略で、UDP の上で非常に低遅延な…
はじめに 11/3、4 で開催されていた Maker Faire Tokyo 2013 に、id:jonki と 凸P(Mont Blanc Pj.)というネタで出展してきました。レゴで作ったステージにゲーム画面をプロジェクションマッピングし、レゴを動かすとゲーム内のブロックも動的に変更された…