夜風のMixedReality

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

3Dモデリング

Nasaの公開データから月と地球の位置関係をBlenderで再現する

本日はBlender枠です。 先日Nasaの公開データであるHorizon Systemを利用してデータの取得を行いました。 〇Horizon Systemとは? NasaのHorizon Systemはその名の通りアメリカNasaのデータサイトです。 日付を指定して地球から月の正確な位置座標のデータを…

Mayaでリトポロジーを行う

本日はMaya枠です。 本日はMayaの標準機能を使用してリトポロジーを行います。 〇環境 ・Windows11PC ・Maya2024 〇リトポロジーとは? リトポロジー(リトポ)はトポロジーを整える作業を指します。 トポロジーとはジオメトリの中でのメッシュの並び方を指…

Blenderでアニメーションキーフレームを登録する際にキーフレーム挿入に失敗というエラーの解消

本日はBlenderトラブルシューティング枠です。 〇環境 ・Blender 4.0 ・Windows11PC 〇発生したエラー Blenderでアニメーションをつける際に最も基本的なアプローチはキーフレームの登録です。 ポーズモードでポーズをつけIキーを押すことで現在のフレームに…

NASAの公開データから惑星の位置関係を計算する

本日は3Dモデリングのための調査枠です。 近年インターネット上で様々なデータを入手することができます。 その中でも特に価値のある公共データをオープンデータと呼ぶことがあり、シュミュレーションやAIの学習データとしても用いられています。 今回はNASA…

機械がどのように絵を描くのか? ハードウェアの仕組みとグラフィックスパイプライン

本日は3DCGの描画に関しての記事です。 筆者はグラフィックに対して強い興味があり学び実務経験もありますが、改めて基礎となる部分について自分の言葉でまとめていきます。 〇機械が絵を描く仕組み パソコンやテレビ、日常生活にあふれているデジタルディス…

fspyとBlenderで実写写真から平面を解析してカメラ位置を割り出す

本日はBlender枠です。 Blenderで合成写真を作りたい場合写真から撮影されたカメラの位置を取得する必要があります。 今回はfspyというソフトを使用して実写写真から平面を検知してBlenderでオブジェクトと重ねていきます。 〇fspyの導入 fSpyは静止画像から…

BlenderPythonで面の面積を求める

本日はBlenderPython枠です。 昨日はBlenderPythonを使用して、頂点3つから構成されるメッシュの面の方程式を求めました。 本日はここで求める面の面積を算出します。 2次元でのおさらいですが、3つの座標で構成される図形の面積を求めるには 三次元空間…

BlenderPythonで面の方程式を取得する

