Python
本日はPython枠です。 Unityやその他ツールなどで開発するために近年では生成AIなどで音源を創ることができるようになりましたが、ハッシュ値で名前を付けて.mp3の形式で大量の音源を処理したいという状況がありました。 今回はBlenderを使用して外部のツー…
本日はBlender、Python枠です。 筆者は元エンジニアでもありプログラミングになれていますが、最近はAIを用いたViveCodingばかりを行っています。 AIを用いることである程度の知識であっても簡単にプログラムを作成、実行することができ、業務効率化などを行…
本日はBlenderPython枠です。 今回はBlenderPythonで選択中のメッシュの面積を求めていきます。 〇環境 ・Windows11PC ・Blender4.4 〇面積の求め方 三角形の面積は、縦×横/2ですが、3次元上の3つの頂点(𝐴(𝑥1,𝑦1,𝑧1), 𝐵(𝑥2,𝑦2,𝑧2), 𝐶(𝑥3,𝑦3,𝑧_3))を使用して…
本日はPython枠、モデリング枠です。 今回はOpen3Dでインプットした3Dモデルからジオメトリ数を取得します。 〇環境 ・Windows11PC ・Anaconda3 ・Python3.11 〇ジオメトリとは? ジオメトリとは3Dモデルのメッシュにおけるデータヒエラルキーの一つです。 3…
本日は3Dモデリング枠です。 最近pythonを持ちいてOpen3DのライブラリでBlendetやMayaにあるような機能の独自実装を行いながら3DCGに関しての知識を深めています。 その中で一度open3dライブラリで処理をしてエクスポートしたモデルを再度Open3Dライブラリで…
本日はPython枠です。 Open3Dでは様々な機能が提供されていますが、今回はこの中から重複頂点を削除していきます。 〇環境 ・Windows11PC ・AnacondaPrompto(Anaconda3) ・Python 3.11 〇重複頂点とは? 重複頂点はその名の通り同一座標上で頂点が重なってい…
本日はPython枠です。 先日Open3Dを用いたポリゴン削減を行いました。 redhologerbera.hatenablog.com 今回はブーリアン演算を実装していきます。 先日よりはてなブログのサーバーが不具合があったようで2日ぶりの記事になります。 〇環境 ・Windows11PC ・…
本日はAI枠です。 先日新型のTextToSpeechサービスのZyphraのZonosを触っていました。 redhologerbera.hatenablog.com サイドメニューを見るとSettingsの中にAPIKeysおよびAPI Documentationが存在しました。 前回はPythonで生成する点までを行いました。 re…
本日はPython、3Dモデリング枠です。 BlenderやMayaといった3Dモデリングに特化したDCCツールはPythonで動いており、Pythonライブラリを使用したプログラマブルな機能へアクセスすることができます。 この理由はC#などでは直接C++コードを読み込むことが一般…
本日はAI枠です。 先日新型のTextToSpeechサービスのZyphraのZonosを触っていました。 redhologerbera.hatenablog.com サイドメニューを見るとSettingsの中にAPIKeysおよびAPI Documentationが存在しました。 今回はこのAPIを使用すれば何ができるのか?見て…
本日はBlender Python枠です。 〇環境 ・Windows11PC ・Blender4.1 〇ショートカットの変更 Blenderでショートカットキーの変更を行うためにはプリファレンスのキーマップに登録することが一般的です。 〇アドオンの基礎 以下のコードはBlenderアドオンの基…
本日はBlender枠です。 Blenderではビューポートオーバーレイの面の向きにチェックを入れることで面の向きを可視化することができます。 これはエクスポート前に必ずチェックをする機能ですが、こまめに使用するためにはGUIを開いてチェックを入れてと何かと…
本日はBlender枠です。 〇環境 ・Blender4.1 ・Windows11PC 〇ジオメトリごとにオブジェクトを分離する Blenderではジオメトリノードや配列モディファイアなどを使用することでジオメトリを大量に配置することができます。 この場合はジオメトリとしては分離…
本日はBlender Python枠です。 タイトルの通りアニメーションを持つオブジェクトが存在するかを検知します。 〇環境 ・Windows11PC ・Blender4.1 〇オブジェクトがアニメーションを持つかの判定 アニメーション事態を取得するにはactionを検知します。 _anim…
本日はモデリング枠です。 ZBrushなどのソフトウェアで作られた3Dモデルは内部の画像フォーマットがtagが用いられていることがあります。 こういった場合は一度Blenderなどを使用してテクスチャをpngなどに書き換えなければApple製品でのAR体験時にエラーが…
本日はMaya,Python枠です。 筆者は大学で3DCGについて指導に当たっていますが、Mayaに限らずソフトウェアのUIや設定がデフォルトから変わってしまっている状態の学生さんがよくいます。 彼らが意図してUIやビューポートをカスタマイズしているのであれば…
本日はBlender,Python枠です。 今回はBlenderのPython内で動的にpip installを行う方法を知りましたので残していきます。 〇環境 ・Windows 11PC ・Blender4.1 〇PythonコードからPip install Pythonコード内からPip installを行うためには次のような関数を…
本日はBlender枠です。 筆者は現在大学で3DCGの指導に当たっていますが、特に初学者の学生にとってデータ名に日本語を付けるということはよくある問題です。 日本語が含まれる場合Git等の管理システムの問題やUnrealEngine,Mayaなどのシステムとして日本語を…
本日はBlender枠です。 〇環境 ・Blender4.1 ・Windows11PC 〇レンダリング設定のGUI 今回は以前作成した外部にレンダリング設定を保存しておいて読み込むスクリプトをGUIを作成してより使いやすくしていきます。 redhologerbera.hatenablog.com redhologerb…
本日はBlender枠です。 〇環境 ・Blender4.1 ・Windows11PC 〇Pythonスクリプトからベイクを行う 先日Pythonスクリプト経由でレンダリング設定を書き換えました。 redhologerbera.hatenablog.com 本日はCyclesエンジンでのみ実行可能なベイクをPythonベース…
本日はPython枠です。 今回はPythonでローカルディレクトリ内にあるライブラリを読み込んでいきます。 通常自分自身の環境でnumpyなどPythonの外部ライブラリを使用したい場合は仮想環境を構築してpip installで導入します。 しかし場合によっては環境ごと配…
本日はBlender枠です。 BlenderではOpenXR規格を使用してVRと接続することができます。 〇環境 ・Windows11PC ・Blender4.1 〇VR Scene Inspectionの場所 VRSceneInspectionのPythonコードのパスは以下になります。 C:\Program Files\Blender Foundation\Ble…
本日はBlenderPython枠です。 Blenderでは様々なフォーマットのファイルに出力をサポートしています。 今回はUSDZへのエクスポートに関するテーマです。 〇USDZについて USDZ(.usdz)はUniversal Scene Description形式のファイルフォーマットの中でZ形式での…
本日はBlenderPython枠です。 〇環境 ・Blender4.1 ・Windows11PC 〇現在のシーンにあるオブジェクト数を取得する 現在のコードを取得するには次のコードを使用します。 import bpy # 全てのオブジェクト数を取得 total_objects = len(bpy.data.objects) pri…
本日はPython枠です。 前回に引き続きヒッパルコス星表をBlenderで使用します。 前回はヒッパルコス星表についてみていきました。 redhologerbera.hatenablog.com 今回はBlenderでこのデータを使用するためにCSVファイルを読み込んでいきます。 〇環境 ・Win…
本日はSubstance枠です。 SubstancePainterはBlender同様にPythonコードを実行して自身のプラグインを作成することができます。 今回はどのようにPythonAPIが提供されておりどのように実行するのかについて軽く見ていきます。 〇環境 ・Windows 11PC ・Subst…
本日はBlender枠です。 今回はBlender Pythonを使用してあるオブジェクトの向きをもう一つのオブジェクトに向ける実装を行っていきます。 〇環境 ・Windows11 ・Blender 4.1 〇最初に選択したオブジェクトに2つ目に選択したオブジェクトを向ける 今回は次の…
本日はBlender Python枠です。 BlenderではオブジェクトモードでShiftキーを押しながらオブジェクトを選択すること複数のオブジェクトを選択することができます。 結合(Ctrlキー+Jキー)やウェイトペイントの転写など一部の機能は最後に選択したオブジェクト…
本日はBlenderPython枠です。 前回Pythonを使用してCPUやOSの情報を取得しました。 redhologerbera.hatenablog.com しかしながらPythonでは通常psutilやGPUtilなどのライブラリをしようしない場合GPUなどの情報にアクセスすることはハードルが高いです。 と…
本日はPython枠です。 今年度より筆者は教育機関で教員としてのキャリアを積み始めたのですが、IT系の指導においてトラブルはつきものです。 そのトラブル時に使用しているPCのスペックが非常に重要な情報になります。 今回は学生さんにトラブル時にPythonコ…