Shaderエディタ拡張でHDRテクスチャをLDRにエンコードするウィンドウを作る方法です。Unity2017.4作るものモバイルでHDRのテクスチャを使いたい場合など、HDRのテクスチャをLDRエンコードし、シェーダで使うときにデコードする手法があります。light11.hatenadiary.comエンコードの方法はいくつかありますが、今回は単純に設定した値でHDRテクスチャの値を割ってLDR化したテクスチャを作ります。この方法は、割ってもなお1以上になる値は丸められてしまう上、精度は低めです。実装はシンプルだし計算量も少ないというメリットがあります。シェーダまずはシェーダです。Factorで割ったものを返します。ウィンドウ次にテクスチャを作るためのウィンドウを作ります。"HDRのフォーマットが不正です。}}#endif説明はコメントの通りです。前節のシェーダを使って元のテクスチャをLDRに変換しています。ちなみにTexture2D.EncodeToEXR()を使えばLDRテクスチャからHDRテクスチャを作ることもできるはずです。docs.unity3d.comしかし、EncodeToEXR()がどうもうまく働かなくて今回は挫折しました。Unityのバージョンの関係かなとも思うので必要になったら新しいバージョンで試してみたいと思います。Factorを好きなように調整してCreateするだけです。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。インストールから基本的な使い方・注意点まとめ【Unity】【エディタ拡張】テクスチャを指定したUV座標で切り取って保存する【Unity】指定したアセットのAssetBundle名を取得する【Unity】【シェーダ】スクリプトからVP行列を渡してシェーダで座標変換に使う【Unity】【シェーダ】FloatやVectorをリニアライズ対象にするGammaアトリビュート月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。