Racer v0.8.27 released!

Ruud

RACER Developer
Hopefully quite close to v0.9RC1.

Get it at http://www.racer.nl/download/racer0.8.27.zip (75Mb)

The changes:
- move_cg=1 didn't offset correctly: cameras, wipers, generic models, brake calipers, exhausts, dials, helmet, carlights Z/far.
- 'rewind' commands for live rewinding (if RTD logging is on)
- Default font made a little bigger again
- onspeedlimiter.rex gets executed when the speed limiter is turned on.
- Shadowmapping tweaked for director and other cameras.
- Fuel consumption reset to 0 when standing still (was 99.9 L/100km).
- A missing controller (defined in a controls file) would crash Racer
- Using something other than default.ini in racer.ini's ini.controls now works (can be saved)
- 3 profiles available in the controller setup screen.
- The names above the cars were black - fixed with floatingname_*.cg shaders.
- The wheel blur models would show in the car selection garage.
- Added grass smoke particles
- Select car/track screens sped up by loading only part of the car.ini/track.ini files. Assumes 'car' is at the top though (!).
- Selecting a car, then exiting would crash.
- When cars stood still, too much was damped away and the differential wheels would rotate a bit.
 
Sorry, Ruud you only half-nailed the old standing still on a hill issues. The tyres don't rotate by themselves anymore but....
you will notice the car slid down the (tiny) incline a foot in those two minutes. Happens on any track with any car I've tested.

For a racing simulator, these centimeters in two minutes mean the goal is more than fully met. ;-)
Everything twitches, sure, that is the nature of numerical integration. I once tried to dampen everything to zero when you're standing still, but that just means that driving off is strange and you have to push through some unknown goo. The more I try to damp things out, the more subtle things go wrong, so I tend towards leaving all things jiggly these days.

If we create a GTA mode and you leave the car parked somewhere to do some multiplayer killing, I might consider improving 'park' behavior. ;-)
 
Oh yeah thats another point.

I run 1920x1200 here, my first 16:10 screen after my old 4:3 jobby.

My dials are slightly stretched horizontally. I've tried all the racer.ini tweaks to square things back up again, but the dials still render a bit wide... shouldn't these be perfectly round (if the dials were round?)

Will take screenies/post settings if needed? Or are others seeing this issue?

Thanks

Dave

Problem is that sometimes you want to counter the stretching, sometimes you don't. For the Lambo, if you change the aspect, the logo+'current lap' time background image will be shrunk. That means the time that is overlayed on top of that image gets misaligned.
I see that the 'render_aspect' does not work anymore, but 'aspect' (pixel aspect) does work. However, both should work, but every view elt should have its own 'aspect_correct' option or something to allow it to resize with aspect, or not. Say you have a relatively small fuel pointer that isn't centered inside an rpm dial image; that fuel pointer would have to move depending on the aspect!
Not sure if it's solvable.

I'd lean towards designing for 16:9 (~16:10) views as most displays are ~16:9 anyway these days and put up with some compression on 4:3 displays.
 
Qlog problems:
QInfo(data/cars/baja_class1/car.ini); brackets don't match; still 1 closing bracket(s) expected at end of file.
QInfo(data/cars/imp/car.ini); brackets don't match; still 1 closing bracket(s) expected at end of file.
QInfo(data/cars/lambomurcielago/car.ini); brackets don't match; still 1 closing bracket(s) expected at end of file.
Didn't have these with ver 0.0826 using same car files!

Mirrors on car still a bit too bright, but I can live with it for now.

Tracked changes "Alternative with light sky" variable to almost bright white!
sky=8.076190 8.076190 8.076190 0.000000
Makes it almost impossible to see vertex points!
Also the buttons don't fit properly when using width=1200, height=800 in the "resolution" section. See attacment.

View attachment 32977

The car.ini was only in the 'car select' screen, which is now fixed, thanks.
Not sure exactly what you mean with 'alternative with light sky'?
And the resolution: we assume a minimum working space of 1280x1024. Most of us here work on 30" screens and we always need to increase TrackEd's size. :)
 
Yes, I got crash behavior similar to what we had a couple of months back. When hitting the armco, the vehicle gets stuck instantly and the NaN errors bring Racer to a crawl, forcing an exit.

With the standing still bug fix for tyre forces I seem to be getting buggy differential behavior more often now. A simple three point or u-turn that gives the differential something to think about often triggers uncontrolled acceleration of the wheels that are connected to the differential, in opposite directions. Most of the time this wheel spin can't be stopped with the brakes and resetting the vehicle is the only solution.

During one such situation I also got reminded of the fact that ground particles are being drawn even though the spinning wheels are merely above the surface, not actually touching it.

Backfire particles still don't respond to the likeliness_percentage setting at all - as long as the engine speed range is within the defined limits, only every second lift-off will trigger the animation regardless.

For the NaN, it might be convex hull problems; there was a tolerance which reduced the convex hull too much ('wireframephys on' shows it); it might be gone now, although I didn't do a thorough test.

The diff being buggy is a small advantage now, so I can try to fix that. I hardly ever saw the diff lock up (car standing still, 100% throttle and nothing happening, until you press the brakes somehow).

Likeliness was at some point removed again by Rob (who did the particles), I might try and bring it back.
 
I run in 1600x900 and my gauges have been egg shaped forever. Just go into the racer.ini and tweak the pixel aspect ratio.

; Pixel aspect ratio; normally 1 (pixels onscreen are sized 1:1)
aspect=1.333

This works well for me in 16:9. I think setting it to 1.6 fixes it for 16:10.

I've fixed render_aspect to work in v0.8.28, so be careful. 'aspect' is really the physical pixel ratio, so the dimensions of your physical screen pixels. This is mostly 1:1. You can calculate it by measuring your screen in centimers, then dividing over the number of pixels, and see if your resolution and centimeters don't match up. I.e. a 1280x800 that would physically measure to be 128x70cm would NOT have a 1:1 pixel ratio (vertically smaller pixels).
 
Ruud, I'm trying to clean up my car directory a bit - but I've run into a problem.
I've got my images in a /img/ directory, dof's in a /dof/ and sounds in a /wav/. Sounds work fine, models work fine BUT shaders are all black.
QLOG reckon's that it can't find all the materials and stuff.

Currently my .shd's are in the car's root dir. Should they be in with the dof's, materials or both?
Do I need to re-think my folder structure? Cause I'd really like as little data to be in the root folder as possible. It just makes everything cleaner.

Careful if you use skins, although you'd say it should always work right, since a path vs file doesn't really make a difference (it shouldn't for most occasions). Perhaps skins try to cut off the path except the image name, to modify the path to use skin1/ for example instead of .
I did try it on the Lambo just now and that worked ok (moving lambobody.tga and lambobody_normal.tga into img/ and modifying car.shd).
 
Seemed it was to do with the dof's location as stereo suggested. I guess racer is searching for everything relative to the car.ini but expects the dofs to be in the same folder or something. Either way - .ar'ing it up worked a treat. Directory is clean and dofs are secure :)
 
The diff being buggy is a small advantage now, so I can try to fix that. I hardly ever saw the diff lock up (car standing still, 100% throttle and nothing happening, until you press the brakes somehow).

I had seen it quite a lot, especially after sliding to a stop with the handbrake on (like a handbrake turn to face the direction you just came from)... let go of handbrake, wait a few seconds, try to set off, no go...
Brake on, then off, then go quickly, and it'd be ok, but brake on, then off again for a number of seconds, and no go.

It's almost like once the car had started doing it's random moving when stood still thing it'd be a problem. If you moved off again before it did that random floating around it wouldn't be an issue.

Not sure how that has changed with the new fix around cars floating about a bit when stood still.

Was it also more noticeable with certain diff's Cosmo? I can't remember?

Thanks

Dave
 
Was it also more noticeable with certain diff's Cosmo?

Yes it is, sorry for being unspecific before. It's very much related to the amount of locking you're trying to achieve. An open differential or any locking type with a low torque bias ratio (TBR) rating won't behave oddly, but it gets worse the more you try to keep the wheels locked together.

Viscous (type=1) is the odd one out perhaps because it doesn't show that behavior, but then again it's way of locking in Racer is a bit of a mystery anyway (to me at least), magic factor and all.

Clutch type LSDs (type=2 and 3) start getting wonky as you increase either the amount of clutches (is that counted total or per side, btw?), the clutch factor or the power_ratio/coast_ratio, but don't seem to be bothered much by the ramp angles for instance.

Fully locked (type=4) doesn't have the same standing still issues most of the time, but it easily gets stuck in self-inflicting acceleration of the wheels at the slightest chance.



As an example, a classic 80's/90's BMW LSD with 25% locking index would have a TBR/power_ratio of 1.667 [TBR = (Locking %-age + 1) / (Locking %-age -1)]. That works OK for the most part, still gets stuck after a spin occassionally.
Same car with a Motorsport 75% LSD, TBR=7.000 already has trouble starting off because it initiates opposite direction wheelspin while standing still.
 
The viscous locking torque (extra friction) is:

velASymmetric=wheel[1]->GetRotationV()-wheel[0]->GetRotationV();
torqueLock=-lockingCoeff*velASymmetric;

Where rotation velocity is in radians. The end torque is in Nm.
For clutch LSD's the friction (locking) torque is that of the lowest friction wheel times the bias ratio, or preload if preload is larger. The clutches relate to the ratios as follows:

powerRatio=cosf(powerAngle)*(1.0+2.0*clutches)*clutchFactor;
coastRatio=cosf(coastAngle)*(1.0+2.0*clutches)*clutchFactor;

This was from a mail by Niels Heusinkveld (IIRC) back in the day (2002/2003?) explaining the GPL diff.

I've taken out the locking from the diff; it then acted up as you pressed the brakes. That was alleviated with a trick that Marno here (who's doing a physic model in Simulink for Racer Pro) uses for the same problem; applying tanh() on the brake signal. In other words; if the wheel doesn't spin much, cut down on the brakes. This makes things stable again for the diff again.

@Dave: that disappearing shadow, phew, it's smCor again. Too high for split 3. I added a pow() to the light-normal dot product in shadowmapping.cg which made things better. Try smCor[] with all zeroes and you should see the shadow again. So it's a bit of extreme Peter Panning.
 
You can try that fix with the differential at http://www.racer.nl/download/racer0828a.zip (only racer.exe).
I've attached the 2 modified Cg files that should fix the disappearing shadow and improve CSM a bit.

Changelist sofar:
- Minimap was painted even if no splines were present
- SMD chase cam shadow focus is now on the car, not near the camera itself
- 3rd shadow split distance reduced to 500m for detail. Last split is now faded out.
- Large car CG offset could get some 3D objects culled incorrectly.
- 'Select car' screen gave car.ini errors which were incorrect (due to fast loading of only the first part of car.ini)
- resolution.render_aspect didn't work; fixed
- Shadowmapping tweaked again for even less Z correction

My CSM settings from racer.ini:
Code:
shadowmapping
  {
    ; Enable shadow mapping? If enabled, changes the Cg shader directory to
    ; data/renderer/shaders_hdr_csm (!) instead of data/renderer/shaders_hdr
    enable=1
    ; debug mode (paints splits)
    debug=0
    ; size of the debug polygons rendered
    dbgsize=128
    ; Blur the shadowmap? (slower)
    blur=1
    ; Profiles for different camera types
    profile0
    {
      ; outside car
      ; nr of splits used, each split takes one extra render loop (3 should be enough)
      splits=4
      ; texture resolution; MUST match that in data/renderer/common/constants.cg!
      mapsize=1024
      ; split distances 0 - 3, each distance higher than the previous one; now in data/renderer/common/constants.cg? (not true probably)
      splitdist0=10
      splitdist1=40
      splitdist2=160
      splitdist3=640
      ;splitdist0=30
      ;splitdist1=60
      ;splitdist2=300
      ;splitdist3=500
      ; the amount of frames to skip to increase performance
      splitrenderjump0=0
      splitrenderjump1=0
      splitrenderjump2=0
      splitrenderjump3=0
      ; offset the framecount for jumping frames
      splitrenderoffset0=0
      splitrenderoffset1=0
      splitrenderoffset2=0
      splitrenderoffset3=0
      ; debug mode (paints splits)
      debug=0
      ; size of the debug polygons rendered
      dbgsize=128
    }
    profile1
    {
      ; inside car
      ; nr of splits used, each split takes one extra render loop (3 should be enough)
      splits=4
      ; texture resolution; MUST match that in data/renderer/common/constants.cg!
      mapsize=1024
      ; split distances 0 - 3, each distance higher than the previous one; now in data/renderer/common/constants.cg? (not true probably)
      splitdist0=5
      splitdist1=30
      splitdist2=150
      splitdist3=850
      ; the amount of frames to skip to increase performance
      splitrenderjump0=0
      splitrenderjump1=0
      splitrenderjump2=0
      splitrenderjump3=0
      ; offset the framecount for jumping frames
      splitrenderoffset0=0
      splitrenderoffset1=0
      splitrenderoffset2=0
      splitrenderoffset3=0
      ; debug mode (paints splits)
      debug=0
      ; size of the debug polygons rendered
      dbgsize=128
    }
  }
 

