The online racing simulator
Searching in All forums
(316 results)
Juls
S2 licensed
Very good. It looks so much more like real head movements.

The main problem in LFS is that only head is moving, and torso is supposed to be tightly attached to the seat. Most of time, shoulders are moving too, not only head...and that is why when the car tilts the upper-torso/head line will remain vertical for some time before following the car.

Two things are missing in LFS:
- torso and head can move, not only head.
- we have a natural tendency to keep our eyes horizontal.

Watching the video, it makes it easier to know what the car is doing.
Juls
S2 licensed
Quote from wtf im nameless :
Bluring of any type of graphics in the game is a no no in my opinion... we've worked all these years to get them to this stage and the last thing that I think should be done is distoring them to try to simulate anything.

Then I did not manage to explain properly my point. Using the word "distorsion" was a mistake. In fact, current view in LFS IS distorted. Side objects are stretched, and textures too. Graphics quality is then reduced on the sides, and get worse and worse as one increase FOV.

The idea in this thread is to un-distort the view, so that a circle looks like a circle in the center and on the sides....not like an ellipse. That is to say start from a picture larger than the screen, un-stretch the sides so that graphics quality is IMPROVED there, and keep the center unchanged.

No blurring, only improving.

So, if LFS only displays one viewport, this solution allows to undistort the viewport and display large FOV with no big code refactoring and little performance cost.

Of course, if LFS displays several viewports, then it is better and this un-distorsion is no more necessary.

For me the best would be a thin LFS-view client, able to connect to a running LFS client/server and simply display a view. It could be very interesting, because it could be used to create multiple viewports displays AND as a client for watching LFS races broadcasting!
Last edited by Juls, .
Juls
S2 licensed
Vista is not supporting horizontal span anymore?? This is a step backwards.

Some graphic adapters already have 3 outputs and give you the possibility to use three monitors out of the box without buying any matrox device. i was expecting more and more adapters to offer three outputs.

But now, as Vista does not support horizontal span anymore, it will be impossible to play on two/three monitors even with a three outputs adapter, and you have to buy matrox device. Do matrox have a lobbying group inside Microsoft? Well done for them, they have now a monopol (multiple screens gaming=Matrox, no other way)....but too bad for us.
Juls
S2 licensed
OMG I have been waiting ages for this! I am playing with camera turned right and it looks weird. I will try it now.

OK, tried it. A new resolution appears in game 3840x1024 and if I choose it then the wheel is in center of the left screen, but if I move the wheel centers again, I have to let the mouse a few seconds and then it comes back to the left....if I press a key the same happens...funny.

Anyway. SouHunta, I see you do this trick with a new resolution...the problem is that it reduces framerate and asks the game to render 3840x1024 instead of 2560.
There is another way to do it, a bit simpler.

In d3d8.dll, hook the function SetTransform(UINT transformID, D3DMatrix* pMatrix)
when transformID=3 what you have is the projection matrix which transforms coordinates in camera view into screen coordinates.
The matrix is like that:
a 0 0 0
0 b 0 0
0 0 c 1
X Y d 0

If you change the two numbers noted X and Y (by default they are equal to zero), you move the center of the FOV...-0.50 0 should move the view half a screen left without even changing the resolution
Then you call the real directx setTransform function and that's it.

This is so simple that it should be an option in LFS config file. I remember asking for that before.
Last edited by Juls, .
Juls
S2 licensed
Call of duty 4 uses depth-of-field blur on close objects when you are crawling (grass). It works because they are sure you do not focus on these objects. Applying depth of field blur to other objects require eyes/face tracking as you wrote. I suppose nobody wants a blurred cockpit or wheel.

Medal of Honour Airborne uses variable FOV when you run. It could be really weird with racing.

I do not forget depth of field or anything else . This suggestion was about a SIMPLE idea, easy to implement without changing graphics engine (adding a mapping or a shader), improving display.

