Added resources and android build for scene rendering example

This commit is contained in:
saschawillems 2016-06-12 17:42:35 +02:00
parent 14e327c353
commit b1b828b45f
19 changed files with 1126 additions and 1 deletions

Binary file not shown.

View file

@ -0,0 +1,9 @@
Sibenik by Marko Dabrovic, with holes corrected by Kenzie Lamar at
Vicarious Visions and high-resolution texture and bump maps painted by
Morgan McGuire.
Downloaded from http://igad.nhtv.nl/~bikker/
Originally from http://hdri.cgtechniques.com/~sibenik2/download/
"The Sibenik cathedral is a project by Marko Dabrovic form www.RNA.HR .
It's very rich modeled but isn't completly finished yet... there are some holes in the mesh which only hurts if you look at them."

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,2 @@
glslangvalidator -V scene.vert -o scene.vert.spv
glslangvalidator -V scene.frag -o scene.frag.spv

View file

@ -0,0 +1,34 @@
#version 450
#extension GL_ARB_separate_shader_objects : enable
#extension GL_ARB_shading_language_420pack : enable
layout (set = 1, binding = 0) uniform sampler2D samplerColorMap;
layout (location = 0) in vec3 inNormal;
layout (location = 1) in vec3 inColor;
layout (location = 2) in vec2 inUV;
layout (location = 3) in vec3 inViewVec;
layout (location = 4) in vec3 inLightVec;
layout(push_constant) uniform Material
{
vec4 ambient;
vec4 diffuse;
vec4 specular;
float opacity;
} material;
layout (location = 0) out vec4 outFragColor;
void main()
{
vec4 color = texture(samplerColorMap, inUV) * vec4(inColor, 1.0);
vec3 N = normalize(inNormal);
vec3 L = normalize(inLightVec);
vec3 V = normalize(inViewVec);
vec3 R = reflect(-L, N);
vec3 diffuse = max(dot(N, L), 0.0) * material.diffuse.rgb;
vec3 specular = pow(max(dot(R, V), 0.0), 16.0) * material.specular.rgb;
outFragColor = vec4((material.ambient.rgb + diffuse) * color.rgb + specular, 1.0-material.opacity);
}

Binary file not shown.

View file

@ -0,0 +1,40 @@
#version 450
#extension GL_ARB_separate_shader_objects : enable
#extension GL_ARB_shading_language_420pack : enable
layout (location = 0) in vec3 inPos;
layout (location = 1) in vec3 inNormal;
layout (location = 2) in vec2 inUV;
layout (location = 3) in vec3 inColor;
layout (set = 0, binding = 0) uniform UBO
{
mat4 projection;
mat4 view;
mat4 model;
vec4 lightPos;
} ubo;
layout (location = 0) out vec3 outNormal;
layout (location = 1) out vec3 outColor;
layout (location = 2) out vec2 outUV;
layout (location = 3) out vec3 outViewVec;
layout (location = 4) out vec3 outLightVec;
void main()
{
outNormal = inNormal;
outColor = inColor;
outUV = inUV;
mat4 modelView = ubo.view * ubo.model;
gl_Position = ubo.projection * modelView * vec4(inPos.xyz, 1.0);
vec4 pos = modelView * vec4(inPos, 0.0);
outNormal = mat3(ubo.model) * inNormal;
vec3 lPos = mat3(ubo.model) * ubo.lightPos.xyz;
outLightVec = lPos - (ubo.model * vec4(inPos, 0.0)).xyz;
outViewVec = -(ubo.model * vec4(inPos, 0.0)).xyz;
}

Binary file not shown.