2024.12.10
“放置系”なのにサイバー攻撃を監視・検知、「統合ログ管理ツール」とは 最先端のログ管理体制を実現する方法
リンクをコピー
記事をブックマーク
高橋啓治郎氏(以下、高橋):1つオマケです。「SwapBuffer」という要素について。URP 12のWhat's Newを覗いてみると、「SwapBuffer」と書いてあります。4行くらいでサラッと書かれていますが、これだけ見てもなんのこっちゃわからないので説明します。
SwapBufferは、Scriptable Render PassにBlitというファンクションが追加されたというアップデートです。わかりやすく言うと、「Renderer Featureを使ってポストエフェクトを組むのがすごく楽になる」機能です。
以前から、Renderer Featureを使うことによってポストエフェクト的なものを組むことはできたんですが、今描かれているフレームバッファに対してポストエフェクトをかけたい場合、これを元に自分で確保したテンポラリのレンダーテクスチャに1回Blitしてから、またこちらに戻すというようにBlitが2回発生します。このテンポラリのRTは誰がどこで確保して、どこで誰が破棄するんだろうと考え出すと複雑になってしまうんです。
しかし、先ほど追加されたRender PathのBlitを使うことによって、URPが勝手に今のフレームバッファとは別にBlit用のRTを用意してくれて、ユーザーがマテリアルを渡すだけでBlit処理を行ってくれます。しかも、これがいつ死ぬかとか誰が確保するのかはぜんぜん気にしなくてOK。マテリアルを1個渡すだけで、フルスクリーンエフェクトが組めてしまうというお手軽な仕組みです。
(スライドを指して)サンプルを見てみると、相変わらずグルーコード的な短いコードを書かないとできないのがなんとも苦々しいですが、これだけのコードを書けばサクッとポストエフェクトを組めるようになりました。やっていることは、マテリアルをインスペクタから貼り付けられるようにして、最終的にBlitを読んでいるだけなので、すごく簡単なスクリプトです。
スクリプトを使ったうえで、ここではシェーダーグラフを使ってフルスクリーン色反転エフェクトを作ってみました。フレームバッファ、メインテクスチャをサンプリングして、One Minusを使って色の要素を全部0・1の間で反転して、フラグメントに書き込むだけのシェーダーグラフです。これをマテリアルにして先ほどのスクリプトにプロパティで突っ込むので、Renderer Featureを有効にすれば、このようにフルスクリーンエフェクトがいきなり動いてくれます。
大下岳志氏(以下、大下):なるほど。
高橋:このようにすごく簡単にフルスクリーンエフェクトを組めるようになったので、みなさんも試してみてはいかがでしょうか。特に、シェーダーグラフでサクッとフルスクリーンエフェクトを組めるのはすごく楽しいので。
大下:そうですね。
高橋:創意工夫して、いろいろなエフェクトを楽しんでほしいと思っています。
大下:コメントがメチャクチャポジティブです。
高橋:うれしいね(笑)。将来的にはコードさえも組まなくていいようにしたいと思っていますが、今は最低限のコードさえ用意すればこういったことが簡単にできるという段階です。今日のサンプルプロジェクトやサンプルコードが入ったサンプルリポジトリをスライドのGitHubのkeijiroのURPTestbedにアップしておいたので、おさらいする時に参考にしてもらえたらと思っています。
アーティスト目線での注目ポイント、プログラマーというか技術的な目線での注目ポイントをいくつか紹介しました。後半のコーナーでは、これ以外のアップデート内容を細かくチェックしていきます。
高橋:「残りの項目をチェックしよう!」と題して後半のコーナーを始めます。前半に説明しなかったWhat's Newを、順に軽く網羅していきたいと思います。
Secene Debug Viewは、先ほど大下さんに触れてもらったので飛ばして、「Reflectin probe blending and box projection support」です。Reflection probeの機能改善も入ったんですよね。
大下:はい。これはわかりやすいと思います。1つ目は、2つのprobeだったり、遠くから近づいたりした時にフェードがかかる、あるいは2つの間をブレンドする機能です。
高橋:blendingですね。
大下:そうですね。2つ目は、box projection。これもビルトインにはもう入っていたんですが、probeの領域をboxで定義することで、その中に入った時の反射の正確性を上げるというテクニックです。
高橋:(スライドを指して)特にこういう四角い壁に囲まれたシーンの反射は、box projectionをオンにすると見た目が顕著にリアルになります。
大下:そうですね。壁から床に落ちているシーンでの整合性がすごく上がるので、いいと思います。
高橋:URPでビルトインと同じ、もしくはそれ以上のことができるようになるのが我々の大目標なので、それがReflection probeにおいても達成されたという感じですね。
大下:「オプションがあるのに有効にならない」とコメントがあります。以前はそうだったかもしれませんが、今でもクオリティセッティングでチェックボックスにチェックを入れないと、この2つは動かないと思います。
高橋:なるほど。一度クオリティセッティングを確認してくださいという感じですね。「URP Deferred Rendering Path」は先ほど説明したので飛ばします。Deferredを使う前にこのドキュメントを一度見てください。すごく丁寧に書かれていて僕も驚きました。
高橋:説明したものは飛ばして、次は「URP Light Cookies」です。僕はLight Cookiesを使ったことがないのでイマイチ実感がないんですが。
大下:そうですね。これもビルトインの時からあったんですが、メインの機能はテクスチャを使ってライトの影響範囲にマスクをかけることです。それを使ってライトのプロファイル、形状を作ったり、スライドの絵のように特定の色だけをフィルターのように出したりできる。HDRPよりもずっと簡素な作りです。
高橋:なるほど。Light Cookiesも使えるようになったので、ここでもビルトインを越えるという目標が達成されたのかな。
大下:そうですね(笑)。着実に。
高橋:「Render Pipeline Converter」はなんでしたっけ。
大下:使ってみていい感じだったので、短い動画にまとめました。これは、ビルトインからURPへのコンバートをスムーズにする機能です。使い方は、最初にビルトインで用意したプロジェクトにURPのパッケージを読み込みます。
その後にRender Pipeline Converterを起動して、先に一度イニシャライズで変更ポイントの抽出を行うとスライドのように一覧が出てくるので、確認してコンバートアセットすると、すべてのチェックした項目にURP向けの変更が加わります。基本的にそれだけでURP化はおしまいです。
高橋:なるほど。今回サムネの背景に使ったシーンですね。
大下:そうです。不正なデータもありましたが、実際は特に影響なくそのまま動かすことができました。
高橋:これはありがたいですね。
大下:そうですね。独自のシェーダーが入るとまだ怪しいところはあると思いますが、お試しでプロジェクトを切り替えてみようという時には、すごくハードルが下がったんじゃないかと思います。
高橋:アセットストアで買ったビルトインしか対応してないアセットとかね。
大下:そうですね。
高橋:いいのかもしれませんね。
大下:わりとうまく動いてうれしかったので、動画を作ってみました。以上です。
高橋:Render Pipeline Converterもすごくなりましたね。
高橋:「Motion Vectors」は、Motion VectorsのレンダリングができるようになったことでMotion Blur effectに必要なものですね。
大下:そうですね。ただ、今のところMotion Vectorsがレンダリングできるようになった以上の機能ではない気がしています。
高橋:僕もそう思います。最終的にはこれを使ってテンポラルアンチエイリアスもかけられるようになるといいんですが、とりあえずエフェクトを組むためのインフラとして必要なものなので下地を整えられたという解釈でいいのかな。
大下:今後に期待できそうですね。
高橋:そういうことにしておきましょう。
(次回へつづく)
関連タグ:
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
2024.12.09
10点満点中7点の部下に言うべきこと 部下を育成できない上司の特徴トップ5
2024.12.09
国内の有名ホテルでは、マグロ丼がなんと1杯「24,000円」 「良いものをより安く」を追いすぎた日本にとって値上げが重要な理由
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.10
職場であえて「不機嫌」を出したほうがいいタイプ NOと言えない人のための人間関係をラクにするヒント
2024.12.12
今までとこれからで、エンジニアに求められる「スキル」の違い AI時代のエンジニアの未来と生存戦略のカギとは
PR | 2024.11.26
なぜ電話営業はなくならない?その要因は「属人化」 通話内容をデータ化するZoomのクラウドサービス活用術
PR | 2024.11.22
「闇雲なAI導入」から脱却せよ Zoom・パーソル・THE GUILD幹部が語る、従業員と顧客体験を高めるAI戦略の要諦
2024.12.11
大企業への転職前に感じた、「なんか違うかも」の違和感の正体 「親が喜ぶ」「モテそう」ではない、自分の判断基準を持つカギ