MRが楽しい

MRやVRについて学習したことを書き残す

2020-08-01から1ヶ月間の記事一覧

xR Developers Community Conferenceでの発表資料

xR Developers Community Conference での発表資料です。 20200831 x r_developerscommunityconference_holomon from Holo Mon www.slideshare.netvrtokyo.connpass.com

Blender2.8で360度画像をレンダリングする

本日は Blender2.8 の小ネタ枠です。 Blender2.8で360度画像をレンダリングする手順を記事にします。 サンプルシーンの作成 レンダリング用に環境テクスチャを設定した以下のサンプルシーンを用意しました。 カメラの配置 初めに360度画像を撮影するカメラを…

スクリプトからHoloLensの3Dオブジェクトフォルダにアクセスする

本日は HoloLens の小ネタ枠です。 スクリプトからHoloLensの3Dオブジェクトフォルダにアクセスする手順を記事にします。 3Dオブジェクトフォルダへのアクセス スクリプトからHoloLensの3Dオブジェクトフォルダにアクセスするには KnownFolders Class を使い…

MeshBakerを使ってメッシュを結合する

本日は Unity の小ネタ枠です。 MeshBakerを使ってメッシュを結合する手順を記事にします。 MeshBaker MeshBaker はメッシュとマテリアルを結合して、ドローコールを減らします。 assetstore.unity.comマテリアルを共有できるようモデルを修正し、テクスチャ…

頂点カラーシェーダを使ってSetPassCallとBatchesを減少させてみる

本日は Unity の小ネタ枠です。 今回は SetPassCall と Batching の理解のため、頂点カラーシェーダを使ってこれらを減少させてみます。 前提条件 前回記事の続きです。 bluebirdofoz.hatenablog.com SetPassCall SetPass Call は CPU から GPU へのデータの…

Unityでレンダリング統計ウィンドウとFrame Debugを利用する

本日は Unity の小ネタ枠です。 Unityでレンダリング統計ウィンドウと Frame Debug を利用する手順を記事にします。 レンダリング統計ウィンドウ [Game]画面の[Stats]をチェックすることで表示できます。 エディタ再生時のFPSや、レンダリングの SetPass Cal…

Blender2.8で利用可能なpythonスクリプトを作る その63(頂点グループのウェイト削除)

本日は Blender の技術調査枠です。 Blender2.8で利用可能なpythonスクリプトを作ります。 頂点グループのウェイト削除 指定オブジェクトの頂点グループ名のウェイト削除を行います。 ・Script_ops_weightclear_object_vertexgroup.py # bpyインポート impor…

Blender2.8で利用可能なpythonスクリプトを作る その62(頂点グループへのウェイト設定)

本日は Blender の技術調査枠です。 Blender2.8で利用可能なpythonスクリプトを作ります。 頂点グループへのウェイト設定 指定オブジェクトの頂点グループ名にウェイトの設定を行います。 指定の頂点グループ名がオブジェクトに存在しない場合は頂点グループ…

Blender2.8で利用可能なpythonスクリプトを作る その61(新規画像の作成)

本日は Blender の技術調査枠です。 Blender2.8で利用可能なpythonスクリプトを作ります。 新規画像の作成 指定の名称で新規画像を作成します。 画像作成の関数で指定することで、アルファの利用や32bitフロートの設定を切り替えることができます。 ・Script…

NVIDIA Nsight Graphicsの環境構築

本日は環境構築枠です。 NVIDIA Nsight Graphicsの環境構築手順を記事にします。 NVIDIA Nsight Graphics NVIDIA Nsight Graphics は Direct3D(11,12,DXR),Vulkan(1.2,NV Vulkan Ray Tracing Extension),OpenGL,OpenVR および Oculus で構築されたフレーム…

Blender2.8で利用可能なpythonスクリプトを作る その60(Operatorを利用しないオブジェクトの複製)

本日は Blender の技術調査枠です。 Blender2.8で利用可能なpythonスクリプトを作ります。 Operatorを利用しないオブジェクトの複製 指定オブジェクトの複製を行います。 本スクリプトは Operator を利用せず、複製を行います。 これにより、複製オブジェク…

Blender2.8のEEVEEレンダーエンジンで透過マテリアルを利用する

