Tuesday 26 April 2011

Glass pits and underlays

Some new screenshots were added to the combat helo website gallery, at the end there, you might want to check them out. Just me playing with some DOF and FOV settings which you can do from a Quake style command console in the game (aka chat interface).

Terrain Underlays

AD has been doing a bit of polish work and discovering the joys of the blend layer in the terrain system.


The terrain system uses 5 layers (with specular and normal for each one) and these are blended by a shader to produce a really fast base layer. Now he's starting to experiment with a secret SIXTH layer (a bit like the ninth chevron in Stargate but doesn't involve blowing up a planet). This blend layer maps a single texture (e.g. from a sat image) onto the painted terrain. It's something tried briefly before but results were mixed and not so obvious at ground level. He's been playing with that to bring out more detail and subtle variation.


Not that you should be flying at these altitudes in game, unless you're a Predator drone (get to da' choppa).

I was looking at SQLlite3 for adding a primitive streaming system for dynamic ground detailing, it's used everywhere as a client side embedded database, even on phones. It has an R*Tree index module for doing fast geospatial queries which is a good method for adding grass/veg/rocks and general junk in selected areas that users need to turn on/off for performance tweaking. It's also free so well within my price range. Don't know if the performance will be acceptable but it's something I will try for the Herat map after we complete the firing range.

Putting the Glass into the Glass Pit

After a material update over the weekend I had the glass in front of my instruments back but there were some subtle graphical issues with view angles and the cockpit night lighting shining off the surface like it was paper.

So after a bit of stepping through the shader code this morning not only did I learn some really cool things directly relating to doing infra-red stuff with the emissive channel but also fixed the computed normal for the glass. The standby instruments also got the glass treatment with a cockpit mesh update. I was actually quite shocked when I saw the difference. Almost makes me want to try and render real-time cubemaps for ultra high performance PCs later.



Now the Easter weekend is over it's back to the vehicle database and enhancing the pyrotechnics.


And now for some WIIIIIIIIIIIIDESCREEEN

To illustrate some tripplehead performance. I did have a very far DOF post filters on and ansiotropic was set to max (16).




the return of rotor blur
With a lot of pixel shaders, especially in the cockpit area, combined with really wide resolutions eat up GPU bandwidth. Tripplehead res typically reduces performance by a half. Just more pixels to crunch. So it IS a real GPU tester but we've not gone through optimising shaders or even art options for maximise performance yet. Since I'm mostly writing this game for me, 30 fps being my comfort zone it's in my interest to keep it close to that region. Although if you're going to be using a small window with MPDs dotted around your desktop of course you'll get much better performance.

How the hell do I turn this bloody rain off? Grrrr.

