This commit is contained in:
Isuru Samarathunga
2025-11-08 23:46:47 +05:30
parent 042ff451b1
commit 73d26b2f35
41 changed files with 4348 additions and 532 deletions

View File

@ -13,4 +13,4 @@ add_library(RenderCore STATIC ${SRC_FILES})
target_include_directories(RenderCore PUBLIC inc)
target_include_directories(RenderCore PRIVATE imp/hpp)
target_link_libraries(RenderCore PUBLIC IACore SDL3::SDL3 glm::glm)
target_link_libraries(RenderCore PUBLIC Common)

View File

@ -141,7 +141,7 @@ namespace ia::iae
{
STATIC SDL_GPURenderPass *ActiveRenderPass{};
STATIC SDL_GPUCommandBuffer *ActiveCommandBuffer{};
STATIC SDL_GPUColorTargetInfo ActiveColorTargetInfo{.clear_color = SDL_FColor{0.0f, 0.0f, 0.0f, 1.0f},
STATIC SDL_GPUColorTargetInfo ActiveColorTargetInfo{.clear_color = SDL_FColor{0.39f, 0.58f, 0.92f, 1.0f},
.load_op = SDL_GPU_LOADOP_CLEAR,
.store_op = SDL_GPU_STOREOP_STORE};
@ -170,7 +170,7 @@ namespace ia::iae
{
STATIC SDL_GPURenderPass *ActiveRenderPass{};
STATIC SDL_GPUCommandBuffer *ActiveCommandBuffer{};
STATIC SDL_GPUColorTargetInfo ActiveColorTargetInfo{.clear_color = SDL_FColor{0.0f, 0.0f, 0.0f, 1.0f},
STATIC SDL_GPUColorTargetInfo ActiveColorTargetInfo{.clear_color = SDL_FColor{0.39f, 0.58f, 0.92f, 1.0f},
.load_op = SDL_GPU_LOADOP_CLEAR,
.store_op = SDL_GPU_STOREOP_STORE};
@ -226,7 +226,7 @@ namespace ia::iae
VOID RDC::DrawLine(IN Vec2 start, IN Vec2 end, IN Vec4 color)
{
s_primitiveInstances[s_primitiveInstanceCount++] = {start, color};
s_primitiveInstances[s_primitiveInstanceCount++] = { end, color };
s_primitiveInstances[s_primitiveInstanceCount++] = {end, color};
}
VOID RDC::DrawRect(IN Vec2 start, IN Vec2 end, IN Vec4 color)
@ -236,7 +236,7 @@ namespace ia::iae
s_primitiveInstances[s_primitiveInstanceCount++] = {Vec2{end.x, start.y}, color};
s_primitiveInstances[s_primitiveInstanceCount++] = {end, color};
s_primitiveInstances[s_primitiveInstanceCount++] = {end, color};
s_primitiveInstances[s_primitiveInstanceCount++] = {Vec2{start.x, end.y}, color};
@ -289,6 +289,8 @@ namespace ia::iae
VOID RDC::CompileTextures(IN CONST Vector<Handle> &images)
{
if (!images.size())
return;
delete s_dynamicSpriteAtlas;
s_dynamicSpriteAtlas = new RDC_TextureAtlas(images);
}

View File

@ -16,20 +16,7 @@
#pragma once
#include <IACore/Exception.hpp>
#include <IACore/Logger.hpp>
#include <IACore/Map.hpp>
#include <IACore/Memory.hpp>
#include <IACore/String.hpp>
#include <IACore/Vector.hpp>
#include <glm/ext/matrix_clip_space.hpp>
#include <glm/ext/matrix_transform.hpp>
#include <glm/ext/scalar_constants.hpp>
#include <glm/mat4x4.hpp>
#include <glm/vec2.hpp>
#include <glm/vec3.hpp>
#include <glm/vec4.hpp>
#include <Common/Base.hpp>
#define RDC_LOG_TAG "RDC"
@ -40,17 +27,6 @@
namespace ia::iae
{
using Handle = INT64;
STATIC CONSTEXPR Handle INVALID_HANDLE = -1;
using Vec2 = glm::vec2;
using Vec3 = glm::vec3;
using Vec4 = glm::vec4;
using IVec2 = glm::ivec2;
using IVec3 = glm::ivec3;
using IVec4 = glm::ivec4;
using Mat4 = glm::mat4;
struct ImageData
{
PUINT8 Pixels{};