本日は Blender の小ネタ枠です。 Blender2.8のEEVEEレンダーエンジンで透過マテリアルを利用する手順を記事にします。 透過の設定 プリンシプルBSDFのマテリアルを利用する場合、伝播の値を 1 にすることで透過を設定できます。 ただしレンダーエンジンに[E…

Blender2.8でモンスター型のキャラクターモデルを作成する その3(毛並みオブジェクトを結合する)

本日はモンスター型モデルの作成枠です。 髪の毛オブジェクトとカーブオブジェクトを活用して表現した毛並みを1つのオブジェクトに結合します。前回記事の続きです。 bluebirdofoz.hatenablog.com メッシュの形状を確定する メッシュの形状を確定させるには…

Discordのクライアントアプリのインストールとアカウント作成

本日は環境構築枠です。 Discordのクライアントアプリのインストールとアカウント作成を記事にします。 クライアントアプリのインストール 以下の公式ページからクライアントアプリのインストーラが取得できます。 discord.com インストール手順はダウンロー…

デスクトップモードで起動するVRChatのショートカットを作成する

本日は VRChat の小ネタ枠です。 デスクトップモードで起動するVRChatのショートカットを作成する方法を記事にします。 前提条件 VRChat自体のインストール手順は以下の記事を参照ください。 bluebirdofoz.hatenablog.com VRChatのショートカットの作成方法 …

NVIDIA Driverを最新版に更新する

本日は環境構築枠です。 NVIDIA Driverを最新版に更新する手順を記事にします。 インストール手順 ダウンロードページからの取得 NVIDIA Driverの最新版は以下のダウンロードページから取得可能です。 www.nvidia.com Driver を取得するにはPCのグラフィック…

Blender2.8でベイクする際にサンプリング数を減らして高速化する

本日は Blender2.8 の小ネタ枠です。 Blender2.8でベイクする際にサンプリング数を減らして高速化する手順を記事にします。 ベイク時のサンプリング数 例えば以下のような単色のディフューズをテクスチャにベイクします。 デフォルトの設定(CPU実行)でベイ…

Blender2.8で[選択物->アクティブ]のベイクで色が混ざる場合の対処

本日は Blender2.8 の小ネタ枠です。 Blender2.8で[選択物->アクティブ]のベイクで色が混ざる場合の対処について記事にします。 [選択物->アクティブ]のベイク ベイク実行時に[選択物->アクティブ]を有効にすることで、異なるオブジェクト間でベイクを行うこ…

clusterの始め方 VR操作編

本日は cluster の利用手順です。 clusterのVRでの操作方法を記事にします。なお、本記事は Oculus Rift 環境での操作方法になります。 基本操作 VR空間では Oculus Rift のコントローラで以下の基本操作が行えます。 左スティック操作前後左右への移動 右ス…

Blender2.8でレンダー色空間で画像ファイルを出力すると色が薄暗くなる問題の対処

本日は Blender2.8 の小ネタ枠です。 Blender2.8でレンダー色空間で画像ファイルを出力すると色が薄暗くなる問題の対処について記事にします。 レンダー色空間で画像ファイルを出力する 例えばベイクで作成したテクスチャを画像ファイルで出力するとき、[レ…

Blender2.8でノーマルマップをベイクする際の画像フォーマット

本日は Blender2.8 の小ネタ枠です。 Blender2.8でノーマルマップをベイクする際の画像フォーマットについて記事にします。 ノーマルマップの作成方法 ノーマルマップの作成の基本的な手順は以下の記事を参照してみてください。 bluebirdofoz.hatenablog.com…

MRTKStandardシェーダのChannelMapでEmission(発光)を利用する

本日は MRTK の技術調査枠です。 MRTKStandardシェーダのChannelMapでEmission(発光)を利用する手順を記事にします。 前提条件 前回記事の続きです。 bluebirdofoz.hatenablog.com ChannelMapでEmission(発光)を利用する ChannelMap の設定で Emission Map …

Pythonでclassを利用する

本日は Python の小ネタ枠です。 Pythonでclassを利用する方法を記事にします。 Pythonのクラス定義 class キーワードを使って独自のクラスを定義できます。 クラスでは独自の変数を定義できるほか、初期化時の処理やメソッドを定義することができます。 変…

Pythonでグローバル変数を利用する

本日は Python の小ネタ枠です。 Python でグローバル変数を利用する方法を記事にします。 グローバル変数とローカル変数 Pythonでは関数外で定義した変数をグローバル変数、関数内で定義した変数をローカル変数と呼びます。 関数内からグローバル変数を参照…

UnityEngineのMeshクラスを読み解く Advanced Mesh API その2

本日は Unity の調査枠です。 UnityEngine の Mesh クラスのドキュメントを理解のため、少しずつ読み進めていきます。前回記事の続きです。 bluebirdofoz.hatenablog.com Advanced Mesh APIクラスのドキュメント 今回は Mesh クラスで利用する Advanced Mesh…

UnityEngineのMeshクラスを読み解く Advanced Mesh API その1

本日は Unity の調査枠です。 UnityEngine の Mesh クラスのドキュメントを理解のため、少しずつ読み進めていきます。前回記事の続きです。 bluebirdofoz.hatenablog.com Advanced Mesh APIクラスのドキュメント 今回は Mesh クラスで利用する Advanced Mesh…

UnityEngineのMeshクラスを読み解く Simple Mesh API その2

本日は Unity の調査枠です。 UnityEngine の Mesh クラスのドキュメントを理解のため、少しずつ読み進めていきます。前回記事の続きです。 bluebirdofoz.hatenablog.com Simple Mesh APIクラスのドキュメント 今回は Mesh クラスで利用する Simple Mesh API…

UnityEngineのMeshクラスを読み解く Simple Mesh API その1

本日は Unity の調査枠です。 UnityEngine の Mesh クラスのドキュメントを理解のため、少しずつ読み進めていきます。前回記事の続きです。 bluebirdofoz.hatenablog.com Simple Mesh APIクラスのドキュメント 今回は Mesh クラスで利用する Simple Mesh API…

UnityでMeshクラスを使ってメッシュオブジェクトを作成する

本日は Unity の技術調査枠です。 UnityでMeshクラスを使ってメッシュオブジェクトを作成する手順を記事にします。 Meshクラス スクリプトからメッシュの作成や変更を行う UnityEngine のクラスです。 Mesh クラスには頂点データや面データが含まれていてサ…

UnityEngineのMeshクラスを読み解く

本日は Unity の調査枠です。 UnityEngine の Mesh クラスのドキュメントを理解のため、読み進めます。 Meshクラスのドキュメント 以下のドキュメントを読み進めていきます。 docs.unity3d.com Mesh 説明 スクリプトからメッシュの作成や変更をできるように…