SSブログ

Assetto Corsa Track Mod 街路灯の点灯 [GAME]

コメントで街路灯等燈火類の点灯方法の質問があったので、分かる範囲で書いてみます。
ちょうど54号線の駐車場に街路灯を設置しようとしていたので。
以下はCSPが正しく導入されていることが前提になります。
CSPが導入されていればksEmissiveの設定だけで光るような気がしないでもないですが、これは試さなかったので不明。
基本的には、光らせたいオブジェクトに対応したiniファイルを書くだけで良いはずですが、既存のオブジェクトの一部を光らせたいような場合(家の窓とか街路灯のライト部分等)ちょっと小細工が必要になります。
私は試していませんが、光る部分が別オブジェクトに分かれていて、それ専用にマテリアルが割り当てられている場合には、CSP用のiniファイルを作れば光るような気がします、iniファイルの書き方は一部を光らせる場合と同じですので以下を参考にしてください。

では、オブジェクトの一部分を光らせる場合の手順など。
以下の様なライトがあったとします、ポールとライトは別オブジェクトですが、ライトはレンズが分離されていなくて一つのオブジェクトです。
gl1.jpg
使用しているテクスチャは以下の様な物(手抜きなテクスチャです)。
gl3.jpg
マテリアルの設定は以下の様な感じ。
gl2.jpg
この状態だと、当然以下の様になります。
gl6.jpg

この状態で、ライトのオブジェクトに使用しているマテリアルをCSPのiniファイルに書いてしまうとライト全体が光ってしまいます、光らせたいのはレンズの部分だけなのでCSPで追加されたシェーダーを利用してライト部分だけを光らせます。
以下の様なテクスチャを用意します、これは、テクスチャのなかで光らせたい部分だけを白抜きしたものです。
gl4.jpg

そして、先ほどのライトのマテリアルのシェーダーをksPerPixelMutiMap_emissiveに変更します、指定するテクスチャが一気に増えますが、MapとNormalはダミー DiffuseとDetailにはオブジェクト用のテクスチャ Emissiveに上で作成したテクスチャを設定します。
gl5.jpg

これでkn5を作成すれば準備は完了です。
次にCSP用のiniファイルを作成します、iniファイルはextension\config\tracksの下にModのフォルダー名.iniとして作成します。
内容は以下の様な感じ(不要な記述もあるかも・・・・・)。
ライトの色はCOLORで指定します、基本的にLIGHT_SERIESとMATERIAL_ADJUSTMENTはセットだと思っていればよいと思います、MATERIAL_ADJUSTMENTはマテリアルの設定値の塗り替えLIGHT_SERIESは照らす範囲とかでしょうか、やってる私も良くわかっていません(おい)。
光らせたいマテリアルが複数あって、色等の設定が同じであればMATERIALSに,で区切って複数指定できます。
光らせ方が複数ある場合には、光らせ方の数だけ以下のセットを用意します、このときは_0の部分を_1,_2・・・・と連番で増やしていきます。

[LIGHTING]
LIT_MULT=1.0
SPECULAR_MULT=1.0
CAR_LIGHTS_LIT_MULT=1.0

[LIGHT_SERIES_0]
DESCRIPTION=Street Lights
ACTIVE=1
MATERIALS=light_1
DIRECTION=0,-1,0
OFFSET=0,2,0
RANGE=25
SPOT=160
SPOT_SHARPNESS=0.8
RANGE_GRADIENT_OFFSET=0.65
CLUSTER_THRESHOLD=11
FADE_AT=850
COLOR=255, 173, 65, 0.015
SINGLE_FREQUENCY=1
CONDITION=ALWAYS_ON

[MATERIAL_ADJUSTMENT_0]
DESCRIPTION=street light emissive
ACTIVE=1
MATERIALS=light_1
KEY_0=ksEmissive
VALUE_0=255,147,41, 0.7
VALUE_0_OFF=0, 0, 0
KEY_1=ksAmbient
VALUE_1=0
KEY_2=ksSpecular
VALUE_2=0
CONDITION=ALWAYS_ON

でここまで作業をしてコースインすると。
gl7.jpg
こんな感じで無事にライトが光りました。

nice!(0)  コメント(11) 

nice! 0

コメント 11

YUJI

もう記事が出来上がっていて驚きました(笑)ありがとうございます! まだ斜め読みですがなんだかできそうでワクワクしています。今から順を追って試してみようと思います。

冒頭(CSPを入れていれば~)を読んでちょっと気になったのですが、もしや光らせたいマテリアルの名前を「AC_Right」等と「1Road」のようなアセットコルサ側が識別してくれるように書き入れる必要がありましたか…?

とりあえず今は手順に従って試してみようと思います!
by YUJI (2019-11-15 01:05) 

YUJI

おかげさまで無事点灯いたしました!(ついついやめられなくこんな時間です)

