Saturday, 19 January 2013

Intermediate Graphics 1- Bullet Devil: Developement targets



It’s a brand new year, and it looks to be an interesting one too with intermediate computer graphics. This first assignment is to modify a screen shot of our old game, and design it to a state which we can classify it as an indie game. Here are two screen shots which are a possible target for our game by the end of the semester, and how we plan to achieve it.

Screen Shot 1 

Before

After
  • Layering – An idea we had was to use different levels or layers for which each ship/environmental detail would exist on. This way we could easily specify a layer rather than exact coordinates, however layering also refers to the drawing of layering. This would involve drawing the ship first, then shader on the ship, and then finally apply its shadow.
  • Shadow - One idea we had was for shadowing would use a post processing shader which would create shadows for each ship. The light source for this shader would be high up in the sky and to one side of the field. This would result in a shadow which would be to one side of the ship, while showing how high the object is in the scene. Therefore this would emphasize the “depth” in the game and make the below enemies easier to identify, and bomb.
  • Ship Shading- This would be done with a similar algorithm to the shadow above however this will be done to give the ships more appeal. The light source in this case would be around the same level of the ship, or slightly above it, if its below.
  • Health Glow(outside)/Bloom- done to  enhance the “appeal” of the health power up. This makes it more friendly looking, as many people were intimidated by it at first, thinking it was an enemy attack. This will probably be done by a post processing shader, which will

Screen Shot 2

Before
After

  • Ship shading expanded-The enemy ship in the scene, the turrent ship, is below the player and holds turrents on top of the ship itself, which will be interesting to apply this shader to. As I said above, we would have to use layering to properly shade, since the turrents are attached to the ship base. Only after applying the shadow to the ship base, we can apply the shadows from the turrent itself, to make it look proper.
  • Cool downs shading- The cool down icon for the cloak, shown at the very right black bar, has been redone. With what I have in mind, this will be done with a shader which will use an external value, time. This time is basically the time until you can use the power up again, and will be calculated based on what time the power went on cool down; to the time it’s done. This will give it something like an hour glass, where it will tell when the time is up.
  • Cloud shading- Clouds could be done on a simple oval like polygon involving a multi-step process, which involves a blurring shader. First would involve applying the white color to the object, where the opacity would decrease as you travel from the center to the outside. Second you have some form of blurring done to the object which would choose areas for the shader to blur on the cloud. This would be done randomly and independently of all the clouds, making no two clouds the same. Finally, if time permits, there can be an algorithm to randomly “poke holes” in the cloud. These holes will be 100% clear, however the blur shader will make it so the hole doesn’t look too obvious. Once again this process will be completely random and make every cloud completely different.

Hopefully by the end of the semester we will have something like

Tuesday, 4 December 2012

GDW- Game Developement blog 5


Nov 27-Dec 4, 2012

Although the crunch time for the game is over, course are wrapping up with projects, reports and exams are coming up around the corner so I’ll to keep this short 

 2DA


  • Implemented a new menu, with Level designer
  • Also implemented an icon to indicate if the invisibility was on cool down or not
  • Helped with a few reports and other final assignments for the game.

3DA

  • Redid and modified many models for the game
  • Created new back ground texture and, enemy/player texture
  • Help with reports, specifically game Design, and the creation of of the website of the site
  • Directed the creation of both the game’s developer diary and trailer.

Level Designer

  • Balenced and modified the current enemy waves so the game will scale from easy to hard throughout
  • Fully completed a game over and win screen with a transition back to the main menu
  • Finished his part in the intro cut scene camera
  • Did majority of the our studio's website, which the Producer was supposed to do.
  • Helped with Game Design and production (GDP)

Lead Programmer

  • Added morphing into the intro cutscene, the animation could be speed up
  • Finished the moving camera, which is used using lerp, and can be speed up
  • Created the new ingame model and new animation for the game
  • Finished the Data/Algo report which the Producer was supposed to do
  • Worked on report for Prof Hogue.

Producer/Audio Engineer

  • Failed to do his part of the workload, such as website and report
  • Added no audio to the game
  • Very useful this week!

GDW- Game Developement blog 4

Nov 20-27, 2012

This week is crunch week, so we’ll try to blog short and concise.
2DA
  • finished Health working
  • redid text in game
  • got a menu screen working
3DA

  • found problem in code which gave us issues loading in enemies
  • Finished enemies and recreated bosses up to 3 times due to issues
  • worked with programmer to create morph key frames
Level Designer
  • Fully implemented wave loading/transition and level loading/transition
  • Created game over screen, with respawn, and 
  • On a side note, he created a new boss, using 100 of a single enemy type
  • Trying to implement a “cutscene”
Programmer
  • Fixed spawning issue where the enemies would spawn off screen due to numerous problems
  • Created the morphing/animation code but still need to put it into the game. However it is successfully done using multi key frames 
  • Added invisibility power up
  • Added decision tree and tree nodes into the game to be used
  • Created 3 types of bosses to be able to use in the game, and 2 new enemy types into the game, including the enemy turrent ship, which used a bit of forward kinematics
  • Modified the missiles, so that they don’t just launch to the left, but also the right and top.

