• Dear visitors,

    The email issue has been finally solved.
    Thank you for your patience and happy browsing.

    Team ACM.

Assetto Corsa + Rain

Just Kauser

Active Member
Please watch Page 3
for the Tracks, Mods and Instructions!

Screenshot_mazda_rx8_c1_18-4-118-16-59-39.jpg

IGNORE THAT!
I have now started to work on realistically realizing rain.I have developed rain tires that give a realistic grip and RELAXATION_LENGTH so that the car feels just like my car in wet conditions. I made a tutorial for wet track textures some time ago. I managed to realistically integrate the windscreen wipers of Kunos, as a three-volume system: single, slow, fast, that you can use in-game, but the demo video will not be released until Thursday, I can not do it before. I have managed to switch on the light of the vehicle for ever.And I have managed to use a modification of the VisorX app to put transparent rainy textures on the display that change every frame, like a movie.

Even if that sounds pretty confused now, that should only be a preview.
Here are two demo videos for my rain tire mod:
The rain is still added here with Vegas Pro, but I promise to implement the ingame via the overlay app as well.



It will definitely rain in Assetto Corsa.
 
Last edited:

Just Kauser

Active Member
IGNORE THAT!
I dont made this Wet Mod for the Nordschleife, but i changed the Grip back to the normal Grip and used my tyre mod for the Wet Tyre Grip Simulation, now i can get Tyresmoke as well, which looks very realistic on a wet road.
 
Last edited:

Just Kauser

Active Member
IGNORE THAT!
The texture changes in the example only with 1Hz instead of 30, so you can see it better, also I have to first extract the 30 * 60 frames from the Rain Greensceen video and convert them with Photoshop batch processing into transparent png. It still takes some time. These were just sample textures that I had on the PC, and they were not transparent enough, so the dark interior absorbs the rain. I just wanted to demonstrate that I do not tell nonsense.
 
Last edited:

Just Kauser

Active Member
IGNORE THAT!

Demonstration of the Wimpers, use just the single-mode in my wet conversion of Autopolis.
 
Last edited:

luchian

Administrator
Staff member
Have no idea if this is going to lead to believable results, but damn, this is some hard work :). I am not a fan of rain in games, but good luck with this project. Will be interesting to see how far it can go.
 

Just Kauser

Active Member
IGNORE THAT!
Wipermodes Demonstration: This works because i basically renamed the whiper animation in lights.ksanim
and wrote a Glovepie script that periodically presses the button for the light.

This is pure Ingame Footage. I played with my Real Traffic AI.
Fun Fact:
My first car was a 110 hp Opel Astra H, similar to the blue Astra that keeps track of me all the time, what a coincidence.

Unfortunately, Toyota has designed the Stock AE86 understeering when it rains, because the springs are all very progressive, the power of the handbrake and engine are not enough to get it to drift. My real car is always a tail spin in the rain, very pleasant to handle as the countersteer but at the slightest gas shock in the curve and the omega drifts with spinning wheels. And he has only 170hp.

Now I'm working on an animated rain overlay texture that also produces raindrops on the windshield, similar to Forza 7.
See here from 4.00:
 
Last edited:

luchian

Administrator
Staff member
Man, so much work; you might want to wait until the 21st, in case they announce AC2 with rain :D

- on Tapatalk
 

Just Kauser

Active Member
IGNORE THAT!
Since I did not like the selection of greenscreen rain effects of Youtube, I take a look at Unity. Now I can at least adjust the number of drops, speed, transposition vectors myself and synchronize the drops on the glass with my windshield wiper.

light drizzle:
0-1min no windshield wipers
1-2min slow
2-3 fast

To AC2:

I do not believe that there is night and rain. But even if, I'm doing this because it's fun, I'm having new experiences and I want to show how far modding can go.
 
Last edited:

MLT

Active Member
Looking good, although it seems a bit too windy making it look more like snow. I think rain should fall harder and a bit straighter.

Good work though, I hope we can try this out soon!
 

Just Kauser

