[Issue] Claimed modern OpenGL port task
ModernGL test code added to check if Windows works
dern OpenGL port
Game class:
Entry point of the game, responsible for loading up the window, creating
the world, and contains the main game loop with FPS counter and input.
Window class:
Contains functions for creating an SDL window and GL context, setting
window size, initializing GLEW, and closing the window.
World class:
Contains the Scene and Renderer and is responsible for updating game
objects.
Input class:
Contains the array of keys that are pressed or unpressed and static
accessors to that array, allowing the game to access input anywhere.
Scene class:
Contains lists of game objects, these objects are loaded through the
MapLoader class
Renderer class:
Contains the logic to render a Scene of gameobjects properly, using the
shaders loaded in the Resource class.
Camera class:
Contains all properties of a camera, setters for these properties and a
perspective matrix that the Renderer needs.
Entity class:
Base class for all game objects, contains position, rotation and scale,
and a potential mesh.
Mesh class:
Contains a handle to the buffer of a mesh on the GPU and the number of
faces the object consists of, this is used in Renderer.
Light class:
Contains the properties of a light such as position, color and intensity.
Resource class: (Legacy name, needs to be changed)
Contains static functions to load shaders from disk.
MeshLoader class:
Contains static functions to load meshes from disk and stores them in a
cache.
MapLoader class:
Contains static functions to load maps from disk and store them in a Scene
class.
Player class:
Extension of the entity class, for a velocity vector. (This will later be
separated, and the player class must be removed)
Matrix4f class:
Contains functions to do 4x4-float matrix calculations
Vector3f class:
Contains functions to do 3-float vector calculations
Modern OpenGL port
Game class:
Entry point of the game, responsible for loading up the window, creating
the world, and contains the main game loop with FPS counter and input.
Window class:
Contains functions for creating an SDL window and GL context, setting
window size, initializing GLEW, and closing the window.
World class:
Contains the Scene and Renderer and is responsible for updating game
objects.
Input class:
Contains the array of keys that are pressed or unpressed and static
accessors to that array, allowing the game to access input anywhere.
Scene class:
Contains lists of game objects, these objects are loaded through the
MapLoader class
Renderer class:
Contains the logic to render a Scene of gameobjects properly, using the
shaders loaded in the Resource class.
Camera class:
Contains all properties of a camera, setters for these properties and a
perspective matrix that the Renderer needs.
Entity class:
Base class for all game objects, contains position, rotation and scale,
and a potential mesh.
Mesh class:
Contains a handle to the buffer of a mesh on the GPU and the number of
faces the object consists of, this is used in Renderer.
Light class:
Contains the properties of a light such as position, color and intensity.
Resource class: (Legacy name, needs to be changed)
Contains static functions to load shaders from disk.
MeshLoader class:
Contains static functions to load meshes from disk and stores them in a
cache.
MapLoader class:
Contains static functions to load maps from disk and store them in a Scene
class.
Player class:
Extension of the entity class, for a velocity vector. (This will later be
separated, and the player class must be removed)
Matrix4f class:
Contains functions to do 4x4-float matrix calculations
Vector3f class:
Contains functions to do 3-float vector calculations
Modern OpenGL port
Game class:
Entry point of the game, responsible for loading up the window, creating
the world, and contains the main game loop with FPS counter and input.
Window class:
Contains functions for creating an SDL window and GL context, setting
window size, initializing GLEW, and closing the window.
World class:
Contains the Scene and Renderer and is responsible for updating game
objects.
Input class:
Contains the array of keys that are pressed or unpressed and static
accessors to that array, allowing the game to access input anywhere.
Scene class:
Contains lists of game objects, these objects are loaded through the
MapLoader class
Renderer class:
Contains the logic to render a Scene of gameobjects properly, using the
shaders loaded in the Resource class.
Camera class:
Contains all properties of a camera, setters for these properties and a
perspective matrix that the Renderer needs.
Entity class:
Base class for all game objects, contains position, rotation and scale,
and a potential mesh.
Mesh class:
Contains a handle to the buffer of a mesh on the GPU and the number of
faces the object consists of, this is used in Renderer.
Light class:
Contains the properties of a light such as position, color and intensity.
Resource class: (Legacy name, needs to be changed)
Contains static functions to load shaders from disk.
MeshLoader class:
Contains static functions to load meshes from disk and stores them in a
cache.
MapLoader class:
Contains static functions to load maps from disk and store them in a Scene
class.
Player class:
Extension of the entity class, for a velocity vector. (This will later be
separated, and the player class must be removed)
Matrix4f class:
Contains functions to do 4x4-float matrix calculations
Vector3f class:
Contains functions to do 3-float vector calculations
Remade the cube object, added walls, added support for light color and texture tiling
Boxes tile according to their scale
Fragment shader improved, collision added
Offending comment removed.
[feature] Compiles on GNU/Linux.
[feature] Config files and environment.
[fix] Dependency on boost removed.
Portals:
Most orientations show the proper portal image
Portal interaction temporarily disabled
Window:
Supports fullscreen, enabled in config files
Sets stencil buffer size to 8 bits
Camera:
Camera temporarily takes aspect from window, windows needs an event handler to notify camera of changes
Light:
Lights extended with constant/linear/quadratic attenuations
Merge ConfigFileParser.cpp
[fix] Start with clear stringBuffer on the next line.
[merge]
[fix] cmakelist cleanup.
[issue] Closed game-3. Added issues from master.
[feature] Doxygen files in subdirectory.
[feature] Code check tool added.