2022/10/01(土) [n年前の日記]
#1 [python] Skybox用のテクスチャを作成
blenderでパノラマ画像生成用に地形モデルを作ろうとしていたけれど、難しくて断念してしまった。そこで、ネットから入手できるHDRIのパノラマ画像を、Skybox? Cubemap? で使える形に変換できないか試してみることにした。
◎ HDRIの入手。 :
HDRI(High Dynamic Range Images)は、Poly Haven から入手させてもらった。ありがたや。
_Poly Haven
_Alps Field HDRI - Poly Haven
_Bell Park Dawn HDRI - Poly Haven
_Montorfano HDRI - Poly Haven
_Poly Haven
_Alps Field HDRI - Poly Haven
_Bell Park Dawn HDRI - Poly Haven
_Montorfano HDRI - Poly Haven
◎ RGB各8bitに変換。 :
HDRIを、RGB各8bitのpng画像に変換したい。Luminance HDR 2.6.0 x64 を利用させてもらう。
_Luminance HDR
_HDR合成ができるフリーソフト、Luminance HDR - ぼくんちのTV 別館
_Luminance HDRの使い方2: HDR処理の方法 - ぼくんちのTV 別館
トーンマッピングなのかLDR最適化マッピングなのか分からんけれど…。
_Luminance HDR
_HDR合成ができるフリーソフト、Luminance HDR - ぼくんちのTV 別館
_Luminance HDRの使い方2: HDR処理の方法 - ぼくんちのTV 別館
トーンマッピングなのかLDR最適化マッピングなのか分からんけれど…。
- 右のほうに並んだマッピング種類の中から良さそうなものを選ぶ。
- 左下の設定ウインドウ内で、出力画像サイズ(Result Size)を変更。
- 「Update Preview」をクリックして更新。
- pngとして保存。
◎ Skybox用画像に変換。 :
Panorama To Cubemap Converter 2.0 x64を利用して、パノラマ画像をSkybox(Cubemap)用画像に変換。
_PanoramaToCubemapConverter - ge56@web
今回は、4096 x 2048 のパノラマ画像から、512 x 512 x 6枚のpng画像を生成。
変換後の画像は、Panorama To Cubemap Converter のインストールフォルダ/output/ 以下に保存される。6枚の画像が生成された。
_PanoramaToCubemapConverter - ge56@web
今回は、4096 x 2048 のパノラマ画像から、512 x 512 x 6枚のpng画像を生成。
変換後の画像は、Panorama To Cubemap Converter のインストールフォルダ/output/ 以下に保存される。6枚の画像が生成された。
◎ 並び替える。 :
GIMP 2.10.32 x64 Portable samj版を使って、512 x 512 x 6枚の画像を、2048 x 2048 x 1枚の画像に並べた。ガイドを作成するか、グリッドを設定・表示して、ガイド(or グリッド)吸着を有効にして配置すると楽に作業できる。
_均等にガイド(Grid of guides)
_均等にガイド(Grid of guides)
◎ Shadeを使って試してみた。 :
3DCGソフト Sahde にも、キューブマップを出力するためのレンダリング設定があるらしい。6枚の画像が縦一列に並んだ状態で出力される模様。
_パノラマ画像からキューブマップを作成し、立方体にテクスチャマッピング - Shade3D Knowledge Base
Shade 12 Standard を使って、この方法も試してみた。
色補正がちょっと難しい感じもしたけれど、このやり方でも出力できないことはないなと…。
レンダリング設定でアンチエイリアスを有効にしてレンダリングしてしまうと、各画像の境界に、1ドットの幅で変な色が混ざってしまう。アンチエイリアスは無効にした状態で出力するしかないようだなと。
ちなみに、Shade 12 Standard はレンダリングサイズが 4000 x 4000 までに制限されてるので、1024 x 6144 を指定したかったけどできなかった。
_パノラマ画像からキューブマップを作成し、立方体にテクスチャマッピング - Shade3D Knowledge Base
Shade 12 Standard を使って、この方法も試してみた。
- 表示 → 色補正、で色補正ウインドウを表示しておく。
- 背景ウインドウに .hdr をドラッグアンドドロップで渡す。
- 色補正ウインドウで、ガンマを2.2に変更。
- レンダリング → レンダリング設定 → 効果 → パノラマをキューブマップに。
- レンダリング設定 → イメージ → 幅と高さが1:6になるように指定。画像1枚あたりを 512 x 512 にしたければ、512 x 3072 になる。
- レンダリング設定 → 基本設定 → アンチエイリアシング、のチェックを外して無効に。
- レンダリング開始。
色補正がちょっと難しい感じもしたけれど、このやり方でも出力できないことはないなと…。
レンダリング設定でアンチエイリアスを有効にしてレンダリングしてしまうと、各画像の境界に、1ドットの幅で変な色が混ざってしまう。アンチエイリアスは無効にした状態で出力するしかないようだなと。
ちなみに、Shade 12 Standard はレンダリングサイズが 4000 x 4000 までに制限されてるので、1024 x 6144 を指定したかったけどできなかった。
[ ツッコむ ]
以上です。