AnimationCafe

rTexViewer v3.0 beta - シンプルで多機能なテクスチャファイ...

raylib technologiesによるシンプル設計&多機能なテクスチャビューア・形式変換ツール「rTexViewer v3.0」のベータ版がリリースされました。

  • 0
  • 0
  • 0
続きを読む

Mesh Heal - メッシュの欠けた部分を修復してくれる回復系Blender...

Sahin Ersoz氏による、メッシュの欠けた部分を修復してくれる回復系Blenderアドオン「Mesh Heal」がリリースされていました。

  • 0
  • 0
  • 0
続きを読む

ChatGPT - 人生の悩みからプログラムのコードやツールのスクリプトも教えて...

OpenAIが対話形式に最適化されたAI「ChatGPT」のテスト版を公開しました。無料でお試しが可能です。

  • 92
  • 0
  • 2
続きを読む

RealityScan - RealityCaptureとQuixelが共同で開...

RealityCaptureとQuixelが共同で開発したスマホ向けフォトグラメトリーアプリ「RealityScan」がベータ期間を終え正式に公開されました!

  • 78
  • 0
  • 1
続きを読む

Advent Calendar 2022 - 気になる技術系アドベントカレンダー...

毎年恒例お勉強イベント。2022年も気になるアドベントカレンダーのリンクを集めました。みなさんも是非参加しましょう!

  • 15
  • 0
  • 0
続きを読む

Maya、3ds Max のインディー版 | AREA JAPAN | Autodesk

Live Scene Capture to Texture - GPUモジュールを使用しEEVEEのカメラビュー状態をリアルタイムキャプチャ→テクスチャに適用出来るBlenderスクリプト!

この記事は約4分4秒で読めます

Kolupsy氏によるGPUモジュールを使用しEEVEEのカメラビュー状態をリアルタイムキャプチャしテクスチャに適用出来るBlenderスクリプトがlender Artists Communityにて公開されています。


プロモーション

『ファイナルファンタジーVII』リメイクプロジェクトの3D背景アーティストが語るリメイクのこだわりとは | スクウェア・エニックスで働くストーリー | 中途採用 SQUARE ENIX -RECRUITING-


Live Scene Capture to Texture

Blender Artists Community での解説
Live Scene Capture to Texture – General Forums / Blender and CG Discussions – Blender Artists Community

シーンをリアルタイムでレンダリングし、その結果をテクスチャとして出力することについて説明します。これはゲームではポータルエフェクトなどによく使われる手法ですが、Blenderのようなオフラインレンダリングソフトウェアでは必須の機能ではありません。しかし、この技法に対する需要はまだあるようです。この投稿は、Twitterの投稿でこのエフェクトを分解してほしいという要望が頻繁にあったことに端を発しています。

この効果を得るために、私たちはBlender APIの隠された、しかし非常に強力な部分であるGPUモジュールを利用します。GPUモジュールについてはこちらで詳しく説明されています。

そこに掲載されている多くの例を見ると、オフスクリーンレンダリングから画像を生成するスニペットや、カメラからのシーンビューをキャプチャしてUI上に小さなウィンドウとして表示するスニペットがあります。この2つの技術を組み合わせることで、「ライブテクスチャ」効果を実現することができます。

制限事項

  • ビューポート、マテリアルプレビュー、Eeveeレンダーのみで動作
  • Cyclesレンダーをキャプチャすることは不可
  • パフォーマンスは良くない
  • スクリプトはレンダリング時の更新を処理しないがアプリハンドラを使って実装することは技術的に可能らしい
  • キャプチャには常に可視 UI 全体が含まれます。シーンの関連する部分のみをキャプチャしたい場合は、オーバーレイを切り替えることが必要

ヒント

  • Eevee のビューポートサンプル数は 1 または 0を推奨
  • ビューポートノイズ除去は無効を推奨
  • スクリプトの解像度を設定可能:現在は1:1。好きな解像度に出来るが低解像度推奨。256×256でも十分重い。512×512はシンプルなシーンではとても効果的
  • スクリプトに繰り返し変更を加えたい場合は、スクリプトを更新するたびに Blender を開くか、スクリプトの更新を自分で実装してください。

