diff options
author | Melanie Thielker | 2008-11-10 01:28:37 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-11-10 01:28:37 +0000 |
commit | ce37b80c685d089c89311671f526936d39ae965a (patch) | |
tree | 3907bc2872fc263e4866e67dd91b91ca03abd741 /OpenSim/Framework | |
parent | * Fixed asset bug. (diff) | |
download | opensim-SC_OLD-ce37b80c685d089c89311671f526936d39ae965a.zip opensim-SC_OLD-ce37b80c685d089c89311671f526936d39ae965a.tar.gz opensim-SC_OLD-ce37b80c685d089c89311671f526936d39ae965a.tar.bz2 opensim-SC_OLD-ce37b80c685d089c89311671f526936d39ae965a.tar.xz |
Thank you, idb, for a patch that fixes avatar height calculation
Our feet will now be above ground
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r-- | OpenSim/Framework/AvatarAppearance.cs | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/OpenSim/Framework/AvatarAppearance.cs b/OpenSim/Framework/AvatarAppearance.cs index 74a9f92..f2ceb20 100644 --- a/OpenSim/Framework/AvatarAppearance.cs +++ b/OpenSim/Framework/AvatarAppearance.cs | |||
@@ -267,22 +267,15 @@ namespace OpenSim.Framework | |||
267 | { | 267 | { |
268 | Primitive.TextureEntry textureEnt = new Primitive.TextureEntry(texture, 0, texture.Length); | 268 | Primitive.TextureEntry textureEnt = new Primitive.TextureEntry(texture, 0, texture.Length); |
269 | m_texture = textureEnt; | 269 | m_texture = textureEnt; |
270 | |||
271 | // m_log.DebugFormat("[APPEARANCE]: Setting an avatar appearance with {0} faces", m_texture.FaceTextures.Length); | ||
272 | // for (int i = 0; i < m_texture.FaceTextures.Length; i++) | ||
273 | // { | ||
274 | // Primitive.TextureEntryFace face = m_texture.FaceTextures[i]; | ||
275 | // String textureIdString = (face != null ? face.TextureID.ToString() : "none"); | ||
276 | // m_log.DebugFormat("[APPEARANCE]: Texture {0} is {1}", i, textureIdString); | ||
277 | // } | ||
278 | |||
279 | m_visualparams = visualParam.ToArray(); | 270 | m_visualparams = visualParam.ToArray(); |
271 | m_avatarHeight = 1.23077f // Shortest possible avatar height | ||
272 | + 0.516945f * (float)m_visualparams[25] / 255.0f // Body height | ||
273 | + 0.072514f * (float)m_visualparams[120] / 255.0f // Head size | ||
274 | + 0.3836f * (float)m_visualparams[125] / 255.0f // Leg length | ||
275 | + 0.08f * (float)m_visualparams[77] / 255.0f // Shoe heel height | ||
276 | + 0.07f * (float)m_visualparams[78] / 255.0f // Shoe platform height | ||
277 | + 0.076f * (float)m_visualparams[148] / 255.0f; // Neck length | ||
280 | 278 | ||
281 | // Teravus : Nifty AV Height Getting Maaaaagical formula. Oh how we love turning 0-255 into meters. | ||
282 | // (float)m_visualParams[25] = Height | ||
283 | // (float)m_visualParams[125] = LegLength | ||
284 | m_avatarHeight = (1.50856f + (((float) m_visualparams[25]/255.0f)*(2.525506f - 1.50856f))) | ||
285 | + (((float) m_visualparams[125]/255.0f)/1.5f); | ||
286 | } | 279 | } |
287 | 280 | ||
288 | public virtual void SetWearable(int wearableId, AvatarWearable wearable) | 281 | public virtual void SetWearable(int wearableId, AvatarWearable wearable) |