Skip navigation

Category Archives: Game Engineering

File Link(.exe)


Click Me

Objective


the basic objective of this assignment is to set up a solution for the future class as well as implement a simple asset build pipeline on it. Beside that, I want to create a framework on that not only for making the upcoming assignments a little easier , but also to plan to use for my personal games.

Assets pipeline


The assets pipeline is responsible for processing assets from the row data ( for example a png image that created by a artist ) to the final data that will be used by game. it sometimes just do a simple copy, such as the hlsl files in this assignment , from somewhere in the hard disk to the target place where the final game will be build, and it usually also be a processing contains data converting, data parsing and other complicated operations.

Specific projects ( actually I have two this time ) are possibly required for it to do a better work. The first project called AssetsBuilder is responsible for handling all of the convert( or say processing) functions for each of the file types the game need. In addition, another project , which actually has no code inside, calls the executable file from the first project while building to process all of the assets.

There are several reasons for why we let a new project run the AssetsBuilder instead of executing it out of the building process. the main reason is that it can take the advantages from some features of Visual Studio, modify data tracking for example.

Game


I want the game framework to be flexible to extend and convenient to use. The first thing that came to my mind is that I should hide Windows APIs as possible as I can because it s**ks to me and encapsulating them into some higher level classes will be very helpful for me. I have implemented a Game class for this assignment as the first step, you can open a game window by just calling Game.Run().

In the next step, I will keep improving the game class, also the whole game framework, in order to make my life easier in the future assignments.

Issues:


Issues happened in this assignment. It took me really long to get the solution setting done. The main reason is I lost my patient on reading and missed several key place, which waste me a lot of time to go back to read again. The tasks is relatively simple in this assignment but it also really easy to fail because of uncaring of small details.

time estimation


Reading and searching — 3 h
Setting up solution / Coding / Debugging — 4 h
Bug Fixing — 1 h
Git & uploading — 1 h
Writing blog — 1 h
Total — 10 h