About Me

My photo
Orlando, FL, United States
Served 4 years in the army and now I'm a student at Full Sail University where I'm pursuing my dream to make video games.

Wednesday, August 3, 2011

Artificial Intelligence

Today we were given source code to a game called Reversi and our task was to write AI code that could either tie or beat our teachers.... mine is 2/3 so far...just needs a little more tweaking!


Path Finding Algorithms
Basic explanation is to search each node and then find the best path from Point A to Point B

                              

Tuesday, August 2, 2011

Real Time Animation

This month I will be learning several techniques of real time animation... As the month progresses I will post videos and describe how I achieved what is in the video.

Morphing
When articulating goes BADDD!!!

When Articulating goes Welll!!!!








Sunday, July 31, 2011

Cameras

Different Cameras from my Engine Development Class

Polar

Various Cameras including 3rd Person, 3rd Person Follow, Snap to

Unreal Editor

Level we had to make using the Unreal Technology

Previous Games

Infiltrator

2045 (first state machine and event system game I made...only had two weeks to design, program, and bug test, We had no AI classes prior to this class)


This is the first game I ever made using some sort of time based system and physics

Saturday, July 30, 2011

Previous Work

Please Click on the videos link for a full description of the video...

Midterm for OpenGL
     

                                                                    Labs for OpenGL





Gameboy Advance


                                             Animation Editor for the Game we made in SGP

Month off!

I recently took a month off of school for some personal reasons, however I went through some of the older stuff I've done and I made some videos for them. So be sure to check them out in the upcoming post.

Wednesday, June 29, 2011

Side Project

I've also started to work on a side project that is similar to Pocket Tanks but with our own twist of course. Right now I'm currently working on a particle editor for the game, and we just recently decided we were going to make the game in 3D so the video I'm about to post is the current working version of the particle editor, but it's only in 2D right now.

Optimization and Machine Architecture 2

So last month was a pretty technical month. My two day a week class was Optimization and during this class we learned different techniques to make hot spots run faster of course. One the my favorite techniques i pulled from this class was using SIMD or Single Instruction Multiple Data which basically allows us to send multiple adds/subtracts or any other calculation as a single instruction to the processor. This allows your hot spot speed up that many times as it is, so its pretty helpful. We also covered a few graphical optimization techniques, but those are pretty obvious to those who know something or rather about geometries or meshes.

In my other class, MAR2, we actually learned how to program on a GBA device. Our instructor told us could go over Nintendo DS programming but we didn't have enough time within a single month to do so, but they are extremely similar. Anyways, this is our first hands on experience with a device that has no operating system. How do you program on something with no OS you say? Well with some helpful resources, such as an emulator, we access particular memory locations to store certain data like background maps, color palettes, sprites, and much more cool stuff. To manipulate objects, each item has a series of bits that have flags that we can turn on or off if we need to rotate/scale and object or something.

This month, I have Artificial Intelligence and Real Time Animation for my classes. AI is going to be really tough, but RTA so far looks like its going to be an extremely fun class. Videos and Updates will be posted throughout the month.

Friday, May 13, 2011

OpenGL project Cont.

For those who wanted to see my OpenGL project and didnt get to...here is a link to a short clip of it. Sorry it isnt Hi-Res..you can thank YouTube for that. If you would like an executable for it, just shoot me an email jhhood@fullsail.edu and ill make a zip file and send it to you.

Keep in mind that all objects in this scene are hand modeled using C++ and OpenGL


So the final number of lines of code to make ^^ happen is....

MAR1 && ED1

Machine Architecture I : When writing your typical high level programming code, when you compile it, your compiler converts it into assembly code. In this class we are taught how to write in assembly to better understand the process of using the CPU. This class so far has been extremely technical and logical. If you have a problem breaking down a process logically and applying it to simple C++ code or something... just try assembly and see how far you can get. Its tough, but extremely fast, so it pays off.

Engine Development I: In this class we are learning the use of using multiple shaders at once, 3D collision, frustram culling, and much much more. This whole class is devoted to making a core basis of a 3D game. While some of this is challenging, I find it extremely rewarding when you get the results you were shooting for.

To be cont.

Monday, April 4, 2011

Software Engineering and OpenGL

OpenGL - is a graphics API that pretty much mirrors what Direct3D does for DirectX. So this month, is almost like a repeat of DirectX, but instead its completely focused on displaying stuff to the screen. In the class we will be required to write OpenGL shaders and basically know it inside and out. Due at the end of the class is a scene we have to create to demonstrate our knowledge of OpenGL, so with any luck, i will try and upload a video to YouTube when im completed with it, so i can show you guys what i can do.

In Software Engineering (SWE) - this class is mainly geared towards debugging. however the very first lab, we were required to write a memory manager using a doubly linked list and basically allocating a giant contiguous chunk of memory up front and passing out bits and pieces of it, to who needed it. In order to do this we had to override the new function and make our own. After this was all said and done, this could have made our game last month, run about 1,000 times faster, only because everything would have been contiguous and wouldnt take any time at all to access, or it wouldnt have taken time to create. The class we just finished, we had to write a .pak extractor. What is .pak? Well when games hit the shelf, they typically dont want the consumers having access to all of the games assets, so they put them inside of a encrypted file chuck...kinda like a zip file. So while in this file, in their program, they know exactly how to access where in memory the file they need is at.

SGP II

