What Is The Best Compiler For C++?

Dedicated Forum for developers of programs/utilities. To announce new or updated products, to share knowledge and ideas for development.

Moderator: CrazySchmidt

Postby BaLrOg on Fri May 19, 2006 7:33 am

User avatar
Posts: 26
Joined: Thu May 11, 2006 5:51 pm
Location: Wiltshire, UK


Postby WWSensei on Mon Jul 03, 2006 12:48 pm

I've used just about every compiler out there at some point or another. From gun compilers (my preferred on non-Windows) to Borland to Microsoft.

For me, the best is a combo. The IDE of Visual Studio from Microsoft combined with the compiler from Intel. The tools included with Visual Studio 2005 are currently superior to others out there.

As to your project be prepared to seek additional help. The work is not overly technical if you understand the physics, but the sheer workload is massive. I've been part of a group that attempted to do the very same thing you are trying. We (8 of us) were all senior programmers and 4 of these worked for a firm that programmed the full motion simulators for the F-16, F-18 and F15. We tried to do it from scratch and it simply was too much work.

You can save a lot of time in buying a basic 6 DOF engine (Their Torque engine). There is a good one at http://www.garagegames.com/

It used to run around $100 but I haven't checked lately. It would give you a big head start.
Flight Sergeant
Posts: 88
Joined: Sun Dec 12, 2004 2:53 pm

Postby Osram on Sat Jul 08, 2006 1:27 pm

I only now saw this thread and quickly scanned it. I still don't understand whether it is serious or just a laugh, but as I know many COMPLETELY underestimate the work let me just quickly add some thoughts.

I am always looking for info on how long it takes to make a sim from scratch in for example "Il2 as it shipped" quality. The number you hear is a fairly constant "50 man years". I am calculating using a 40 h week. For example EECH took way over 30 and IMO is quite a bit below Il2 in complexity.

So, if you are 50 now, if we ignore you have to learn things first, if we ignore a sim is made by many experts that are better in their field than ANYONE doing all and if we say you can spend a normal work day on your sim "forever", you will be done when you are 100.

Of course you can get rid of most firends, of all other hobbies, your TV, eat in front of the computer, have no vacations except for simming and you can probably reach an equivalent of a 120 h week so you would reduce the calender time needed to a third.

The amount of man hours needed to make an average sim from scratch is pretty much the same that was needed to develop the Mustang. The Mustang of course saved 1000s of lives, influenced WWII and is known to millions of people. Is that sim of yours worth the same effort?

One issue with sims is that everone knows thousands of details of what to expect and I am not talking about aero stuff like is the Hurri or the 109 more manouvrable, but really basic stuff like you can't fly without petrol, gravity pulls things down, things hitting the ground stop and don't smoothly go through it etc etc, IOW things that probably even a one year old that can not talk yet knows. But a computer does not and you have to code every one of those things and often not once but for many different combinations.

A typical sim consists of roughly a million lines of code. A MILLION. If you have coded anything beforehand, look at the number of lines and keep in mind often the issue causing a bug is unexpected interactions which means ten times as much code often is more than ten times as complex. And most of those million lines consist of several parts, where each is important, especially in a language like C++ that makes it easier to make mistakes. In the '70ies or '80ies the moneywise biggest software fault came when a coder used a comma instead of a dot (or semicolon?) and the result was a lost satelite.

Some modern AAA games, IOW games with big budgets (which definitely means NOT flightsims) employ over 100 artists alone !!

Even huge companies like EA are wary to spend the money to develop a sim from scratch, as they expect it to cost more than it will return. Making a sim engine is such a huge job, you HAVE to make it pay itself in many generations, and with that I not only mean monetarily but also in an "idealistic" way of simply making use of the lifes of the developers that are in the sim engine. The Il2 engine was used in Il2, FB, PF; AOP (sp?), Pe2, the upcoming WWI sim and some I forgot. Rowan/Shockwaves BoB (what I work on) is the culmination of 10 flight sims and the code was worked on since at least Flying Corps and Mig Alley. TK is shipping one 60ies / 70ies jet fighter sim after the other using his engine. The same with the LoMac guys. Lets not even speak about the 20 year old MSFS. And these are GOOD things, throwing 50 or 100 man years away is not something you should do.

Flight sim devs are often quite top dog guys. Oleg worked on the radar for their fighters. His graphics guy wrote an article on how to render water after PF in one of the, if not the top "graphics effect for games" books. I have been doing sims commercially for 13 years (a driving sim), hobbyist for 25 (a motorcycle sim) and before at university I worked on the radius of the universe at 0.00000000000000000000000000000000000000000001 seconds after the big bang. If you think that is an exagaration look up "Planck Time". Flightgear that you can download for free has, among others, be done by the senior gfx guy of the F16 / F18 sims of the American armed forces. The aero is made, among others, by Prof Michael Selig, who for example made the theory behind the wind tunnel reenactments of the Wright Flyer. He once asked a 3D modeller for permission for a model (Prof Selig is into Aero "only") and the answer was "Of course, I use the wing profile you developed in my RC glider!" :lol:

In a C++ book I have, the author talks about how long it takes a C coder to get into C++, IWO someone that has experience with basic coding stuff like functions, recursion etc and that knows the predecessor to C++. He could write "with my book you do it in a week". But instead he wrote, in his teaching experience (he also holds seminars et) it takes a year. Of course not to be able to write a simple "hello world" but to get into it enough to be able to use all major features of the language when useful. And if you want to do a sim like say Il2 on your own you need to know code analysis and design, coding (implementation), C++ or another language, operating system stuff, the GUI framework, gfx coding like DirectX, collision detection and "general physics", the math of time increments (one flight sim coder I know is a mathematician that did his phd on this), aero stuff like general aero, WWII specific aero like say the Meredith effect, combustion and/or jet engine theory, you have to do historic research (it's MUCH more time consuming when you need a specific piece of data even if seemingly a "common one" than when you just read about WWII planes and see all of those seemingly complete, in depth, exotic data values), you need to know sound coding, streaming is a huge subject, it has to be MultiThreading if it is to be future proof, you need to do 3D modelling, animations, textures, sound etc. Some of my friends do 3D modelling of furniture for about 10 years now and they repeatedly said "it is so complex, there are so many details to keep track of!".
Air Cadet Level 2
Posts: 9
Joined: Wed May 11, 2005 9:29 pm
Location: Germany


Return to Developers Central

Who is online

Users browsing this forum: No registered users and 1 guest