I have one hell of an entry for you guys today, so read on, and be enlightened!!!
The HUD
I laid out the complete HUD today(using some old textures, but you get the idea), and I even created a dialog box that pops up when radio messages come up, which is kinda neat looking, it even has a little picture of who's talking next to it. Problem is, it just sits there right now, as I haven't coded much past the rendering code, so for now, it's static[grin] I also had trouble with the "CAUTION" indicator, so I took it out for a while, which is why it is not in any of the screens[grin] Anyways, check out the screeny below for a look at what the complete HUD will (sort of) look like!
Trajectory Calculator
As someone mentioned in an earlier comment, we really needed to add a trajectory calculator for the weapons in the game. This was actually harder than you would think, because lots of the weapons have wierd characteristics, such as the parachute-retarded bomb, so I couldn't just use a simple model to calculate the trajectory. Well, I solved this problem by creating a temporary weapon each frame, then updating it until it goes off the screen, then tracing it's locations at each update. This works pretty well, and by skipping a couple updates ahead, I was able to reduce the CPU workload, and get a cool dashed line path. Anyways, you can see the trajectory for a bomb if I were to drop it at my current angle and speed in the screeny below, it makes blowing stuff up much easier[grin]
Scripting!!
This was my crowning achievement for the day. I've been worrying about implementing a form of scripting, and I guess all the worrying helped me realize the best way to do it, and I made my own "scripting" system today. I was considering using an actual scripting language such as LUA, but I didn't think I could learn to use it effectively, while still getting stuff done with the actual game, so I decided to roll my own solution. My system pretty much works by loading an series of 'events', each with a trigger, and a reaction. Then, the game periodically checks to see if any of the event's trigger criteria have been met. If the criteria has been met, the game then executes the scripts 'reaction', which can be anything really, because the Script Manager "owns" the game object, so we can manipulate stuff really easily, which is pretty cool[grin] Anyways, here's an example 'event' from the test level that respawns the player if the player dies....
Format: TRIGGER + PARAMETERS(optional) + REACTION + PARAMETERS(optional)
-PLAYERDEAD,RESPAWNPLAYER,400,200;
As you may have guessed, PLAYERDEAD is the keyword for the "If the Player is Dead" trigger. That trigger doesn't have any parameters, as it is pretty straightforward. RESPAWNPLAYER is the keyword for.... thats right, respawning the player! This reaction actually does have 2 parameters, which are the x and y positions to spawn the player at. As you can see, this system is pretty easy to use, and extend.
Night Vision!
So I was playing with some OpenGL commands I usually don't use, and I discovered how to create a simple night vision effect. It's pretty simple actually, all I did was set up the current material to reflect only green light, I then disable all the writes to the color buffer except those to the green channel. It actually looks pretty cool, and it gives us one more usable item to add to the list(which is growing[grin]). The scene you see below is actually pitch black without the NVG effect, which makes switching the NVG's on and off pretty cool looking!
Items and Weapons
As you may have noticed, I mentioned items in the NVG paragraph. Well, Mark and I have come up with a cool system of equipping your fighter for each mission, and IMO its going to be pretty awesome. See, your fighter has 4 "slots" that you can fill. 2 of the slots are used for secondary weapons, such as bombs and missiles, another slot is used for your gun, which can be armed with plenty ammunition types, and the 4th slot is used to carry one "item". The items we've come up with so far include extra decoy flares, nightvision goggles, a targeting pod(which allows you to use the trajectory calculator), and tons of cool other things that will make life a little easier in the missions of Angels 22. One thing we really want to stress however is the decision between what stuff you really need for the mission, I'm hoping we can get teh player to think stuff like: "Well, I could bring NVGs on this night mission so I can see better, but there's lots of SAMs, so maybe extra flares would be a good idea...."
Well, thats all I've got for now, as always, comments are welcome, and as you may have noticed, we do listen to you guys[grin] Peace Out!
Night vision is a good idea, but now you have to add a overlay noise texture to make the screen grainy and blotched. Animating it, or at least switching through various noise texture would be awesome. I hope you'll try adding that.
Well, that's all for now, thanks for the update! I gotta go.