Warning: Use of undefined constant image_setup - assumed 'image_setup' (this will throw an Error in a future version of PHP) in /home/westleyw/public_html/wp-content/themes/autofocus/functions.php on line 576

Warning: Use of undefined constant image_setup - assumed 'image_setup' (this will throw an Error in a future version of PHP) in /home/westleyw/public_html/wp-content/themes/autofocus/functions.php on line 577

Warning: Declaration of Jetpack_IXR_Client::query() should be compatible with IXR_Client::query(...$args) in /home/westleyw/public_html/wp-content/plugins/jetpack/class.jetpack-ixr-client.php on line 91

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/westleyw/public_html/wp-content/themes/autofocus/functions.php:576) in /home/westleyw/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1794
{"id":591,"date":"2013-07-07T15:05:52","date_gmt":"2013-07-07T21:05:52","guid":{"rendered":"http:\/\/www.westleywood.com\/?p=591"},"modified":"2013-07-07T15:32:40","modified_gmt":"2013-07-07T21:32:40","slug":"senior-project-part-1","status":"publish","type":"post","link":"http:\/\/www.westleywood.com\/2013\/07\/senior-project-part-1\/","title":{"rendered":"Senior Project – Part 1"},"content":{"rendered":"

Our Senior Project is divided into two parts. \u00a0Each part having a duration of eight weeks. \u00a0We have just completed the first part of our Senior Project and I am fairly happy with the progress we’ve made. \u00a0We got almost all of the basic core elements into the game and really only have Game Play features left.<\/p>\n

For this first part of Senior Project I was tasked with implementing my HDR shader into the new engine we built for our Engine Class and creating the Level Designer tool for the game. \u00a0I got the HDR shader implemented within the first week and was able to spend the rest of the time focusing on the Level Designer.<\/p>\n

The Level Designer consisted of two parts, the terrain editor and the object placement tool. \u00a0The Terrain Editor consisted of the terrain morphing and terrain texture painting. \u00a0The morphing of the terrain mesh took about a week and started with basic button presses that switched the state\/type of brush that the mouse would use. \u00a0It took about another week to get the exporting and importing of the mesh to a custom “.obj” file.<\/p>\n

Then I started on the next part of the Level Designer, the terrain texture painting. \u00a0I started with creating an empty texture using DirectX 9 that would act as a blend texture mapped over the terrain. \u00a0It took me about a week to get the terrain texture painting tool, texture loader, and texture saver to work well.<\/p>\n

The object placement tool was a fairly simple part of the project. \u00a0The only challenge was switching all of the object movement to be relative to the view space. \u00a0So that when you selected an object and moved the mouse to the right, it would move towards the right of the screen and not just down the x-axis. \u00a0I used TinyXML for the saving and loading of the objects which only took a day to implement into the current system.<\/p>\n

Finally, once all of the Level Designer tools were done. \u00a0I helped Jonathan in getting the Havok Physics engine to read our terrain mesh so that we will have realistic physics against the terrain. \u00a0Once Ray was finished with the UI API he created, I used his API to create the onscreen controls for the Level Designer and the menu for the game. \u00a0The rest of the time I spent helping others with their part of the project or fixing any bugs that popped up.<\/p>\n