21 comments:

  1. I like the glass effect on the screens with night lighting. Less is better when it comes to screen reflectivity imho.

    How reflective are they in daylight? In all of the EFIS aircraft I have flown the screens are coated with an anti-reflective coating. This coating does wear out and its a bitch to see the screens when the sun is in a particular position relative to the screen. So much so I snag them so the engineers have to replace them.

    ReplyDelete
  2. Its not a problem, the above shots about about as extreme as it gets. I spent ages working on those instruments, I wouldn't add something that obscured them. I did take off the scratches (as they causes a 'frosting' effect).

    Sitting still upright you won't notice.

    ReplyDelete
  3. Great shots.

    Off topic - In a few months I'm going with a triple monitor setup..or something big like that. What will be the max resolution of Combat-Helo and do you have any suggestions or concerns about going with tri-monitor setup?

    Thanks!

    ReplyDelete
  4. Ive just today picked up a 3rd 1920x1200 Dell 24" LCD. (My wife is going to kill me).

    So, yeh @Madman I'm hoping for 5760x1200 support and exportable MFDs (just for starters!).

    ReplyDelete
  5. Here you have a good picture of dirty mfd
    http://walkarounds.airforce.ru/avia/rus/kamov/ka-50/airforce_ru_ka-50_93.jpg

    ReplyDelete
  6. I use a triple-head setup myself. I didn't add fixed resolutions. The GUI, such as there is one, will span without stretching fine. Although it can be hard to read a tool-tip that's physically two feet away from the item your looking at.

    The ONLY real issue I have with large screens is the amount of fill rate a 3D card needs to process all the extra pixels. As we make use of a lot of pixel shaders, every pixel filled needs to be processed. So tripplehead combine with post processing has a big impact on fps which can only be countered by a faster 3D card with more bandwidth. Reducing the FOV helps.

    I can play perfectly fine with it and in cockpit for me is a moderate 30fps sometimes dipping down to mid 20s when in really dense areas. See screenshot I added to this blog entry. 30 fps is my personal comfort level.

    One option which I didn't try but has a big impact is real-time cockpit lighting.

    There's more we can do, I certainly haven't sat down and tweaked shaders for every millisecond of performance yet. But ultra wide resolutions really soak up the GPU bandwidth.

    I currently use an nVidia GTX 460

    ReplyDelete
  7. Nice. Lots of time to figure it all out I'm sure. Thanks for the response.

    I use the same vid card, almost. EVGA GTX 460. It's great so far. But with a tri-setup, I can imagine I would need something better...especially since my card has only 768mb RAM.

    ReplyDelete
  8. That's cool. I think this one is EVGA too but a 1GB model. What's an equiv ATI card?

    ReplyDelete
  9. I believe the equivalent is the ATI 5850. Both good cards. 5850 beats it in some benchmarks, 460 wins in others.

    ReplyDelete
  10. Cheers, I'll have to get one for comparison testing.

    ReplyDelete
  11. No problem.

    I really like those widesceen pics. That first pic I almost immediately was looking into that forest for possible Taliban. My brain is already getting ready to look for those little tards.

    I'm really really really looking forward to interacting with infantry...both friendly and enemy. Looking for individual targets. I know from books and video's those Apache pilots spend a considerable amount of time looking at people on the ground and trying to determine if they are enemy or not, or whether they are carrying a weapon or not.

    ReplyDelete
  12. How many polys on those infantry? Put a couple of squads in front of you and watch the FPS drop.

    30 FPS for a 460 & TH2G is pretty good flex & without optimisation as you say. Wouldn't the cockpit lighting loss of performance be offset by the reduced LOD at dusk/dawn/night ?

    I'm running an ATI 5970, I hope the leadworks graphics engine supports dual GPU & SLi unlike DCS! ? I think I remember you mentioning that MPDs etc will be exportable (get the Mrs working on the Ipad/Andriod MPD/Instr app now).

    ReplyDelete
  13. p.s. My favourite is the last pic, nice blur. Just put the dust kickup in and ... that ah64 looks like its ready to go a huntin'.

    ReplyDelete
  14. Phenomenally detailed textures.Dave/Flex you please write the dimensions of the texture a tent on the last picture?512x512 or 1024x1024?Or is it calculated differently?

    ReplyDelete
  15. Night performance is better than day mainly due to the removal of the directional light (= no cockpit shadows). I get about a 20% bump in fps going from day to night.

    Comfortable fps for me is around 50 and both maps are running at about that number @ 1280x1024 on a 470.

    Banita, the tent uses a single 512x512 diffuse texture and a 512x512 bumpmap map texture.

    ReplyDelete
  16. Dust effects so they don't really kick in till you hit about 20% torque. Idling on ground doesn't generate much at all.

    Tent texture is probably a 1024x1024 DXT5 with normal map.

    ReplyDelete
  17. "How the hell do I turn this bloody rain off? Grrrr."
    Esc-->Options--->graphic settings--->advanced --->rain off

    ReplyDelete
  18. I'm off to sleep shortly. But thank you for guiding me to those setting :)

    I hit ESC but it dumped me out of the game very quickly. Did I do something wrong? :)

    ReplyDelete
  19. I am reminded of two things-Or are you very nervous,
    Or you have too quick repeat keys in Windows.
    Good night ;)

    ReplyDelete
  20. any thoughts of allowing data export/inport for apps like Helios Flex?

    I was thinking how incredible CH would be with 1 - 3 touchscreens of those beautiful panels around the pilot.

    ReplyDelete
  21. I've added a JSON library to format some of the simulation data and have still to sort out the communication layer. Probably an open port or some message service.

    It's one thing to export data, it's another to render it in a meaningful way. But some facility will be there.

    ReplyDelete