本日はBlenderPython枠です。 先日はBlenderで辺の方程式を求めました。 今回は頂点3つから構成される面について方程式を取得します。 〇面の方程式 面の方程式を得るためにまずはベクトル計算を行います。 今回は仮に三つの頂点を(x1,y1,z1)(x2,y2,z2)(x3,…

Blenderで選択した頂点をある平面座標上に並び替える

本日はBlender枠です。 Blenderでモデリングをしていると、次の画像のように頂点の位置にばらつきがあり面としてぼこぼこして見えることがあります。 こういった場合はSキー+Zキー+0を選択し、Z軸に対してスケールを0して歪みをなくしています。 しかし次の…

Blenderのアニメーションツールについて触る。

本日はBlender枠です。 Blenderのアニメーションを設定する方法としてタイムラインにキーフレームを打ち込む手法がデフォルトで用いられます。 しかしアニメーションように使用できるのはタイムラインだけではなくドープシート、グラフエディタ、ドライバー…

バレンタインチョコレートをモデリングする

本日はEvent枠+モデリング枠です。 本日から筆者の所属しているコミュニティのKumaMCN(熊本を拠点としたITコミュニティ)イベントで毎週ハッカソンが行われました。 今回は第一回のため趣旨と筆者が作ったものを紹介します。 〇毎週ハッカソンとは? 毎週…

Blenderでレンダリング時にメッシュの表と裏で違う色を出す その②

本日はBlender枠です。 昨日はBlenderでメッシュの裏面と表面をレンダリング時に別の色を返すようなシェーダーを作成しました。 redhologerbera.hatenablog.com 今回は前回の改修と応用を行っていきます。 前提として今回は次のようなモデルを使用します。 …

Blenderでレンダリング時にメッシュの表と裏で違う色を出す

本日はBlender枠です。 Blenderではメッシュのオーバーレイの機能からメッシュの表と裏を可視化することができます。 しかしこの状態で作業を行うには難があります。 一般的にメッシュをエクスポートする前やスムースがおかしい際にチェックの意味で表示させ…

MayaとBlenderそれぞれでオブジェクトにテクスチャを張る

本日は3Dモデリング枠です。 MayaとBlenderで比較していきます。 今回はマテリアルの設定の続編でテクスチャを設定していきます。 〇テクスチャとは テクスチャとは一般的には3DCGで使用するための素材として読み込んだ画像形式のファイルを指します。 3DCG…

Blenderで水のシミュレーション Aqua Flow Proを触る その①

本日はBlender枠です。 本日はこちらの記事で紹介されていたAqua Flow Proを触っていきます。 modelinghappy.com 〇Aqua Flow Proとは? blendermarket.com Aqua Flow ProはBlenderの最新の機能を使用した流体シミュレーションのアドオンです。 Blenderのバ…

BlenderPythonで行列を使用して頂点座標を計算してオブジェクトを回転させる

本日はBlender Python枠です。 今回はグラフィックの勉強の一環として行列を使用してオブジェクトを回転させます。 〇3DCGの頂点と行列 3DCGは3D空間(XYZ座標)に配置された頂点とそれを結ぶ辺によって構成されるメッシュ(面)で構成されています。 頂点はX…

Mayaを起動した際にUIが正常に起動せず、クラッシュする問題

本日はMayaのトラブルシューティング枠です。 筆者のうっかりした設定でMayaが起動できなくなったため備忘録のために記録します。 〇発生したトラブル Maya起動時にコンポーネントが読み込めないエラー表示とともにUIが一切表示されないトラブルが発生しまし…

LumaAIを用いてTextTo3Dを試す。

本日はAI枠です。 LumaAIはスマートフォンでNeRFと呼ばれる技術を用いることで手軽に従来以上の3Dスキャンを行うことができるアプリおよびサービスです。 redhologerbera.hatenablog.com redhologerbera.hatenablog.com LumaAIは最近になってText to 3Dのサ…

BlenderでPythonを使用してマテリアルスロットごとにペイントマスクを設定する

本日はBlenderPython枠です。 今回は頂点ペイントモードでのユーティリティを改善するためのちょっとしたツールを作ります。(prototype) 〇ペイントマスク 頂点ペイントモードでは頂点カラーを設定することができますが、Blender3.xではctrlキー+Kキー、Bl…

BlenderでPythonを使用して頂点カラーを設定する

本日はBlenderPython枠です。 今回はPythonで頂点カラーを設定していきます。 〇頂点カラーとは? 3Dモデルは頂点とそれをつなぐ辺によって構成される面(メッシュ)で構成されています。 基本的に座標や法線、UVなどの各情報は頂点が持っています。 頂点カ…

MayaでIKを設定する

本日はMayaモデリング枠です。 先日はHumanIkを使用したIKの設定を行いました。 redhologerbera.hatenablog.com これは人型モデルにおいて瞬時にIKの設定を行うことができる強力なツールです。 しかしHumanIKと名があるように人型のアーマーチュアを対象とし…

MayaとBlenderでメッシュの向き(ノーマル)を確認する方法の比較

本日はモデリング枠です。 モデリングを行い、UnityやUE、その他のソフトウェアでモデルを見ようとするときによくみられるトラブルとして、モデリングソフトでは存在する、メッシュの一部が欠けている(かけて見える)トラブルです。 例えば次の例ではBlende…

MayaでHumanIKを使用する

本日はMaya枠です。 以前よりBlenderではIKを用いたアニメーションなど実装をしていたのですがMayaでは試せていなかったため今回はMayaでのIKについてまとめていきます。 redhologerbera.hatenablog.com redhologerbera.hatenablog.com redhologerbera.haten…

MayaとBlenderでファイルエクスポートの比較を行う

本日は3Dモデリング枠です。 Maya、Blenderではどちらも強力なDCCツール(デジタルコンテンツクリエイトツール)です。 ソフトウェア内でレンダリングなどにより最終出力を行うこともできますが、UnityやUnrealEngine、その他の3Dソフトウェアで扱うための素…

SubstancePainterで日本語のフォントのalphaマスクを使用する

本日はSubstance 3D枠です。 Substance Paintedeではアルファを使用して任意のマスクを作成することができます。 これはマークだけではなくテキストにも対応しており、文字として刻むことができるため他のソフトと違い非常に強力な表現ができます。 今回はこ…

MayaとBlenderでリファレンス(下絵)の読み込み方法比較

本日は3Dモデリング枠です。 筆者はBlenderを長年愛用しており、Mayaに関してはお仕事で触ることが多く、基本的なワークフローや考え方、実践経験はどちらもありますが、スキルという点に関してはBlenderに大きく傾いています。 今年はMayaとも仲良くなり、…

BlenderでGIF書き出しプラグインを作る その⑤ クリーンナップ Pythonで特定のディレクトリを削除する

本日はBlender枠です。 昨日に引き続きBlenderのGIFエクスポーターの改良を行います。 今回はGIF画像生成において出力される一時データを削除して操作性を向上させて生きます。 〇現在のコード #アドオンの定義 bl_info = { "name": "GIFMaker", "blender": …

MayaとBlenderでアニメーションの基本について比較する

本日は3Dモデリング枠です。 3DCGを扱うDCCツールでは単に形状をモデリングするほかに時間軸に対してCGを動かすアニメーションを作成することができます。 画像やセンサー情報などの情報をもとに実際の動きをデジタル情報に落とし込むモーションキャプチャ、…

Blenderで外部Pythonスクリプトを実行する

本日はBlender Python枠です。 昨日PythonやOpenCVを用いて画像の姿勢推定を行いました。 今回はBlenderで外部からスクリプトを実行できるか試して行きます。 目的としては単純な興味もありますが、BlenderからBlender環境外のスクリプトを実行してその情報…

MayaとBlenderでUV展開についてまとめる

本日は3Dモデリング枠です。 今回はUV展開についてまとめながらMayaとBlenderでUV展開の方法について比較します。 〇UVとは? UVは3Dオブジェクトの持つテクスチャ座標を指します。 もう少し厳密に説明するとメッシュ毎に頂点に割り当てられた2次元ベクトル…