Racer v0.8.38 released

Ruud

RACER Developer
Racer v0.8.38 is now available at http://www.mediafire.com/file/a9z1omd6rmhzymb/racer0.8.38b.7z

Enjoy!
Ruud

Changelist:
- Look_up/look_down controls added for to make TrackIR devices possible.
That makes head tracking possible, although currently a bit crude.
- In your controller file you can add global.up_down_velocity to set up/down look velocity (default=250)
- In your controller file you can add global.up_down_look_max to set the max up/down look angle (default=45)
- Removed energy conserving diffuse/specular lighting for version 0.9.
- Auto exposure turned back on. It can cause dips in framerate on some systems (every second, a grab is mipmapped to obtain the scene brightness).
- Added shader .mipmap_bias for the global shader and optionally for separate layers.
- Added cubemap mipmapping to all reflection shaders for environment mapping.
Requires a good graphics card; otherwise, turn off envmap.generate_mipmaps (set to 0).
- Fixed keep_aspect (dials/views.ini) for multi-monitor setups.
- Setting up graphics settings and starting a race would crash.
- Added dev.collisions setting to globally turn off collision checking.
- Wireframe mode gave bad texturing for the rest of the graphics.
- Trackcam FOV clamped to zoom range indicated by the camera
- Newton solver parameters reverted in the hopes of fixing now & then hangups (10-200 seconds each, after several hours of play)
- Car camera offset seems back working; the FIXED camera type should now work correctly again.
- Shadowmapping in car camera mode focuses on the car, even if the camera from/to positions are some distance away from the car.
- Reverted back to FMod 4.30 (was v4.36) since some people had volume problems at startup.
- Differential power_ratio warnings were mistakenly given for non-LSD type diffs.
 
This is where localised generated envmaps would be an interesting idea, perhaps at lower resolutions too.

So they are rendered at TOD change or track load!? Then referenced automagically.

Ie, $trackenvmap_local

Used for other cars and traffic, along with buildings glass etc... it's still annoying having buildings with glass reflect what the car is reflecting because we can only reference one envmap (as far as I know), and that is the live car one...

Dave

I would think that they just need to be a render once map. We may need a traffic shader that just references a static map.

Alex Forbin
 
I would think that they just need to be a render once map. We may need a traffic shader that just references a static map.

Alex Forbin

First of all, no $trackmap_local please. Such things should be done in Racer internally.

The way I see it, it would be probably feasible to render 2 envmaps per frame. One is high quality map for the player car and the other is a low quality map for traffic cars. Now, the low quality map could be rendered once per frame, but each time for a different traffic car (also taking account the distance of the traffic car from the player car, so that traffic further away would get less envmap updates and traffic closer).

So, at 30fps and 30 traffic cars, each traffic car would get max 1 envmap update per second...
 
When I said trackmap_local, I meant something internal.

Ie, we might define a point in the track (xyz coords), that the envmap is generated from every time TOD changes for example, and we can have a few points around the track, and any object using that trackmap_local uses the nearest point and then uses the envmap that was rendered there.

They could be much lower resolution, and possibly updated once every second as you say.

Just something to get reflective materials in Racer, that are not always using the cars envmap :D


Hmmmm

Dave
 
Just noticed that movables (cones, etc) are black when illuminated by headlights, Everything else has color. Bug?

Did you set the shader accordingly ?

Code:
vf_dyn_standard
{
  ; Dynamic objects (such as cones) with a default shader
  vertex_shader
  {
    file=dyn_standard_v.cg
  }
  fragment_shader
  {
    file=standard_f.cg
  }
}

I had the same situation now it's OK.

=====================================
AI Cars

Want to know, how much AI cars (ai_car_multiple=...) + all settings on (CSM, envmap live, etc.) you can drive ingame at your surround resolution ?

When 4 or 5 cars (each highly tessellated ~ 60K), I have the same FPS as when driving alone (~ + 25), but having 2 more & I get suddenly 10 FPS. It's not logical...All other games, I get almost everything at x2 more resolution with + 10 cars (+ 60K polies). Hmmm....

I also found out that the bestline (F3) isn't working correctly, it disappears after a few seconds, above all, it doesn't do its job when iterating thru AI cars. Hmm, it's like the projected lights which only works on the player car when track night by default =0 etc... seems the same issue for all kind of features you've added.

One idea would be, to be allowed to drive the chosen AI car 'on fly' / ingame (when AI racing), unfortunately, it doesn't work, there's some real 'weird' behavior when trying to CTRL + A when not in the player car. Could be + 1 Ruud, imagine we would just drive ANY of the AI car at will. :) Same could be applied to Traffic cars...

Since we will integrate & see traffic cars soon in our tracks, I'd happy if the skins feature (for tracks originally) is applied to AI cars as well. Be creative, I guess if we name them, according to certain rules & set them in a variable somehow, Racer could choose/apply randomly one of those to each car.

