3Dモデリングチュートリアル実践中 ※追記

アイキャッチ:レンダリングしたテーブル

過去にモデリングに取り組んだときは、基礎は制作のついでに学ぶようなものだった。
それで挫折したものだから、いつかはチュートリアルを経験して、知らないことを知りたいを思っていた。
ようやく時間をとって、一つのチュートリアルを実践したのでメモ。

今回やったチュートリアル動画はこちら。

▼環境

  • Windows10
  • Blender 3.0
  • GPU:Radeon RX480

テーブルの制作:前半

この前半の動画をやり通すのに3時間かかった。休憩とかの時間抜きで。
操作方法は覚えていたから苦労しなかったが、主に時間を取られたのは凡ミスだった。
こういうトラブルがまた「名前がない」ものだから、解決策を検索しようにも苦労する。

トラブル1:配列モディファイアの複製がデカくなる

キーワード:配列、サイズ、大きくなる

オフセットにエンプティを指定すると、机を支えるパーツが段々デカくなった。(Fig1)
(これはY軸の手前方向ではなく、Z軸の下方向に配置されている。)

配列モディファイアのトラブル
Fig1. 配列モディファイアのトラブル

これは位置やサイズの変更を「編集モードではなくオブジェクトモードで行ってしまった(変更が確定されていない)」ことが原因らしい。
動かしてしまった差分が、複製した分だけ倍々にデカくなる・ズレるのだろう。

オブジェクトモードで「Ctrl+Aキー」>「確定メニュー」>「全トランスフォーム」で解決した……気がする。

blenderで、配列複製(Array)のサイズが変わってしまう – Romly

トラブル2:配列の回転方向がおかしい

キーワード:配列、複製、回転、時計回り、おかしい

テーブルの支えになる部分を四方に配置するのだが、回転を実行したときの動きがおかしい。(Fig2)

GIF動画:配列で複製したオブジェクトの回転方向がおかしい
Fig2. GIF動画:配列で複製したオブジェクトの回転方向がおかしい


これはちゃんと動画内で説明されているが、支えになる部分のオブジェクトではなく、十字のエンプティを選択した状態で回転(Rキー)を行うこと

この手順を守ると、以下のようになる。(Fig3)

GIF動画:配列の回転が正しい場合
Fig3. GIF動画:配列の回転が正しい場合

トラブル3:メッシュの頂点の黒ポチがない

キーワード:メッシュ、頂点、円、黒ポチ、環境設定、頂点サイズ

これは超初歩的なミスで、選択方法が「辺選択になっていた」こと。
頂点選択になっていれば、何も問題ない。
そういうこともすっかり忘れていた。

頂点とか円とかのワードじゃあ全然ヒットせず、「黒ポチ」というワードでヒットしたのが5chのスレッド。
そこで「設定で大きくできる」というので、項目を探して実行しても変化なし。(Fig4)
「それは辺選択になっているから」というオチ。

Blenderの環境設定
Fig4. Blenderの環境設定

テーブル制作:後半

後半のパートはUV展開→テクスチャ→カメラ・ライト→レンダリング。

高品質なテクスチャの配布サイトを知れたのは良かった。
これをマテリアルに貼るだけで見栄えが段違い。
しかもサイズが4Kとか、便利な時代になってるんだなって。

トラブル4:グラボがレンダリングに対応していない

キーワード:レンダリング、Cycles、OpenCL、HIP、AMD、RDNA

以前に3Dアバターを制作していた際は、無駄にこだわって影になる部分のテクスチャをベイクしようとして、グラボが仕事をせずに貧弱なCPUで1時間かけて行ったりした。

今使っているのはRadeon RX480で、2016年のもの。
今回もそうだと思いレンダリングを実行すると、Ryzen 5 3600がCPU使用率100%で張り付いていた。(Fig5)
レンダリング(記事のサムネイル)は出来たものの、極端にCPUに仕事をさせたくないので学習環境は良くないと思った。
(CPUだけでレンダリングするのはCinebenchみたいで、Ryzenの多コアは割と優秀なのが救いだった。)

Radeon Softwareのパフォーマンスログ
Fig5. Radeon Softwareのパフォーマンスログ

調べてみると、以前のBlenderでは環境設定でOpenCLを選択することができ、もしかすると以前にベイクした際はRX480でどうにかなったかもしれない。

Blender(ブレンダー)で「GPUレンダリング」ができない原因と対処法 – Render Pool(レンダープール)

一方で、Blender 3.0ではOpenCLの項目はHIP(Heterogeneous-computing Interface for Portability)に置き換わり、RDNAアーキテクチャが採用されたもの(5000番台~)しか対応していないらしい。

Blender Cycles X が AMD GPU をサポート(Beta) _ CGinterest

Redditでは「RX400~500でレンダリングできねぇじゃねぇか(意訳)」という投稿に対して、「1年以上ロードマップにあって、誰でも分かっていたんだから文句言うな(意訳)」という返信がなされている。

Why isn’t anyone talking about how most AMD GPU’S can’t render anything in blender anymore_ _ blender

……まぁ、5000番台がリリースされた2019年はこんな状況になるなんて分からなかった。
6000番台のRDNA2を待とうとしていたんだから。
戦争が終わらない限り、グラボの新製品も価格も期待できない。

追記:2021年2月9日

YoutubeでBlender関連の動画を探していたら、どうやらAMDは(数年前から)「Radeon ProRender(RPR)」というレンダリングエンジンをリリースしていたらしい。

公式サイトには「ハードウェア非依存」と紹介されているし、openCLが対応しているグラボなら使えそうだ。
システム要件のWindows版にはRX400シリーズが記載されていないが(MacOSの項にはある)、多分動くと思った。

Blender®用AMD Radeon™ ProRender _ AMD

で、zipファイルをダウンロードして、Blenderの設定→アドオンの項でzipファイルを指定してインストール。
するとレンダリングエンジンの選択でeeveeやCyclesの他に、Radeon ProRenderが選べるようになった。(Fig 6)

Radeon ProRenderでレンダリング
Fig6. Radeon ProRenderでレンダリング

UIをシェーディングのプレビューに切り替えて見ると、CPUのみで演算させていたときよりも少し速い。
うっすらだが、テーブルの脚の影が表現されているから、このページのサムネイルのような結果とは違っている。(CPUのみでレンダリングした際に完了していなかった説)

チェックボックスをONにすれば、CPUも演算のリソースに加えられる。
これだとGPUのみよりも、もう少し早くなる。

でも、RX480自体が現在では貧弱なグラボになってしまったので、チュートリアル動画のレンダリングを最低限実行できる程度の結果になった。
まぁTwitterを見ているとモデリング勢が作品をどんどん投稿しているから、nVidiaのグラボを持っていて困っていないんだろう。

俺みたいに「グラボ買えねー」「Cycles対応してねー」という環境の人にはRadeon ProRenderの導入はアリだと思う。
– – – – – 追記ここまで – – – – –

さいごに

Blenderは丸一年触ってなかったし、その間に3.0がリリースされているしで、ほとんど抜け落ちてしまっている。
アバター制作の記録(本当は講座)も、1年前に状況が変わって止まってしまったし、誰にも質問できなかった。
完成させたいと思っていはいるけど、(完成したものを使って自己表現をするとき)自己肯定感が足りずに「日陰者の俺を受け入れてくれる人なんていないだろう」とか、先の不安を心配したりする。

とりあえず、YoutubeでBlenderのチュートリアル動画をいくつか見繕ったので、モデリングのスキルをどうにかしたい。
アマチュアの素人が知りたいことは、山ほどある。