90 degrees FOV and you feel a lower speed than showing on gauge. 135 FOV and you feel like in a weird tunnel, corners change shape as they come in front of you, other cars stretch like flat things, cones 30 meters away in autocross are too small to be visible. Improving this is priority number one. With multiple viewports or anything else.
Juls
S2 licensed
Paper from microsoft research. They start from a wide FOV camera picture showing a conference room. This picture has all characteristics of wide FOV game view: far objects too small, objects on the sides stretched.
And they apply a distorsion directly on the picture, stretching the center and shrinking the sides, to obtain a better picture.

http://research.microsoft.com/~zliu/TR-2002-110.pdf

Real-time display warping software using a customizable grid/map, done to adjust projection to a curved display, but similar technique can be used to apply distorsion described in the previous document to get a better picture on a flat screen.
http://www.youtube.com/watch?v=7wkp9GhUp58
Last edited by Juls, .
Juls
S2 licensed
Ok, found a good example. Here is a video showing a cylindrical display....but as it is a video, it is in fact the projection of a cylindrical display on a flat display. It means it gives a good idea of what would like a cylindrical distorsion of a game:
http://www.youtube.com/watch?v=5dwAr7KsTh4

They use very large FOV and sometimes it is disturbing, but concerning immersion, do you feel the (big) difference?
I mean it looks like a surround display, but on a flat video.

And here another very good example. This is a spherical display, watched on TV. As you see, even on a flat screen, the immersion is a lot better than the usual distorted perspective we have in games.
When you take a game frame and apply spherical distorsion, you get the same thing, and immersion is way better.
http://www.youtube.com/watch?v=FLeJ4KmDwGA

(and they use it with LFS!) To sum up the idea, spherical or cylindrical distorsion is like watching on your flat screen a movie showing a spherical or cylindrical screen. Not the same, but a lot better than default game view.
Last edited by Juls, .
Juls
S2 licensed
Quote from Technique :Yeah the 3 views are inside, but with post processing, aren't you losing all the detail since you have to "stretch" some parts of the image? Now that I think about it, yes you must. If you render one view, lets say 1600x1200 and split it across three - you only have 1600 pixels of detail, except some areas are stretched to make it look correct, right?

You lose some detail in the center because you stretch it a bit, and you get more detail on the sides because they are compressed.
But before distorsion you have to render a full display frame...so for example 4800*1200 for three screens....not 1600x1200.
In order to be sure to have no details lost, the frame rendered before distorsion should be a bit larger than display. This is how dome displays work, they use a lense to distort the display.

Anyway, if two guys agree to give you their license ID/password for a test you can try to run three LFSs in windowed mode, one per screen. Two as spectators in your car with rotated views, and you play with middle LFS...it should work no?
Last edited by Juls, .
Juls
S2 licensed
Quote from Technique :I only used Photoshop's Transform - Perspective so you guys can see that when the monitors are angled towards the user at 45 degrees everything lines up nicely.

There doesn't appear to be any need to distort the left and right views at all. If you have 3 monitors you can try it out yourself. In the photo I took, those are just raw screenshots from LFS with no modification.

Here's 3 raw screenshots (no modifications) that I applied to three 4:3 polygons in a 3D modeler. The left and right rectangles were angled pricely 45 degrees towards the user.

Anyway, what you did here is a distorsion. You stretched left and right view in order to show what gives a 3 monitors surround display on a simple flat picture. This is the general idea of this thread...show on a flat picture what you see on a spherical display. Or ask the game to produce the right picture for 3 screens with 45 degrees angle between each. That is the same kind of thing....

There are for the moment four ways to do it:
* vertex shader as mentionned before. Discarded because of artefacts.
*multiple viewports (from directx9 with swapchains, should make the game slower and cause GUI problems)
* pixel shader as a post-process effect
* projection of the frame on a stretched grid

After, it is a matter of rendering speed. According to graphic adapter architecture, the shaders/projection should be a lot faster than the multiple viewport. But I am not sure.

When you take a 135 degrees view, the three 45 degrees viewports views are already inside! You just need a little distorsion to get them, and prepare the same view as in your previous post. It is faster I suppose than asking the game to render three viewports.
Last edited by Juls, .
Juls
S2 licensed
The links you gave (spherical screen or fish-eye effect on a flat screen) all do the same: using one or several (distorted) views from the game they build a new view with a spherical projection.