Audio engineer
  • Created an audio.cpp
  • Questionable what audio files have been done

Thursday, 22 November 2012

GDW- Game Developement blog 3


Nov 13-20, 2012
This week, most of our team got down to crunch time, and got to complete majority of their tasks, with a few exceptions due to problems  

Our 2D artist 



Temporary HUD
  • got our sprites and HUD have been properly implemented, and are now usable. The HUD has been moved around so that the Health bar works, and in a nice spot. Another major advancement finished was the basic main menu system, which only has a simple selection system for now.   

For next week 

  • we need is fonts working, so we can properly display values, such as the player’s score. Also he may need to work on some of the GDP art stuff, such as the poster.

Our audio engineer/Producer (PAE)

  •  has done not meet his work quota, due to the fact he cannot solve his SVN update issue. He has tried many resources to solve his, from the internet, to a powerful programming friend. However he still has not used our GDW TA, yet due the fact he wasn’t here on Thrusday and Friday. Despite these complications, he has gotten the Audio from Fmod working, and got some basic sounds.  

For next week, 

  • he has to finish this class soon, so I can implement it into the game, while adding more sounds and possibly a theme for the game.

Our 3D artist

  • just finished his Bach of models, and gave them to me on Friday. Majority of the models loaded in fine, and I asked him to try to create a special texture for the main player using Maya’s MUD box. However MUD box has been giving him issues, such as improper UV maps, to wrong textures, so hes going to look for some help with this issue. 

 For next week

  •   the 3D artist should finalize all the models, and possibly get some nice textures to apply on these models.

Our Level Designer

  •  has done a fair amount of coding this week. He has worked on level transitions, between enemy waves, as well as some of the architecture report this week. Also he has tried to work on textures, however his computer seems to give him the same problem with SF image Loadfromfile function. In the end, despite his best efforts we couldn’t get it working and I(the Lead Programmer) had to implement this task, and textures now work!

For next week 

  •  he has to work on finally creating the scrolling background, and possibly some form of cut scene.

For me (the lead programmer) 

Spawning into the scene

  • has been a week of good advancements, with the enemies. I have modified the enemy class, so it can be compatible with the newly created enemy vector class. With this new class we can easily add, update and destroy each enemy type, as well as create bullets, from this. With this I have 4 classes of enemies, 2 of which run perfectly right now, however 2 which are bugged and need to be fixed. One of which uses Bezier to create bullets which follow a Bezier path to the player, however that is causing some breaking points. However the other 2 enemy types use a form of LERP for movement, which generally run without an issue. Also I’ve added a function which lets the ships decelerate into the sceen when they spawn, like how a spider would rappel down. Finally I began to implement a sort algorithm and decision tree 

For next week

  •  I have to implement some form of project tile which is like a power up of some sort, and finish up 3-4 more enemy/ enemy types. Also I have to finish implementing a decision tree and sort algorithm, or decide if another coder should do it. Finally I have to decide if I should implement morphing with vertices, and start working on the reports

Monday, 19 November 2012

GDW- Game Developement Blog 2


Week Of Nov 6-13, 2012

After an intense week of coding, for the team, and crazy coding projects, we are a step closer to finishing our game. The 3d Modeler has done quite a deal of models, though generic, can be good templates. Bullets, and bombs were done but it was done by me, when another coder was suppose to  do it. However due to some technical issues with our subversion, and other inconvenient events I had to finish this.

  • With the bullets, 3D collision detection was finished at the same time, done after a great deal of researching. With this a temporary bounding box was created, made correctly while having an object rotating in the center. This bounding box was created with the collision detection which used the min and max of the object’s x,y,z .
  • With our game one of the coders had some major issues with loading textures, it came when applying a simple texture to test plane. We narrowed down this problem to the Loadfromfile function, and looked at all possible errors, but nothing could fix this breaking point error. We asked the TA for GDW, Albert and our Intro to graphics teacher, however none could give us a proper answer to fix this error.
  • 2D textures still giving us trouble in the sprite/HUD department with one of the coders. He has asked the GDW TA for help, however he still has yet to fix the error. He has requested to meet up with Houge, however Houge is at MIGS for this week. However once both are properly implemented, I believe it is best if he finishes a menu of some sort for the main menu.
  • We just noticed hougue’s requirements, and plans to add ease in and ease out which could be done by acceleration. I thought of many different ways we could do this, from the player accelerating, to the enemies “easing in” to the scene. However one definite system which has been implemented is the “ease in, ease out” missile system. This launches a missile which will decelerate from its launch, like a rock being catapulted. Then its “thruster systems” will kick in, and it will start to accelerate, easing in at an acceleration rate of 10X2.
  • Finally one of our coders has some issue with the SVN, as he can update, but not commit. This is a troubling issue which we have little knowledge about, however it has some issue with the directories. That answer was found through research on the internet; however it would have been more efficient if we had just asked for help from the GDW TA. This problem is delaying the implementation of the sounds within the game, which is quite annoying.