diff --git a/lib/gfx/gx_shader.cpp b/lib/gfx/gx_shader.cpp index a226b7b..5851c60 100644 --- a/lib/gfx/gx_shader.cpp +++ b/lib/gfx/gx_shader.cpp @@ -801,7 +801,7 @@ wgpu::ShaderModule build_shader(const ShaderConfig& config, const ShaderInfo& in } } vtxXfrAttrsPre += fmt::format(FMT_STRING("\n var mv_pos = ubuf.pos_mtx * vec4({}, 1.0);" - "\n var mv_nrm = ubuf.nrm_mtx * vec4({}, 0.0);" + "\n var mv_nrm = normalize(ubuf.nrm_mtx * vec4({}, 0.0));" "\n out.pos = ubuf.proj * vec4(mv_pos, 1.0);"), vtx_attr(config, GX_VA_POS), vtx_attr(config, GX_VA_NRM)); if constexpr (EnableNormalVisualization) { diff --git a/lib/internal.hpp b/lib/internal.hpp index 67fa787..b54d7a7 100644 --- a/lib/internal.hpp +++ b/lib/internal.hpp @@ -49,7 +49,7 @@ using namespace std::string_view_literals; if (!(cond)) \ UNLIKELY FATAL(msg, ##__VA_ARGS__) #ifdef NDEBUG -#define CHECK +#define CHECK(cond, msg, ...) #else #define CHECK(cond, msg, ...) ASSERT(cond, msg, ##__VA_ARGS__) #endif