And this is what you do too with three views. In the post above, you took three 45 degrees views, stretch a bit the side views and put them on three monitors. Same process, just different in the details.


This result can in fact be approximated with a cylindrical distorsion applied in one step on a 135 degrees FOV view. The main advantage is that this solution can be applied on a single monitor too, allowing to display large FOV with a natural aspect.


@CSU1: Perspective used in games is a simplified perspective that consider everything on the same plane than viewer is at distance zero...that's why it is distorted. Directx still uses this because it avoids artefacts, but it is a bad approximation of real human view...and get worse when FOV increase.

Spherical distorsion...or fish-eye as you want, give the following advantages:
- what you see on display moves like a spherical, surrounding display-> more immersion
- objects keep the same aspect ratio as they come closer from screen limits-> turns do not change shape and it is more natural to view where apex is->more realistic
- larger FOV without "tunnel effect" -> better spatial awareness, more realistic.

This is more a question of realistic display than sense-of-speed.

Anyway, sooner or later it will be time to renew the way things are displayed on screen....
Juls
S2 licensed
LFS-tv is a very good idea. I hope you can continue this project. It would be nice if demo version of LFS can read replay files of full version. There is no reason it could not.

Sim racing is ready to make it's coming out. We can see things are moving everywhere in the world. Simbin launched last month the race-room concept ( http://www.race-room.com ), LFS will be on TV, sims were on TV in Sweden...several projects in south America too.

