TUTORIAL Tree shader for day/night cycle

Discussion in 'Tracks' started by Raoulemilian, May 2, 2024.

  1. Raoulemilian

    Raoulemilian New Member

    Joined:
    Nov 29, 2020
    Messages:
    13
    Likes Received:
    2
    Hello,i had this problem in which the tree shader was looking good in the day but awful in the night,because of static values of ksAmbient and ksDiffuse. Now they can vary hour by hour. The only problem is that the change of values is instant and i dont know how to make smooth transition,despite using "lag"parameter. Anyway it's also ok like this. Here are the 2 files you need:
    • Add these values in 'content/tracks/yourmap/extension/ext_config.ini'
    Code:
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD22/10
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0
    VALUE_0_OFF=0
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD10/1030
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.3
    VALUE_0_OFF=0.3
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD1030/11
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.4
    VALUE_0_OFF=0.4
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD11/12
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.6
    VALUE_0_OFF=0.6
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD12/13
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=1
    VALUE_0_OFF=1
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD13/14
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=1
    VALUE_0_OFF=1
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD14/15
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=1
    VALUE_0_OFF=1
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD15/16
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=1
    VALUE_0_OFF=1
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD16/19
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.9
    VALUE_0_OFF=0.9
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD19/20
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.7
    VALUE_0_OFF=0.7
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD20/21
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.5
    VALUE_0_OFF=0.5
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    [MATERIAL_ADJUSTMENT_...]
    ACTIVE=1
    CONDITION=TOD21/22
    DESCRIPTION=trees
    KEY_0=ksAmbient
    VALUE_0=0.4
    VALUE_0_OFF=0.4
    KEY_1=ksDiffuse
    VALUE_1=0
    VALUE_1_OFF=0
    MATERIALS= trees1, trees2, trees3, trees4, trees5
    LAG = 1
    
    • And create a file in assetto corsa/extension/config/tracks/yourtrack.ini

    Code:
    [CONDITION_70]
    ; active between 22-10
    NAME=TOD22/10
    INPUT=TIME
    LUT=(|0=1|36000=1|36000=0|79200=0|79200=1|86400=1|)
    [CONDITION_71]
    ; active between 10-10.30
    NAME=TOD10/1030
    INPUT=TIME
    LUT=(|0=0|36000=0|36000=1|37800=1|37800=0|86400=0|)
    [CONDITION_72]
    ; active between 10.30-11
    NAME=TOD1030/11
    INPUT=TIME
    LUT=(|0=0|37800=0|37800=1|39600=1|39600=0|86400=0|)
    [CONDITION_73]
    ; active between 11-12
    NAME=TOD11/12
    INPUT=TIME
    LUT=(|0=0|39600=0|39600=1|43200=1|43200=0|86400=0|)
    [CONDITION_74]
    ; active between 12–13
    NAME=TOD12/13
    INPUT=TIME
    LUT=(|0=0|43200=0|43200=1|46800=1|46800=0|86400=0|)
    [CONDITION_75]
    ; active between 13–14
    NAME=TOD13/14
    INPUT=TIME
    LUT=(|0=0|46800=0|46800=1|50400=1|50400=0|86400=0|)
    [CONDITION_76]
    ; active between 14–15
    NAME=TOD14/15
    INPUT=TIME
    LUT=(|0=0|50400=0|50400=1|54000=1|54000=0|86400=0|)
    [CONDITION_77]
    ; active between 15–16
    NAME=TOD15/16
    INPUT=TIME
    LUT=(|0=0|54000=0|54000=1|57600=1|57600=0|86400=0|)
    [CONDITION_78]
    ; active between 16–19
    NAME=TOD16/19
    INPUT=TIME
    LUT=(|0=0|57600=0|57600=1|68400=1|68400=0|86400=0|)
    [CONDITION_79]
    ; active between 19–20
    NAME=TOD19/20
    INPUT=TIME
    LUT=(|0=0|68400=0|68400=1|72000=1|72000=0|86400=0|)
    [CONDITION_80]
    ; active between 20-21
    NAME=TOD20/21
    INPUT=TIME
    LUT=(|0=0|72000=0|72000=1|75600=1|75600=0|86400=0|)
    [CONDITION_81]
    ; active between 21-22
    NAME=TOD21/22
    INPUT=TIME
    LUT=(|0=0|75600=0|75600=1|79200=1|79200=0|86400=0|)
    Now,the luminosity of the trees can vary every hour. You can change the hours in which the conditions are active,depends of the sunset and sunrise hours in your track. My track has sunrise at 10AM and sunset at 10PM.
     
    Last edited: May 2, 2024
    Rob Pawn likes this.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice