Collision & Engine refactor

This commit is contained in:
Harrison Corlett 2026-06-30 16:02:08 +01:00
parent f135d99d74
commit 6b51c9b680
261 changed files with 5439 additions and 185169 deletions

View file

@ -0,0 +1,29 @@
#version 450
layout(location = 0) in vec3 fragPosition;
layout(location = 1) in vec4 fragWeights;
layout(location = 2) in vec2 fragUV;
layout(binding = 1) uniform sampler2DArray terrainTexArray;
layout(location = 0) out vec4 outColor;
void main() {
vec4 colorGrass = texture(terrainTexArray, vec3(fragUV, 0.0)); // Index 0
vec4 colorRock = texture(terrainTexArray, vec3(fragUV, 1.0)); // Index 1
vec4 colorSand = texture(terrainTexArray, vec3(fragUV, 2.0)); // Index 2
vec4 colorMud = texture(terrainTexArray, vec3(fragUV, 3.0)); // Index 3
vec4 dynamicTerrainColor =
(colorGrass * fragWeights.r) +
(colorRock * fragWeights.g) +
(colorSand * fragWeights.b) +
(colorMud * fragWeights.a);
float totalWeight = fragWeights.r + fragWeights.g + fragWeights.b + fragWeights.a;
if (totalWeight > 0.0) {
dynamicTerrainColor /= totalWeight;
}
outColor = dynamicTerrainColor;
}