Attachments

  • cg_files.zip
    4.1 KB · Views: 181
smCor haha.

I noticed they had improved for the wheel arches and tops of tyres, but clearly they need tweaks again.

I guess that if the split sizes are changed, then smCor need tweaking again.


I'll try find some ideal settings with 4 splits for both inside and outside cameras, including smCor values, when the next version of Racer comes out... can't do much currently with the 3 split system, doesn't feel enough at 3 as discussed :D

Dave
 
That looks much better out of the box here.

A few questions though, is the fade point picking up from the split distance values in Racer.ini, or is that hard coded in shadowmapping.cg, just that your fade distance of 500m isn't lining up with the values from Racer.ini you posted. Are they independent things? Or is the fade always 100% at split 3 end point, and 0% transparrency at split 4 end point?


Nitpicking now.

From the helicopter view, is it worth making the splits car relative, so it's as if you have zoomed out from a car camera view. Right now helicopter view looks a bit pants. I guess the heli cam will never see that far away from the car for that to be an issue?

Blurring algorithm looks nice on near splits, but is very aggressive on distant ones. At about 2pm lighting, my car at about 100m away looks almost like it's got a shadow at both sides, the shadow is blurred so heavily it's 'leaking' back out to the lit side of the car.
This is why I am not happy with blurring, it makes shadows look big and soft and it hurts the feeling of realism. Blur=0 looks better all round to me... that isn't to say I don't like blur, it looks nice when the details are big, but when they get small the blurring is too heavy... is the blurring algorithm easily editable to tweak?


Lastly, should we have smCor for the other camera profile too? It seems smCor values are tweaked for split sizes, and interior cameras are using different ones?

Dave
 
Last question :D

The new FF features are very nice, but I still struggle to copy my real car. I can get the weighting and stuff all very nice.

Then I realised why my real car is weighty around the centre, but light when steering. Power assistance.

Just after driving a friends car the other day without it. Haha, it was seriously hard work parking it.


Is there any easy way to make it so that when we steer, the steering gets lighter, but when we are not, it stays heavier? That might help give that nice weighty feel dead ahead, that then seems to subside when we manoeuvre?!


Right now I feel I can fudge the effect with more inertia than is reasonable. This is probably low in real life, but it does a good job of being noticeable when your not steering, obviously, but when you steer the initial inertia is overcome and that is like the power steering assistance coming in.

For now, I'll tweak it so it 'feels' right, but it's just an interesting observation anyway :D

Dave
 

Latest News

How long have you been simracing

  • < 1 year

    Votes: 335 15.5%
  • < 2 years

    Votes: 229 10.6%
  • < 3 years

    Votes: 227 10.5%
  • < 4 years

    Votes: 171 7.9%
  • < 5 years

    Votes: 290 13.4%
  • < 10 years

    Votes: 253 11.7%
  • < 15 years

    Votes: 162 7.5%
  • < 20 years

    Votes: 122 5.6%
  • < 25 years

    Votes: 97 4.5%
  • Ok, I am a dinosaur

    Votes: 280 12.9%
Back
Top