diff --git a/res/shaders/LegacyBasePass.slang b/res/shaders/LegacyBasePass.slang index 8f8e38b..faa3596 100644 --- a/res/shaders/LegacyBasePass.slang +++ b/res/shaders/LegacyBasePass.slang @@ -14,12 +14,21 @@ struct Scene layout(set=2) ParameterBlock pScene; +struct VertexShaderOutput +{ + FragmentParameter parameter : PARAMETER; + float4 clipPos: SV_Position; +} + [shader("vertex")] -FragmentParameter vertexMain( +VertexShaderOutput vertexMain( uint vertexId: SV_VertexID, uint instanceId: SV_InstanceID, -) : PARAMETER{ +){ InstanceData inst = pScene.instances[instanceId]; VertexAttributes attr = pVertexData.getAttributes(vertexId, inst.transformMatrix); - return attr.getParameter(inst.transformMatrix); + VertexShaderOutput output; + output.parameter = attr.getParameter(inst.transformMatrix); + output.clipPos = output.parameter.position_CS; + return output; } \ No newline at end of file diff --git a/res/shaders/lib/BRDF.slang b/res/shaders/lib/BRDF.slang index 82b83e6..0cc3c3a 100644 --- a/res/shaders/lib/BRDF.slang +++ b/res/shaders/lib/BRDF.slang @@ -29,7 +29,7 @@ struct BlinnPhong : IBRDF float3 h = normalize(lightDir_TS + viewDir_TS); float nDotH = saturate(dot(normal, h)); - return baseColor; + return baseColor * (nDotL + nDotH) * lightColor; } }; diff --git a/src/Engine/Component/Camera.cpp b/src/Engine/Component/Camera.cpp index 63c7b4b..cfb7bf7 100644 --- a/src/Engine/Component/Camera.cpp +++ b/src/Engine/Component/Camera.cpp @@ -12,7 +12,7 @@ Camera::Camera() , bNeedsViewBuild(false) { yaw = 0; - pitch = 0; + pitch = 0.2; } Camera::~Camera()