導入方法(日本語解説)

シーンにカメラを作成し、名前を「LiveCam」にしておく。

テキストエディタウインドウを表示し、新規作成。
公開されている以下のスクリプトを貼り付けて実行ボタンを押す。

import bpy, gpu, numpy as np

RES = 512
offscreen = gpu.types.GPUOffScreen( RES, RES )

CAMERA = bpy.data.objects[ 'LiveCam' ]
LIVETEX = bpy.data.images.new( 'LiveTexture', RES, RES, alpha = True )
LIVETEX.pack( )
LIVETEX.use_fake_user = True
LIVETEX.colorspace_settings.name = 'Linear'

def draw( ):
    context = bpy.context
    scene = context.scene
    
    vm = CAMERA.matrix_world.inverted( )
    pm = CAMERA.calc_matrix_camera( context.evaluated_depsgraph_get( ), x = RES, y = RES )
    
    offscreen.draw_view3d( scene, context.view_layer, context.space_data, context.region, vm, pm )
    
    gpu.state.depth_mask_set( False )
    buffer = np.array( offscreen.texture_color.read( ), dtype = 'float32' ).flatten( order = 'F' )
    buffer = np.divide( buffer, 255 ) 
    LIVETEX.pixels.foreach_set( buffer )

bpy.types.SpaceView3D.draw_handler_add( draw, ( ), 'WINDOW', 'POST_PIXEL' )

問題なければシーン内にLiveTextureといテクスチャファイルが現れます。

あとはそれをモデルに適用するだけでライブキャプチャー結果を得る事が出来ます。

GPUへの負荷が高く、環境によってはかなり重たくなりますのでご注意ください。

どうしても重すぎるという方、まずはRES = 512の数値を64や128など、小さい数値で試してみると良いですよ。
こういうTipsを公開してくれたKolupsy氏に感謝ですね!ぜひお試しあれ!

リンク

Live Scene Capture to Texture – General Forums / Blender and CG Discussions – Blender Artists Community


プロモーション

C&R Creative Academy – 本気の未経験クリエイター育成プログラム



関連記事

  1. Save Render Presets v1.4 - レンダリング設定やカメラ設定、出力パスなどを保持しておけるblenderアドオン!クールなPVにも注目!

    2022-03-18

  2. SweetRoll - 湾曲した半円UVをワンクリックで真っ直ぐにしてくれる無料のBlenderアドオン!

    2021-04-13

  3. cvELD_QuickRig&cvELD_QuickBBone - XSI道場でお馴染みLand-Y氏によるBlender向けリギング関連アドオンが2つ登場!機能多すぎ!

    2022-01-28

  4. Blenderkit - 無料で使えるマテリアルやモデルを簡単にシーンに読み込めるライブラリアドオン!2.8には標準搭載!

    2019-08-08

コメントをお待ちしています。

コメント

日本語が含まれない投稿は無視されます。-Posts that do not include the Japanese will be ignored-(スパム対策-anti Spam-)

3D人-3dnchu-

3D/2D/CG関連のネタ・ツール情報を
ほぼ毎日紹介します!

アーカイブ

カテゴリ

おすすめ商品Pickup

注目の記事

PR

育成講座

採用 | 3DCGアーティスト&テクニカルアーティスト大募集 | 株式会社Cygames


12月8日開催!映像匠塾2022 メタバース編 ~進化~その先の未来へ

Curo Inc.

GRASSHOPPER MANUFACTURE

3D人のLINEアカウントを作りました!
友だち追加


follow us in feedly

RSSリーダーで購読する


ほしい物リスト公開中!
3D人運営に援助!
Amazonでリストを見る

Discordチャンネル公開

pixivFUNBOXページ公開!




おすすめ商品Pickup

おすすめ記事

PR


ページ上部へ戻る