KsEditorのShaderに「KsPerPixelMultiMap~」の名前の項目は複数あるのに何故かEmissiveが無かったので、とりあえずデフォルトのKsPerPixelで試してみました。

iniは載せて頂いたものをそのままコピペし、その中のMATERIALS=light_1という部分と添付写真からもしやと思い、ライトのオブジェクトやマテリアル名を「light_1」に変えてみたところ点灯!
最近作り始めたコース作りがまた一段と作りに没頭しそうです。
ありがとうございます
by YUJI (2019-11-15 02:36) 

kim

無事に光ったようでなによりです。
逆にACで始まる名前は色々特殊なので、不用意に使わないほうが良いと思います。
あと、対応的にはよいのですがMATERIALS=は対象のマテリアル名を書くところなので、light_1にマテリアル名を合わせるのではなくlight_1の部分を光らせたいマテリアル名に変更するのが本来の対応ですね、ちなみに、MATERIALS=light_1,s_l,t_l(名前に意味はありません)といったように複数のマテリアルを書くこともできます。
それと、ksPerPixelMutiMap_emissiveはCSPで追加されたシェーダーなので、KsEditorが見ているシェーダーのフォルダーにファイルをコピーする必要があります。
by kim (2019-11-15 09:45) 

POiSON

はじめまして!質問失礼します。
もし可能であれば、街灯の灯りをつける方法を教えて頂けませんか?
extension\config\tracks\modのコース名.iniを作成し、以下の内容を入力しました。

[LIGHTING]
LIT_MULT=1.0
SPECULAR_MULT=1.0
CAR_LIGHTS_LIT_MULT=1.0

[LIGHT_SERIES_1]
DESCRIPTION=TURNPIKE_DAY_NML_ROAD_SECT101_PICE_bloom1_
ACTIVE=1
MATERIALS=16_0_32_209
DIRECTION=0,-1,0
OFFSET=0,2,0
RANGE=25
SPOT=160
SPOT_SHARPNESS=0.8
RANGE_GRADIENT_OFFSET=0.65
CLUSTER_THRESHOLD=11
FADE_AT=850
COLOR=255, 173, 65, 0.015
SINGLE_FREQUENCY=1
CONDITION=ALWAYS_ON

[MATERIAL_ADJUSTMENT_1]
DESCRIPTION=TURNPIKE_DAY_NML_ROAD_SECT101_PICE_bloom1_
ACTIVE=1
MATERIALS=16_0_32_209
KEY_0=ksEmissive
VALUE_0=255,147,41, 0.7
VALUE_0_OFF=0, 0, 0
KEY_1=ksAmbient
VALUE_1=0
KEY_2=ksSpecular
VALUE_2=0
CONDITION=ALWAYS_ON

しかし、街灯は一切つきません。
ご返答頂けると幸いです。
コースは、箱根ターンパイクです。
CSPは、1.76を使用しています。
by POiSON (2022-01-06 17:46) 

POiSON

※訂正
_1の部分は、_0になります。
by POiSON (2022-01-06 17:55) 

kim

初めまして
該当のmodを探していて遅くなってしまいました。
modのフォルダー配下にextensionフォルダーを作成して、このフォルダー配下にext_config.iniを作成しこのファイルに設定を書いてみてください。
設定の内容は書かれているもので良さそうですが、KEY_1,KEY_2,VALUE_1,VALUE_2は不要かもしれません。

私の方でも試してみましたが点灯しました。
by kim (2022-01-07 00:36) 

POiSON

ご返答ありがとうございます。
灯りがつきました。
しかし、街灯そのものは点灯せず、そのまわりが照らされている状況です。
どうすれば、街灯自体が点灯するのでしょうか?
なぜか、ext_config.iniにすると、街灯の灯りがつかず、ext_configにすると灯りがつきました。
コースmod自体を再ダウンロードし直し、CSPも1.75を正しくダウンロードし直しました。しかし、街灯自体が点灯しません。

descriptionとmaterialsは、上記の通り、該当する箇所をobject inspectorで選択・コピーし、=の右に貼り付けしました。
ご迷惑をおかけし、申し訳ございません。
by POiSON (2022-01-07 12:34) 

POiSON

[INCLUDE]
INCLUDE = common/conditions.ini
を冒頭に記述したところ、無事に点灯しました。
お騒がせしました。
ありがとうございます。

by POiSON (2022-01-07 14:58) 

POiSON

何度も投稿失礼します。
光の量や範囲を拡大したいのですが、どこを調整すれば良いのでしょうか?
by POiSON (2022-01-07 19:07) 

kim

もうしわけありません
私も細かい設定について説明できる知識を持ち合わせていません。
RANG,SPOT辺りの値を変更して確認して見てください。

by kim (2022-01-07 21:46) 

POiSON

ご返信ありがとうございます。
RANGEの数値を高くしたところ、光量が増えました。
貴重な投稿ありがとうございます。
by POiSON (2022-01-07 22:51) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。