Changed several function signatures across multiple files to remove the `const` qualifier from parameters of type `vec3s` for improved flexibility. Changed `material_collection_create` to `material_collection_init` for better initialization handling. Changed `scene_create` to `scene_init` to return a boolean indicating success or failure. Changed `render_target_create` to `render_target_init` for consistent initialization practices. Changed `window_create` to remove `const` from its parameters for consistency. Changed `evaluate_bsdf_directional` and `evaluate_bsdf_const_sky` to remove `const` from their parameters. Changed `sample_bsdf_simple_lit` and `sample_bsdf_pdf_simple_lit` to remove `const` from the `normal` parameter. Changed `scene_render` to take a pointer to `render_target_t` instead of returning it directly. Updated `main.c` to reflect new initialization functions for better memory management.
21 lines
613 B
C
21 lines
613 B
C
#ifndef RENDERTARGET_H
|
|
#define RENDERTARGET_H
|
|
|
|
#include "Common.h"
|
|
#include <stdint.h>
|
|
|
|
typedef struct
|
|
{
|
|
vec4s* buffer;
|
|
uint32_t width;
|
|
uint32_t height;
|
|
} render_target_t;
|
|
|
|
bool render_target_init(uint32_t width, uint32_t height, render_target_t* render_target);
|
|
vec4s render_target_get_pixel(const render_target_t* render_target, uint32_t x, uint32_t y);
|
|
void render_target_set_pixel(render_target_t* render_target, uint32_t x, uint32_t y, vec4s color);
|
|
unsigned char* render_target_to_char(render_target_t* render_target);
|
|
void render_target_free(render_target_t* target);
|
|
|
|
#endif // RENDERTARGET_H
|