Saturday 28 December 2013

Happy Holidays

I somehow managed to hit "publish" instead of save earlier. I apologize for the curiously abrupt email if you are among those that elect to receive updates in this fashion.

Let's try again.

Yesterday I was in my living room having family time, up on our wall sized projector screen I was browsing YouTube for a number of classic helicopter games. These included DI's Apache Longbow, Gunship 2000 and Jane's Longbow. Since it's the end of the year and it's the popular thing to do a little retrospective, here's some Longbow themed naval gazing followed by a little project update.

Let the old games begin


Starting with Gunship 2000 from my old chums at Microprose. This was a sequel to Gunship, offering a choice of three helicopters, the Apache, Blackhawk and Cobra.


Gunship 2000 "Do a barrel roll"

I remember having the Amiga version, only experiencing the superior PC version later. Some of you younger folks might be looking at this and thinking it's total crap. But imagine you hadn't seen a 3D patchwork landscape with filled polygons before. Ever. Some simulations had a basic mountain (pyramid) or two but this was starting to look interesting. There's a lot going on, apart from the hideous teeth grinding sound effects of the day. There's a battlefield, mission structure and a menu screen that my step-son said looked like "Theme Hospital" (meaning the clinically white base office).

It's hard to go backwards. You can't go back to these games anymore than you can revert to using a one button joystick. Evolution of game controllers and the complexity of combat simulations go hand in hand. Early versions taught us the language of these games and a generation has grown with them.

We have adopted more complex controllers and games. We demand more from them, expect more from them. At the same time we appear to have lost what was fun about these games. It's not not to see whimsy in the 'action themed' intro for Gunship.

The Nintendo Wii was successful as it reset the clock for gaming. Everyone including grandma could pick up the controller and understand it. You didn't need to be taught how to use a joypad or have any previous gaming experience. Is it possible to reset the clock for combat simulations? Apparently so, we are already seeing this, and they have proven to be very successful examples. World of Tanks and War Thunder are not deep combat simulations but they are teaching a new generation about the language of military simulations. A proportion of this generation will want more complex experiences, or at least different ones (we're so easily bored today).

Moving on....

Post Gunship 2000 in all it's VGA glory we had Digital Intergration's Apache Longbow. This was more like a real helicopter with authentic looking symbology. The format for Apache Longbow and the successor Hind remained mostly unchanged in games that shared their DNA, Enemy Engaged - Apache Havoc and Comanche Hokum.

Apache Longbow contained a training scenario which is similar in concept to Combat-Helo Gunnery. Hand on my heart, I swear this was unintentional. It was Dave's idea, maybe my subconscious remembered this aspect of DI's game. This is a video game approximation of a live fire exercise. A video is presented below. The fidelity of the flight model still stands on it's own. Smooth.

DI Apache Longbow Training Mission - Fort Hood

DI's games were more serious, throwing out the jingoism and had more in common with current dry simulations. Less game, more pain. Today, most of the hi-fidelity simulations come from eastern Europe and out of Russia. And it has to be noted, the best middle-ware too. Something to do with the higher education system, I just had a Russian friend stop by for two days (he's currently attending a game degree course at Abertay university and something of a math prodigy). His description of how they teach mathematics in Siberia made the hairs stand up on the back of my neck. It sounded more like "know everything" or you're out, only the mentally fittest survived. He then proceeded to diagram an algorithm for personal happiness which I totally failed to comprehend. Must be a Russian thing. Just give me some cheese and a glass of Port (I'm easily pleased).

Jane's Longbow 2


Time to review some Longbow 2 footage. A great game in the day (1996/7) and one I continue to reference as the ideal balance between difficulty and replayability. Sure it's lacking ground detail. Everything we would love to fit into Combat-Helo is here. This is our aim, a stand-alone simulation game. While we'll have some basic live fire exercises for the firing range, I want to squeeze in a "point-to-point" scenario, a random placement of air defense units and a primary / secondary target. There's a nice area of hills on the gunnery range ideal for this.

Here's a trip down memory lane, the "instant action" mode in Longbow 2.


It still contains a good balance of difficulty and replay-ability. The multiplayer (when it worked) added a huge thrill. Dual-seat co-operative play, multi-ship flights and different mission roles. Plus you were never very far from mission objectives. Campaigns could be played cooperatively spread over days or weeks.

