An open API service indexing awesome lists of open source software.

https://github.com/trumanjchan/cse165_labs

UC Merced CSE165 (Object Oriented Programming) Fall 2020 labs w/ project
https://github.com/trumanjchan/cse165_labs

c-plus-plus object-oriented-programming opengl visual-studio-code

Last synced: about 1 month ago
JSON representation

UC Merced CSE165 (Object Oriented Programming) Fall 2020 labs w/ project

Awesome Lists containing this project

README

          

# Introduction to Object Oriented Programming

## Lab 1
Used GL_POLYGON to write my name out in OpenGL.

![Name](https://github.com/trumanjchan/CSE165_Labs/blob/main/Lab1/freeglutapp/Screenshot.png)

## Lab 2
Player versus Player mode was 90% successful. I should have included the code where after a player wins, no one can move anymore and the only option would be to restart the game using SPACEBAR (SPACEBAR key already resets Player versus Player mode). I made a failed attempt at creating the Player versus AI mode (activate this mode with ENTER key).

![Game](https://github.com/trumanjchan/CSE165_Labs/blob/main/Lab2/freeglutapp/Screenshot.png)

## Lab 3
Two rectangles on the scene. When a rectangle is clicked, it is brought forth and highlighted. If you hold MOUSE1 on the bottom right corner of the selected rectangle, you can resize it!

![Game](https://github.com/trumanjchan/CSE165_Labs/blob/main/Lab3/freeglutapp/Screenshot.png)

## Lab 4
A copy of MS Paint.

![Paint](https://github.com/trumanjchan/CSE165_Labs/blob/main/Lab4/freeglutapp/Screenshot.png)

## Lab 5
***freeglutapp*** is the non-OOP template, and ***glutapp_template*** is the required template for the Lab 5 submission. Choose to run one at a time, in your terminal, by using command *cd Lab5* followed by *cd freeglutapp* OR *cd glutapp_template*. Then do command *make* followed by *./glutapp*.



Features:
* WASD for Movement
* Spacebar to Shoot
* Collision Detection

![Game](https://github.com/trumanjchan/CSE165_Labs/blob/main/Lab5/glutapp_template/Screenshot.png)

## Final Project
The **textures** folder is the given OOP template.



Features:
* WASD for Movement
* Moving Animation
* 3 Autonomous Mobs
* Click to Shoot
* Invisible Barriers
* Collision Detection
* Win or Lose Conditions
* Spacebar to *Restart Game*

![Game](https://github.com/trumanjchan/CSE165_Labs/blob/main/Final_Project/textures/Screenshot.png)