diff options
Diffstat (limited to 'linden/indra/llmath/llvolume.cpp')
-rw-r--r-- | linden/indra/llmath/llvolume.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/linden/indra/llmath/llvolume.cpp b/linden/indra/llmath/llvolume.cpp index 1250f53..a1cfe1d 100644 --- a/linden/indra/llmath/llvolume.cpp +++ b/linden/indra/llmath/llvolume.cpp | |||
@@ -2208,10 +2208,16 @@ void LLVolume::sculpt(U16 sculpt_width, U16 sculpt_height, S8 sculpt_components, | |||
2208 | S32 requested_sizeS = 0; | 2208 | S32 requested_sizeS = 0; |
2209 | S32 requested_sizeT = 0; | 2209 | S32 requested_sizeT = 0; |
2210 | 2210 | ||
2211 | sculpt_calc_mesh_resolution(sculpt_width, sculpt_height, sculpt_type, mDetail, requested_sizeS, requested_sizeT); | 2211 | // create oblong sculpties with high LOD always |
2212 | F32 sculpt_detail = mDetail; | ||
2213 | if (sculpt_width != sculpt_height && sculpt_detail < 4.0) | ||
2214 | { | ||
2215 | sculpt_detail = 4.0; | ||
2216 | } | ||
2217 | sculpt_calc_mesh_resolution(sculpt_width, sculpt_height, sculpt_type, sculpt_detail, requested_sizeS, requested_sizeT); | ||
2212 | 2218 | ||
2213 | mPathp->generate(mParams.getPathParams(), mDetail, 0, TRUE, requested_sizeS); | 2219 | mPathp->generate(mParams.getPathParams(), sculpt_detail, 0, TRUE, requested_sizeS); |
2214 | mProfilep->generate(mParams.getProfileParams(), mPathp->isOpen(), mDetail, 0, TRUE, requested_sizeT); | 2220 | mProfilep->generate(mParams.getProfileParams(), mPathp->isOpen(), sculpt_detail, 0, TRUE, requested_sizeT); |
2215 | 2221 | ||
2216 | S32 sizeS = mPathp->mPath.size(); // we requested a specific size, now see what we really got | 2222 | S32 sizeS = mPathp->mPath.size(); // we requested a specific size, now see what we really got |
2217 | S32 sizeT = mProfilep->mProfile.size(); // we requested a specific size, now see what we really got | 2223 | S32 sizeT = mProfilep->mProfile.size(); // we requested a specific size, now see what we really got |