The avionics of the Longbow were significantly reduced in complexity, even allowing missions to be mostly flown on autopilot. The rich pool of radio transmissions that played in the background from both ground forces and AI flights made every game a rich "combat" experience. Even if you just stat idle at the FARP you were reminded that there was a real battle going on out there. And you mattered. You could go and find those guys sending out those maydays and help them out. Or not. It was up to you. So much depth in such a "small" package, not many combat simulations today have been able to come close to this. Some games script it, but it's scripted and it shows.

Hardware Of The Year - The Year of the Oculus?


The most talked about hardware of the year has to be the Oculus Rift. Despite it not yet available as a commodity item everyone was talking about it. Being a victim of VR technology in the 90s I'm still on the fence. Convenience still trumps quality in all sectors and the reasons why VR didn't explode 20 years ago have not changed that much. I suspect like Kinect, it will sell like hot cakes but not get much use in the home.

I keep getting emails about Oculus support in Combat-Helo. Short answer, no. That's mostly down to Leadwerks Engine and not having a dev kit. I don't see a compelling reason to get one for flight simulations, when I play a sim I'm often looking at keyboard and switches. I own a MIG welder and welding goggles for really serious PC repair (and bodywork), it's a pain having to flip them goggles up and down all the time. Guess I need them goggles with an automatic LCD plate. I've seen a simple WWII sim working really well with these so I guess it's down to what you can comfortably learn to do on your HOTAS.

We've been looking at Unigine recently with a couple of other engines for a post Combat-Helo Gunnery project which do support Oculus. If it's easy to do we'll do it. Simple as that.

CastAR from Technical Illusions is a slightly different story. Often overlooked as it's not as sexy as VR, despite being fully capable of VR. With head tracking built into a simple pair of glasses and two micro-projectors your natural vision is not impaired, you can see all your keyboard and joystick controllers. Making your visible screen bigger is as simple as adding more retro-reflective material around your cockpit space, painting MFDs onto a physical cockpit layout. I'm just spit-balling here as I've not seen how good the native resolution is going to be. MFDs will need 512x512 resolution minimum and has to be readable from 2 to 3 feet away.

NaturalPoint should take a tip from these new Kickstarter projects for their TrackIR consumer division. My LED Antlers have been laying withered and broken on my desk for 2 years. Hear that NaturalPoint? How about adopting some new technology that's compatible with your DLL? You can buy these things called "accelerometers" in chip form that cost next to nothing. You can ditch the whole IR baggage and call it TrackER.

In terms of hardware released this year the LeapPad was both exciting and disappointing. LeapPad is a small mysterious black rectangle that sits on your desk with nothing but a micro-usb cable running to your PC. It uses three IR LEDs and two angled cameras to read gestures in it's field of view. The smart stuff is all done in software so it's a fairly inexpensive add-on. My experiments for integrating it into a simulation cockpit were not great. Limited by it's field of view and only from below, basically pointing a finger at an MFD was all I managed before giving up in frustration. As a virtual pilot I want to hold my hand in a vertical position to perform hand gestures, rather than a horizontal position for playing air piano. To do that I'd have to mount the device on a nearby wall or stand.

Saitek made us raise a collective (no pun intended) eyebrow with the announcement of a new HOTAS. The X55 pictured below.


I don't have the inside scoop on this, it was a real (but nice) surprise. Since I LOVED utterly the metal build quality of the X65F but hated the force sensing (for helicopters they don't work). So I've been using my tried and tested X52 just because of it's movement. This X55 looks like it's the best of both worlds, the same flexible all-round no cross-centering spring movement with the metal build. It comes with extra gizmos that are perfect for manual start-ups, adjusting cockpit lighting, symbology adjustment.



Work update


Keep running into silly things that slow you down. Recently the tail wheel assembly of the Apache. We got the springy suspension working but the model hierarchy for tail wheel articulation isn't correct. The crew limbs couldn't be animated as we need them in a T-pose to apply the bones. Also I think the crew scale is slightly wrong. Check this pic out....

Crew scale against cockpit
Winter is coming. One of the lasting impressions I have of my early combat gaming comes from the original Microprose M1 Tank Platoon, the cold winter landscapes juxtaposed with flying HEAT rounds and burning wrecks. It provided a welcome change of scenery. A few weeks ago I started applying a snow shader that uses the up normals on a model to apply a snowy texture. It's a lot of work to go through every model material definition to update them. The results of this shader applied to the M1 tank is shown below.



Once applied you can set the snow coverage in real-time from 0% to 100% by setting a shader uniform. This almost never made it as a feature.

