<feed xmlns='http://www.w3.org/2005/Atom'>
<title>engine.git/src/o3d, branch vulkan</title>
<subtitle>Small graphics engine.</subtitle>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/'/>
<entry>
<title>starting to merge vulkan with the engine</title>
<updated>2025-12-29T20:21:09+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2025-12-29T20:21:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=8ab4780f134c33a9e11ac0fe0bd866e17d3ee650'/>
<id>8ab4780f134c33a9e11ac0fe0bd866e17d3ee650</id>
<content type='text'>
- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>added uniform buffers, small tweaks</title>
<updated>2025-12-24T00:38:45+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2025-12-24T00:38:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=00370c21f107ff2a320fbdef170e24a8b5cda92a'/>
<id>00370c21f107ff2a320fbdef170e24a8b5cda92a</id>
<content type='text'>
- 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}
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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}
</pre>
</div>
</content>
</entry>
<entry>
<title>renamed .h to .hpp</title>
<updated>2025-12-10T19:40:42+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2025-12-10T19:40:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=761604f9e4815e8f4355637ebb46052314cbed86'/>
<id>761604f9e4815e8f4355637ebb46052314cbed86</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>various improvements</title>
<updated>2025-01-02T12:25:14+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2025-01-02T12:25:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=26b4b82a7be2c029491f3009b66b3cbf8db5d93c'/>
<id>26b4b82a7be2c029491f3009b66b3cbf8db5d93c</id>
<content type='text'>
- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>various improvements</title>
<updated>2024-12-31T02:40:14+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2024-12-31T02:40:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=cc6fb8c33637566a7b116d46440e6063f016deea'/>
<id>cc6fb8c33637566a7b116d46440e6063f016deea</id>
<content type='text'>
- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>improved mesh definition</title>
<updated>2023-12-11T11:42:46+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2023-12-11T11:42:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=6b765a85cf81bf4b7162e4c9280dd4054581c611'/>
<id>6b765a85cf81bf4b7162e4c9280dd4054581c611</id>
<content type='text'>
- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>renamed tri{_deriv,}_vertex.{h,cpp} to tri{_deriv,}.{h,cpp}</title>
<updated>2023-12-11T11:37:19+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2023-12-11T11:37:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=ff2c784d4c4100f0301628e8a52a6910d776d067'/>
<id>ff2c784d4c4100f0301628e8a52a6910d776d067</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fixed perspective, added plane</title>
<updated>2023-12-09T07:57:38+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2023-12-09T07:57:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=824aa5562864ca90ea903e2fa7d99459bbdf3a0b'/>
<id>824aa5562864ca90ea903e2fa7d99459bbdf3a0b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fixed perspective calculations</title>
<updated>2023-12-09T05:33:39+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2023-12-09T05:33:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=bf39fef7eed69e6d5ecfa272607cbf0fcc53b9a6'/>
<id>bf39fef7eed69e6d5ecfa272607cbf0fcc53b9a6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>added renderer, improved various things</title>
<updated>2023-12-05T09:42:35+00:00</updated>
<author>
<name>vimene</name>
<email>vincent.menegaux@gmail.com</email>
</author>
<published>2023-12-05T09:42:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vimene.fr/engine.git/commit/?id=9b70ca7b3a1b7bfd3bf434d8b84bde42f5572ca0'/>
<id>9b70ca7b3a1b7bfd3bf434d8b84bde42f5572ca0</id>
<content type='text'>
- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- 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
</pre>
</div>
</content>
</entry>
</feed>
