New version 0.8.9 is out!

Well, it's not brilliant.


I just hope by V9 Racer just works out of the box perfectly.

A good car (not that the car is bad, it looks ace with good shaders) and a good track (again, when it was made it looked ace, it's just been messed up and bodged as Racer has moved on), and a menu system and so on that just work... can I set live envmap anywhere? No.
If I set 1600x1200 and dare to set high texture detail, I don't expect Racer to crash and a new racer.ini copying in from the zip download to get it working again!

I also really REALLY do hope that the shader folders are binned, and re-stocked from the ground up with ONLY what is needed, and thought put in to how people actually make cars and tracks and so the shaders they need (ie, look at Stecki's old cars, or Bumpers DB9 etc, cars that Racer has in it but we can't use!)


Some excellent documentation would be nice to. Maybe some future envisioned best-practice for content creators?!

Dave
 
2nd bug report:

The in car SMD camera doesn't lock to roll.

The camera key seems to cycle to whatever camera it feels like, getting back into the car is particularly iffy.

Don't be too put off by the new shadow system, it's not a major problem to get the old shaders to work with it.

I hope the camera switching and the external cinematic camera are high priorities since I use them a great deal during testing and development.

Dave, take a look at the new particle system and the newton materials sections. They should keep you busy for a while. :)

Alex Forbin
 
Hrm... my computer won't run the CSM (ATI Radeon HD 4350):
can't create CG fragment shader program
CG ERROR: "The compile returned an error."
data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg(20) : error C1115: unable to find compatible overloaded function "tex2DARRAY(sampler2DARRAY,float3)"
Without CG I still get a problem:

Similar error (ATI 3650 - 10.5)

Code:
(WARN): DGPUShaderManager:MakeObject(data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg): can't create CG fragment shader program
Fri Jun 04 23:10:03 (WARN): DGPUShader::CreateAndLoadFromFile[data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg]: CG ERROR : "The compile returned an error."
Fri Jun 04 23:10:03 (WARN):   data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg(20) : error C1115: unable to find compatible overloaded function "tex2DARRAY(sampler2DARRAY, float3)"
Fri Jun 04 23:10:05 (FATAL): DGPUShaderManager:MakeObject(data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg): can't create CG fragment shader program
CG ERROR : "The compile returned an error."
data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg(20) : error C1115: unable to find compatible overloaded function "tex2DARRAY(sampler2DARRAY, float3)
 
Well, it's not brilliant.


I just hope by V9 Racer just works out of the box perfectly.

