Added rocks db

This commit is contained in:
mcrcortex
2024-02-04 15:34:41 +10:00
parent 86f3b04b37
commit ba93e3f872
17 changed files with 320 additions and 46 deletions

View File

@@ -1,4 +1,4 @@
#version 460
#version 450
#extension GL_ARB_gpu_shader_int64 : enable
layout(local_size_x = 128, local_size_y = 1, local_size_x = 1) in;

View File

@@ -1,4 +1,4 @@
#version 460
#version 450
layout(local_size_x = 32, local_size_y = 32, local_size_x = 1) in;
@@ -12,12 +12,6 @@ vec3 rev3d(vec3 clip) {
return view.xyz/view.w;
}
vec3 proj3dscreen(vec3 pos) {
vec4 view = MVP * vec4(pos, 1);
view.xyz /= view.w;
return view.xyz * 0.5 + 0.5;
}
vec3 reDeProject(vec3 pos) {
vec4 view = MVP * vec4(pos, 1);
view.xy /= view.w;
@@ -27,25 +21,6 @@ vec3 reDeProject(vec3 pos) {
return view.xyz/view.w;
}
vec3 reDeProjectContained(vec3 pos) {
vec4 view = MVP * vec4(pos, 1);
view.xy /= view.w;
float depth = texture(depthTex, clamp(view.xy*0.5+0.5, 0, 1)).x*2-1;
view.z = min(view.z, depth);
view.w = 1;
view = invMVP * view;
return view.xyz/view.w;
}
vec3 computeDifference(vec3 pos, vec3 offset) {
return reDeProject(pos + offset) - pos - offset;
}
float computeAngleDifference(vec3 pos, vec3 offset) {
vec3 repro = reDeProject(pos + offset) - pos;
return dot(repro, offset)/(length(repro) * length(offset));
}
float computeAOAngle(vec3 pos, float testHeight, vec3 normal) {
vec3 repro = reDeProject(pos + normal*testHeight) - pos;
float len = length(repro);
@@ -85,4 +60,33 @@ void main() {
//vec4 ocolour = vec4(viewNormal/2+0.5, 1);
//if (any(lessThan(ivec3(4), abs(repro-offset)))) {// || all(lessThan(abs(repro-offset), ivec3(0.01)))
//return;
//}
//}
/*
vec3 proj3dscreen(vec3 pos) {
vec4 view = MVP * vec4(pos, 1);
view.xyz /= view.w;
return view.xyz * 0.5 + 0.5;
}
vec3 reDeProjectContained(vec3 pos) {
vec4 view = MVP * vec4(pos, 1);
view.xy /= view.w;
float depth = texture(depthTex, clamp(view.xy*0.5+0.5, 0, 1)).x*2-1;
view.z = min(view.z, depth);
view.w = 1;
view = invMVP * view;
return view.xyz/view.w;
}
vec3 computeDifference(vec3 pos, vec3 offset) {
return reDeProject(pos + offset) - pos - offset;
}
float computeAngleDifference(vec3 pos, vec3 offset) {
vec3 repro = reDeProject(pos + offset) - pos;
return dot(repro, offset)/(length(repro) * length(offset));
}
*/