From 78e62d00306f55c4f04366bf8f89fd7b3ccdf489 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Fri, 29 Oct 2010 12:06:20 -0500 Subject: Fix for bad normals on some prim faces. --- indra/llmath/llvolume.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'indra') diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp index a0874e859c..2411bb7900 100644 --- a/indra/llmath/llvolume.cpp +++ b/indra/llmath/llvolume.cpp @@ -92,11 +92,13 @@ extern BOOL gDebugGL; void assert_aligned(void* ptr, U32 alignment) { +#if 0 U32 t = (U32) ptr; if (t%alignment != 0) { llerrs << "WTF?" << llendl; } +#endif } BOOL check_same_clock_dir( const LLVector3& pt1, const LLVector3& pt2, const LLVector3& pt3, const LLVector3& norm) @@ -6600,6 +6602,12 @@ BOOL LLVolumeFace::createSide(LLVolume* volume, BOOL partial_build) } } + //clear normals + for (U32 i = 0; i < mNumVertices; i++) + { + mNormals[i].clear(); + } + //generate normals for (U32 i = 0; i < mNumIndices/3; i++) //for each triangle { -- cgit v1.2.3 From e8a92e69101b0db9166371f800feae7b6e1a9a82 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Fri, 29 Oct 2010 12:06:45 -0500 Subject: Fix for sometimes missing the color value on last vertex of a face. --- indra/newview/llface.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'indra') diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index 4de61964c7..f5a04c8c81 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -1665,6 +1665,11 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, LLVector4a* dst = (LLVector4a*) colors.get(); S32 num_vecs = num_vertices/4; + if (num_vertices%4 > 0) + { + ++num_vecs; + } + for (S32 i = 0; i < num_vecs; i++) { dst[i] = src; -- cgit v1.2.3 From b32cb5b1e4cd40a9e9363803d04a940616213054 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Fri, 29 Oct 2010 12:07:02 -0500 Subject: Fix for assert in pipeline on startup. --- indra/newview/llviewercontrol.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'indra') diff --git a/indra/newview/llviewercontrol.cpp b/indra/newview/llviewercontrol.cpp index 131c712241..13dee0c7b7 100644 --- a/indra/newview/llviewercontrol.cpp +++ b/indra/newview/llviewercontrol.cpp @@ -123,7 +123,10 @@ static bool handleSetShaderChanged(const LLSD& newvalue) static bool handleLightingDetailChanged(const LLSD& newvalue) { - gPipeline.setLightingDetail(-1); + if (gPipeline.isInit()) + { + gPipeline.setLightingDetail(-1); + } return true; } -- cgit v1.2.3