A good car (not that the car is bad, it looks ace with good shaders) and a good track (again, when it was made it looked ace, it's just been messed up and bodged as Racer has moved on), and a menu system and so on that just work... can I set live envmap anywhere? No.
If I set 1600x1200 and dare to set high texture detail, I don't expect Racer to crash and a new racer.ini copying in from the zip download to get it working again!

I also really REALLY do hope that the shader folders are binned, and re-stocked from the ground up with ONLY what is needed, and thought put in to how people actually make cars and tracks and so the shaders they need (ie, look at Stecki's old cars, or Bumpers DB9 etc, cars that Racer has in it but we can't use!)
Some excellent documentation would be nice to. Maybe some future envisioned best-practice for content creators?!

Dave

Where do I sign?
 
Well, it's not brilliant.


I just hope by V9 Racer just works out of the box perfectly.

I'm just glad to have a beta to play with. I guess I'm more into the development of Racer than
just wanting to have a finished game that's ready to play. I really don't know what I will do once Racer does get finished, LOL.

I don't want to say this is a bug report since I am problably just doing something wrong. When using the Newton materials I can't seem to get them to work. I've done the following...

1. Copied the sounds needed from the "audio" dir. over to the "physics.audio" dir.
2. Added the material=metal to the car body shader.
3. Added the material=wood to a track shader for some movable boxes.
4. Made sure that there was a pair_metal&stone material in the materials.ini file in the physics dir.

What am I doing wrong Ruud or Mitch?

Thanks
Alex Forbin
 
What am I doing wrong Ruud or Mitch?

The lookup folder is still "data/audio" or your root racer dir.
You can refer to the physics audio folder by changing the filename to something like "data/physics/audio/sound.wav" like the example in the documentation.
Be sure that the collision material is assigned to the mesh that is being used to serve as collision mesh for your car.
I had put all sound file's there while i was developping the material system to make things more easy for me.

I'm sorry to hear about all those problems with CSM, but it is a high-end feature, and it runs great when your card supports it.
We only have limited systems to test everything, and it ran great on a 8800GT, and even better on newer cards obviously.
It might be an idea to use a texture atlas in the future, instead of a 3D texture, but since we dont have the luxury of testing on different systems, that is not very likely to happen.

Stereo, replace the code of the file "data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg" by this (removes all debugging capability), and let me know if it still goes wrong.
Code:
struct v2f
{
    float2 tc0 : TEXCOORD0;
    float4 pos : POSITION;
};

void main(
in v2f IN,
uniform float tindex,
out float4 color : COLOR)
{
  color.rgb=1.0f;
  color.a=1.0f;
}
The skidmark shader should work fine though, i can't see anything weird there, you can strip the shader to a simple passthrough, to make sure that nothing goes wrong.



PS: My personal new favorite feature of v0.8.9 is a new scripting system using expressions, loops etc. You can program a soccer game using this scripting system. The documentation has been sent over to Ruud, so i expect it to come online any time soon!
 
Hi Mitch,

Changing data/renderer/shaders_hdr_csm/shadowmap_debug_f.cg to what you posted lets Racer get to the menu.

It still crashes at car select or trying to race though, and now it's not telling me which file is the problem.
eg.
Trying to start a race ->
Code:
CG ERROR : "The compile returned an error."
data/renderer/shaders_hdr_csm/standard_burn_f.cg(67) : warning C7011: implicit cast from "float3" to "float"
data/renderer/shaders_hdr_csm/standard_burn_f.cg(67) : warning C7011: implicit cast from "float4" to "float3"
data/renderer/shaders_hdr_csm/standard_burn_f.cg(69) : warning C7011: implicit cast from "float4" to "float3"
data/renderer/shaders_hdr_csm/standard_burn_f.cg(70) : warning C7011: implicit cast from "float4" to "float3"
(0) : error C1115: unable to find compatible overloaded function "tex2DARRAY(sampler2DARRAY, float4)"
Trying to see car select screen (Lamborghini)
Code:
CG ERROR : "The compile returned an error."
data/renderer/shaders_hdr_csm/dyn_standard_reflect_f.cg(66) : warning C7011: implicit cast from "float4" to "float3"
data/renderer/shaders_hdr_csm/dyn_standard_reflect_f.cg(66) : warning C7011: implicit cast from "float4" to "float3"
data/renderer/shaders_hdr_csm/dyn_standard_reflect_f.cg(77) : warning C7011: implicit cast from "float3" to "float"
data/renderer/shaders_hdr_csm/dyn_standard_reflect_f.cg(77) : warning C7011: implicit cast from "float4" to "float3"
(0) : error C1115: unable to find compatible overloaded function "tex2DARRAY(sampler2DARRAY, float4)"

Other than that, as long as I disable CSM shadowmapping and set racer.ini:renderer.motion_blur.coverage_samples=0 I can get in-game, so I should be able to test out other features. It still throws a ton of the "The profile is not supported." errors, but it's running. I think that issue must be coming from something other than the cg shader files, it is being applied to a lot of different files (bloom_f, standard_v, projected_texture_v, skidmark_v, sky_daynight_v, blurh_v, dyn_standard_v)

I'm also getting brown smoke on the road, don't know where that's coming from.

I also attached the car.shd I use for the Lamborghini Murcielago, as someone pointed out, the default one is bad in several ways (no windows, wheels are odd, etc.)
 

Attachments

  • brownsmoke.jpg
    brownsmoke.jpg
    20.7 KB · Views: 263
  • lmurci_shd.rar
    1 KB · Views: 166
The brown smoke is cause by TOD.
I'm excited to see that the CSM changes W.R.T sun position, cool :)

I'm mostly interested in the scripting though...how deep can we go?
I managed to generate the docs but still am yet to contemplate how far we can go...

CSM looks nice, I'll have to release a few of my cars soon I guess, a track too maybe.

Thank you very much Mitch and Ruud!!
 
Just a minor bug, the AI-labels are going onto the reflection map rotated 180 degrees :tongue: (and yeah, I was hoping the AI would be called Ruud after looking at the data/drivers folder... oh well)


Random thought: Can we get any path variables for the cg shader directory in car.ini? In future I think it's better if cars & tracks have custom shaders in data/car/cg/ folder (easier to install/package, etc. than expecting people to un-zip into 2 places), but then they're referring to the default shaders with "../../../renderer/shaders_hdr/lighting.cg" and so forth. It doesn't allow for hdr/ldr/csm hdr shader sets to be chosen by racer.ini.

I guess that's more useful for small things, like animation .cg files for specific objects- really most if not all static materials should be available through defaults.


Also - standard_tree is a great addition. Makes Factory Test Track's grass look good at all TODs. I'm really hoping I can get the CSM working, track full of trees is a way to test it out.
 

Attachments

  • ai-tag-mirror.jpg
    ai-tag-mirror.jpg
    58.4 KB · Views: 342
I love those shadows on Carlswood, great job Ruud or Mitch or both! I did have problems with trying to open a very large track that I have and racer hangs up. Ctrl-Alt-Del and it closes racer, Perhaps my limit isn't big enough as a smaller track also didn't load. Increased world limit to 10000 and most tracks load. All tracks except Gyral have Qlog errors. I guess we have to have a shader for ALL materials.

The mirrors are all screwed up as shown with the red ones on the lambo, I got a material for my Bugatti mirrors but no image. Haven't figured out how to set the racer.ini to get mirrors to work.

Trees no longer sway in the breeze. I'm working on that with my Surfaces and sounds track which has two differently made trees.

Can't get shadows to completly work on S-n-S or other tracks. Also old tracks way to bright. Fences are another problem to set the shader for.

The ai line is different that v. 0.8.8.1, I like the prvious line green, yellow, red for acceleration, slowing, braking and would hope that it be made like v.0.8.8.1

All in all I really like Ver 0.8.9! Even with all the minor bugs it worked straight out of the box with the Lambo and Carlswood!
 
Just be patient with large tracks Boomer. The collision cache is being rebuild since cache files now have a header that tells us which newton version is being used. After the first load, everything should go like it used to.

Fences and other transparent stuff should use alpa to coverage from now on, with the shader "standard_transparent_f.cg", look at the trees in carlswood for an example. Shadow mapping can not get through if you dont use alpha to coverage.

Im sorry Stereo, but CSM is not gonna work on your card.

All content developping tools are now double buffered ...

And yes, the smoke has color in the new particle system, if you dont like it, you can change the texture and shader :p
Time of day influences the color.
There is a exhaust system too, for backfires (which are pretty cool).. Sparks is being worked on (grinding against wall)
docs for particle editing will come online soon i guess ..

I will make an example script soon to demonstrante its value.
If someone sends me a modeled driver in studio max (i can't use the ones we use at Cruden), i will rig it so it will be animated to steer and shift. I will explain how i did it afterwards.
send it to m.vanlooy at cruden dot com
 
Crashes on exit (esc) from racing, I think, if there is no ghost car. I don't want to have to maintain more than I need to during development. Any chance we can turn that off? This wasn't mentioned in the changelog.


C camera key doesn't change camera correctly, quite often just looping from heli cam to track cam, not going back to the car. The track cams now get bumped if favour of a single swirly naff around the car shot sometimes. Can we not have these 'special' cameras on yet another camera type, like a 'glory' cam? I often set up track cams to watch the car pitching or to track it's behaviour over bumps using a narrow FOV at a long distance, but it seems to get over-ridden by a swirly thing now.
This was not mentioned in the changelog (that I can see)


Any chance of a really good quality changelog, and ability or switches to then turn these features on or off. They are useful for end-user stuff, but many of us use Racer purely for development and all this can get in the way!



Lastly, how do we make a working sky these days?

I've copied the carlswood sky to my own track and it doesn't work, shader, dofs, textures etc etc...

I've gone through my own again and it's all correct. No qlog errors.


Not sure what has changed here but it doesn't mention old skies stopping working in the Qlog... they worked perfectly fine from 086, 087, 088, but not 089.
Sorry to rant here, but it's a complete joke that SO many things break with each new version of Racer. What is the actual mechanism that is occurring that causes this to happen? How can a fundamental thing such as a sky that has worked perfectly for the last year or two, now just not work at all?

Something that fundamental would surely get a mention in the changelog?

Dave
 
Fences and other transparent stuff should use alpa to coverage from now on, with the shader "standard_transparent_f.cg", look at the trees in carlswood for an example. Shadow mapping can not get through if you dont use alpha to coverage.

What about standard_tree_v/f

There is mention of it on racer.nl (how do I link to specific places there btw, it's a pain having to search each time because you can't bookmark a URL!)

Not sure how it works, but it's designed for trees isn't it?

Dave
 
OK, Cosmo figured out the sky issue.

Flags for sky objects, where 11 worked fine before, now needs 65

Interestingly I spent DAYS trying to work out why some cars didn't settle on their suspension on spawn on my track, and it came down to the flags for the sky, so after reading ALL the racer.nl docs, I came to the conclusion flags=11 was the right setting.

But NOW it's changed, no changelog, nothing to tell us why they changed, they just have.


WHY do these fundamental things have to keep changing? It's really REALLY annoying! Why were flags=11 which worked fine for the last 4 releases, maybe more, now made not to work?



Important question here. If I/we the community give you some nice defaults for Racer, can you please use them in future releases? The defaults are horrible.
Also the continued omission/ignorance of Stereo's dyn_standard_alpha_reflect_f.cg shader is starting to annoy me now. Loads of cars used this shader (the Lambo still *SHOULD* because it looks twice as good when doing so), and yet it is ignored each time it is posted up on the forums.

It is a fundamental shader type, why not add it and update it and make it work with the CSM stuff?





//
// Standard with reflection cubemap
//

#include "atmosphere.cg"
#include "lighting.cg"
#include "fresnel.cg"

// Vertex to pixel shader structure
struct v2p
{
float extinction : COLOR;
float2 tc0 : TEXCOORD0;
float3 Direction : TEXCOORD1;
float4 RayleighColor : TEXCOORD2;
float4 MieColor : TEXCOORD3;
float3 Position : TEXCOORD4; // For fragment shader
float3 normal : TEXCOORD5;
// Fresnel in pixel shader
float3 I : TEXCOORD6;
//float fresnel : TEXCOORD6;
float3 R : TEXCOORD7; // Reflection vector
};

void main(
// In
in v2p IN,

// Out
out float4 outColor : COLOR,

// Constants
uniform sampler2D baseMap : TEXUNIT0,
uniform samplerCUBE envMap : TEXUNIT1,
uniform float3 lightDirection,
uniform float3 lightColor,
uniform float3 lightAmbient,
uniform float3 eyePosW,
uniform float atmosRayleigh,
uniform float atmosMie,
uniform float3 Ke,
uniform float3 Ka,
uniform float3 Kd,
uniform float3 Ks,
uniform float Kr,
uniform float3 shininess,
uniform float exposure
)
{
float3 skyColor;

float3 N=normalize(IN.normal);

// Get sky gradient color
skyColor.rgb=GetSkyColor(lightDirection,IN.Direction,IN.RayleighColor,IN.MieColor,atmosRayleigh,atmosMie,lightColor,lightAmbient);

// Get base texture color
float4 baseCol=tex2D(baseMap,IN.tc0);

// Reflection
//const float Kr=0.5f;
float4 envColor=texCUBE(envMap,IN.R);

// Lighting
float3 ambient,diffuse,specular;
LightingSun(Ke,Ka,Kd,Ks,shininess,lightDirection,lightColor,lightAmbient,IN.Position,N,eyePosW,
ambient,diffuse,specular);
baseCol.rgb=baseCol*(ambient+Ke)+baseCol*diffuse*lightColor+specular;

// Add reflection with fresnel
float fresnel=Fresnel(0.15,0.85,2.0,normalize(IN.I),normalize(N));
baseCol.rgb=FresnelMix(baseCol.rgb,envColor.rgb,(Kr>0?Kr:-Kr*baseCol.a),fresnel);

// HDR toning of sky
//skyColor.rgb=1.0-exp(-exposure*skyColor.rgb);

// Mix sky with texture color based on atmospheric influence
outColor.rgb=lerp(skyColor,baseCol,IN.extinction);

// Blending
outColor.a=baseCol.a;
}
 
Important question here. If I/we the community give you some nice defaults for Racer, can you please use them in future releases? The defaults are horrible.
Also the continued omission/ignorance of Stereo's dyn_standard_alpha_reflect_f.cg shader is starting to annoy me now. Loads of cars used this shader (the Lambo still *SHOULD* because it looks twice as good when doing so), and yet it is ignored each time it is posted up on the forums.

It is a fundamental shader type, why not add it and update it and make it work with the CSM stuff?

+1 vote.

We can do nice defaults here (car and track) to be a Really default in new racers versions. But, for me, is very strange to see new features available in racer, but we dont have a default car or track to see how it work.
 
So another set of (grapical)features which don't work with ATI Cards. But no, ofcourse I guess my 4890 is just to old and slow and generally I need a ****ing 480 to run racer.

I won't even bother "reporting" bugs anymore or participate here in any way which involves more than lurking and downloading stuff. Not that I have done anything much more than that anyway.

Just do yourself a favor and slap a ****ing "The Way its mean to be played" Logo into the Menu.
Oh and no, I do neither favour ATI nor Nvidia, but I hate this "feature only runs on ATI or Nvidia" to the very depts of hell.
 
So another set of (grapical)features which don't work with ATI Cards. But no, ofcourse I guess my 4890 is just to old and slow and generally I need a ****ing 480 to run racer.

I won't even bother "reporting" bugs anymore or participate here in any way which involves more than lurking and downloading stuff. Not that I have done anything much more than that anyway.

Just do yourself a favor and slap a ****ing "The Way its mean to be played" Logo into the Menu.
Oh and no, I do neither favour ATI nor Nvidia, but I hate this "feature only runs on ATI or Nvidia" to the very depts of hell.

Take it easy, buddy. It's a long-known fact that Nvidia has better support for OpenGL than ATI. This doesn't mean that specific features couldn't be implemented for ATI cards that only work for nVidia cards, its just means some workarounds and whatnot.

Creating a modern graphics engine is incredibly difficult, and if you don't have a big budget and a sh*tload of different gaming setups with proffessional Q&A people, it is even more difficult. I'm currently working on a cross-platform virtual reality application in my firm and we have a moderate number of developers all around the world and yet it was decided that we use Ogre3D (which is actually quite good 3D engine that runs OpenGL) instead of a custom build in house solution.

Nowadays, even many professional game companies decide to go for a 3rd party game engine, because they are throughly tested and have quite a lot of features and solid support.

Racer has been in development for quite a while now, and I can imagine its codebase being a scary mix of oldschool hackery-code and more modern development techiques.
 

Latest News

Are you buying car setups?

  • Yes

  • No


Results are only viewable after voting.
Back
Top