Saturday, August 09, 2008

Smooth Airport Curves

With X-Plane 920 RC1, the user can now control how smooth taxiway curves look.  More smoothing looks better, but can slow frame-rate.

So authors: please use the minimum number of vertices to create a bezier curve.  If the user wants it to look smooth, he or she can crank the rendering settings.  If the user has the setting on "low" it's probably due to a lack of hardware.

Below are four pictures of KSBD (which has good, sparse vertices) at the four rendering settings.




7 comments:

Christopher said...

Looks great! Now what I would like to have is this feature to be appliable on geographical geometry. That would really make for some stunning visuals, even for those that (as I am) run the sim at 2560x1600. This is a must have even though yes, it will sack things down on slower systems. But thats why we have the slider to choose how dominant the effect should be I guess. Besides the feature requested above, as I see it at this time I would love to have some new, high-res textures covering the world instead of the ones that exist today. It really turns one off to sit at the runway (even more so at 2560x1600) and watch individual geographic pixels cover like 100+ pixels on your monitor. It takes away -a lot- of the flightsim experience and makes it really unrealistic; you are reminded that you are in fact still flying a simulator. So that, I think, would really make for a breathtaking difference comparing to the groundtextures we have today. I thought about this just by watching the images you provided to display the effects of tesselation (which in my oppinion looks stunning!!).

Also, I would to bring up this thing concerning support for old hardware. First of all, you are -really- spot on with this thinking. This -should be- the number one thing a programmer should think of when he or she is doing programming stuff. Optimizing the software makes use of more cores and makes use of the avalible resources better. So yes, this is essential, and I thank you with my most humble respect for implementing such thinking in the work when you are programming features in x-plane. However, as you just wrote, the difference between todays and yesterdays hardware is not really like it is a little difference. In reality it's really like day and night. And if you go back 5 years, WOW are we talking about differences in performance! Making a comparison between the Geforce 9800gx2 (in sli?!) and, say, a GF 2 TI 500 is entertaining becouse they differ so much in speed and supported effects. And here I have not even touched multiprocessors existence and that intel has not so long ago announced that software developers should aim to base their programming to support -thousands- of cores in the future. Ok, so thousands of cores will not be mainstreem anytime soon but in 2 years we -will- have the option to sit at a regular computer with 8+ individual cores. And from 8 to 16 will then happen in a snap. So where I am trying to get is that although I thank you, thousand times over, for optimizing the simulator so it uses all of a computers hardware to the max - we have to eliminate the support for systems that are like five years old. Why? Well, simply becouse those who run flight simulators, especially x-plane, are aware of that hardware plays a big part in the flightsim experience. So I would not think that so many still run the simulator on a P2 550mhz with 128mb ram. -Even- if you did, whats the point of running a top-notch simulator with great graphics and textures, only to be (indirectly) forced to set all preferences to minimum avalible. That just makes the whole idea of running the sim on yesterdays hardware obsolete, becouse the sim will look just like x-plane 5 or 6. Ok, so the instruments and bugs and physics will be up to date, but I hope you understand what I am trying to say here. So what I would love to ask you is that you should stop being forced to think about superold hardware every time you think of a new, revolutionizing feature. Having to think like that really makes it hard to take the flightsim experience further, i.e. to take x-plane to new, untouched ground. It could be anything relating to either geometrydata, texeling, finer physics or more high-res textures for either airplanes or groundtextures. So to be short and summarize, please shorten the hardware supported to like maybe 3-4 years. This would make the sim a lot more open to new features and not bound to have in mind rusty old p2's that infact almost nobody uses to run the sim. And in the same run, as we are rapidly aiming towars processors with more cores and superfast graphics cards (that does not even cost much, ref. 9800gtx+) and where getting 4 gigs of ram to your computer does not cost much at all, I think a more relaxed thinking could very well be more suited today. It would be great if you could maybe have a talk to austin and sergio on this matter as it really concerns all of the x-plane crew. Anyway, I hope you understand my thoughts on the matter. Thanks ben.

Oscar said...

Looking good, can't wait to try it :)

Benjamin Supnik said...

Christopher,

On the first part, are you asking for:
1. Bezier curves in DSFs (available since 850)
2. Orthophoto overlays in DSFs (available since 850) or
3. Variable complexity of orthophotos in DSFs (works in 920 - the airport setting affects all beziers) or
4. Something else??

On part 2, it is an impassioned plea for me to stop supporting the other guy's HW (the small machine) and spend more time on features for your HW (the big machine).

