From 28c4f16d7147333a75a8759dbc269edafd6bbf35 Mon Sep 17 00:00:00 2001 From: hippoz <10706925-hippoz@users.noreply.gitlab.com> Date: Tue, 25 Jul 2023 11:52:12 +0300 Subject: [PATCH] more work on lighting --- assets/fish-map.qoi | Bin 0 -> 1893 bytes assets/fish.png | Bin 0 -> 10182 bytes shaders/fragment.glsl | 14 --- shaders/light_cube_fragment.glsl | 7 ++ shaders/light_cube_vertex.glsl | 11 ++ shaders/lighting_fragment.glsl | 88 +++++++++++++++ shaders/lighting_vertex.glsl | 20 ++++ shaders/vertex.glsl | 18 ---- src/main.cpp | 178 ++++++++++++++++++++----------- 9 files changed, 240 insertions(+), 96 deletions(-) create mode 100644 assets/fish-map.qoi create mode 100644 assets/fish.png delete mode 100644 shaders/fragment.glsl create mode 100644 shaders/light_cube_fragment.glsl create mode 100644 shaders/light_cube_vertex.glsl create mode 100644 shaders/lighting_fragment.glsl create mode 100644 shaders/lighting_vertex.glsl delete mode 100644 shaders/vertex.glsl diff --git a/assets/fish-map.qoi b/assets/fish-map.qoi new file mode 100644 index 0000000000000000000000000000000000000000..0a595706ac052032abf5acb688964b5cc352b2d8 GIT binary patch literal 1893 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