=====================================
HUD

The new damage HUD could disappear when model=1 in views ini, just to make it perfect (by default/internally). Talking about those, what about HUDs that are moving on steeringwheels, like the F1. From what I see in the docs, no ways yet.

=====================================
Disco Cams

In particular cases (AI racing), it would be great to see this cam following a flock of cars, instead of following 1 car only. You know, since we can do KFC & custom cam interpolations, I would get rid of some of your internal disco cam animation, which wasn't fixed in recent versions. Please check the cams & tell me what you see, on my surround config, I get serious headache at some animations (the circle around car anim.).

Hidden Cameras Commands to be Added in Official docs :

CTRL + 8 or 2 => UP/DOWN
CTRL + 4 or 6 => LEFT/RIGHT

Combination allowed...

=======================================
System Feature / Scripts

I've researched about getters & setters, I seem to understand the reason why you have implemented the sytem.
Knowing some programming basics & OOP, typically you create 'Objects/Classes' & from there, we are supposed to create getters & setters. The whole thing needs to be thought more in depth, the ultimate goal is to give us enough freedom & 'flexibility' to do the stuff we want.

For now, I have hard times of keeping track of my variables values & deal easily with them.
Public variables are extremely dangerous & you should give us a lot more examples on how you write complex scripts in a fashionable OOP style.

Interesting discussion about GETTERS & SETTERS :

Why getter and setter methods are evil ?

=======================================
Easy/Realtime Shader Editor in Carlswood, insert this code to 'carlswood_nt\scripts\paint'

r_shaders.rsx :

Code:
while 1
{
    send "reload shaders" to console
    wait 5000
    interrupt
}

& just edit your shd file live without touching Racer.
scripts.auto_load=1 + scripts.load_rsx=1 in racer.ini
 
Skeletons

Hm, my F1 with pilot & all, isn't correctly positioned compared to 0.8.32.
Crash when trying to replay them.

Also, how do we set the steeringwheel with pilot hands, + be able to drive with a steeringwheel, please Ruud/Mitch do some testing, I can't get both features on my newest updated cars. Give us clear instructions how to set car.ini + controls.ini asap.

I'm using in Profiler & controls.ini

DoR = 900°

In car.ini :

steer.lock = 900°
+
pilot.body.model.animation.steer_range=-900
+
wheel_front.lock=35 - 45 approx.

Knowing that I interpolated & snapped the hands to the steeringwheel, from -90° to + 90° in 3D to avoid complex hand rotations & above all, meshes interpenetrations.

Last thing, I don't recall + can't find it anymore, can you tell us, how you set the car.ini to have 'animatables/destroyables' inside our cars ? There was an example somewhere..
 
QCM, I checked and do use the dyn_standard shader and note that on carlswood I get a little color but it's dark. Other tracks have no color on the movables and the textures and shaders are the same as carlswood.

Noted that blurred wheels don't cast shadows such as tha one I'm working on:
Blurred wheel has no shadow with cast_shadow=1
 
shader_gtrimblur256~vf_standard
{
cast_shadow=1
compression=0
reflect=0.3
diffuse=0.8 0.8 0.8
ambient=0.5 0.5 0.5
shininess=12
specular=0.26 0.24 0.30
tangents=1
layer0
{
map=gtrimblur256.tga
blendfunc=one src_alpha <-------- must have or it doesn't work with disc heat
depthwrite=0
}
layer1
{
map=$trackenvmap
}
}

It appears to be a problem with the texture requiring the blend function. If I comment out the blend function I get the shadow but no disc heat. Very strange. It was the same with version 0.0834.
 
QCM, I checked and do use the dyn_standard shader and note that on carlswood I get a little color but it's dark. Other tracks have no color on the movables and the textures and shaders are the same as carlswood.

Noted that blurred wheels don't cast shadows such as tha one I'm working on:
Blurred wheel has no shadow with cast_shadow=1
 
shader_gtrimblur256~vf_standard
{
cast_shadow=1
compression=0
reflect=0.3
diffuse=0.8 0.8 0.8
ambient=0.5 0.5 0.5
shininess=12
specular=0.26 0.24 0.30
tangents=1
layer0
{
map=gtrimblur256.tga
blendfunc=one src_alpha <-------- must have or it doesn't work with disc heat
depthwrite=0
}
layer1
{
map=$trackenvmap
}
}

It appears to be a problem with the texture requiring the blend function. If I comment out the blend function I get the shadow but no disc heat. Very strange. It was the same with version 0.0834.
Not sure where to start with that one lol

Um... you shouldn't need tangents=1 since it's not being bumpmapped, could probably go with blendfunc=blend and perhaps alpha_to_coverage, but it depends on the usage, can't tell much more without a pic. Could probably also lose the depthwrite=0 while you're at it, should only really make a difference in rare cases.
 
