A downloadable game for Windows

Details of Assignment:

  • The main objective of the assignment was to export objects from Maya and use it in our game

 

Running Part of Game:

  • The game has following controls:
    • “W” is used to move object forward(z+)
    • “S” is used to move object backward(z-)
    • “A” is used to move object left(x+)
    • “D” is used to move object right(x-)
    • “E” is used to move object up(y+)
    • “Q” is used to move object down(y-)
    • “SPACE” is used to change object geometry
    • “TAB” is used to switch between objects
    • “UP” is used to move camera forward(z+)
    • “DOWN” is used to move camera backward(z-)
    • “LEFT” is used to move camera left (x-)
    • “RIGHT” is used to move camera right (x+)
    • “PAGE UP” is used to move camera up (y+)
    • “PAGE DOWN” is used to move camera down(y-)


Fig 1. Game Running with 3 Objects

How I reach till this point:

  • First of all, I added the maya exporter plugin in the solution
  • Once I added the plugin project, I added the environment variables so that Maya can locate my plugins.
  • Below is the image of debugging the initialization of plug-in when I loaded it through Maya

Fig 2. Maya Plugin debugging

  • As this plugin is a stand-alone for Maya and not directly used by anything in the project, I had to add zero reference to Maya exporter project.
  • As well as, Maya project exporter is not needed as reference for any of my projects in the engine or game.
  • Maya exporter return multiple values some of which are being used by me like, position and color, whereas some of them are not being used like, normal, tangent etc.
  • As for me, I am exporting every value to my human readable file, due to 2 reasons
    •  One, I am adding color values including position so it was not much issue to add other into the readable file.
    • Second, it helps me to know which things are needed by any vertex in Maya to create an object and on an edge case, if I ever want to recreate object in Maya from my file I could, as I have all the values a vertex needs to create itself in Maya
    • I know one drawback of doing this is, it would slow down the loading of object as it needs to go through every data to get useful data.
  • As now we are creating and using 3D object, we had to do depth rendering, but I already did that in the 5th Assignment and so I had everything setup.
  • I was having fun doing this assignment and so I tried to stress my game by loading a super dense mesh and see how it renders in the game


Fig 3. Using a super dense object

 

  • Once It rendered in game, and I came to know that I need to handle dense objects properly.

Optional Challenge:

  • In this assignment the optional challenge was to add colors to the vertex and not actually creating colors using shaders.
  • I thought this was the easily optional challenge there was, due to few reasons:
    • I already had setup to handle colors in my lua file so the colors that were added in Maya was easily exported to my game.
    • Rest of the part was just changing my vertex format in both game and shaders to handle color from file along with position

Download

Download
MyGame_D3D.zip 409 kB
Download
MyGame_OpenGL.zip 402 kB

Leave a comment

Log in with itch.io to leave a comment.