20mm: Let’s say I win the lottery and make available a large pot of cash to any developer who could make the best case for a new simulation, without regards to a specific genre. With no budget constraints and being able to do anything, what would your submission look like?
Jason: Exactly like real life.
Flexman: No limit on cost? It would be similar to Test Drive Unlimited but for aircraft using a planetary renderer. A built-in economy for supporting showrooms for official downloadable content and player vendors, third-party vehicles can be bought and sold in game, a currency, fast cars, property market. Wholly aspirational based simulation where players can produce content they can buy and optionally sell for real or game currency. And it would have a scripting system that would enable players to create compiled gauges for cockpits that worked with aircraft they can assemble in a hanger using bought parts or designed parts.
It would support clubs and a missioneering system to let players create “tasks” for other players. Also auto generated and publisher content. Missions running your own air-taxi or air freight service and search and rescue operations. You could run your own “International Rescue” service or drive around geographically accurate roads in a player made super-car. It would feature both player generated content and offer pro-tools for third party companies that want to participate in the market place. Give people something to do and a big playground.
Vlad: It most probably would be a simulator of land armor of the WWII or some little later times — battle tanks, artillery, SPGs, etc. With the maximum quantity of machines and items.
Ssnake: Not even Microsoft with its ESP team could create the one “Über-Sim”. The more important task would be to create standards to make different simulations interoperable. But getting different teams to cooperate and to agree on good, useful standards is a task that money alone can’t solve.
From a business management perspective I find it much more interesting to see how far you can get with a small team and a limited budget. We recently lost a bid for a gunnery trainer in Norway to a team lead by the manufacturer of that tank. I’m not celebrating that we lost this project, but still: Apparently we are good enough to be considered a serious alternative, and that defense contractor was forced to submit a bid where they probably won’t make any profit at all just to keep us away from their turf. That’s awesome only as long as we are working on a shoestring budget, and not flush with cash. 😉
And don’t you worry, there’s still plenty of work out there for us.
Buckshot: In addition to the usual features that are required of a new flight simulation such as detailed models (flight models, systems and avionics), dynamic weather and campaigns and so on, we would make a very strong emphasis on AI. We strongly believe that the presence of strong AI at various levels and modules of the simulation is what will define the next generation of study flight simulations.
Oleg: Oh, I have revolutionary ideas, but I don’t like to say them out loud. I was in hope to make it in my new sim, but I’m not sure that it is possible with a limited budget. If you really have such money, I would say come to me and under a strong NDA I will tell you what to develop, and which people in the world to hire for this project, etc.
Dante: Massively online multiplayer all-arms (land, air, sea) simulation with historic scenarios (Vietnam, Korea, Gulf etc) 🙂 Possibly the Holy-Grail of the simmers (remember that Falcon 4.0 was the first of the then called “Electronic Battlefield Series”). Combined arms online dynamic campaign! There go your lottery millions, you know it will be massively expensive to build that! 😉
Polovski: Too many areas of focus can work against you if it’s a small team, and can become difficult to attain and maintain. So I think concentration on the things you do well to produce an exceptional experience in that area, rather than good in all areas works well for small teams with limited budget. But with almost unlimited “simming” immersion on a scale never seen before would be possible. Much more than we have now and much quicker! More developers, more artists, modelers and historians would always make a difference. Let us know when you have so much cash you want to give some away.
20mm: Not all, but some simulation fans have a reputation for being vocal, demanding, and sometimes flat out argumentative. How has this influenced your decision on whether to engage in a dialog with them in a forum?
Jason: As much as it is irritating to be attacked as a result of engaging the public it is necessary to interact with the community. Before I worked in this industry I used to lament the lack of information that came from a publisher or developer about my favorite sim and I always promised myself that I would make sure, if I worked in this industry, that I would try to be as available as possible and dispense as much information as I could to the fans. Sometimes, ok most of the time, it backfires, but I still do it because I know what it is like to get no information.
Polovski: We have always been directly involved in the forum but it is very time consuming by its nature. Dev time takes away some of our ability to do that more, but someone is always around to comment or help.
Vlad: We are aiming at satisfying the wants of all of the fans provided we have this opportunity. At the times of different opinions rising, we are usually having consultations with the specialists and also listening to the majority opinion.
Ssnake: I don’t mind hot topics as long as mutual respect and civility is maintained. Sometimes developers make seemingly enigmatic decisions. It is a matter of courtesy and respect to explain these decisions with more than a few hollow marketing phrases. You can’t always reach a consensus, but that’s not the point. Developers have an obligation to take the concerns of their audience seriously.
Buckshot: Any input regarding any aspect of the simulation is greatly welcome. It is OK to be vocal, demand and even spawn heated arguments about features. We have gained much from such input, our red line is insults, accusations and bad language.
Dante: I have not encountered this (yet) 🙂 I’d say the customer is paying in the end, “the customer is always right.”. Maybe he wants some silly things, this could be the problem. But usually they don’t want that, they just want the sim to look great and accurately depicts the aircraft and scenario being simulated.
Flexman: Yes, I got out of my way to avoid them. My personality is non-confrontational.
Oleg: I think many people know how I’m communicating on specific forums. And anyway providing user input is what they want. By exchanging thoughts, we will produce great work with them that is a big hit. Of course, the developer doesn’t follow any of the suggestions without his own analysis.
20mm: How much does what they say influence the direction of a project you’re working on?
Dante: To be honest, I’m even embarrassed to say, but originally, Jet Thunder was meant to be a study sim of the Royal Navy Sea Harrier, with a strong naval component (carrier ops). I thought about placing an adversary aircraft (Mirage) in a further expansion, to be an equally study sim. Due to public demand (especially people from Argentina) we ended adding: Pucará, A-4 Skyhawk in 3 flavors, IAI Dagger, Super Etendard… effectively turning Jet Thunder in a survey sim, because no one has the resources to do a study sim of 6 aircraft, including two complex multi-role ones. So I’d say, yes, they influenced a lot. Now with Aerosoft as our publisher, and the plan to release in installments, we’re returning to the roots, having less planes per installment (2) but with better quality/detail.
Oleg: Probably I was one of the first in the world who begun wide direct discussion with possible users of the sim in the beginning stages of development. For me, it was absolutely necessary to get realistic input from users what are their needs for a good product.
Vlad: The feedback of our fans does often give a game not less than our own impact.
Ssnake: 99% of all user suggestions are technically feasible and desirable. All suggestions are a welcome navigational aid for our development, and be it just to know that by not adding a feature it will disappoint a specific group, so it’s a good reality check: Do we really have good reason to deviate here?
At least for us coding time is the bottleneck resource. Top priority must be given to contractual obligations (customization jobs for army customers). Our second priority is code maintenance (killing important or annoying bugs). Third come our general design goals which hopefully can be brought in alignment with consumer demand. Does it go in the direction where we want to be? Which suggestions offer the best ratio of needed development time vs utility value for the majority of users?
Buckshot: It depends, fortunately our entire organization is filled with long term flight simulation enthusiasts who are just as vocal and demanding as our fans, so most suggestions have already been through the internal process. Although we have set goals based on these processes, we always keep an open mind to opinions and suggestions, in some cases they serve to confirm decisions made, and in others they may cause add an extra dimension to a topic which is always useful.
Polovski: Most changes in our sim are improvements from discussions and polls on our forum anyway so we feel it’s an important part.
Jason: At least as far as 777 Studios is concerned we care greatly about what they say, but you have to sort the wheat from the chaff. Usually a small cadre of folks will post regularly about their likes and dislikes and sometimes they claim they speak for the entire community, but in reality they probably don’t. You have to look at all sources of comments and look at sales performance and take a big picture approach. You need to balance it all before you make a decision on what to concentrate your resources on. Just because you are the loudest does not mean you are the most correct. And anger and sarcasm is the first thing that turns us off as a developer. Polite reasoned comments are more likely to get a response to be considered by our team.
Flexman: Depends. If an idea comes out of left field and is easy to do (which has happened), it will get implemented sometimes in the same day. My development blog is a good vector for that. I’ll post a screenshot or short movie of something I’m working on and I’ll get an email or comment usually within 24 hours. If something is reasonable I’ll do something about right away while the code is still fresh. It works really well for me. At the same time you can quickly tell who isn’t being helpful at all.
20mm: When you plan your development for a new title, at what point in the development cycle do you start incorporating quad- or hex-core processor coding?
Vlad: Multi-core processor support should be taken into account already at the stage of constructing the engine’s kernel. Otherwise, its adoption will take much more effort and finance.
Buckshot: In the beginning we assume nothing and only think about the features we are going to implement. As we start to implement, we code the features in cycles. In each cycle some features are added and some are enhanced. In one of these cycles a given feature might start using multi-core processing or other processing facilities that are available. This way a given feature or module will have various implementations that can be used with different hardware configurations.
Oleg: When we started there wasn’t such processing technology on the horizon, but the right team and the experience of many years development allowed us to modify the code for the new hardware without a great need to rework.
Dante: It was sort of recently that this concern surfaced. Jet Thunder is being developed in very entry level setups, to allow very comfortable system specs which makes a larger user base (slightly). But for sure, until final release (third installment) this should be fully explored / supported.
Flexman: What’s a processor hex thingy? Seriously, the design of the software and APIs you use pretty much dictates that from the outset. Some CPU threads, such as a rendering pipeline, you can’t really mess with. Background loading of assets or scenery assembly should be designed around threaded loading from the outset. It’s not something you can add-on too well if your original design isn’t friendly towards threaded programming. It’s something we could use more of, but will be a part of the next version of the 3D engine we’ll be using in Combat-Helo 2 (if we get to do that).
20mm: Same as the previous question but for graphics. When you plan your development for a new title, at what point in the development cycle do you decide if the title will be DirectX9, 10 or 11?
Polovski: At the start. Depends on the rough release date — but I think you still need to make sure it can be run on DX9 for a while yet.
Vlad: We do that at the stage of developing the graphics engine. Still, in most cases the shift to a later version is possible with no too fundamental changes.
Buckshot: The graphics engine is merely the output module for the simulation. An important design goal for XSI here is for it to be interchangeable when needed. We don’t couple the graphics engine to the simulation engine tightly for this purpose and as a result we are very flexible when it comes to using the graphics technologies that are available. We start out with a graphics API that costs us the least development time to get things going and once things get stable it will be relatively easy to use other APIs and write alternative graphics engines.
Ssnake: We have an annual user conference. We know that at some point we want to make the transition to DirectX 11. But we need to check with the armies when the right time will be since the installed hardware base in the classrooms is an important cost factor. Similarly, it doesn’t make sense for us to crank out visual effects that 90% of our players couldn’t enjoy.
That being said, I expect a number of substantial improvements over the next twelve months, shader effects and all that.
Dante: It is OpenGL 🙂 But as such, it has also OGL specs, and a shader language associated with it. It was around 2009 that OpenGL shaders started to be implemented. This statement make us look like we’re technologically backwards, but even for the first installment we’re planning cockpit shadows (realtime self-shadowing in virtual cockpit) and other advanced features that very few flight sims have effectively or have announced.
Jason: There is a serious divide between DX9 capable systems and DX11 capable systems and spending resources to develop for both is going to become a more difficult decision in the future, but such a decision will need to be made preferably in the very beginning. End-users need to embrace things like DX11 if they want their hobby to grow.
Flexman: We use OpenGL so DirectX is not a consideration for us. That was something forced by the choice of 3D engine we use, but also it enables us to take code from the game that renders some instruments and put them onto mobile devices which also use OpenGL. All avionics work we do is coded with portability from the start but I admit it’s getting increasingly harder as we layer more complex features.
Oleg: The plan is always only for the best quality with the ability to scale down if the market demonstrates other needs.
20mm: One of the core components of any simulation title are high fidelity physics, be they for vehicle dynamics, tire models, flight models, ballistics, or damage. With the current state of processor technology, is simulation game physics coding reaching a plateau below the capability threshold of today’s multi-core processors, or does today’s PC power allow you even more freedom to increase physics fidelity?
Dante: It allows a lot of room for fidelity. The PC power nowadays is really massive. Well, I’ve started developing games on the Commodore Amiga, and it was a Motorola 680×0 with 2 digits MHz of clock speed, usually one digit of RAM memory 🙂 So, today having GBs of RAM, several processor cores, and dedicated gfx/physics processors, it’s all for the good and freedom! Of course, all this also may result in lazy/badly optimized coding (“it’s running slow!” … “simple, just throw more processing power at it!”) which is something we care about.
Buckshot: We believe that there is a lot of untapped processing power available in different forms. Code optimization and using multi-core CPUs is just the beginning. We have been surprised many times when the redesign of an algorithm or a little bit of intelligent optimization has increased the efficiency of a program. A good development team can achieve wonders even with older hardware if they know what they are doing.
Vlad: The power of modern processors is enough for the physical modeling of one or more units of techniques. Still, today we are aiming at increasing the number of simultaneously acting units, so we are still trying to use the processor powers rationally. Besides, substantial resources are needed to sustain some other processes, such as AI.
Polovski: More freedom I’d say there are so many things that can be done ultimately to mimic real life behavior.
Jason: Today’s multi-core processor really helps give the developer more freedom, but there will always be those with older CPUs that can’t handle all a title can throw at it. For instance, we’ve just about reached what Rise of Flight can ask a Dual Core system to do, therefore we recommend a Quad core CPU. This has always been the problem with development; it’s not the ability to max out a future processors power that is the problem. The need to support older processors is.
Oleg: It is possible to make better and better but never achieve the reality. Only a simulation of reality by one or other very precise or close to precise way. But precise in every aspect — impossible, like impossible the button “masterpiece” on a photo camera.
Flexman: Most certainly. Most physics engines run asynchronously and often on the CPU whereas the graphics and post-processing are almost all handled by the GPU with a little bit of preparation. I’m not sure there’s a need to run the physics for a single tire in a separate core unless you’re designing F1 tires or other intensive science models. The number of parameters for solving physics in something like a vehicle wheel for a game is actually quite small. Although a complex aircraft can be broken down into a lot of centers of mass, each with their own moment of inertia, center of gravity, drag, etc., and the more of them you have, the greater the fidelity of the model. Not sure if that makes a game any better, experience suggests no beyond a certain point.
20mm: What specific areas would you say are ripe for fleshing out the physics that were previously under-modeled?
Polovski: It’s still hard to compute all real world physics on the fly and apply to all objects. Most sims obviously have to take short cuts, simulate parts of that, reuse code and animations, break objects into small components rather than the actual molecular level which is the ultimate goal ;). I think the world (Earth) itself is vastly under modeled in many sims. The whole system of weather, the sheer scale of earth and detail of its physics. Even with modern CPU and memory it is still very difficult to do huge scale scenery for example with accurate real life textures tiles AND all loading fast enough to appear smooth and not destroy immersion. This is something we try to do as well as possible.
Flexman: Breasts? Not as flippant as it sounds. What I mean is kinematics. It’s the motion of something like a human body without animation or having to think about forces which is what physics engines do. It’s only recently that interesting work has been done on procedurally animated characters. For example, a running soldier when turning to face a different direction would automatically lean an appropriate amount into the turn without any consideration from a programmer or artist. It looks much more natural.
Materials too. Cloth simulation is the province of specialized APIs and smart geometry shaders. How cool would it be to have bullets rip through your bi-plane and have the ragged material flapping around using a damage map on a geometry shader reacting to airflow data?
Geometry shaders are relatively new to video cards compared to pixel and vertex shaders. So programmers are still in that stage of exploring what’s possible with them. I expect we’ll see some incredible uses of them in a year or two. Simple things like power lines and telephone cables can flex in the wind controlled at the shader level. Granted this you could do on a vertex shader but geometry shaders would add more points where needed to keep the shape smooth. Especially good for ropes.
Oleg: For me — it is any aspect. Everything should be balanced and not overmodeled in one side. Also, see my previous answer.
Vlad: Virtually all aspects of physical modeling may be improved. Still, this would probably be the model of armor breaking and some other damage models in the first place.
Buckshot: At this stage we would be unwilling to go into more detail over and above our previous response, we need to keep some surprises up our sleeve.
Dante: Two words: destructible environment! This is one area I want to see soon, especially in a hardcore land sim (armor / tank in urban environment) where it would really matters.
Jason: I think the area that can benefit most from new processor technology is the damage model. ROF has a progressive system that really takes damage to a new level and is probably the one feature in ROF that really moved the genre forward. I think this area has the most room to grow, but it makes simulations that much more complicated and expensive to make, unfortunately.
|SimHQ Special Feature / The Future of Simulations / Table of Contents
|Controllers and Peripherals
|Distribution and Publishing
|Copy Protection and Intellectual Property