LFS has a unique opportunity to take that train. Because it has no licensing problem concerning broadcasting. And with the replay files, broadcasting could be very efficient, using not much bandwith for a perfect result. Lot better than video broadcasting.
Juls
S2 licensed
Quote from Gekkibi :I have a solution for that: Buy the freaking license! Why should demo users have lots of content (More than enough. And XRT didn't had any competitors in the same class)? Demo is that everyone can get to know LFS, not for playing it indefinitly... If you like it, buy a license. If you don't, uninstall it and get another game (rFactor, Need for Speed or even WoW). As simple as this!

You do not understand my point. Demo is supposed to give a taste of the full game. In my case, and several others (from what I read on forums), it did not do it...because blackwood was too large and boring for the demo cars. With the FBM it is better than before.

If you want to tell people "this demo represents nothing....buy the full game and you will see"....why have a demo at all?

A demo with SO sprint instead of blackwood would be a lot more attractive, without any additional content. If you give people SENSE OF SPEED they are motivated to wreste with real physics even if they come from Need For Speed universe. All sims have to do this: attract people long time enough so that they discover the depth of physics...because it takes time to enjoy a sim, contrary to games without proper physics.

Anyway, we come back to the same problem....there is not a big variety in LFS tracks and tracks are not renewed often enough. That is why licensed users feel bad if demo users are given something else than blackwood.
And we know how long it takes to make a nice track...that is why the idea to pay more for more content is not so strange.
Juls
S2 licensed
Yes I use offsets, but it does not solve any perspective distorsion problem
Currently, increasing FOV, tilting view down, and moving view forward and upward gives the best sense of speed for me.
But view on the sides is still distorted and it looks weird when I turn (trees, sky, road, other cars stretch as they reach screen limit).
Juls
S2 licensed
From videos I can see the most fascinating tracks are the narrow ones because of the insane sense of speed you get. It seems Bathurst width is 3 times width of a car. Macau same or less.

In LFS track width is almost always more than 5 or 6 times the width of a car (excepted narrow parts in SO). It may be good for formula one, but it is boring for most other cars.

LFS desperatly needs a narrow track, to release it's full potential. Cadwell, Macau, Bathrust...whatever.
Last edited by Juls, .
Juls
S2 licensed
Demo content is a very important choice. For example I tried LFS few years ago, with blackwood and sense of speed was really poor because this track is too large for such low-power cars and default textures not detailed enough. At 100 kph, blackwood is an ocean of asphalt, it takes years to finish the straight line, only the chicane wakes you up.
I just gave up after few hours.

Then a friend who got LFS license let me try LX4 on south city sprint circuit. After one lap I decided to buy the game.

The demo alone is more discouraging than attractive...it improved with FBM.
Juls
S2 licensed
Quote from Stefani24 :I dont think that lfs' developement goes slow. Its 3 PPl man, so what doya expect?

Noone says they are slow. The idea is to pay a bit more the license so that they are able to hire another dev or graphist, or a guy doing a better sound engine...whatever.

The (not) funny thing is how people here are afraid that LFS quality will drop if they hire someone else. This is a joke. Critical software used in nuclear power plants ( 2 million lines ADA) are developed by a team. If only one-developer-teams could take care of complicated and robust engineering, there would be almost nothing higher than ground-level.

On the other hand you are not frightened at all that your (mine too) favorite simulator could not survive a single day if the lead developer decided to quit for any reason.

The one-person-development-team is the most fragile structure ever. As I wrote before, no growth is more dangerous than growth (always risky too).

I write that because I care, not because I want everything at once. Look how many racing simulators died....there are bodies all over the road, not even cold.
Last edited by Juls, .
Juls
S2 licensed
Oh yes, the vertex approach will cause many problems. I did not see that coming.
For example, the track will remain flat instead of being nicely curved, because it is made of large triangle I suppose, but the wheels of the next car will be properly placed on the curve that the track should follow if it was made of small triangles.

As a result, cars will sink in the track.

The best idea to get a nice, immersive eyelens effect, remains the first one: map the frame rendered by the game on a spherically stretched grid. It will not produce artefacts, and should be fast too. I did such an experiement applying a spherical filter on a movie recorded with fraps. It was really easier to see mirrors, and to corner...less distorsion<-> better idea of position in space during turns.



Kegetys do you remember I tried to talk about this on your forum as your software softth already uses some similar techniques to correct viewport distorsion?
Last edited by Juls, .
Juls
S2 licensed
This software is not updated anymore. Maybe the author could release the sources to keep it alive?

Compared to other sims, LFS sound is quite bad and CSR is absolutely required.
Juls
S2 licensed
The curvilinear projection is simply a way to get rid of distorsion on a viewport, in order to allow people to use large FOV.

Images look a bit strange, because curvilinear projection extends your field of view for close-range objects. Without curvilinear projection, 90 degrees FOV looks often not enough. With it, 90 degrees FOV looks too much. I did few videos using filters to stretch the picture and obtain something similar, and I can tell you everything moves in a more natural way when you turn, and this is easier to take turns because they do not change shape as they come from the side of the screen to the center.
Note that the pictures in this document show 120 degrees horizontal FOV which is really a lot (60 degrees vertical FOV). 90 degrees horizontal FOV with curvilinear projection would be really nice I suppose.

Using three viewports will give three pictures that do not join together, because the sides are distorted. Objects will accelerate and stretch as they go from one display to another, and slow down when they get closer from a viewport center. But it should be less strong than with a single viewport.

Using three viewports with curvilinear projection will give three pictures that almost join togeter. To get pictures that fully match together, equirectangular projection should be used...this is almost the same vertex shader, but instead of adding distance camera-vertex to Z, it replaces Z with distance camera-vertex.
Last edited by Juls, .
Juls
S2 licensed
And it is a lot faster to compute, because this fisheye quake was rendering 3 or 6 views, and stitching them together. My first idea was similar: render a larger view, and then distort it using a pixel shader.

But with this vertex shader, it gives the same result with hundreds times less computation, as it only has to work on vertices.

For example sims like rFactor, GTL, GTR2 use shaders which can be edited...the perfect tool to check quickly what this effect looks like in a racing sim.

Concerning sense of speed, after comparing with other sims, now I am almost sure where the problem comes from: tracks in LFS are too large. Most of time 15 meters or more...even on fern bay which looks a bit narrow you can put 5 cars side by side.
It kills the sense of speed, 100 mph looks like 50mph, and it is very frustrating for beginners because they feel like they spin and slide at 30 mph.
Last edited by Juls, .
Juls
S2 licensed
Just found this document, explaining how to obtain a curvilinear perspective with a simple vertex shader:
http://www.frost-art.com/Data/ ... ltimeCurvilinearPaper.pdf

It just requires to apply a very simple vertex shader. That's all. Even simpler than the idea with the pixel shader. Less computation.

This is exactly the idea I wanted to suggest. As you notice at the end of the document, the red sphere on the right stays undistorted, the center of the picture is more detailed, and for the same FOV it shows a lot more what happens on the sides.....better immersion because what you see on your flat screen is almost the same than on a curved screen.

As directx 10 forces devs to use vertex shaders for everything, I think they will soon give up the traditionnal projection matrix and use more and more corrected perspectives like that one.
Last edited by Juls, .
Juls
S2 licensed
Quote from wark :Why would you want to pay more for cheaper quality?

Yes, you are right. I suggest to pay less and have slower development. No more than one patch per year, S3 in 2058.
But better quality.
Juls
S2 licensed
Quote from tristancliffe :
But yes, too many programmers can become counter productive. I need not post examples.

No doubt, but who think too many starts at 2?
Juls
S2 licensed
To satisfy existing customers, they should do damage.

To attract new customers, they should do a new sound engine. With texture packs, LFS is very nice to watch compared to other sims. As soon as you turn the sound off.

One time I show LFS to a guy, and he said...ok, it's a simulator...difficult to drive...ok ok... and tried only a few minutes.
Few weeks later I installer Car Sound Remixer with a nice sound pack,and show it to the same guy with volume up.

He said: "wow, what's that, a new game?looks great, I can try? please I can try?"
He was even sure it was a lot easier to drive than the boring simulator I made him try few weeks ago.

Sound is more important for immersion than damage, because you hear it all the time.
Last edited by Juls, .
Juls
S2 licensed
LFS sound engine is very challenging and interesting from an engineering point of view. It attempts to recreate the whole sound of a car from very simple sounds, like one explosion in one cylinder.

Nice, but it does not work. The sound of a car engine at 4000 RPM is not the sound of one cylinder explosion played 4*4000 times per second.
When you record a real car engine at 4000 RPM, and you look at the frequency analysis, you can see an incredible number of sounds at every frequency level mixed together.
Explosions in cylinders generate thousands of other noises because of transmission and addition of vibration in parts of the car. And these noises are not neglectable and reach the same level than the cylinder noise, and can completely change the nature of the engine noise at different RPM.
The only way for LFS sound system to produce something life-like would be to add hundreds, thousands of parameters...tiny metallic noise, muffled or not, dozens of options to decide how irregular and cyclical is the idle noise...etc.

ISI approach is in fact the same than in LFS, but try to use richer samples. They take several samples, adjust their frequency to RPM, and add them together. But instead of adding a dozen of small samples, they add 4 or 5 larger samples which already contain all these vibrations.

With CSR (Car Sound Remixer) addon for LFS, you can check yourself what becomes LFS sound with a ISI-like sound engine. The result is amazing. So much alive than default LFS sound. I found this addon today and it saved me, because I was upset with LFS sound after comparing with rFactor and Race 07. LFS diserves better.

Please try this addon, with the sound package in the thread:
http://www.lfsforum.net/showthread.php?t=12863

The best solution would be to use ISI approach, but with more samples to cover the entire RPM range of the car. 4 samples is not enough.

Concerning LFS state of development:
- they are 3, they go as fast as they can, and people ask for more.
- the only way to go faster is to hire someone else, but they have to pay him/her.
- people are ready to pay for more...no doubt about that.
- hiring someone may be a risk, but according to preceding points will certainly give an increasing success. Most companies hiring are not sure at all there will be a market for their product. LFS team has an almost garanteed development if they want.

So the problem is not a problem, it's a choice. They have chosen not to risk any further development of their team because the slow-pace is part of their business model and quality of life. But on the other side they risk to have more and more customers unsatisfied and finally to collapse. On long term, no growth is always more risky than growth.
Last edited by Juls, .
FGED GREDG RDFGDR GSFDG