Skip to content

Node Editor Widget#190

Open
The3dVehicleguy wants to merge 12 commits intoPanosK92:masterfrom
The3dVehicleguy:shader-node-editor
Open

Node Editor Widget#190
The3dVehicleguy wants to merge 12 commits intoPanosK92:masterfrom
The3dVehicleguy:shader-node-editor

Conversation

@The3dVehicleguy
Copy link

Spartan Node Editor System

This pull request introduces a new grid rendering and input handling system for node-based UI widgets in the editor, along with supporting math utilities for Bezier curves and vector operations. It also includes minor type improvements and integrates the new node widget into the editor's main interface.

Node Widget Integration & Grid System

  • Added NodeWidget to the editor's widget stack, enabling node-based editing capabilities in the UI (Editor.cpp).
  • Implemented a new Grid class (ImGui_ViewGrid.h, ImGui_ViewGrid.cpp) that handles rendering a customizable grid background, smooth zooming, panning, and coordinate transforms for node-based interfaces. [1] [2]

Math Utilities for Node UI

  • Added imgui_extra_math.h and imgui_bezier_math.h for advanced vector, rectangle, and Bezier curve math, supporting features like curve sampling, subdivision, intersection, and projection—essential for node graph connections and layout. [1] [2]

Type Safety Improvements

  • Updated DragPayloadType and ButtonPress enums in ImGui_Extension.h to use uint8_t for better type safety and memory efficiency. [1] [2]

Editor UI Enhancement

  • Included the new NodeWidget header in the editor source to support its instantiation and usage.

Known Bugs:

  • Right click context menu will not close by left click or clicking outside the Node Editor widget context. Use Escape for now.
  • Node's don't contain assert's to verify correct input and output types properly.

Copilot AI review requested due to automatic review settings December 2, 2025 02:51
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a comprehensive node-based editing system for the Spartan engine, enabling visual shader/material editing through a graph-based UI. The implementation includes a complete node system architecture with rendering, interaction handling, and mathematical utilities for Bezier curve drawing.

Key Changes:

  • Implemented NodeWidget with grid-based canvas supporting pan, zoom, and node manipulation
  • Created node system architecture with NodeBase, Pin, Link, and template-based node creation
  • Added Bezier curve math utilities and ImGui layout helpers for smooth connection rendering
  • Integrated node editor into the main editor UI with toolbar icon support

Reviewed changes

Copilot reviewed 46 out of 49 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
ResourceCache.h/cpp Added icon types (Flow, Circle, Square, Node) for node UI elements
NodeWidget.h/cpp Main widget implementing node editor with grid, interaction, and context menu
NodeSystem/ Core node architecture: NodeBase, Pin, Link, NodeBuilder, NodeLibrary, Templates
NodeSystem/Nodes/ Concrete node implementations (Add, Subtract, Multiply, Divide, Branch, LessThan)
ImGui/ImGui_ViewGrid.h/cpp Grid rendering system with pan/zoom support
ImGui/Nodes/imgui_bezier_math.* Bezier curve math for smooth connection curves
ImGui/Nodes/imgui_extra_math.* Vector and rectangle math utilities
ImGui/ImGui_Extension.h Type safety improvements using uint8_t for enums
Editor.cpp, MenuBar.cpp Integration of NodeWidget into editor UI

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

