Friday, April 4, 2014

Brevis: Development Progress Update 2

   Oculus Rift

If you haven't put the Rift on your head yet then you should be aware that you are really, really missing out. It puts you in the game, its going to be huge, you'll flip when you see the depth and scale it can introduce... The problem is, some of the totally awesome stuff you can do with the Rift and head orientation is really incompatible with non-Rift control schemes... For example, using your head to stare at an enemy to get a lock on for your intercepting missiles. That's something you can't do without the rift and keep the same control of the ship. You can literally now use your head as part of the control scheme and it feels super natural and fun.

So essentially, if you want an awesome Rift game that really gives you the fun factor of the Rift and embraces it rather than tries to squeeze the Rift in as an "optional addon" then you have to remove the ability to play without it. This is both unforunate and really great because on one hand players will be sad that they need a Rift to play but on the other hand it guarantees that there will be really cool new functions and features in a game that drastically introduce new and fun means of experiencing the game and interacting with it.

Bottom line: Brevis is Rift Only, but expect awesomesauce.

   Unity 5

The Project will be updated to Unity 5 when available. This includes the switch to using Enlighten and PhysX 3.3, among other very cool imrpovements and optimizations. It will use DX11 only features.

   Lighting

A huge drawback to using the Rift is optimization. Duplicating the views and using two separate cameras means doubling the amount of rendering you have to do for the game. This is extremely taxing on the game. The good news is that the nice people behind Sunshine (the light shafts in the game) have hugely optimized their asset so that it can reuse information between cameras which means a big boost to optimization since we only have to compute it once, as well as a slew of other updates that give more front end control over the quality and such.

Stats:
Previously:
Drawcalls between ~5k - 8k
FPS between 35 - 50

Now:
Drawcalls between ~1k - 3.5k
FPS between 60 - 75

And this is on my current hardware. The target for Brevis is next year's gear, really, and since I've got a bulk of the heavy perf hitters in the game already I think I can safely assume that this is going to run smooth!

   Explosions

I like explosions. They're pretty. I always like to mention that these are constantly being improved. There is currently a fairly traditional approach to the explosions and effects ingame, but there is potential that this will switch into a significantly more delicious detonation of thine enemies by using Pyroclastic effects via DX11. I took a whack at doing some preliminary stuff but was having trouble making it scale in the project and distort the effect like I wanted so i've put it on the backburner for the time being.

   Artificial Stupidity Intelligence

The AI in Brevis is actually starting to act fairly smart. Other than avoiding asteroids which it actually does exceptionally well now, it can chase targets, lead them, attack them, destroy them, then do other things that it might feel necessary such as wandering in circles and going to places that I tell it are places that it needs to go. Stuff like that.



   New Ship

I learned a lot when I did the Free Oomph Kit Models, one of those things is that seeing stuff in front of you when you're flying a ship is freaking important. GUI, hull shapes, and cockpit design is all really important to deliver immersion and eye candy to a player when they're cruising through the game.

Fortunately, I like making delicious models so the new ship is populated more along the lines of where it should be. The first ship (Blenny) was made for maximum visibility. This new ship (Falcon) is made for maximum awesome.




   VR Nausea and Controls

Another thing that is hard to nail down is the sickness and nausea that you can get by using the Rift. The majority of the sickness induced will come from poor implementation of the control scheme which leads to unexpected results and disorientation when what just happened is not what your brain expected to happen.

So far, in the standalone builds I've put out there the results have been positive in terms of how acceptable the levels of disorientation are and we're in the very early stages of development so I feel pretty confident that I can eliminate the majority of sickness caused by the game itself and that makes for a much better play experience. Us gamers tend to get on long stints with hours and hours of screentime and even skip meals while playing "just one more mission"... I certainly wouldn't want to take that away from anyone because the game made them feel ill, so this is a very high priority issue for me. And FYI, there is no 'muscling through' the game if it makes you nauseous, your brain can't cope with that crap and you'll rip that thing right off your face.

   Voice Acting and Character Interactions

I've started on some basic voice acting and begun looking into lip syncing the characters with facial animation. I have a brand new mic that is totally sweet and have started on some DIY home recording stuff for this kind of thing.

   Music

Killer tracks can be a huge part of the game. At the moment I'm planning to do all of the music myself. I have some history with basic composition and the software I'm familiar with has grown significantly since I last used it. I've done some mockups when looking at the new features in FL Studio and have been pretty happy with everything. I hope to nail down some basic features in the game like better character interactions, combat with the AI, weapon FX, space debris, ship customization interfaces, Holodecks, ship UI, etc... And then make a quick trailer which will feature some of my original music made for the game, soon, as in <8 weeks.

Monday, March 24, 2014

AI update & new ship block-out!

Well I finally got a chance to put some time into the AI, and it's running much smoother now. =)

The system is pretty flexible, and I could scale a variety of AI and weapons from this one system. I separated the FSMs to be serving more concise purposes and they're communicating based on some rough rules which seems to be able to keep it behaving like I want.



Combat was the most significant addition, I've added a Lead Target action which allows me to input the estimated weapon projectile speed and the enemy will steer toward an intercept point when it acquires a target. This is going to be really cool when I get the homing missiles added and they have to lock on to you before firing. Setting that up is nearly trivial, just change the weapon speed for the lock-on, change the conditions for firing to require a bool and he would start firing homing missiles after locking on with rudimentary intelligence.

I wish I had time to make this like I really want. There are so many really amazing algorithms, ideas, and methods to create hugely scaleable AI that has much better locomotion than these guys but I simply don't have the time, so we'll have to make due with the regular tricks =)

This will be available for download on the Playmaker forums hopefully tonight so you can take a look at it yourself and see how it works. Feel free to make comments/questions/suggestions.

*edit for download link:
https://dl.dropboxusercontent.com/u/38606641/AI/AITest-r2.unitypackage

New Ship!

The new ship block-out is the Falcon, inspired a lot by the Star Citizen Scythe and Avenger ships.


One of the things I learned from the last ship is that cockpits have to look awesome, you need to see something happening on the ship from the cockpit seat and that any interesting trinkets or details really help with the feeling of scale.

I tried to address those things in this block-out concept and have a pretty good idea on how to move forward with the shapes to make them ready for functionality and prepped for in-game asset conversion and optimization.

Weapons will be mounted forward on the wings either side, so you'll get a clean view of them while firing and I think it will result in a pretty interesting environment for the pilot and help to ground the players to the ship when playing with the Rift... Nausea is hard to control when you have all these crazy physics inputs to deal with and balance out, so anything static that you can fix your eyes on is helpful.

Let me know what you think!

Saturday, February 15, 2014

Development Update

  • Added ingame avatar in first person 
  • Added IK links to the ship controls 
  • Added placeholder UMA generated NPC's 
  • Added mockup space station (better than the old one) 
  • Added improved 3d GUI for the ship and interactive consoles 
  • Removed main character head and gave her zombie arms. (rawrrrrgrrhhahh) 
  • Updated Standalone on dropbox to current build