Friday, 4 March 2011

Team Challenge - Day 2

Some nice things happening at the business end which I can't discuss but it's put me in a happy mood. I need to keep this update short as there's lot to do today.

Last night I had to go back and address some potential problems with the "weight on wheels" function, sometimes called the "squat switch". This is a mechanism that tells the aircraft electronics that it's weight is on its wheels. This was a detail which was not added until a few days ago and every helicopter derived from the TVehicle class has it. It's implemented as a measure of lift-force and a raycast below the left and right wheels. Helicopters have a variable array of wheels that is filled out when each helicopter class is initialised. For the Apache we just have two main wheels, objects defined in the model as "landing_gear_left_wheel" and "landing_gear_right_wheel". That's another example of how the artist uses an object naming convention to describe the hierarchy in the vehicle, in a similar manner to the cockpit. I know there's a tail wheel on the Apache but we treat this as a special case due to how it operates.

* edit * Switch only on the right 'strut', remove left wheel check.

Wheel size is a function of the mesh AABB size dived by 2. (AABB is a structure that describes a bounding volume of something, in this case the wheel object)

   this.childWheelRadius = aabb.Z0 / 2.0;

I'm beginning to waffle again. There are currently two LOD models used for the Apache (interior and exterior) which have subtle differences, so that needed to be taken into account. Suffice to say it works correctly now and should be fine when we add gear compression later. Or the Chinook for that matter.

The A/C switch on the MPDs  call up different pages depending on that status of the squat switch (thus SHATTERING, I said SHATTERING!!!) one of the golden rules of user interface design, consistency. Well this isn't an iPhone you're operating, the battery lasts longer for one thing. On the ground it sets the "M" master mode to [ENG] and in the air it's [FLT].

MORE IMPORTANTLY it stops you from arming weapons and shooting things off whilst on the ground.


Arming or going "weapons hot" requires pressing the "A/S" (arm/safe) button pictured above. This won't activate if the aircraft is on the ground. Safety first. If you need to run weapon tests on the ground you must first press the GROUND OVERRIDE (GND ORID) switch. When this is on you will be able to activate the A/S arming switch. It should light up yellow (I think) but we only have one colour for switches atm.

I remember we had so much trouble trying to get clear photos of these labels from web images, I think we kept changing the letters as we went from one blurry mass to another. So I apologise if it's not 100% accurate, I'd rather not have to re-edit the textures.

Reference to other sims

The "ARM?" query seen in the Longbow 2 HUD is a gameplay fiction, one I copied but since removed. This has been replaced by "WEAPON?" when you pull the trigger and can't fire. An Apache helicopter will tell you when it can't shoot stuff, rather than when it can. It's kind of trigger-happy like that.

To make it easy to arm and shoot in Combat-Helo without access to the virtual cockpit interface we'll keep with CTRL M (for Master Arm) and SHIFT CTRL M (for Master Arm with Override as needed).


Work for today

Today I'll be reviewing some of the message pathways in the code to make sure the arm buttons are all working correctly, making any changes as required. Fixing up the WEP page (awol since I changed the co-ordinate system of the MFDs) and creating a new virtual class for various weapon effects.

Bugger, this update wasn't short at all.

2 comments:

  1. Fairly certain squat switch is on the left side, and GND ORIDE "ON" text on the switch is green. A/S is yellow.

    ReplyDelete
  2. Dave is changing the A/S switch to yellow I think. It would be nice if we could do that in code.

    Why can't we do that in code?

    ReplyDelete