Hey guys, sorry I never got around to posting for month of March. Basically all i was in, was Alpha and Beta phases for our game that we started in SGP1. The last week we went Gold and had an expo where everyone could come in and play. We had a great turn out, when over 100 people came in to see ours and the other teams game. If you would like to play the game, I will post a link to it, so be sure to scroll down. But just remember, a game is never finished and we are aware of many of the current bugs that are present in the game.

*** Notes before installing ***

1) please update to the latest version of DirectX (June 2010)
2) the game can be played with just the following types of input
       keyboard, mouse and keyboard, and X-box controller.
3) If you want to change the HUD in the game, make sure you have the latest .Net version installed
     otherwise, windows will do funky things with the external program that we made.

other than those things, please enjoy our game, and make sure to check the credits to see who did what.

As far as I go individually, I put together all the weapons, attachments, animations, and sounds. There was a lot of hard work and dedication put into this game over the last 2 months, its just nice to be able to share it now :)

**** Download Link ****
http://richardasmall.org/wp-content/uploads/personal/Infiltrator.exe

Friday, February 25, 2011

OPS and SGP1 part II

So we just wrapped up this month at school and I have to say, after completing this month, i feel completely relieved. OPS was kicking my ass...lectures were boring, labs were difficult, and the final was pretty hard/ easy. Usually every final, has some sort of curve ball from our programming foundation classes back in the beginning of our education.  Our course director though he would through bit wise operators at us. Which is easy cuz i know that stuff. But it was twisted into threading and we basically had a text program where we had two gas pumps and ten cars. We had to utilize both pumps at the same time while making sure only one car was at a pump at a time. Not to difficult until the threading comes into play. Each time you add a thread to a process, you basically add another brain to calculating data. So when multiple threads are parsing through the same data, you have to watch out, because they dont care about each other, and will change the data without telling each other. Thats why threading is a pain in the ass...having to logically come up with when to lock an object from everyone else, and when to unlock it. If an object is locked, only the thread working on that data can change it.


Well enough with all the technical stuff....well i guess its all technical, but anyways on to SGP1. After a hickup in the beginning, relearning C# (C sharp) and I finally got around to completing my animation editor. In 2D games, animations are done by sprite sheets which is basically nothing more than a flip book animation. You cycle through them fast enough and the change in the image makes the character seem like they are moving. This was my job in my team, making animations for character in our game. Our whole team completed 99% of all our tasks and we pretty much aced the class. Being able to make actual games to extremely rewarding. Now we go on to SGP2 where we continue to make our game. We are in our second Sprint, which is basically a two week period of getting particular parts of the game accomplished. My primary objectives for this sprint is to get different animations for different actions implemented and sound effects to go with the actions. Ill let you guys know how that goes.

Tuesday, February 8, 2011

Operating Systems && Structure of Game Production 1

So starting off with Operating Systems or OPS...not really much to say about this class other than the fact that it is all about using the wrappers that the course director has given and use them have the OS start threads. So far the lectures are completely useless to what the labs cover. During lecture the course director rambles on about how hard drives work but never does he go over the code and how it works during lecture.

As far Structure of Game Production 1 or SGP1 goes, we were given the choice to pitch random games, and the whole class was divide into 2 teams to make a fully playable games. The class size was 9, so we broke up into 2 teams and we received the 5th person...That basically means that we have to have a wicked kick ass game. Along with having a kick ass game, the whole entire first 2 weeks devoted to this, has been spent documenting the game. That consists of documenting the design of the game ( how things are going to look and feel) and then the architecture of the game(how things mesh together)

 There is more to come on SGP but class has started...

Tuesday, January 25, 2011

ROG && SGD

I think this is supposed to be like month 7 or 8 in the program but ill just start now.  This month i had Rules of the Game (ROG) and Structure of Game Development (SGD)

ROG -
 In ROG we were reintroduced  the design aspect of games. We learned about the Game Maker and Unity programs where we designed and created a prototype game using Game Maker. After completing a basic prototype we had several people test our game to improve quality and fun of our game.

SGD -
In SGD we really started to implement the use of states which are basically...well the state of which something is in... ie. resting state, moving state...that sort of stuff but with games...ie Main Menu, Game Play, Options... After the fourth lecture we had to start creating our own 2D game where the only requirements were that it had to have a player, multiple enemies, and projectiles. I ended up creating a game based off of 1942, an old arcade top down shooter. So the details of making my game... i will try to sum it up as much as possible, but i made a series of states for my title screen, main menu, options, how to play, high scores, game play and pause. Other than the wrappers the course directer gave us for the object factory which creates objects (kind of like a car factory), an object manager (kind of like a car dealership) and a bunch of wrappers to handle displaying a single image and playing sounds. What i had to create were the player, enemies, bullets, explosion, texture animations, font among many others. Look, for those that are interested, the following are some links...go to them if you want to play my game...

Latest DirectX:
http://www.microsoft.com/downloads/en/details.aspx?familyid=0CEF8180-E94A-4F56-B157-5AB8109CB4F5&displaylang=en

2045 Release (My Game):
http://www.mediafire.com/?ec5qqxym8nk809l

So please play my game and tell me what you think! This was the project i turned in after 10 days.

Getting Started

Hey everyone,

I'm new to this thing, but starting now I'm going to start recording my experiences while attending college. I'm not really sure what to put in these things so I'm just going to start talking. Please add any comments you wish too. I would like to get your opinion on stuff I'm going through.