| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
- fixed aspect ratio being the inverse of what it's supposed to be
- use std::chrono::high_resolution_clock instead of system_clock
- convert ellapsed time to float representing seconds
- renamed engine::math::Matrix4::projection to perspective
- use [0,1] instead of [-1,1] for the range of z values, to be aligned
with vulkan
- added engine::math::Matrix4::{look_at,transpose}
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
- made every swapchain image have it's own render finished semaphore
- renamed draw fence to in-flight fence (fence_draw to fences_in_flight)
- made present complete semaphores and in-flight fences "per in-flight
frames", meaning that if we have at most 2 in-flight frames, we use 2
present complete semaphores and 2 in-flight fences
- recreate swapchain when needed
- more refactoring
- added fps counter
|
| | |
|
| |
|
|
| |
see e3a465293b for details about refactoring
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- wait idle on present queue instead of graphics queue
- assume only one bit of VkDebugUtilsMessageSeverityFlagBitsEXT is set;
it seems to be always the case
- rename every _create_info to _ci
- print less debug information, by reducing debug output to warning and
up, and by removing printing of all of devices properties
- make as much blocks and lambdas as possible to contain every variable
to a small scope
- use designator lists everywhere
- rename device to physical_device, and logical_device to device
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
It seems like datarootdir is more appropriate to access a sub-directory
(here, assets). Every -dir variable use this prefix instead of datadir.
|
| |
|
|
|
|
|
|
| |
- fixed missing error code checks
- use physical device features instead of setting everything to false
- prefer a single queue if it can do graphics and presentation, instead
of just picking the first graphics queue and the first presentation
queue
|
| | |
|
| |
|
|
|
| |
Added checks to see if LunarG's Vulkan SDK is present, and check if it's
the correct API version (currently supporting only 1.4.313).
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
|
| |
- In the context of mesh definition, splited
indices into vertex index, normal index and
vertex data index to be able to specify
different normals and vertex data for
different faces using the same vertex
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
- Added renderer to unify frame buffers
- Added FrameBuffer class as a parent for frame buffers' classes
- Improved formatting in Makefile.am
- Added const modifier in Matrix4's methods
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
warnings' flags
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|