Git Product home page Git Product logo

game-engine-project's Introduction

Game Engine

University of Pennsylvania, CIS 497: Senior Design

Developer Hannah Built


About

This is a small version of a game engine with a short cat game built using it.

  • FINAL PROJECT VIDEO

Other repos I used / built in this development process:

Last Semester:

  • Game-Engine-Base
    • the project I built and refactored over and over to get a rewrite of the shaderprogram setup.

This Semester:

  • Research
    • a research repo I used for storing random game engine info and links that were important or helpful so that I didnt need to continue maintaining a lot of browsers tabs open, and it has some of my help log commentary and notes to help myself keep track of why I used certain implementations over others.
  • PreBase
    • a game engine implementation that i started with this semester that became too convoluted for me to refactor. ended up copying over some of these aspects over to this readme's engine repo but most of this ended up getting scrapped
  • Engine
    • this repo - the actual engine implementation with a game built off it

Resources Thy Built:

  • Cat
  • Character
  • Staff
  • Building

^^ had issues with this due to how the texture was exported so loaded in some of them with / without the texture. The demoed game ultimately only has the Character in it for playing purposes.

Note: the exe files dont run for some reason because of a .dll connection issue with irrklang. It has to do with how I set up my project in terms of file locations where some of them should have been in the build folder instead of general resources etc. (which means a download and direct build from github doesnt work at the moment - resolving this when i might work on this project again at a later date)


Resources

Online Resources:

  • learnopengl.com
    • used for initial project setup and some tutorials for possible frameworks to use
  • assimp
    • general object and aspect loading
  • SOIL
    • tried using this originally for texture loading, had linking issues, then realized it doesnt work with the newer version of glfw (it cant find context)
  • stbimage
    • another texture loading software I tried - worked for general aspects but not for every inputted
  • collada
    • main file setup while i was trying to figure out why the texture part wasn't working. also switched to this to aid project setup while trying to work on rigging.
  • opengl-tutorial
    • extremely helpful for texture and audio loading (especially in terms of possible libraries and how to get text overlay to work properly)
  • opengl 4.2
    • opengl version for this project
  • glfw
    • the window support library that works on mac and windows, used this site mostly for debugging controller support and interaction. originally had it in the window class itself but ended up refactoring to actually be part of the windowmaintainter (scene) in this case.
  • irrklang
    • used for audio - also followed their tutorial for how to get pausing and playing to work to allow for switching between the 2d and 3d audio without the audio still playing (because that became a major issue)

Books:

  • Game Engine Architecture, Jason Gregory, 3ed
  • Game Programming Patterns, Robet Nystrom
  • The Ultimate Guide to Video Game Writing and Design, Dille & Platten
  • Video Game Storytelling, Evan Skolnick

game-engine-project's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

icodein

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.