From e9d4cbaa3c44337115d672d2038a7b73745181c8 Mon Sep 17 00:00:00 2001 From: Connor Thomson Date: Thu, 10 Sep 2026 17:07:15 -0700 Subject: Update teapot model, add phong shading, & more --- shaders/obj.vert.slang | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'shaders/obj.vert.slang') diff --git a/shaders/obj.vert.slang b/shaders/obj.vert.slang index 2d45e1d..1884b97 100644 --- a/shaders/obj.vert.slang +++ b/shaders/obj.vert.slang @@ -20,6 +20,8 @@ struct ObjUniforms { float4x4 mvp; float4x4 model; + float3 camera_position; + float padding; }; [[vk::binding(0, 1)]] @@ -31,13 +33,18 @@ struct VSInput { }; struct VSOutput { - float4 position : SV_Position; - float3 normal : TEXCOORD0; + float4 position : SV_Position; + float3 normal : TEXCOORD0; + float3 world_position : TEXCOORD1; + float3 camera_position : TEXCOORD2; }; VSOutput main(VSInput input) { VSOutput output; - output.position = mul(uniforms.mvp, float4(input.position, 1.0)); - output.normal = normalize(mul((float3x3)uniforms.model, input.normal)); + float4 world_position = mul(uniforms.model, float4(input.position, 1.0)); + output.position = mul(uniforms.mvp, float4(input.position, 1.0)); + output.normal = normalize(mul((float3x3)uniforms.model, input.normal)); + output.world_position = world_position.xyz; + output.camera_position = uniforms.camera_position; return output; } -- cgit v1.2.3