Active Member
But that was everything for this weekend, I have two exams next week (higher math and digital systems because I'm studying electromobility) and I have to learn something there as well. Next week I will continue to work.
I'm happy with what I've done so far.
 
Last edited:

Just Kauser

Active Member
IGNORE THAT!
I have now finished the rain technically so far, and got my Rainapp running, now I'm waiting for a flash of thought as I am the best gentle transitions between the different windscreen wiper modes get done. Here is my finished unity program for heavy rain. Press L to use the wipers and F to pay respect;) And think of ALT-F4
https://drive.google.com/open?id=1ENpXTN3qHTZE01aFYeQDVGdGk1nDuJgx


 
Last edited:

Just Kauser

Active Member
Glovepie + (PPJOY [not needed here but recommended for further GlovePie scripting]):
Download and Installation:

My wiper Glovepie script for my DFGT:

Code:
pie.FrameRate=20Hz
debug=    var.wimper

if Released( joy4.Button4) then
   var.wimper++
   end

   if Released( joy4.Button1) || Released( joy4.Button8)  then
   var.wimper--

   if var.wimper==-1 then
   var.wa=1
   end

   end

if var.wimper < 0 then
  var.wimper=0
  end

if  var.wimper > 2 then
  var.wimper=2
  end



  if var.wimper==1 then

  var.w2= Pie.Frame mod 60
  if var.w2!=1 then
  var.w2=0
  end
  end


  if var.wimper==2 then

  var.w2= Pie.Frame mod 20
  if var.w2!=1 then
  var.w2=0
  end
  end


  if var.w2==1 then
     var.wa=1
      var.w2=0
      end


    if var.wa==1 || var.wimper==0 then
PPJOY.Digital10=  var.wa+  joy4.Button1
var.wa=0

else
PPJOY.Digital10=false
end


My wiper Glovepie script for Keyboard:

Code:
pie.FrameRate=20Hz
debug=  var.wimper

if Released( Key.P)  then
  var.wimper++
  end

  if Released( Key.O)  then
  var.wimper--

  if var.wimper==-1 then
  var.wa=1
  end

  end

if var.wimper < 0 then
  var.wimper=0
  end

if  var.wimper > 2 then
  var.wimper=2
  end



  if var.wimper==1 then

  var.w2= Pie.Frame mod 60
  if var.w2!=1 then
  var.w2=0
  end
  end


  if var.wimper==2 then

  var.w2= Pie.Frame mod 20
  if var.w2!=1 then
  var.w2=0
  end
  end


  if var.w2==1 then
  var.wa=1
  var.w2=0
  end


  if var.wa==1 || var.wimper==0 then
Key.L=  var.wa+  joy4.Button1
var.wa=0

else
Key.L=false
end


I could have left it on key L too, but if I play AC with steering wheel that does not work, why ever, AC does not accept L. So you have to either use PPJOY as a virtual programmable controller or use the newer and easier to install VJOY in conjunction with FreePie.

If you can not get PPjoy up and running or if it's too complicated for you, here are the links for Freepie and Vjoy.
Freepie
Vjoy

I dont like the python syntax! :(

Since I do not know how to bring Freepie to work only with 20Hz in a simple way, I first use it only as a converter to connect Key.L with Vjoy.

vJoy[0].setButton(0,int(keyboard.getKeyDown(Key.L)))

Just paste in Freepie and press F5.
 
Last edited:

Just Kauser

Active Member
IGNORE THAT!
The whole thing is now only to play around with the Unity program. nevertheless, it will someday come when my rain mod is finished in the tutorial and join together to a big whole.
 
Last edited:
  • Like
Reactions: MLT

Just Kauser

Active Member
Rain tyre:

Code:
;Rain Tyres

[FRONT_2]
NAME=Potenza RE-01R Rain
SHORT_NAME=Rain
WIDTH=0.185
RADIUS=0.2888                ; tyre radius in meters
RIM_RADIUS=0.1905            ; rim radius in meters (use 1 inch more than nominal)
ANGULAR_INERTIA=0.83                            ; angular inertia of front rim+tyre+brake disc together
DAMP=600                                    ; Damping rate of front tyre in N sec/m (values usualy from 200 to 1400)
RATE=254573                                    ; Spring rate of front tyres in Nm
DY0=0.8122
DY1=-0.055
DX0=0.80
DX1=-0.053
WEAR_CURVE=street_front.lut        ; file with lookup table to call
SPEED_SENSITIVITY=0.003667        ; speed sensitivity value
RELAXATION_LENGTH=0.095
ROLLING_RESISTANCE_0=10        ; rolling resistance constant component
ROLLING_RESISTANCE_1=0.000900        ; rolling resistance velocity (squared) component
ROLLING_RESISTANCE_SLIP=4538        ; rolling reistance slip angle component    
FLEX=0.000878                        ; tire profile flex. the bigger the number the bigger the flex, the bigger the added slipangle with load.
CAMBER_GAIN=0.131                    ; Camber gain value as slipangle multiplayer. default 1
DCAMBER_0=1.1
DCAMBER_1=-13                        ; D dependency on camber. D=D*(1.0 - (camberRAD*DCAMBER_0 + camberRAD^2 * DCAMBER_1)) , camberRAD=absolute value of camber in radians
FRICTION_LIMIT_ANGLE=9.30                            ; Slip angle peak. 
XMU=0.24
PRESSURE_STATIC=32                 ; STATIC (COLD) PRESSURE
PRESSURE_SPRING_GAIN=7330         ; INCREASE IN N/m  per psi (from 26psi reference)
PRESSURE_FLEX_GAIN=0.45         ; INCREASE IN FLEX per psi
PRESSURE_RR_GAIN=0.55            ; INCREASE IN RR RESISTENCE per psi
PRESSURE_D_GAIN=0.004                ;loss of tyre footprint with pressure rise.
PRESSURE_IDEAL=39
FZ0=1755
LS_EXPY=0.8200
LS_EXPX=0.8880
DX_REF=0.8
DY_REF=0.8
FLEX_GAIN=0.0304
FALLOFF_LEVEL=0.87
FALLOFF_SPEED=4
CX_MULT=1.02
RADIUS_ANGULAR_K=0.01   ; Radius grows of MILLIMITERS!! Formula -> RADIUS_ANGULAR_K * angularVelocity in rad/s
BRAKE_DX_MOD=0.05


[REAR_2]
NAME=Potenza RE-01R Rain
SHORT_NAME=Rain
WIDTH=0.185
RADIUS=0.2888                ; tyre radius in meters
RIM_RADIUS=0.1905            ; rim radius in meters (use 1 inch more than nominal)
ANGULAR_INERTIA=0.83                            ; angular inertia of front rim+tyre+brake disc together
DAMP=600                                    ; Damping rate of front tyre in N sec/m (values usualy from 200 to 1400)
RATE=254573                                    ; Spring rate of front tyres in Nm
DY0=0.8122
DY1=-0.055
DX0=0.80
DX1=-0.053
WEAR_CURVE=street_rear.lut        ; file with lookup table to call
SPEED_SENSITIVITY=0.003667        ; speed sensitivity value
RELAXATION_LENGTH=0.095
ROLLING_RESISTANCE_0=10        ; rolling resistance constant component
ROLLING_RESISTANCE_1=0.000900        ; rolling resistance velocity (squared) component
ROLLING_RESISTANCE_SLIP=4538        ; rolling reistance slip angle component    
FLEX=0.000878                        ; tire profile flex. the bigger the number the bigger the flex, the bigger the added slipangle with load.
CAMBER_GAIN=0.131                    ; Camber gain value as slipangle multiplayer. default 1
DCAMBER_0=1.1
DCAMBER_1=-13                        ; D dependency on camber. D=D*(1.0 - (camberRAD*DCAMBER_0 + camberRAD^2 * DCAMBER_1)) , camberRAD=absolute value of camber in radians
FRICTION_LIMIT_ANGLE=9.30                            ; Slip angle peak. 
XMU=0.24
PRESSURE_STATIC=32                 ; STATIC (COLD) PRESSURE
PRESSURE_SPRING_GAIN=7330         ; INCREASE IN N/m  per psi (from 26psi reference)
PRESSURE_FLEX_GAIN=0.45         ; INCREASE IN FLEX per psi
PRESSURE_RR_GAIN=0.55            ; INCREASE IN RR RESISTENCE per psi
PRESSURE_D_GAIN=0.004                ;loss of tyre footprint with pressure rise.
PRESSURE_IDEAL=39
FZ0=1755
LS_EXPY=0.8200
LS_EXPX=0.8880
DX_REF=0.8
DY_REF=0.8
FLEX_GAIN=0.0304
FALLOFF_LEVEL=0.87
FALLOFF_SPEED=4
CX_MULT=1.02
RADIUS_ANGULAR_K=0.01   ; Radius grows of MILLIMITERS!! Formula -> RADIUS_ANGULAR_K * angularVelocity in rad/s
BRAKE_DX_MOD=0.05


[THERMAL_FRONT_2]
SURFACE_TRANSFER=0.0140     ;How fast external sources heat the tyre tread touching the asphalt: Values 0-1
PATCH_TRANSFER=0.00027                        ;How fast heat transfers from one tyre location to the other: Values 0-1
CORE_TRANSFER=0.00051            ;How fast heat transfers from tyre to inner air and back. bidirectional
INTERNAL_CORE_TRANSFER=0.0076
FRICTION_K=0.08892                            ;Quantity of slip becoming heat
ROLLING_K=0.22                            ;rolling resistance heat
PERFORMANCE_CURVE=tcurve_street.lut                ;File to use for temperature/grip relation
GRAIN_GAMMA=1                 ; Gamma for the curve grain vs slip. higher number makes grain more influenced by slip
GRAIN_GAIN=0.4                ; Gain for graining. How much gain raises with slip and temperature difference- 100 value = slipangle*(1+grain%)
BLISTER_GAMMA=1            ; Gamma for the curve blistering vs slip. higher number makes blistering more influenced by slip
BLISTER_GAIN=0.3            ; Gain for blistering. How much blistering raises with slip and temperature difference. think blistering more as heat cycles. 100 value = 20% less grip
COOL_FACTOR=2.40
SURFACE_ROLLING_K=1.29583

[THERMAL_REAR_2]
SURFACE_TRANSFER=0.0140     ;How fast external sources heat the tyre tread touching the asphalt: Values 0-1
PATCH_TRANSFER=0.00027                        ;How fast heat transfers from one tyre location to the other: Values 0-1
CORE_TRANSFER=0.00051            ;How fast heat transfers from tyre to inner air and back. bidirectional
INTERNAL_CORE_TRANSFER=0.0076
FRICTION_K=0.08892                            ;Quantity of slip becoming heat
ROLLING_K=0.22                            ;rolling resistance heat
PERFORMANCE_CURVE=tcurve_street.lut                ;File to use for temperature/grip relation
GRAIN_GAMMA=1                 ; Gamma for the curve grain vs slip. higher number makes grain more influenced by slip
GRAIN_GAIN=0.4                ; Gain for graining. How much gain raises with slip and temperature difference- 100 value = slipangle*(1+grain%)
BLISTER_GAMMA=1            ; Gamma for the curve blistering vs slip. higher number makes blistering more influenced by slip
BLISTER_GAIN=0.3            ; Gain for blistering. How much blistering raises with slip and temperature difference. think blistering more as heat cycles. 100 value = 20% less grip
COOL_FACTOR=2.40
SURFACE_ROLLING_K=1.29583


For the rain tires you should insert this code in the tyre.ini of your car and make the following changes:

1. Copy the lines:
WIDTH = 0185
RADIUS = 0.2888; tire radius in meters
RIM_RADIUS = 0.1905; rim radius in meters (use 1 inch more than nominal)
from the previous data of your car.

2. replaces _2 with the number +1 that appeared last in the file. In case of doubt in _1

If you now select these tires in the setup, rain on the road is simulated on each track.

Tire wear is best switched off because it is only very low in wet conditions.
 
Last edited:
Top