It presented a small problem for vegetation models since Leadwerks creates billboards which are generated on a first use basis. Once you apply a snow texture to a model you need to update the billboard. Fortunately you can get access to Leadwerks vegetation billboards like this (where the index 0 is the vegetation layer 0-15).

TTexture tex = leadwerks.engine.TVegetationLayer.billboardtexture[0]

With a little shader magic this allows real-time manipulation. You can see a glimpse of these experiments in an unlisted "Thank you" movie I sent to the team on Christmas day (I'll link that at the bottom of this blog). Oh to have an engine that does all this stuff for you.

Right now we're wrapping up additional game effects such as flares. Mack came up with a pretty tight working concept after watching some of the impressive air show displays where Apaches equipped with flare dispensers go 4th of July crazy. From these videos he got a feel for how they behave in flight, coming up with a working prototype. Just like our 30mm shell ejection we're using physical bodies for flares so they bounce off objects roll around. Pretty neat. The Leadwerks particle effects won't win any awards.

So while I'm supposedly finishing off the ASE gear, I've also been tinkering with the landing gear dynamics that Mack fixed up. It's easy to get distracted when nobody is looking over your shoulder.

This devs test map - random screen-shot
Next on the list is adding the AI to get AIRDEF units to search and destroy. Mack is back on figuring out how to tackle the damage modelling. He's got some ideas on swapping out child objects in the vehicle hierarchy. It's the sort of fudge you get used to with Leadwerks.

By way of a thank you and Merry Christmas to the team I sent them this short music video containing just some cockpit g effect footage and tree billboard tests.



Happy holidays from "Mossie" (or Mossy if you're from the wetlands). You'll have come across this chap on our Facebook page.


And happy holidays from me and the rest of the team at Combat-Helo. Here's to finally shipping in 2014.

Sunday 15 December 2013

ASE, Master Warning and Master Caution

Sales brochures are always a good place to start when you want some screenshots of avionics (that and Google images).

ASE or Aircraft Survivability Equipment - is the name given to a suite of devices that interact, they act as the ears of the aircraft. Our combat game mechanic relies on paranoia, avoid being painted by SAM radar, pinpoint enemy launch systems before they spot you, and eliminate them using your stand-off missile capability.

Listening for enemy radars and presenting this information to the crew is the job of the ASE page. This has inputs for controlling active decoy systems such as the IR Jammer, flare package and radar jamming equipment.

ASE page from sales brocure
My version is looking similar, I can't quite fit everything on as I made the decision a while ago to increase the symbol size by 20% to make MPDs readable in the upright position for typical screen resolutions. The Autopage logic is going to be fun but perhaps not as much fun as the flare dispenser programming. The logic for flares should allow for salvos, interval between salvos and flares per salvo. This should look awesome with the Leadwerks engine lighting. I'm guessing flare programming ends up on the ASE UTIL page in concordance with other page types.

My take on the ASE Page

ASE alongside AIR SURV mode, no rings

I can't tell what the range circles are in scale. Will figure that one out shortly but I'm going to go out on a limb and say 2km per ring....or it's arranged by type with the biggest threat on the inner rings. Easy enough to try both. After trying the ASE with range circles alongside the Air Radar mode it looks confusing. For now I'll leave the rings off the ASE page.

To test the radar detection I'll have to script some radar entities, we don't have any model assets for radar units other than the SA-9. They may end up as deadly green cubes for now. The symbology appears to be the same as the TSD, easy enough.

This just leaves what to do with the symbols for different states. Time to crank out Longbow 2 to get a refresher. I'm looking for:

  • Radar non active
  • Active Radar (uh oh)
  • Tracking Radar (about to have a bad day)
  • Launch Tracking (bad day)
  • Laser warning (LWR)
  • Small Arms Acoustic signature

I realise the final one is a bit of stretch but I'm interested in how well this works after reading about UK Apaches fielding acoustic sensors that not only picked out small arms fire but determine the direction. If it's like equipment tested elsewhere it should be able to determine what weapon is being fired. Useful in a support role. And perhaps too much like voodoo.

WAC


More warning tones have been added to the cockpit which are part of the WAC warning and caution system. These audio warnings go off at a regular 5 to 10 second interval until you acknowledge them by pressing the appropriate warning lamp. The Z and X keys have been mapped to the warning and caution ack switches accordingly. If it does it's job it'll have you swearing at it every time it goes off, something the wife can join in with too (and I speak from experience).

Very happy with the team who are finding time to squeeze in what they can especially over the holiday period. Sérgio has been working hard on a new web site and forums for Combat-Helo. No eta on when it goes live. When it launches this blog will be migrating to the new site. To date, my personal dev blog has had nearly half-a-million views, golly.

I'll be sad to see this go but the new site will have everything under one roof. News, updates and forums. Not just for Gunnery but everything we have planned beyond.

Alpha testing will start soon. That's quite a big thing for me. It represents letting go of something I've been really protective about (paranoid even?) for years. More than a few nights crying on sofas with the stress of juggling workloads and expenses. Looking forward to getting a chunk of outstanding work items done over the holidays. If we can cross off a few more big ticket items early next year we can then focus on content.


And now for something slightly different.

Unigine Helicopter Demo

I cant post a blog update this week without mentioning the other amazing thing I saw. Everything I ever wanted in an engine. This week Unigine released video footage from their CIGI compatible Rescue Helicopter demonstrator at I/ITSEC 2003 Orlando Fl. The level of detail is pretty amazing. A physical cockpit with instrument integration, multi screens (client server based) and a totally immersive simulator. Just watch it. And if you've watched it already, watch it again. Kudos to the team that put this together.


The Washington state dataset is about 60GB. Yikes. Not that you really need this level of detail everywhere. I've had a look through it when playing around to take some screen-shots and you can tell there's a lot of data that's been imported from geophysical databases. I look forward to seeing a GROME plugin to export terrain tiles for this engine in the near future. It looks like it should be pretty compatible in terms of workflow and how the tiles are exported. I'm guessing World Machine was used (it was used in the creation of The Valley demo and benchmark).


Letters are powerful. For example, the letter "H" can attract helicopters.*
* Joke stolen from Milton Jones

Friday 6 December 2013

New guys and the sprint continues

New Focus

Waaaaaaaaaaaay back at the start of this project we promised a kind of game that was Longbow 2 with trees. Between then and now that goal mutated to the point where it almost forgotten. Word of advice, nail your mission statements to the wall. If you ever loose focus it's there in front of you.

I'm still trying to figure out how to make a gunnery range fun and failing. I can create a set-piece, and ultimately that's all it feels like it is. Other than learning how to operate sensors and weapon systems, as a game it's not thrilling me yet. It's educational to a point but on the whole Farming Simulators have more grab value. We can do interesting things, it's just finding that right approach using what resources we have. A comment was made about how LB2 had real "pucker factor" as you never knew what was on the other-side of a hill. And that pretty much nails where we need to go with Gunnery. As if I'd forgotten. Well....I had. To this end we will add point to point exercises to our existing range map then later we will offer our Herat map populated with static enemy armor and SAMs.

New Guys

The team has expanded thanks to the contributions of Sérgio and Mack. Sérgio takes on the role of webméister and social media guru due to his experience and infectious enthusiasm (not to mention blunt honesty which is welcome reality-check).

Mack is better known for being one of the more awesome contributors in the classic Leadwerks dev scene. He's been reviewing some of my code and offering a shoulder to cry on every-time I hit another engine related brick-wall. Welcome aboard chaps.

Together with Fred, Dave and myself we've got a good crew with drive, honesty and commitment to help get us where we want to be. And even beyond that.

New Stuff Wanted

I've identified a couple of additional model assets we need:

  • SA-10 launch vehicle and clam shell antenna.
  • Hospital Tent

Range script amendments are in progress. More fixes this week.

I've partially re-built the range map using GROME just so I can bake experimental color maps for the Leadwerks terrain base layer. This is an attempt to add variation and color tone. Dave pretty much did an awesome job with the tools at hand and seriously hard to improve upon. Roads have been a major PITA since Leadwerks road objects are a very simple implementation that only work on tiny maps. They rebuild at run-time during a Leadwerks Update() using a script which results in a 90% drop in performance until they are complete. Ideally we want to save these out as meshes instead of re-building them, this is how we currently implement roads, as exported meshes. Very fast and performance friendly. It's a trade-off between speed and aesthetics. The goal is to keep the FPS between 30 and 60 on a middle of the range gaming PC.

Fred is lending his flight dynamics skills to re-factor the flight model code. Hellfires are getting a wep page make-over.

Not so new Screen-Shots

Gratuitous screen-shots shown on Google+ earlier follow:

The CH-47D is back as a prop

Apache spawning points on the base

Hey it's virtual Google Glass. ReadyTime not yet used.

I DoF my hat to you sir!

In need of some re-design work

Fire in the hold! Literally

I got a mug just like that. Maybe you can too in the near future ;)

Till next week....(additional updates may appear here)