The disc heat is an issue, because it's a transparency effect under a transparent wheel blur model. Hmmm, not sure what to do there. Probably some weird combo of the good old.

Blendfunc
alpha to coverage
depthwrite
etc

I keep forgetting the logic behind their uses etc...

Probably worth trying to write some tutorials again with the data, which is spread around the shader threads and release threads. We should be able to work this out for ourselves using the documentation we could be maintaining hehe :D

Hmmmm... hmmmm...
 
I don't have trouble using blend right off the bat with brakes...
Rm09Z.jpg

It isn't casting a shadow, though - the brake texture has that baked in. I'm not sure what the threshold is for transparent materials to cast shadows.


Anyway,
wheel shader:
Code:
shader_wheel~vf_reflect
{
  cast_shadow=1
  compression=0
  reflect=0.0
  specular=.6 .6 .6 1 ; .15
  shininess=16
  ;tangents=1
  layer0
  {
    map=wheelb.tga
    blendfunc=blend 
  }
  layer2
  {
    map=$trackenvmap
  }
}

Brake shader:
Code:
shader_rotor
{
  motion_blur=0
  ; Brake disc
  layer0
  {
    map=brake.tga
    emission=0 0 0 1
    shininess=32
    specular=.3 .3 .3 1
  }
  ; Brakedisc heat shader
  vertex_shader
  {
    file=dyn_standard_v.cg
  }
  fragment_shader
  {
    ; Use disc heat global shader
    file=standard_heat_f.cg
    ;file=cg/disc_heat.cg
  }
}
(for a time I had a custom heat shader that used the alpha channel to determine which parts of the texture heated up... but too much effort to maintain for something that's barely doing anything).
 
I thought Ruud added a shader for brake discs using alpha that he now maintained?

Maybe the transparency isn't working as it needs alpha to coverage on the wheel blur too?

Hmmm, not sure, as said, all that transparency stuff was all a bit hazy in my head :D

Dave
 
Thanks for the comments, Stereo, thats what I have for disc shader. Will try the reflect cg and the coverage.

I did try inverting the alpha channel but that didn't help. As I stated it is the same with version 0.0834.

Why do we find these little irritations that are so hard to fix. LOL
 
What Stereo wrote is correct, but try without the layer 1 with reflect shader, you'll see....
I wouldn't recommend integrating the shader v/f inside the material, but that's just my opinion.

@Dave
I use only the alphafunc=gequal ... & it works too, it's simpler.

@Boomer
The inverting alpha channel, from my personal testings, is best used with bump map shaders, I usually then continue playing with contrast/brightness, to get the desired results.

@Ruud/All
Check out your car mirrors, OK it's a bug somehow because it doesn't reproduce the same result as in my Maya.
It's a UV problem from what I can see here ; I projected my 2 mirrors from my behind perspective/camera & had to 'inverse' the right UV shell mirror to the other side of my UV space 0 - 1. The same for the left mirror.
 
@Ruud/All
Check out your car mirrors, OK it's a bug somehow because it doesn't reproduce the same result as in my Maya.
It's a UV problem from what I can see here ; I projected my 2 mirrors from my behind perspective/camera & had to 'inverse' the right UV shell mirror to the other side of my UV space 0 - 1. The same for the left mirror.
Are you sure you've got it mapped properly, last I checked my mirrors are working just fine.
 
Are you sure you've got it mapped properly, last I checked my mirrors are working just fine.

I suppose you know this trick for a long time ?
The thing is, I just overlapped originally my 2 UV shells proportionally into 0 - 1 space, which isn't quite right. (both the same)

This kind of UV configuration works 100%, idk it's just confusing imo.
Racer ini default in mirrors, no tc_x_start/end tweak.

mirrorsy.jpg



I can live without blurred wheels casting a shadow but the movables being dark...

Sure....just tell us more details ?
I usually use 1 dof which gets instanced by Tracked & saved in geometry.ini.

For the blurred wheels, you can add another transparent mesh on top, so you won't see the swapping occurring.
 
Black movables - on a track with moveables (cones, etc.) drive so that the moveable is in view in front of the car.

Turn on headlights and in the console type time 2300 and then tell me if you see the moveable in color while other objects such as grass or trees are in color.

That is the problem.

I also have backward side mirrors while the windshield mirror is ok.
 
Boomer, I get very unlit shopping trolleys on Broken Springs when everything else is lit by headlights. I also seem to be able to drive thru them. Previous Racer versions (well most) they worked as expected. I haven't found any simple reason why, although I haven't spent much time looking...
 

Latest News

Are you buying car setups?

  • Yes

  • No


Results are only viewable after voting.
Back
Top