日曜日, 9月 13, 2020

LUTをいじったDevil Daggersのカラー変更Modの小話

 

やっと念願の青血Modが作れた!星モチーフもできた! ということでDDMod(アセットMod)のTips的な小話。

ちなみにアセット(テクスチャ画像やモデルのまとまり)を編集するツール Devil Daggers Asset Editor  https://devildaggers.info/Tools/DevilDaggersAssetEditor を使わせていただいた。感謝。


テクスチャを変えてみる


これはSekiroの銭投げModを作った時のやつだけど、テクスチャやモデル形状を変えるだけでは何だか色味が暖かすぎる。もうちょい雪景色ぽい白さを想定していた。



左から 腕テクスチャ、Lv3ホーミング取得時のフラッシュ、Lv4ホーミング取得時のフラッシュ、床タイル。

かなり暗めのテクスチャがゲーム内ではやたらとオレンジ系の色でライトアップされるらしい。どうして?

post_lutの役目


LUTとは LookUp Tableの略らしく、DDに於いてはレトロFPSを再現するために色を4096色に絞って出力するのに使う。それ以外のことは正直よく分からないので省略。

16x16の黒い正方形イメージに右と下から赤と緑のグラデを当て、それを16枚タテに並べ、下に行くほど青を加算して作られる。

オリジナルのlut.pngであれば青や白もきれいに出たはずだけど、DDの火で照らされたような雰囲気のためにpost_lut.pngでは青系が削られている。
post_lut_dagger.pngは若干くすんではいるが青や白が出るようになっている。

ゴタゴタと論理的に考えるよりは上図のように「左中には緑、右上には赤、左下には青、右下には黄色」というふうにテキトーに考えたほうが早い、、、気がする。理由は後述。

テクスチャで変更できない色

雑にいうと「血」のこと。テクスチャが存在しないためLUTを通すまで絶対に赤色として出てくる。
あと目立たない部分で言えばダガー射出時の炎やプレイヤーに当たっているスポットライトの色など。ダガー本体や床の色はテクスチャで変更可能。
ちなみに背景(暗黒)は黒一択で、LUT画像では一番上の一番左の1ピクセルの色が使われる。

血を例にすると、絶対に赤色として出てくるのでLUT画像では必ず右上あたりの色を通して出てくることになる。
つまり「右上あたり」を赤ではなく青や緑などにすれば血の色は変わる。


← で、血を青くするために出来たのがこのLUT画像。

ちょっと白い点が入ってるのはどっかしらでキラッとなってほしいからつけたけど目に見えて白く見えることはほぼない。無念。

ダガーもとい星に黄色を使いたいのでグラデーションを青と黄で作った。


右上の赤をそのまま青にひっくり返したので青い血や炎が出るようになった。

レベルアップ時のキテレツなあの色はpost_lut_levelup.pngが担う。
ほかにも死んだ時の赤い反転や一定スコア達成時のフラッシュ演出などもある。

左上が黒を出力するため、左上以外を全て同じ色に統一するとモノトーンな出力になる。

テクスチャがその通りの色ではダメになる


青血Modにて使ったテクスチャの一部。
左から星、Lv2のダガーハンド、撃破されて沈むイカ1の触手。

ゲーム上では黄色い星や青い腕なのにテクスチャの色が異なるのは何故か。

本来のLUT画像であれば緑だったというところを黄色に変えてしまったので、星の黄色をきちんと出したい時は星テクスチャを緑色にしておかないと別の場所から色を拾って出力してしまう。

血の色と似てる赤系のダガーハンドや撃破時のイカなどのテクスチャは、血とオソロな色であってほしいなら特にテクスチャの色味を変える必要はない。

おわり

ぶっちゃけ一番ラクな色変更は使われていないlut.pngをpost_lut.pngに上書きしてテクスチャに見た目通りの塗りをすることかもしれない。

おまけ




色々いじり回せるようになったので時々なにか思いつき次第アップデートしてます。
よければDLして青い世界で遊んでみてね。

0 件のコメント:

コメントを投稿