Working on shader stuff
This commit is contained in:
@ -6,5 +6,4 @@
|
||||
# Sources
|
||||
target_sources(${DUSK_TARGET_NAME}
|
||||
PRIVATE
|
||||
transforms.c
|
||||
)
|
@ -1,6 +1,6 @@
|
||||
#version 330 core
|
||||
|
||||
// Copyright (c) 2025 Dominic Masters
|
||||
//
|
||||
// This software is released under the MIT License.
|
||||
// https://opensource.org/licenses/MIT
|
||||
// https://opensource.org/licenses/MIT
|
||||
|
||||
#version 330 core
|
@ -1,46 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) 2025 Dominic Masters
|
||||
*
|
||||
* This software is released under the MIT License.
|
||||
* https://opensource.org/licenses/MIT
|
||||
*/
|
||||
|
||||
#include "transforms.h"
|
||||
#include "display/window.h"
|
||||
|
||||
shaderbuffer_t TRANSFORMS_BUFFER;
|
||||
transformsdata_t TRANSFORMS_DATA;
|
||||
|
||||
void transformsInit() {
|
||||
shaderBufferInit(&TRANSFORMS_BUFFER, sizeof(transformsdata_t));
|
||||
|
||||
glm_mat4_identity(TRANSFORMS_DATA.projection);
|
||||
glm_mat4_identity(TRANSFORMS_DATA.view);
|
||||
}
|
||||
|
||||
void transformsUpdate() {
|
||||
TRANSFORMS_DATA.resolution[0] = WINDOW_WIDTH;
|
||||
TRANSFORMS_DATA.resolution[1] = WINDOW_HEIGHT;
|
||||
|
||||
glm_perspective(
|
||||
glm_rad(45.0f),
|
||||
TRANSFORMS_DATA.resolution[0] / TRANSFORMS_DATA.resolution[1],
|
||||
0.1f,
|
||||
100.0f,
|
||||
TRANSFORMS_DATA.projection
|
||||
);
|
||||
|
||||
glm_lookat(
|
||||
(vec3){ 3, 3, 3 },
|
||||
(vec3){ 0, 0, 0 },
|
||||
(vec3){ 0, 1, 0 },
|
||||
TRANSFORMS_DATA.view
|
||||
);
|
||||
|
||||
shaderBufferBind(&TRANSFORMS_BUFFER);
|
||||
shaderBufferSetData(&TRANSFORMS_BUFFER, &TRANSFORMS_DATA);
|
||||
}
|
||||
|
||||
void transformsDispose() {
|
||||
shaderBufferDispose(&TRANSFORMS_BUFFER);
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) 2025 Dominic Masters
|
||||
*
|
||||
* This software is released under the MIT License.
|
||||
* https://opensource.org/licenses/MIT
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#include "display/shader/shaderbuffer.h"
|
||||
|
||||
#define TRANSFORMS_BLOCK_NAME "b_Transforms"
|
||||
|
||||
typedef struct {
|
||||
mat4 projection;
|
||||
mat4 view;
|
||||
vec2 resolution;
|
||||
} transformsdata_t;
|
||||
|
||||
extern shaderbuffer_t TRANSFORMS_BUFFER;
|
||||
extern transformsdata_t TRANSFORMS_DATA;
|
||||
|
||||
/**
|
||||
* Initializes the transforms buffer and data.
|
||||
*/
|
||||
void transformsInit();
|
||||
|
||||
/**
|
||||
* Updates the transforms buffer with the current data.
|
||||
*/
|
||||
void transformsUpdate();
|
||||
|
||||
/**
|
||||
* Destroys the transforms buffer.
|
||||
*/
|
||||
void transformsDispose();
|
Reference in New Issue
Block a user