夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

3Dモデリング

UnityC#でキューブを作成しUVについて理解する

本日はMRMT枠です。 今回はUV情報をスクリプトベースでメッシュに組み込む方法を調べていきます。 〇UnityC#でUVを含むメッシュを生成する C#で頂点情報に加えUV情報を基にメッシュを構築する方法は次のようになります。 using System.Collections.Generic; …

MixedRealityModelingToolsその⑩ Blenderから送信するメッシュ情報にUV情報を組み込む

本日は筆者が開発しているMixedRealityModelingTools枠です。 〇MixedRealityModelingToolsとは? MixedRealityModelingToolsとは筆者が個人的に開発しているBlenderのソリューションで、目的としてBlenderからMixedRealityアプリケーション開発ツールと連携…

BlenderのPythonでメッシュからUV情報を取得する

本日はBlenderモデリング枠です。 今回は現在作成しているMixedRealityModelingToolsの開発に向けて調査としてBlender内でメッシュUV情報はどのように扱われているのか?BlenderからUV情報を取得するにはどうすればよいのかを調べていきます。 〇BlenderのUV…

MixedRealityModelingTools その⑧ Blender上でテクスチャの取得とバイナリの送信

本日は先日最初期のβ版リリースをしたMixedRealtiyModelingToolsの機能開発枠です。 〇MixedRealityModelingToolsとは? MixedRealityModelingTools(MRMT)は筆者が開発しているMixedReality空間内での3DCGのデータの取り扱いに関するパッケージです。 Blen…

MixedRealityModelingToolsのβ版をリリースしました。

本日はMRMT枠です。 前々から開発を進めていたMixedRealityModelingToolsのβ版をリリースしましたので紹介をします。 〇リリースページ github.com なお本日時点でデモを想定しているバージョンであり、バグが多々含まれている可能性があります。 またUI等も…

BlenderでPythonを使用してカメラ情報を取得し位置を変える。

本日はBlenderモデリング枠です。 今回はMixedRealityModelingToolsに使用するための技術検証としてBlenderのpythonでBlenderのカメラ情報にアクセスして、編集を行います。 〇Blenderのカメラ情報にアクセスする。 Blenderでカメラオブジェクトを取得するに…

Blenderで選択されマテリアルが持つテクスチャ情報を取得する

本日は昨日に引き続きMixedRealityModelingTools枠です。 現在メッシュやマテリアルの色を送信することができているMixedRealityModelingToolsですが、バージョン1のリリースにテクスチャ情報を含ませたいためこれを行うためのシンプルなコードを記述してい…

Blenderでサーバーを立てMessagePackでメッシュを送信する その⑦マテリアル情報の取得

本日はBlenderモデリング枠です。 本日は現在開発しているMixedRealityModelingToolsの機能開発を行います。 昨日Blenderで現在選択しているオブジェクトのマテリアルを取得するコードを書いていきました。 redhologerbera.hatenablog.com 本日はこれを利用…

BlenderのPythonで現在選択しているオブジェクトの使用しているマテリアルの色情報を取得する

本日はBlenderモデリング枠です。 〇選択しているオブジェクトからマテリアルの数を取得しマテリアル名の名前をリストに格納する マテリアルの情報を取得するためにはまずはマテリアル数を取得し、マテリアル名をリストに格納します。 これはBlenderを含め3D…

Blenderでテキストフィールドを作成し、入力した文字をコンソールに出力するシンプルなアドオンを作成する

本日はBlender枠です。 現在MixedRealityModelingToolsなるBlenderとUnityで相互に情報をやり取りできるパッケージを作成しています。 今回はBlender側の実装する上での基礎的なコードとしてテキストフィールドを表示して、任意の文字をログに出力するような…

BlenderのPythonでサーバーを立てMessagePackでメッシュを送信する MixedRealityModelingToolsその④Unity側のメッシュデータのデシリアライズ

本日は昨日に引きつづき自身が開発中のパッケージMixedRealityModelingTools(仮)の機能紹介を行います。 昨日はUnity側のTCPクライアントの実装を見ていきました。 redhologerbera.hatenablog.com 本日はBlenderから送信されたメッシュデータの処理を解説し…

BlenderのPythonでサーバーを立てMessagePackでメッシュを送信する MixedRealityModelingToolsその②MessagePackを使用したデータの送信

本日はUnity枠です。 現在BlenderからUnity製アプリケーションに向けてネットワーク経由でメッシュ情報を双方向に通信するパッケージを開発しています。 MixedRealityModelingToolsという仮称で開発していますが今回は昨日に引き続きBlender側のコア機能を紹…

BlenderのPythonでサーバーを立てMessagePackでメッシュを送信する MixedRealityModelingToolsその① 概要とメッシュの取得

本日はBlender枠です。 現在BlenderからUnity製アプリケーションに向けてネットワーク経由でメッシュ情報を双方向に通信するパッケージを開発しています。 MixedRealityModelingToolsという仮称で開発していますが今回はBlender側のコア機能を紹介します。 g…

Unityでメッシュの見た目をフラットシェーディングとスムースシェーディングで自在に変える

本日はUnity枠です。 現在勉強もかねてBlenderとUnityアプリケーションを連携させるパッケージを作っています。 github.com こちらはまだ基礎機能ができただけで現時点では本ブログで紹介できるようなボリュームがないのですが今回はこの中からメッシュの見…

Blenderのコンポジットを使用してCycleでブルームをかける

本日はBlenderモデリング枠です。 筆者はあくまでxRアプリケーションで使用するための3Dアセット作成のためにBlenderを使用していたため映像制作はそこまで経験がなかったのですが、今回はレンダリングに際してコンポジットを使用してブルームをかけていきま…

BlenderでPythonを使用して現在選択しているすべてのオブジェクトに対して重力を設定する

本日はBlenderモデリング枠です。 筆者は今年に入り本格的にPythonを使用したBlenderの効率化を試していますが、今回は3Dビューポートで選択しているすべてのオブジェクトに対して重力を設定するスクリプトを書きます。 〇重力の設定 Blenderでオブジェクト…

Charactor Creatore4のHeadshot Pluginで写真から人物の顔を作成する

本日はモデリング枠です。 この前CharactorCreatoreのプラグインであるHeadshot Pluginの新しいバージョンとしてHeadshot Plugin2が登場しました。 今回はドキュメントを読みながらこちらを触ってみます。 〇HeadshotPluginのドキュメント Headshotは画像か…

Blenderでカーブオブジェクトに沿ってオブジェクトを動かす

本日はBlenderモデリング枠です。 アニメーションについて学んでいきます。 〇カーブオブジェクトに沿ってオブジェクトを動かす ①基準とするカーブオブジェクトを作成します。今回はメッシュから変換しています。 筆者同様に一度メッシュで作成した辺をカー…

Blenderでカメラのレンダリングターゲットを指定する

本日はBlender枠です。 Blenderでは3Dモデルの作成のほかにカメラを使用してレンダリングを行うことができます。 この時アニメーションを利用してカメラのアニメーションを行うこともできますが、この際にマイフレームきちんと設定を行わない限り対象のオブ…

CharactorCreaterの操作性をBlenderと合わせる

本日はモデリング枠です。 CharactorCreater4(CC4)を触っていきます。 〇CharactorCreater4とは? CC4はReallusionが開発、提供しているソフトウェアです。 その名前の通り、3DでBlendShapeやリグが入っているリアルな人間モデルを作成することができます。 …

Blenderでオブジェクトからカスタム分割法線を一括でクリアするスクリプトを書く

本日はBlenderモデリング枠です。 本日はUnityや他の3Dツールなどで作成した3DモデルをBlenderで編集する際などに問題となるカスタム分割法線を一括でクリアしていきます。 〇カスタム分割法線とは? カスタム分割法線とは3Dモデルが持つことができる法線…

Blenderでライトマップをベイクする際にスペキュラーの値でベイクに失敗した話

本日はBlenderモデリング枠です。 Blenderではベイクを行うことによってレンダリング情報をテクスチャとして書き出すことができます。 今回はベイクを行う際のパラメータの設定ミスによってベイクに失敗していたので備忘録としてトラブルを残します。 〇ライ…

ゼロから始めるUnityShader開発 第五章 頂点カラーを描画するシェーダーを書く

本日はシェーダー枠です。 先日MRGTのVertexColorsの機能についてみていきました。 今回はオリジナルのシェーダーで頂点カラーを描画するシェーダーを書いていきます。 〇頂点カラーを描画するシェーダー 頂点カラーを描画する最もシンプルなシェーダーは以…

MixedRealityToolkit GraphicsTools StandardShaderのVertex Colorの機能を読み解く その①

本日はMRGT枠です。 MixedRealityGraphicsToolsで提供されているStandardShaderでは様々な機能が提供されています。 今回はその中からVertex Colorsの機能を試していきます。 〇Vertex Colors Vertex Colorsは頂点カラーの意味でこれはメッシュが頂点カラー…

SMPLモデルをBlenderで触る

本日はBlenderモデリング枠です。 先日TestToMotionの一つであるTEMOSの論文を見て勉強した際にSMPLモデルという手法を知りました。 今回は3Dの人体の動きと密接にかかわりがあるSMPLモデルについて実際に触っていきます。 〇SMPLモデルとは? SMPLモデルは…

Blenderでポリゴン数が多い順にオブジェクトを表示する その③UIパネル状にポリゴン数を表示する

本日は昨日に引き続きBlenderで数が多い順にオブジェクトを表示する機能を作成します。 昨日はUI上で実行できるようにしました。 redhologerbera.hatenablog.com 今回はこちらを改良してUI上に結果も表示するようにします。 〇コード 前回まではコンソールウ…

Blenderでポリゴン数が多い順にオブジェクトを表示する その② UI

本日はBlenderモデリング枠です。 先日選択しているオブジェクトのポリゴン数を取得して多い順にソートしてコンソールウィンドウに表示する機能を作成しました。 redhologerbera.hatenablog.com 前回の状態ではいちいちすべてのオブジェクトを選択してスクリ…

Blenderでポリゴン数が多い順にオブジェクトを表示する

本日はBlenderモデリング枠です。 Blenderでは3Dビューポートのビューポートオーバーレイから統計にチェックを入れて有効化することで3Dビューポートにポリゴン数を表示することができます。 しかしここで表示されるポリゴン数はシーン上に表示されている…

BlenderのPythonコードをVisualStudioCodeでコーディングする

本日はBlender枠です。 BlenderではPythonを使用することで聞い脳の開発やコーディングが行えますがBlenderのテキストエディタ上ではVisualStudioやJetbrain Riderなどと異なり変換予測などのコーディング支援を受けることができません。 また、筆者はGitHub…

テキストベースで人体のモーションを作成するTEMOSの論文を読む

本日はモデリング枠です。 近年生成系AIと呼ばれるAI群はOpenAIを中心に爆発的速度で広まっています。 先日テキストから人体の動きを生成するText To Motionと呼ばれる部類のMotionGPTが登場しました。 motion-gpt.github.io 本記事公開本日時点ではGitHubペ…