{
float a = GetInputValue<float>(0);
float b = GetInputValue<float>(1);
float result = (b != 0.0f) ? (a / b) : 0.0f; // Prevent division by zero
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Division by zero is handled but returns 0.0f, which may not be the desired behavior in all contexts. Consider whether NaN, infinity, or an error flag would be more appropriate, or document why 0.0f is the correct default for this use case.

Copilot uses AI. Check for mistakes.
Comment on lines +518 to +519
constexpr float header_height = 30.0f;
constexpr float pin_spacing = 24.0f;
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Magic numbers header_height = 30.0f and pin_spacing = 24.0f are duplicated across multiple functions (DrawNode, DrawLinks, FindPinAt). These should be class constants to ensure consistency and ease of maintenance.

Copilot uses AI. Check for mistakes.
Comment on lines +559 to +585
Link* NodeWidget::FindLinkNear(const ImVec2& pos, float max_distance)
{
// Simplified link hit detection - check distance to link midpoint
for (const auto& link : m_node_builder->GetLinks())
{
const Pin* start_pin = m_node_builder->FindPin(link->GetStartPinID());
const Pin* end_pin = m_node_builder->FindPin(link->GetEndPinID());

if (!start_pin || !end_pin)
continue;

const NodeBase* start_node = start_pin->GetNode();
const NodeBase* end_node = end_pin->GetNode();

if (!start_node || !end_node)
continue;

const ImVec2 start_screen_pos = m_grid.GridToScreen(start_node->GetPosition());
const ImVec2 end_screen_pos = m_grid.GridToScreen(end_node->GetPosition());

ImVec2 midpoint = ImVec2(
(start_screen_pos.x + end_screen_pos.x) * 0.5f,
(start_screen_pos.y + end_screen_pos.y) * 0.5f
);

if (float dist = sqrtf(powf(pos.x - midpoint.x, 2) + powf(pos.y - midpoint.y, 2)); dist <= max_distance)
return link.get();
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The link hit detection is overly simplistic - it only checks the midpoint distance. This will make it difficult to select links that are not near their midpoint. Consider using proper distance-to-curve calculation or the existing Bezier projection utilities (ImProjectOnCubicBezier).

Copilot uses AI. Check for mistakes.
Comment on lines +179 to +189
// Update pin linked states
Pin* start_pin = FindPin((*it)->GetStartPinID());
Pin* end_pin = FindPin((*it)->GetEndPinID());

if (start_pin && !IsPinLinked(start_pin->GetID()))
start_pin->SetLinked(false);

if (end_pin && !IsPinLinked(end_pin->GetID()))
end_pin->SetLinked(false);

m_links.erase(it);
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The condition checks if the link state needs updating (!IsPinLinked) before setting SetLinked(false), but this logic is flawed. After deleting a link, the pin should be marked as not linked. However, IsPinLinked checks if there are ANY other links still connected to this pin. If there are, the pin should remain linked. The current logic correctly handles this, but it should be done for both pins before erasing the link from the list to avoid checking a deleted link.

Suggested change
// Update pin linked states
Pin* start_pin = FindPin((*it)->GetStartPinID());
Pin* end_pin = FindPin((*it)->GetEndPinID());
if (start_pin && !IsPinLinked(start_pin->GetID()))
start_pin->SetLinked(false);
if (end_pin && !IsPinLinked(end_pin->GetID()))
end_pin->SetLinked(false);
m_links.erase(it);
Pin* start_pin = FindPin((*it)->GetStartPinID());
Pin* end_pin = FindPin((*it)->GetEndPinID());
// Erase the link first so IsPinLinked reflects the correct state
m_links.erase(it);
if (start_pin && !IsPinLinked(start_pin->GetID()))
start_pin->SetLinked(false);
if (end_pin && !IsPinLinked(end_pin->GetID()))
end_pin->SetLinked(false);

Copilot uses AI. Check for mistakes.
Comment on lines 82 to 86
Max,
Flow,
Circle,
Square,
Node
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The IconType enum is being extended after the Max entry. New enum values should be added before Max to maintain its role as a sentinel value for iteration and validation purposes. Adding entries after Max breaks any code that relies on Max to determine the enum range.

Copilot uses AI. Check for mistakes.
Comment on lines +378 to +380
if (ImGui::IsMouseClicked(ImGuiMouseButton_Left) && m_hovered_pin && !m_link_start_pin)
{
m_link_start_pin = const_cast<Pin*>(m_hovered_pin);
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using const_cast to strip const-ness from m_hovered_pin is dangerous and indicates a design issue. If m_hovered_pin is const qualified, it should remain const. Consider either:

  1. Storing Pin* (non-const) if mutation is needed
  2. Separating the mutable link creation state from the hover state
  3. Using a separate variable for link creation that is properly typed as Pin*

Copilot uses AI. Check for mistakes.
{
m_show_create_menu = true;
m_create_menu_pos = grid_mouse_pos;
m_create_from_pin = const_cast<Pin*>(m_hovered_pin);
Copy link

Copilot AI Dec 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another use of const_cast to strip const-ness. This pattern appears multiple times in the code and represents a design flaw. The member variable m_hovered_pin should be Pin* instead of const Pin* if you need to modify it.

Copilot uses AI. Check for mistakes.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@The3dVehicleguy The3dVehicleguy changed the title Shader Node editor Node Editor Widget Dec 5, 2025
Updated .gitignore to exclude build_scripts/__pycache__ directory and deleted file_utilities.cpython-314.pyc to keep the repository clean of compiled Python files.
- Added Doxygen-style documentation to NodeBase and its methods, including template helpers and the PinValue type.
- Add Doxygen-style documentation to all major classes and enums
- Moved function `GetInstance` in `NodeLibrary.h` to the source file.
- Made the class constructor for `NodeProperties` explicit.
- Minor formatting and code style improvements were also made.
- Replaced `ImRec NodeBase::GetRect()` return with a braced based initilizer (a better C++ practice)
- Enforce explicit copy/move semantics for core types
- Add enum-to-string helper functions for debugging/UI
- Refactor NodeWidget for clarity and better initialization
- Mark APIs as [[nodiscard]] and improve const-correctness
- Clean up code, add TODOs, and ensure consistency throughout
@PanosK92
Copy link
Owner

appreciate the work here, the ImGui node editor implementation looks really solid.

However, I assume this was built with the intention of allowing artists to create custom shaders (similar to Unreal/Unity). There is a fundamental architectural mismatch here, as Spartan Engine does not support dynamic shader generation.

Uber Shader vs. Shader Generation Spartan Engine utilizes a strict Uber Shader architecture (similar to id Tech). We rely on a fixed, pre-compiled set of Pipeline State Objects (currently ~29 PSOs).

How Spartan works: Materials define Data (uniforms, textures, flags) that feed into a fixed shader pipeline. We do not recompile shaders per material.

How Node Editors work: They generate unique HLSL/GLSL Code per material. This requires runtime compilation and results in a unique PSO for every single material graph, which defeats our optimization strategy.

Moving forward because the node editor implementation itself is high quality, I am going to keep this PR open. I want to evaluate if we can repurpose this UI for a different system that relies on logic flow rather than shader compilation (e.g., Sound cues, AI Behavior Trees, or Post-Process chains).

Thanks

@The3dVehicleguy
Copy link
Author

appreciate the work here, the ImGui node editor implementation looks really solid.

However, I assume this was built with the intention of allowing artists to create custom shaders (similar to Unreal/Unity). There is a fundamental architectural mismatch here, as Spartan Engine does not support dynamic shader generation.

Uber Shader vs. Shader Generation Spartan Engine utilizes a strict Uber Shader architecture (similar to id Tech). We rely on a fixed, pre-compiled set of Pipeline State Objects (currently ~29 PSOs).

How Spartan works: Materials define Data (uniforms, textures, flags) that feed into a fixed shader pipeline. We do not recompile shaders per material.

How Node Editors work: They generate unique HLSL/GLSL Code per material. This requires runtime compilation and results in a unique PSO for every single material graph, which defeats our optimization strategy.

Moving forward because the node editor implementation itself is high quality, I am going to keep this PR open. I want to evaluate if we can repurpose this UI for a different system that relies on logic flow rather than shader compilation (e.g., Sound cues, AI Behavior Trees, or Post-Process chains).

Thanks

Thanks for reviewing! @PanosK92

Yes the original idea was to create a node editor to replace the existing text based shader editor already present in Spartan however over time I realized it would just be better to have a general node editor GUI base that can be utilized for different things and not just shaders. It was Once I began writing the node editor that by making it able to create and edit the shaders did I realize it would require an extensive refactor of the pipeline state objects for the Spartan Vulkan and DirectX 12 abstraction. So rather then do that, I decided to implement a basic node editor GUI that can be used for procedural asset creation, general asset management, scripting, AI interactions, in game events, etc.

I kept the GUI style the same with how Spartan looks and functions. It has the ability to add animation and custom nodes through a node template setup.

Spartan-Node-Editor

One part I left open for future development is the creation of node libraries which contain a preset of nodes and their functions which are to be loaded in runtime. This would be a minor refactor to swap the nodes from the Editor to the Spartan runtime so its not conflicting with user created nodes.

The node editor is a "Widget" like all the other ImGui widgets in Spartan with the difference being the Node Editor will pull the mouse position and selection data in a viewport that overrides the scene viewport.

Tasks/ items that can be done to further enhance the Node Editor:

  • Create a new "Right-Click Action Panel / Context Window"
  • Integrate the Node Editor into a material system.
  • Integrate into a scripting engine.
  • Setup a way to store the node data to the scene and object.
  • Setup node serialization within the scene.
  • Create more preset function nodes.
  • Swap the nodes from the Editor to the Spartan runtime so its not conflicting with user created nodes.

I hope with some time some uses can be found for this!
I might end up writing some system for using the nodes in the editor.

commit 5aa534c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 21:02:43 2026 +0000

    [car] 7 rays per wheel, and perfect wheel mesh to wheel shape matching

commit 8fffe18
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 18:41:35 2026 +0000

    [car] even better handling (including tire temperature)

commit d344b2e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 18:02:35 2026 +0000

    [car] even better handling and some more bug fixes

commit 930cf77
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 17:15:36 2026 +0000

    [car] fixed wheels and body not matching physics, also fixed very hard suspension

commit dccf809
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 16:27:20 2026 +0000

    [car] improved handling

commit 2b06207
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 14:22:23 2026 +0000

    [car] suspension tuning

commit cd2c0ef
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 13:48:48 2026 +0000

    [car] fixed telemetry bugs

commit 0873e30
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 12:19:00 2026 +0000

    [car] improved handling and fixed some bugs

commit b74dd4d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 11:58:04 2026 +0000

    [car] improved handling a custom tire friction formula and more

commit fa656f8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 11:32:07 2026 +0000

    [car] fixed some handling issues

commit 1f8d763
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 22:26:46 2026 +0000

    [car] added anti-roll bars and more on-screen metrics

commit 5461ab8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 22:03:24 2026 +0000

    [car] moved the vehicle namespace from physics.cpp into car, and renamed to car

commit 418aeff
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 21:19:34 2026 +0000

    [car] added suspension and improved handling

commit 1e5a53e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 20:42:48 2026 +0000

    [car] attached wheels

commit a4c72bf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 16:00:29 2026 +0000

    [physics] added a way to control wheel transforms

commit 2aa0733
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 15:30:03 2026 +0000

    [game] clean up

commit 48eeb39
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 14:04:00 2026 +0000

    [game] car can now be driven using the arrow keys

commit 90682ee
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:49:07 2026 +0000

    [physics] implemented vehicle support, created a new default world for prototyping

commit 1db2710
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:37:46 2026 +0000

    [physics] improved cpu performance by about 1 ms in massive worlds like the forest

commit 073f946
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:29:48 2026 +0000

    [math] optimized matrix

commit 2b80f59
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:21:49 2026 +0000

    [math] optimized vector3

commit 5ffc0a1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:15:34 2026 +0000

    [shaders] removed unused function

commit 98e7e89
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 12:19:11 2026 +0000

    [shaders] improved ibl and atmospheric scattering

commit 6670429
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 09:10:00 2026 +0000

    [game] added floors to sponza and subway, so there is a frame or reference

commit 80c042a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 08:38:41 2026 +0000

    [atmospheric_scattering] modern re-write (ue5/frostbite)

commit 1fac87d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 21:20:36 2026 +0000

    [depthoffield] physically-based with automatic focus

commit 271ae4a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 21:09:58 2026 +0000

    [motionblur] brand new, top of the line

commit 98f0b7b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:47:37 2026 +0000

    [renderer] debug draw primitives (lines, spheres, etc) now have a duration parameter

commit 91c491d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:36:48 2026 +0000

    [premake] treat warnings as errors

commit 6d83d97
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:32:31 2026 +0000

    [terrain] clean up and ability to detect old terrain_cache.bin and regenerated it without user input

commit 2104de4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:07:01 2026 +0000

    [terrain] even faster generation (we hit the limit, the GPU upload is the bottleneck now)

commit 675b076
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 08:58:44 2026 +0000

    [terrain] faster generation

commit cfeba36
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:40:22 2026 +0000

    [forest] calibrated grass density

commit 39ebdfd
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:36:24 2026 +0000

    [threadpool] fixed some threading issues

commit c1c9f6f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:18:56 2026 +0000

    [terrain] removed signed of artificiality from grass and flowers

commit a76f803
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:41:56 2026 +0000

    [renderer] toned down bloom and fixed a bug where the gt7 tonemapper wouldn't enable in sdr

commit 4f0c3d2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:30:21 2026 +0000

    [lighting] calibrated both in-game values and the gran turismo 7 tonampper

commit a6859f9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:10:35 2026 +0000

    [lighitng] updated daytime camera settings to allow for more light

commit 7dd79e8
Merge: 3ae9e45 ff1d5ec
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Sun Jan 4 15:59:58 2026 +0000

    Merge pull request PanosK92#204 from DimitrisKalyvas/material

    [material]: tweaked texture loading assert

commit ff1d5ec
Author: Dimitris Kalyvas <dimitrismarioskalyvas@gmail.com>
Date:   Sun Jan 4 17:48:32 2026 +0200

    [material]: fixed data loading assert

commit 3ae9e45
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 2 09:37:28 2026 +0000

    [normals] fixed broken normals (most obvious in sponza)

commit b064ea6
Merge: 888404a 0bd275a
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Fri Jan 2 09:08:27 2026 +0000

    Merge pull request PanosK92#202 from MrDrElliot/feature/ui-changes

    Fix world selection crash when no default worlds have been downloaded.

commit 888404a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 2 09:06:21 2026 +0000

    [contributors[ updated dimitri's contributions and gifted him BeamNG.drive

commit 0bd275a
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Wed Dec 31 11:10:27 2025 -0600

    Update MenuBar.cpp

commit 47dbc41
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Wed Dec 31 11:09:06 2025 -0600

    Fix Crash with worlds.

commit 174f3af
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 14:01:58 2025 +0000

    [license] updated to 2015-2026

commit 08daa18
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 12:48:26 2025 +0000

    [bloom] more spread and less intensity

commit 9132ae3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 12:32:24 2025 +0000

    [bloom] upgraded to the Call of Duty: Advanced Warfare version

commit caabdfe
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 08:49:57 2025 +0000

    [light] simplified and adjusted light presets

commit 82686ab
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 07:20:16 2025 +0000

    [lighting] fixed a bug where the light count wouldn't always be correct

commit 0428bae
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 06:42:55 2025 +0000

    [motionblur] physically based (intensity controlled via camera's shutter speed)

commit 61c2555
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 14:31:12 2025 +0000

    [worlds] fixed car showroom lighting

commit 1232bb0
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 09:55:06 2025 +0000

    [readme] updated gran turismo 7 photometric tonemapper

commit aaf632d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 09:07:56 2025 +0000

    [light] introduced presets that automatically set rotation, temperature and intensity, adjusted game.cpp to simply use those preset to variety in the worlds

commit cfbef8e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 08:18:50 2025 +0000

    [lighting] complete overhaul, everything physically based now, some calibration is still needed to get all worlds to look perfect

commit f13c240
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 07:00:32 2025 +0000

    [editor] fixed an issue where not all render resolution would be listed in the renderer options for NVIDIA GPUs

commit 3a50ff7
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:48:31 2025 +0000

    [workflow] yet another tweak

commit 14df3c3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:42:28 2025 +0000

    [workflow] removed duplicate contributor listing

commit d1cea38
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:37:50 2025 +0000

    [workflow] removed duplicate contributor entry in the release notes

commit aa9b06d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:31:19 2025 +0000

    [workflow] proper username detection

commit c48ca66
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:20:53 2025 +0000

    [workflow] replaced deprecated actions

commit cc893cf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:17:00 2025 +0000

    [workflow] yet another tweak

commit af2e566
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 15:40:30 2025 +0000

    [workflow] yet another tweak

commit 0bcea24
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 15:16:20 2025 +0000

    [workflow] ensure that when a release has multiple commits, they are mangled together in the release notes, but listed as bullet points with hyperlinks to the commits

commit 647b8a4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 13:15:34 2025 +0000

    [contributors] added Bryan

commit dbafa70
Merge: 8166fd1 ee03f2e
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Mon Dec 29 13:01:09 2025 +0000

    Merge pull request PanosK92#199 from MrDrElliot/master

    Introduction of Console Variables (CVars) to Spartan Engine

commit 8166fd1
Merge: f2ab4e2 175ed66
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Mon Dec 29 12:48:02 2025 +0000

    Merge pull request PanosK92#200 from George540/resource_search_field

    Simple Resource Viewer search bar filter

commit 175ed66
Author: George Mavroeidis <gmav.graphics@gmail.com>
Date:   Sun Dec 28 04:08:01 2025 -0500

    [editor] added case-insensitive search field in resource viewer

commit ee03f2e
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:35:46 2025 -0600

    Update a weird naming conflict.

commit 5efce0c
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:21:31 2025 -0600

    Various other fixes.

commit 3b4d12b
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:16:19 2025 -0600

    Replaced un-needed helper.

commit 8c79227
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:56:35 2025 -0600

    Formatting fixes.

commit 1edf721
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:45:42 2025 -0600

    Alignment fix.

commit 215042f
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:42:51 2025 -0600

    Console Variable introduction.

    - Adds console variables
    - Fixed mutex issue within logger

commit f2ab4e2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 12:28:24 2025 +0000

    [debugging] fixed renderdoc not working in case where the path to out could not be found

commit 3bd49a9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 09:13:23 2025 +0000

    [documentation] added an additional PR guidline

commit 616d25e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:57:15 2025 +0000

    [volume] improved lerpring

commit b582a4d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:52:48 2025 +0000

    [volume] wired component to renderer

commit 4acb562
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:43:59 2025 +0000

    [volume] added functionality to store user selected renderer option overrides

commit 8ae9409
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:26:20 2025 +0000

    [components] added volume component with ability to draw and manipulate it's shape

commit dbe91fd
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:09:51 2025 +0000

    [ibl] remove leftover shadow mask

commit af52f08
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:08:11 2025 +0000

    [ibl] added gtao multi bounce (jimenez)

commit 5c628ea
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:01:38 2025 +0000

    [ssao] improved bent normals and how they are used in the ibl pass

commit 9fc91a1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 02:03:29 2025 +0000

    [shadows] removed unused parameters

commit 2ad2a46
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 01:56:47 2025 +0000

    [shadows] shadow mapping overhaul for maximum quality (accounting for the shadow atlas and massive scale like the forest)

commit f0526aa
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:35:15 2025 +0000

    [renderer] fixed an issue where disabling auto exposure would still use the last computed luminance

commit 5cea86f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:31:38 2025 +0000

    [renderer] fixed flickering flashlight icon in front of the camera

commit 8974b77
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:06:10 2025 +0000

    [hdr] removed white point, this is an old school way of defining paper white on screen, we'll use real physics to determine it while tonemapping

commit ee007e3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:02:37 2025 +0000

    [lighting] removed light mask (not needed anymore)

commit e795adb
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 24 07:52:35 2025 +0000

    [output] added gran turismo 7 physically based tonammper

commit 0b498e1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 23:43:24 2025 +0000

    [camera] removed heap allocations when picking

commit 5b5d70d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 22:08:38 2025 +0000

    delete PR template, not possible

commit 50c387c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 22:06:11 2025 +0000

    [github] added new feature PR template

commit 3a7e9d5
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 21:55:46 2025 +0000

    [documentation] updated with yet another PR rule

commit 57f6a7b
Merge: 7527c64 098b027
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Tue Dec 23 03:49:51 2025 +0000

    Merge pull request PanosK92#195 from reavencode/swapchain-resize-fix

    Fix crash on swapchain resize

commit 098b027
Author: reavencode <antonellodrinkwater@gmail.com>
Date:   Wed Dec 17 10:41:58 2025 +0100

    [fix] The swapchain now unsubscribes itself from the window resize event when it's destroyed.

commit 7527c64
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 17 06:24:11 2025 +0000

    [forest] optimised grass

commit 1212927
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 16 19:55:05 2025 +0000

    [event] added ability to unsubscribe from events

commit 7281083
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Dec 14 02:52:58 2025 +0000

    [fix] when pressing f to disable the flashlight, the intensity will be set to 0 instead of disabling it (which prevents it from updating)

commit 180593e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:32:47 2025 +0000

    [workflow] fixed release notes step

commit ea89b3d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:16:49 2025 +0000

    [workflow] fixed all warning during release publishing

commit c3bd255
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:12:30 2025 +0000

    [workflow] update make the build server use the vs 2022 toolset to build the solution since it doesn't support 2026 yet

commit 1d788a6
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:09:12 2025 +0000

    [workflow] updated solution extension to slnx which is what vs 2026 uses

commit 497462b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:06:00 2025 +0000

    [workflow] switch to working directory

commit a29b976
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:03:32 2025 +0000

    [workflow] removed hardcoded msbuild path

commit e64ea90
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:55:53 2025 +0000

    [projected] delete vs 2022 project generation scripts since vs 2026 is officaly out, updated github workflow to use vs 2026 as well, and also fixed an issue where releases would only list the last commit

commit 55e4b9b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:49:51 2025 +0000

    [editor] improved ux of intro windows, about, and controls

commit e256a0d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:26:36 2025 +0000

    [shadows] improved performance by precalculating vogel samples and improved penumbra quality
commit 268590a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 19:13:59 2026 +0000

    [ray_tracing] replaced single bounce gi with restir path tracing, which is just a work in progress for now

commit c31e338
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 18:37:03 2026 +0000

    [memory] improved memory allocator with memory tags, marking and did some bug fixes

commit 06c9f9c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 17:28:15 2026 +0000

    [physics] cleanup

commit 471eae2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 17:12:06 2026 +0000

    [game] adjusted showroom light intensity

commit bc71475
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 16:43:35 2026 +0000

    [ray_tracing] global illumination (WIP)

commit d406746
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 16:34:16 2026 +0000

    [ray_tracing] made ray tracing shaodws mutually exlusive to raster and screen space

commit d813c70
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 16:23:41 2026 +0000

    [ray_tracing] fixed an issue where if you loaded a second world, acceleration structures wouldn't update properly

commit d4ece9f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 16:15:52 2026 +0000

    [ray_tracing] directional light shadows

commit 1061f6f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 19 15:55:33 2026 +0000

    [game] different car views are now working

commit 3e687be
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 22:52:40 2026 +0000

    [d3d12] implemented so more, getting closer editor rendering

commit 47f1447
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 21:56:47 2026 +0000

    [vulkan] fixed all remaining swapchain sync issues

commit b5d21d7
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 21:17:40 2026 +0000

    [world] saving/loading worlds to disc is now complete

commit a69e74a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 17:31:26 2026 +0000

    [car] implemented aerodynamics based on the body shape

commit 67bc7bd
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 17:05:03 2026 +0000

    [physics] implement composite convex mesh support and used it for the car body

commit 386b206
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 16:22:52 2026 +0000

    [sky] improved scattering and clouds (both in terms of performance and quality)

commit f7b8c19
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 04:40:39 2026 +0000

    [misc] renamed twitter to x

commit c1f3ddf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 04:39:37 2026 +0000

    [misc] cleaned up readme

commit d568660
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 04:32:31 2026 +0000

    [misc] added debug draw volume for area lights, textures will now automatically call PrepareForGpu(), cleaned up gbuffer

commit f1aee71
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 03:50:17 2026 +0000

    [vulkan] performance boost (optimised descriptors and barriers)

commit b32c466
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 18 03:21:16 2026 +0000

    [lighting] implemented area light

commit 45e28e4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 19:31:42 2026 +0000

    [output] calibrated GT7 tonemapper

commit 35aaad3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 19:22:06 2026 +0000

    [architecture] removed RHI_Texture_DontPrepareForGpu, the user can do as they please and the engine will handle gpu uploads automatically

commit 6266750
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 18:06:59 2026 +0000

    [bloom] increased intensity to what it should be

commit 0d5ea1b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 18:05:33 2026 +0000

    [world] adjusted showroom lighting to what it needs to be now that the tone mapper works

commit 04c79ac
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 17:50:15 2026 +0000

    [output] fixed gran turismo 7 tone mapping

commit 0577cff
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 17:34:14 2026 +0000

    [vulkan] fixed an issue where disabling HDR while in the renderer options would re-create the swapchain every frame because NVIDIA supports a different backbuffer format

commit 6b4ac6d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 17:14:50 2026 +0000

    [clouds] indirect light bounce (they are no longer dark underneath)

commit b8967e6
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 16:23:28 2026 +0000

    [clouds] quality and performance improvements, enabled by default

commit 11950b1
Merge: 6e87286 9d263e0
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Fri Jan 16 15:57:12 2026 +0000

    Merge pull request PanosK92#192 from DimitrisKalyvas/clouds

    Merging volumetric clouds pull request

commit 9d263e0
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 16 15:53:02 2026 +0000

    [misc] fixed compilation errors and set clouds to off by default so we can merge them now

commit 0c17c22
Merge: ab5a915 6e87286
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Fri Jan 16 15:21:10 2026 +0000

    Merge branch 'master' into clouds

commit 6e87286
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 19:28:16 2026 +0000

    [ray_tracing] reflections for transparents

commit 16b8411
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 18:46:39 2026 +0000

    [misc] adjusted showroom lighting

commit 80b76bf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 18:30:22 2026 +0000

    [ray_tracing] reflections now receive lighting

commit 11b73ba
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 17:55:35 2026 +0000

    [ray_tracing] added shadowing to reflections

commit 81c340e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 01:48:19 2026 +0000

    [shadows] fixed acne visible under certain light angles on the floor

commit b757465
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 01:39:26 2026 +0000

    [ray_tracing] improved reflections

commit e6a0f0b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 01:13:59 2026 +0000

    [editor] window bar fixes and visual improvements

commit ea12eeb
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 00:26:21 2026 +0000

    [renderer] clear reflections to black on disable

commit b50b02e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 14 00:09:22 2026 +0000

    [gbuffer] fixed jitter present on world space materials, like the floor in all worlds

commit 8817115
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 13 17:41:19 2026 +0000

    [d3d12] build fix

commit b8f76aa
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 13 17:36:44 2026 +0000

    [misc] ignore python temp files

commit 61cd640
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 13 17:35:35 2026 +0000

    [thirdparty] removed sssr

commit 933ea8a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 13 14:12:53 2026 +0000

    [misc] removed set_render_option helper

commit 19f8150
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 13 13:49:20 2026 +0000

    [third_party] removed sssr

commit e06ca5c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 12 18:04:55 2026 +0000

    [ray_tracing] fixed more bugs

commit a1555c4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 12 16:56:13 2026 +0000

    [vukan] cleaned up bindless array handling

commit 310589a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 12 16:20:14 2026 +0000

    [ray_tracing] fixed a lot of bugs, almost there

commit 717bdf8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 12 14:31:00 2026 +0000

    [ray_tracing] fixed an issuewhere the acceleration structures expected a different matrix layout from that of the engine

commit 9d78534
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 21:04:09 2026 +0000

    [ray_tracing] partially working reflections (one bug left to go)

commit aa8d8e2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 19:57:43 2026 +0000

    [ray_tracing] fixed, reflection pass now outputs debug colors

commit 1dd03c7
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 17:45:26 2026 +0000

    [editor] fixe issues and improved overall ux for the world/hierarchy view

commit 2504dca
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 17:31:54 2026 +0000

    [car] removed paint normal as it doesn't tile well

commit 3fd1432
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 17:24:46 2026 +0000

    [console] custom rendering with text selection support

commit 8aeeb32
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 16:55:21 2026 +0000

    [car] cleanup

commit 22c0c7f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 16:44:39 2026 +0000

    [editor] reduced amount of windows during editor's first start

commit 685e0c9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 16:39:28 2026 +0000

    [console] console variable suggestion will now appear in a pop-up, no need to scroll

commit 52b7bc8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 16:23:28 2026 +0000

    [editor] fixed close button not shutting down the engine

commit c123a52
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 16:09:04 2026 +0000

    [editor] custom window bar and border rendering

commit 781aeee
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 15:45:49 2026 +0000

    [editor] disable keyboard navigation when in play mode (fixes controlling the car and the editor accidentally)

commit 21e1045
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 15:41:05 2026 +0000

    [car] compute wheel physics position from the actually mesh boudning for 1 to 1 match

commit 5224012
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 14:19:18 2026 +0000

    [car] added turbo simulation. brake temperature (affects efficiency), seperate suspension bump and rebound ratios, wheel camber, and surface friction multipliers

commit b0f774a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 14:00:35 2026 +0000

    [showroom] adjusted camera position to match the new scale

commit 94bd439
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 11 03:07:28 2026 +0000

    [misc] reduced motion blur stutter, corected showroom car scale

commit 55a9ddb
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 16:04:29 2026 +0000

    [ray_tracing] fixed a couple of bugs

commit 346673c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 15:35:28 2026 +0000

    [modelimporter] fixed a regression where metallic wouldn't load

commit a35f547
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 14:46:13 2026 +0000

    [car] removed ferrari default wheels, since we have our own

commit ea00574
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 14:26:20 2026 +0000

    [architecture] removed all traces of the old renderer variables, everything is directly using cvars now

commit 7845afb
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 13:35:58 2026 +0000

    [modelimporter] fixed an issue where the mesh/nodes names were wrong and started using cvars

commit af0518d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 12:46:33 2026 +0000

    [material] fixed an issue where materials wouldn't always automatically map to the bindless gpu array

commit c961d49
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 9 11:51:03 2026 +0000

    [material] greatly simplified how texture packing is done, it's seamless to the user

commit a48da6d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 23:46:20 2026 +0000

    [readme] updated car simulation section

commit 59f6e29
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 23:25:33 2026 +0000

    [car] cleaned up

commit 9fec4f4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 22:55:42 2026 +0000

    [car] added gearbox, and engine simulation

commit b9f0e26
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 22:29:07 2026 +0000

    [car] improved suspension and steering rate (simulate human and hydraulic response rate)

commit 29aa75c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 22:17:02 2026 +0000

    [car] added abs and traction control (off by default because we drive properly)

commit f4606c9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 21:48:37 2026 +0000

    [forest] ghost of tsushima grass view based widening

commit 9f01781
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 13:50:23 2026 +0000

    [camera] corrected capsule height (it was 2.8m instead of 1.8m)

commit 3d77924
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 13:37:41 2026 +0000

    [car] the drivable car can now be part of any world, and it has replaced the dead car in the showroom

commit bdcbf62
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:59:05 2026 +0000

    [car] improved tires so they travel (with momentum) instead of snap to new heights

commit e0ad0c9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:31:48 2026 +0000

    [world_selection] updated car simulation title and description

commit a285f19
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:20:16 2026 +0000

    [readme] fixed typo

commit f958a47
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:19:57 2026 +0000

    [readme] paragraph correction

commit 9d4639f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:19:14 2026 +0000

    [readme] added car simulation features

commit eb743c4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:13:43 2026 +0000

    [car] fixed temperature to so that it works with the new tire friction model

commit efde817
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 09:08:26 2026 +0000

    [car] improved tire friction model (approaching forza, gran turismo)

commit 74a1551
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 08:47:29 2026 +0000

    [car] fixed an issue where the car would slide instead of coming to a stop

commit be75710
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 08:40:28 2026 +0000

    [car] improved handling and bug fixes

commit 4957b41
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Jan 8 08:21:35 2026 +0000

    [car] improved handling and cleaned up code

commit 5aa534c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 21:02:43 2026 +0000

    [car] 7 rays per wheel, and perfect wheel mesh to wheel shape matching

commit 8fffe18
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 18:41:35 2026 +0000

    [car] even better handling (including tire temperature)

commit d344b2e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 18:02:35 2026 +0000

    [car] even better handling and some more bug fixes

commit 930cf77
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 17:15:36 2026 +0000

    [car] fixed wheels and body not matching physics, also fixed very hard suspension

commit dccf809
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 16:27:20 2026 +0000

    [car] improved handling

commit 2b06207
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 14:22:23 2026 +0000

    [car] suspension tuning

commit cd2c0ef
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 13:48:48 2026 +0000

    [car] fixed telemetry bugs

commit 0873e30
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 12:19:00 2026 +0000

    [car] improved handling and fixed some bugs

commit b74dd4d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 11:58:04 2026 +0000

    [car] improved handling a custom tire friction formula and more

commit fa656f8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Jan 7 11:32:07 2026 +0000

    [car] fixed some handling issues

commit 1f8d763
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 22:26:46 2026 +0000

    [car] added anti-roll bars and more on-screen metrics

commit 5461ab8
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 22:03:24 2026 +0000

    [car] moved the vehicle namespace from physics.cpp into car, and renamed to car

commit 418aeff
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 21:19:34 2026 +0000

    [car] added suspension and improved handling

commit 1e5a53e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 20:42:48 2026 +0000

    [car] attached wheels

commit a4c72bf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 16:00:29 2026 +0000

    [physics] added a way to control wheel transforms

commit 2aa0733
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 15:30:03 2026 +0000

    [game] clean up

commit 48eeb39
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 14:04:00 2026 +0000

    [game] car can now be driven using the arrow keys

commit 90682ee
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:49:07 2026 +0000

    [physics] implemented vehicle support, created a new default world for prototyping

commit 1db2710
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:37:46 2026 +0000

    [physics] improved cpu performance by about 1 ms in massive worlds like the forest

commit 073f946
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:29:48 2026 +0000

    [math] optimized matrix

commit 2b80f59
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:21:49 2026 +0000

    [math] optimized vector3

commit 5ffc0a1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 13:15:34 2026 +0000

    [shaders] removed unused function

commit 98e7e89
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 12:19:11 2026 +0000

    [shaders] improved ibl and atmospheric scattering

commit 6670429
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 09:10:00 2026 +0000

    [game] added floors to sponza and subway, so there is a frame or reference

commit 80c042a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Jan 6 08:38:41 2026 +0000

    [atmospheric_scattering] modern re-write (ue5/frostbite)

commit 1fac87d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 21:20:36 2026 +0000

    [depthoffield] physically-based with automatic focus

commit 271ae4a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 21:09:58 2026 +0000

    [motionblur] brand new, top of the line

commit 98f0b7b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:47:37 2026 +0000

    [renderer] debug draw primitives (lines, spheres, etc) now have a duration parameter

commit 91c491d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:36:48 2026 +0000

    [premake] treat warnings as errors

commit 6d83d97
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:32:31 2026 +0000

    [terrain] clean up and ability to detect old terrain_cache.bin and regenerated it without user input

commit 2104de4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 09:07:01 2026 +0000

    [terrain] even faster generation (we hit the limit, the GPU upload is the bottleneck now)

commit 675b076
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Jan 5 08:58:44 2026 +0000

    [terrain] faster generation

commit cfeba36
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:40:22 2026 +0000

    [forest] calibrated grass density

commit 39ebdfd
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:36:24 2026 +0000

    [threadpool] fixed some threading issues

commit c1c9f6f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 20:18:56 2026 +0000

    [terrain] removed signed of artificiality from grass and flowers

commit a76f803
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:41:56 2026 +0000

    [renderer] toned down bloom and fixed a bug where the gt7 tonemapper wouldn't enable in sdr

commit 4f0c3d2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:30:21 2026 +0000

    [lighting] calibrated both in-game values and the gran turismo 7 tonampper

commit a6859f9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Jan 4 16:10:35 2026 +0000

    [lighitng] updated daytime camera settings to allow for more light

commit 7dd79e8
Merge: 3ae9e45 ff1d5ec
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Sun Jan 4 15:59:58 2026 +0000

    Merge pull request PanosK92#204 from DimitrisKalyvas/material

    [material]: tweaked texture loading assert

commit ff1d5ec
Author: Dimitris Kalyvas <dimitrismarioskalyvas@gmail.com>
Date:   Sun Jan 4 17:48:32 2026 +0200

    [material]: fixed data loading assert

commit 3ae9e45
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 2 09:37:28 2026 +0000

    [normals] fixed broken normals (most obvious in sponza)

commit b064ea6
Merge: 888404a 0bd275a
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Fri Jan 2 09:08:27 2026 +0000

    Merge pull request PanosK92#202 from MrDrElliot/feature/ui-changes

    Fix world selection crash when no default worlds have been downloaded.

commit 888404a
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Jan 2 09:06:21 2026 +0000

    [contributors[ updated dimitri's contributions and gifted him BeamNG.drive

commit 0bd275a
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Wed Dec 31 11:10:27 2025 -0600

    Update MenuBar.cpp

commit 47dbc41
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Wed Dec 31 11:09:06 2025 -0600

    Fix Crash with worlds.

commit 174f3af
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 14:01:58 2025 +0000

    [license] updated to 2015-2026

commit 08daa18
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 12:48:26 2025 +0000

    [bloom] more spread and less intensity

commit 9132ae3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 12:32:24 2025 +0000

    [bloom] upgraded to the Call of Duty: Advanced Warfare version

commit caabdfe
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 08:49:57 2025 +0000

    [light] simplified and adjusted light presets

commit 82686ab
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 07:20:16 2025 +0000

    [lighting] fixed a bug where the light count wouldn't always be correct

commit 0428bae
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 31 06:42:55 2025 +0000

    [motionblur] physically based (intensity controlled via camera's shutter speed)

commit 61c2555
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 14:31:12 2025 +0000

    [worlds] fixed car showroom lighting

commit 1232bb0
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 09:55:06 2025 +0000

    [readme] updated gran turismo 7 photometric tonemapper

commit aaf632d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 09:07:56 2025 +0000

    [light] introduced presets that automatically set rotation, temperature and intensity, adjusted game.cpp to simply use those preset to variety in the worlds

commit cfbef8e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 08:18:50 2025 +0000

    [lighting] complete overhaul, everything physically based now, some calibration is still needed to get all worlds to look perfect

commit f13c240
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 30 07:00:32 2025 +0000

    [editor] fixed an issue where not all render resolution would be listed in the renderer options for NVIDIA GPUs

commit 3a50ff7
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:48:31 2025 +0000

    [workflow] yet another tweak

commit 14df3c3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:42:28 2025 +0000

    [workflow] removed duplicate contributor listing

commit d1cea38
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:37:50 2025 +0000

    [workflow] removed duplicate contributor entry in the release notes

commit aa9b06d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:31:19 2025 +0000

    [workflow] proper username detection

commit c48ca66
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:20:53 2025 +0000

    [workflow] replaced deprecated actions

commit cc893cf
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 16:17:00 2025 +0000

    [workflow] yet another tweak

commit af2e566
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 15:40:30 2025 +0000

    [workflow] yet another tweak

commit 0bcea24
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 15:16:20 2025 +0000

    [workflow] ensure that when a release has multiple commits, they are mangled together in the release notes, but listed as bullet points with hyperlinks to the commits

commit 647b8a4
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Mon Dec 29 13:15:34 2025 +0000

    [contributors] added Bryan

commit dbafa70
Merge: 8166fd1 ee03f2e
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Mon Dec 29 13:01:09 2025 +0000

    Merge pull request PanosK92#199 from MrDrElliot/master

    Introduction of Console Variables (CVars) to Spartan Engine

commit 8166fd1
Merge: f2ab4e2 175ed66
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Mon Dec 29 12:48:02 2025 +0000

    Merge pull request PanosK92#200 from George540/resource_search_field

    Simple Resource Viewer search bar filter

commit 175ed66
Author: George Mavroeidis <gmav.graphics@gmail.com>
Date:   Sun Dec 28 04:08:01 2025 -0500

    [editor] added case-insensitive search field in resource viewer

commit ee03f2e
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:35:46 2025 -0600

    Update a weird naming conflict.

commit 5efce0c
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:21:31 2025 -0600

    Various other fixes.

commit 3b4d12b
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 13:16:19 2025 -0600

    Replaced un-needed helper.

commit 8c79227
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:56:35 2025 -0600

    Formatting fixes.

commit 1edf721
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:45:42 2025 -0600

    Alignment fix.

commit 215042f
Author: DrElliot <133075253+MrDrElliot@users.noreply.github.com>
Date:   Fri Dec 26 10:42:51 2025 -0600

    Console Variable introduction.

    - Adds console variables
    - Fixed mutex issue within logger

commit f2ab4e2
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 12:28:24 2025 +0000

    [debugging] fixed renderdoc not working in case where the path to out could not be found

commit 3bd49a9
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 09:13:23 2025 +0000

    [documentation] added an additional PR guidline

commit 616d25e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:57:15 2025 +0000

    [volume] improved lerpring

commit b582a4d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:52:48 2025 +0000

    [volume] wired component to renderer

commit 4acb562
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:43:59 2025 +0000

    [volume] added functionality to store user selected renderer option overrides

commit 8ae9409
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 08:26:20 2025 +0000

    [components] added volume component with ability to draw and manipulate it's shape

commit dbe91fd
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:09:51 2025 +0000

    [ibl] remove leftover shadow mask

commit af52f08
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:08:11 2025 +0000

    [ibl] added gtao multi bounce (jimenez)

commit 5c628ea
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 03:01:38 2025 +0000

    [ssao] improved bent normals and how they are used in the ibl pass

commit 9fc91a1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 02:03:29 2025 +0000

    [shadows] removed unused parameters

commit 2ad2a46
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Fri Dec 26 01:56:47 2025 +0000

    [shadows] shadow mapping overhaul for maximum quality (accounting for the shadow atlas and massive scale like the forest)

commit f0526aa
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:35:15 2025 +0000

    [renderer] fixed an issue where disabling auto exposure would still use the last computed luminance

commit 5cea86f
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:31:38 2025 +0000

    [renderer] fixed flickering flashlight icon in front of the camera

commit 8974b77
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:06:10 2025 +0000

    [hdr] removed white point, this is an old school way of defining paper white on screen, we'll use real physics to determine it while tonemapping

commit ee007e3
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Thu Dec 25 14:02:37 2025 +0000

    [lighting] removed light mask (not needed anymore)

commit e795adb
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 24 07:52:35 2025 +0000

    [output] added gran turismo 7 physically based tonammper

commit 0b498e1
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 23:43:24 2025 +0000

    [camera] removed heap allocations when picking

commit 5b5d70d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 22:08:38 2025 +0000

    delete PR template, not possible

commit 50c387c
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 22:06:11 2025 +0000

    [github] added new feature PR template

commit 3a7e9d5
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 23 21:55:46 2025 +0000

    [documentation] updated with yet another PR rule

commit 57f6a7b
Merge: 7527c64 098b027
Author: Panos Karabelas <PanosConroe@hotmail.com>
Date:   Tue Dec 23 03:49:51 2025 +0000

    Merge pull request PanosK92#195 from reavencode/swapchain-resize-fix

    Fix crash on swapchain resize

commit 098b027
Author: reavencode <antonellodrinkwater@gmail.com>
Date:   Wed Dec 17 10:41:58 2025 +0100

    [fix] The swapchain now unsubscribes itself from the window resize event when it's destroyed.

commit 7527c64
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Wed Dec 17 06:24:11 2025 +0000

    [forest] optimised grass

commit 1212927
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Tue Dec 16 19:55:05 2025 +0000

    [event] added ability to unsubscribe from events

commit 7281083
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sun Dec 14 02:52:58 2025 +0000

    [fix] when pressing f to disable the flashlight, the intensity will be set to 0 instead of disabling it (which prevents it from updating)

commit 180593e
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:32:47 2025 +0000

    [workflow] fixed release notes step

commit ea89b3d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:16:49 2025 +0000

    [workflow] fixed all warning during release publishing

commit c3bd255
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:12:30 2025 +0000

    [workflow] update make the build server use the vs 2022 toolset to build the solution since it doesn't support 2026 yet

commit 1d788a6
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:09:12 2025 +0000

    [workflow] updated solution extension to slnx which is what vs 2026 uses

commit 497462b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:06:00 2025 +0000

    [workflow] switch to working directory

commit a29b976
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 22:03:32 2025 +0000

    [workflow] removed hardcoded msbuild path

commit e64ea90
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:55:53 2025 +0000

    [projected] delete vs 2022 project generation scripts since vs 2026 is officaly out, updated github workflow to use vs 2026 as well, and also fixed an issue where releases would only list the last commit

commit 55e4b9b
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:49:51 2025 +0000

    [editor] improved ux of intro windows, about, and controls

commit e256a0d
Author: Panos Karabelas <panosconroe@hotmail.com>
Date:   Sat Dec 13 21:26:36 2025 +0000

    [shadows] improved performance by precalculating vogel samples and improved penumbra quality

commit ab5a915
Author: Dimitris Kalyvas <dimitrismarioskalyvas@gmail.com>
Date:   Sun Dec 7 15:26:56 2025 +0200

    [clouds] created atmospheric cloud shader

    created atmospheric cloud compute shader
    added options to renderer tab for quick access
* master: (191 commits)
  [ray_tracing] replaced single bounce gi with restir path tracing, which is just a work in progress for now
  [memory] improved memory allocator with memory tags, marking and did some bug fixes
  [physics] cleanup
  [game] adjusted showroom light intensity
  [ray_tracing] global illumination (WIP)
  [ray_tracing] made ray tracing shaodws mutually exlusive to raster and screen space
  [ray_tracing] fixed an issue where if you loaded a second world, acceleration structures wouldn't update properly
  [ray_tracing] directional light shadows
  [game] different car views are now working
  [d3d12] implemented so more, getting closer editor rendering
  [vulkan] fixed all remaining swapchain sync issues
  [world] saving/loading worlds to disc is now complete
  [car] implemented aerodynamics based on the body shape
  [physics] implement composite convex mesh support and used it for the car body
  [sky] improved scattering and clouds (both in terms of performance and quality)
  [misc] renamed twitter to x
  [misc] cleaned up readme
  [misc] added debug draw volume for area lights, textures will now automatically call PrepareForGpu(), cleaned up gbuffer
  [vulkan] performance boost (optimised descriptors and barriers)
  [lighting] implemented area light
  ...
@The3dVehicleguy The3dVehicleguy deleted the shader-node-editor branch January 19, 2026 22:26
@The3dVehicleguy The3dVehicleguy restored the shader-node-editor branch January 19, 2026 22:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants