diff options
author | Oz Linden <oz@lindenlab.com> | 2011-07-11 06:16:19 -0400 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2011-07-11 06:16:19 -0400 |
commit | 8529c37deebab20f6e6cf98e6125d018cd0d434a (patch) | |
tree | 7ca9a54d1c398f5a007b6247ec99bdb6ba52ef9d /indra/llmath | |
parent | 58e09b5f526c5d42105f3455677f0bdd2d411ca8 (diff) | |
parent | 7541e6e31b67a40c334c81326c256da712d2a2da (diff) |
merge changes for storm-1488
Diffstat (limited to 'indra/llmath')
-rw-r--r-- | indra/llmath/llvolume.cpp | 46 |
1 files changed, 26 insertions, 20 deletions
diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp index f20a5c37b4..21cc9b22f2 100644 --- a/indra/llmath/llvolume.cpp +++ b/indra/llmath/llvolume.cpp @@ -2500,37 +2500,43 @@ bool LLVolume::unpackVolumeFaces(std::istream& is, S32 size) { U16* n = (U16*) &(norm[0]); - for (U32 j = 0; j < num_verts; ++j) + if(n) { - norm_out->set((F32) n[0], (F32) n[1], (F32) n[2]); - norm_out->div(65535.f); - norm_out->mul(2.f); - norm_out->sub(1.f); - norm_out++; - n += 3; + for (U32 j = 0; j < num_verts; ++j) + { + norm_out->set((F32) n[0], (F32) n[1], (F32) n[2]); + norm_out->div(65535.f); + norm_out->mul(2.f); + norm_out->sub(1.f); + norm_out++; + n += 3; + } } } { U16* t = (U16*) &(tc[0]); - for (U32 j = 0; j < num_verts; j+=2) + if(t) { - if (j < num_verts-1) + for (U32 j = 0; j < num_verts; j+=2) { - tc_out->set((F32) t[0], (F32) t[1], (F32) t[2], (F32) t[3]); - } - else - { - tc_out->set((F32) t[0], (F32) t[1], 0.f, 0.f); - } + if (j < num_verts-1) + { + tc_out->set((F32) t[0], (F32) t[1], (F32) t[2], (F32) t[3]); + } + else + { + tc_out->set((F32) t[0], (F32) t[1], 0.f, 0.f); + } - t += 4; + t += 4; - tc_out->div(65535.f); - tc_out->mul(tc_range); - tc_out->add(min_tc4); + tc_out->div(65535.f); + tc_out->mul(tc_range); + tc_out->add(min_tc4); - tc_out++; + tc_out++; + } } } |