| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- refactored scene_main to be able to share code between software and
hardware renderers, while still sharing code between terminal software
renderer and graphical software renderer
- made the hardware renderer use scene objects vertices and transforms,
instead of hardcoded ones
- made the hardware renderer use the scene's camera
- made .obj parser create Vector3 instead of Vector4, which didn't made
sense
- removed unnecessary std::
- lots of small changes
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
- cleaned up the computation of the camera's matrix
- changed VertexData to being a struct which transmit data between the "vertex shader" and the "fragment shader"
- started working on keyboard and mouse controls
- added fov (field of view)
- changed quaternion to euler angles conversion, from zyx to zxy
- fixed computations of z coordinates in triangle rendering
- improved naming in the triangle rasterizer
|
| |
|
|
|
| |
std::setlocale also change the parsing of floats with std::stof. It is also more
future proof to use a parser specific to Wavefront .obj files.
|
|
|
- added quaternions and rewrote all rotations to use them
- added transforms to put all object transforms in a single place
- added Wavefront .obj file parser
- removed frame buffer's abstract class
- improved vectors, matrices, triangles, vertices and vertices data by putting all code in header file
- added vector's operations
- changed from NULL to nullptr
- miscellaneous improvements
|