If you read other comments in this blog, you will see a number of requests for me to stop adding shader featuers -- that is, stop supporting YOUR big fast hw and concentrate on things the little guy can use! :-)

Dan said...

I agree with some of what Christopher said.

It's all about balancing the visual with the simulator, and for a few years I think that X-Plane lacked in the visual department compared to another flight sim. Thankfully that changed with the new apt 850 format, the high res airport objects, the new version 9 reflective water and volumetric fog. But there's still room for improvements; shadows, seasonal textures, reflections, and better visibility at higher flight levels for example. The latter is a big one, and I believe it should a number one priority, although users with slow machines will mostly hate it...

Btw, I don't think the user with slow machines necessarily are the bigger group, there's a possibility that they are just making more noice when they realize they can't keep up with the development of X-Plane.

What I'm getting at, is that we need the ability to crank up the rendering settings if we have bloody fast machines; if the user base with that kind of hardware is a minority, you still need to make them happy, otherwise they might chose the competitor instead. Adding new features should not be restrained by the users with slow machines, if they won't update their hardware to keep up to date, they can always use X-Plane 8 which still is a great simulator!

Oscar said...

What I find strange is when the group with fast hardware is small they must be made happy or they will go to the competition (sounds almost like a threat), and if the slow hardware group is small they must be ignored because they still have X-Plane 8...
I don't think the group that can afford to buy new hardware every three years is the majority; I went through X-Plane 8 on a g4 imac, so I know what it's like to be on the low end, but just as it would seem selfish to ask for no extra features only because I couldn't use them, the same applies the other way around, I think. (even now I temporarily belong to the 'fast' group, in 6 months I will be 'average')

The broad support for different kinds of hardware is to me one of the assets of X-Plane, but I also realize that with today's differences in hardware it's becoming almost an impossible task... no matter which way you choose, there will always be a group that's unhappy, I'm glad I don't have to make that decision :)

Back to the curves: I just upgraded to RC1 (the future appears to be now) and they look awesome! Thanks for this feature Ben, it may seem like a detail, but to me it's a very important detail :)

Kaminari said...

During all the years I have used XP (since XP5), I have learned that the small hardware people are the creative ones. Every time the big hardware users have seen their prayers for eyecandy fulfilled, there has been an haemorrhage of aircraft and scenery creators. I still remember the huge transition between XP5 and the butt-ugly slow-as-snail XP6, and I still remember the host of talented people (European Scenery Project, the Russian aircraft wonderboys, etc) who decided to leave the ship. It was an awful day for X-Plane.

I'm not saying that eyecandy is a bad thing. Actually I'm all for it when it comes for free (and we all know there's nothing as a free lunch, except maybe in France). What I'm saying is that XP is a *flight* simulator. When the end users will be all that is left to the XP community, when all the third party devs will have "jumped ship" (or more likely will have given up on creating), then no amount of eyecandy will make up for real affordable content.

Technical progress, yes, let's go for it. But not at any cost. I'm coming from the Amiga demoscene where software optimization means life.

Benjamin Supnik said...

Kaminari, I don't think I agree with your premise. Now I must admit, I joined the XP community as a user at 6.0 beta, so my viewpoint may be skewed, but...

- It seems to me that authors left the community during v6 (from v5) due to a series of really harsh backward compatibility rulings - that is, a number of parts of the authoring platform changed with no backward compatibility.

My first add-on for X-Plane was a converter that automated merging airplane textures from many to one. But it was never built into the sim, the screen size changed (broken panels), the mesh density changed (broken ENVs), and the OBJ format changed to atlasing (broken objects).

This has nothing to do with eye candy -- all of those features could have been done WITHOUT dropping backward compatibility.

- When I talk with current authors of advanced planes now, they have a mix of hardware - some are still stuck with G4s and G5s, some have high-end PCs. I do not see a correlation between hw and authors creativity...people are doing great work on a wide range of machines.

- Finally, the airplane creation process is a LOT more complicated...I expect to see fewer top-notch airplanes for v9 than v5 because "top notch" is a lot higher - fewer have the skills to do this, and each plane takes a lot more time.

Sergio is working on v9 planes now -- his last serious plane work was for v5. He's had to relearn almost everything.

Finally for those calling on us to drop the G4, the 2-d panel systems is still (depsite a lot of features relatively inexpensive hw-wise...and I have users making new 2-d panels with generic instruments (920 users) on old hardware. There is more to the sim than just rendering features that require hardware.