diff options
| author | ruslantproductengine <ruslantproductengine@lindenlab.com> | 2017-01-24 15:56:25 +0200 | 
|---|---|---|
| committer | ruslantproductengine <ruslantproductengine@lindenlab.com> | 2017-01-24 15:56:25 +0200 | 
| commit | 6770c27321cf674af57c45ffee6faf09db788a6d (patch) | |
| tree | 7fe838baabaea1da6cb188e9a7b933e527154cfb /indra/llmath | |
| parent | 65161e6b393a6df6fa0a932aeb940fb7ac7ea084 (diff) | |
MAINT-6645 - Improvement - Agents that render as jelly dolls should have their attachments render at 0 LoD to prevent loading higher LoD complexity in memory thus deterring crashes.
Comments:
- Fix based on "RenderAutoMuteByteLimit" setting.
- File indra/llxml/llcontrol.h - add all signals to 0 group.
  It garanty that handlers (in indra/newview/llviewercontrol.cpp) will be called last.
Diffstat (limited to 'indra/llmath')
| -rw-r--r-- | indra/llmath/llvolume.cpp | 7 | ||||
| -rw-r--r-- | indra/llmath/llvolume.h | 2 | 
2 files changed, 5 insertions, 4 deletions
| diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp index 8b73f0ae8e..8d5e9de76b 100644 --- a/indra/llmath/llvolume.cpp +++ b/indra/llmath/llvolume.cpp @@ -545,7 +545,7 @@ void LLProfile::genNGon(const LLProfileParams& params, S32 sides, F32 offset, F3  {  	// Generate an n-sided "circular" path.  	// 0 is (1,0), and we go counter-clockwise along a circular path from there. -	const F32 tableScale[] = { 1, 1, 1, 0.5f, 0.707107f, 0.53f, 0.525f, 0.5f }; +	static const F32 tableScale[] = { 1, 1, 1, 0.5f, 0.707107f, 0.53f, 0.525f, 0.5f };  	F32 scale = 0.5f;  	F32 t, t_step, t_first, t_fraction, ang, ang_step;  	LLVector4a pt1,pt2; @@ -1304,7 +1304,7 @@ S32 LLPath::getNumNGonPoints(const LLPathParams& params, S32 sides, F32 startOff  void LLPath::genNGon(const LLPathParams& params, S32 sides, F32 startOff, F32 end_scale, F32 twist_scale)  {  	// Generates a circular path, starting at (1, 0, 0), counterclockwise along the xz plane. -	const F32 tableScale[] = { 1, 1, 1, 0.5f, 0.707107f, 0.53f, 0.525f, 0.5f }; +	static const F32 tableScale[] = { 1, 1, 1, 0.5f, 0.707107f, 0.53f, 0.525f, 0.5f };  	F32 revolutions = params.getRevolutions();  	F32 skew		= params.getSkew(); @@ -1602,7 +1602,8 @@ BOOL LLPath::generate(const LLPathParams& params, F32 detail, S32 split,  			if (is_sculpted)  				sides = llmax(sculpt_size, 1); -			genNGon(params, sides); +			if (0 < sides) +				genNGon(params, sides);  		}  		break; diff --git a/indra/llmath/llvolume.h b/indra/llmath/llvolume.h index bba691d243..65fbc4685e 100644 --- a/indra/llmath/llvolume.h +++ b/indra/llmath/llvolume.h @@ -1088,7 +1088,7 @@ public:  	F32 mSurfaceArea; //unscaled surface area  	BOOL mIsMeshAssetLoaded; -	LLVolumeParams mParams; +	const LLVolumeParams mParams;  	LLPath *mPathp;  	LLProfile *mProfilep;  	LLAlignedArray<LLVector4a,64> mMesh; | 
