Ufo Abduction

Tantum Nilkaew - CPE 471 - Zoe Wood

Ufo Abduction

This is a simple game in which you control a UFO to go around and abduct objects in the scene.

Project Features

Pitch and yaw camera functionality

  • Adjusted pitch and yaw calculations to adjust the "eye" position instead, while also following the UFO wherever it goes.
  • Blinn-Phong shading

  • Implemented simple Blinn-Phong shading to make materials for objects without specific textures.
  • Texture mapping

  • Implemented simple texture mapping for objects with available textures.
  • Collision detection

  • Uses vertical-only collision detection for the UFO to find objects directly below it. Also uses collision detection to detect objects that have been completely abducted.
  • Skybox

  • Implemented a simple skybox for the scene.

  • If you abduct an object, the object will start rotating randomly (calculated via sin/cosine functions according to time). The object being abducted also shrinks as a function of time until it reaches the UFO (so it looks like it fits inside).


    You can abduct multiple objects at a time. Moving the UFO also moves all objects being abducted with respect to the UFO's position.

    Challenges and Next Steps

    I was unable to implement textures using .mtl files that were given with my downloaded objects. In the future, I would also like to implement proper collision detection for the street environment such that the UFO cannot pass through houses and beyond the skybox. Also implement a function to respawn objects (so you would not need to reset the whole program).
    Overall, I had fun experimenting with the graphics technologies and learned a lot!

    Resources Used

  • Lab 6 (Lighting>
  • Lab 7 (Texture mapping)
  • Lab 8 (Pitch and yaw/skybox)
  • TurboSquid (obj resources)