Level editingLevel editing has been a course I have been looking forward to for a while. I am a big FPS fan myself and whenever I play matches the level structure and flow has been something that has gripped my interest for years.
So I was thrilled to find out we were going to design a level for an fps FFA deathmatch. Getting to design the block out has obviously been the best part of it so far. Thinking about how the player flows through the environment. The use of high ground-low ground and utilizing the different mechanics like wall rides and jump pads to create interesting traversal objects is a joy to work on. The second part of the course is decorating and lighting the level which is fun but i prefer the design part a bit more. My level is called "Hydrolic" it is a sci-fi hydrolic powerplanned that has been heavely damaged and abandoned after a fight. I know it is box shaped and this is not ideal for the flow of a level I was actually really happy with the flow and got some pretty good feedback on it. I had some ideas to make the shape more interesting while still retaining the good flow but I simply didn't have the time since the decoration and material part of the course was starting and I needed to go on with that. I might try to make my ideas reality anyway if I find time for it during the holiday.
0 Comments
Graphics ProgrammingArguably the most important/scary/exiting new course in second year has been graphics programming. But even though the subject matter is hard and goes really fast and sometimes got me doubting my life decisions. I ultimately enjoy this course to the fullest. It is incredibly fascinating to learn how in the world computers are able to render out 3D imagery so fast and I can't wait for the next class. We started from scratch learning the rendering pipeline and build up our knowledge from there using among other things the book "3D Game Programming with DirectX 11" by Frank D.Luna. This thing basically turned in to our bible of graphics programming and all the theory can be found in there. But the most important part is of course the practice, being able to apply that theory. We use The DirectX API (Microsoft) and each week we learn how to render out more and more exiting things like for example: Shapes Textured Meshes Light Saber Assembly Robot I have written a simple AI in a simulated assembly environment. The environment contained a small level with objects, a robot to navigate around in said level and a simulated computer with 256 bytes of memory and no registers. With these limited resources I wrote a behavior for my robot using assembly code and some commands the environment provided for specific actions. In the end the robot has one final flaw that I haven't been able to deal with and that seems to be a bug in the framework. To explain: I found out when I was comparing the type of the object the robot scanned to the top priority type: assembly code: ;battery PUSH8 type ;push int variable "type" to the stack PUSH8 #8 ;push an integer 8 to the stack if_eq8 ;compare both jnz cmpbatterypriority ;if the comparisant checks out jump to the function "cmpbatterypriority" In this example the type was equal to #2 and while 0x00 was pushed to the stack to indicate the comparison had failed, the program still jumped to "cmpbatterypriority" and never removed the the 0x00 from the stack not only causing my robot to not behave like it should but also stack overflow since the 0x00 is not popped off the stack. This is my robot code in a text file (I called it Rigel, I like naming things after stars) ![]()
HyperX cloud alpha 3rd Semester is upon me and with it came more 3D. This time other than low poly basics we learned high poly modeling using turbo smooth, normal map baking and then enriching and applying it to a low poly object. Followed by importing and presenting (mostly lighting and FOV) it in a game engine.
For the mid term milestone assignment I decided to make the HyperX cloud alpha headset. You can check out the high and low poly model on sketchfab (button below). Some of the assets: |
AuthorFlorian Gaeremynck Archive
June 2019
Categories
All
|