This commit is contained in:
Piotrek
2021-04-24 20:47:04 +02:00
parent 00fd077642
commit 61ec3e5a21
8 changed files with 54 additions and 18 deletions
+13 -1
View File
@@ -13,6 +13,7 @@ layout(set=0,binding=0) uniform Uniforms {
mat4 _ViewMatrix;
mat4 _ProjMatrixInv;
vec3 _CamPos;
vec3 _SunDir;
float _Time;
};
layout(set=1,binding=0) uniform usampler3D _NodesTexture;
@@ -27,16 +28,27 @@ layout(set=3, binding=0) uniform Materials {
// #define NEAR 0.01
// Include
#include "structs.cginc"
#include "shading.cginc"
#include "raycasting.cginc"
void main()
{
// Black by default
out_color = vec4(0,0,0,1);
// Calculate ray direction
vec3 view_dir = (_ProjMatrixInv * vec4(vert_uv, 0, 1)).xyz;
vec3 ray_dir = normalize(_ViewMatrix * vec4(view_dir,0)).xyz;
// Raycast
out_color = vec4(castNodes(_CamPos, ray_dir), 1.0);
HitResult primary = castNodes(_CamPos, ray_dir);
if(primary.data > 0)
{
out_color = vec4(applyLighting(primary.pos, ray_dir, primary.normal, primary.data), 1.0);
HitResult shadow = castNodes(primary.pos-ray_dir*0.000001, _SunDir);
if(shadow.data > 0) out_color *= 0.1;
}
}