aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llprimitive/llmaterialtable.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/llprimitive/llmaterialtable.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/linden/indra/llprimitive/llmaterialtable.cpp b/linden/indra/llprimitive/llmaterialtable.cpp
index 537c968..5e45e44 100644
--- a/linden/indra/llprimitive/llmaterialtable.cpp
+++ b/linden/indra/llprimitive/llmaterialtable.cpp
@@ -39,6 +39,54 @@
39 39
40LLMaterialTable LLMaterialTable::basic(1); 40LLMaterialTable LLMaterialTable::basic(1);
41 41
42/*
43 Old Havok 1 constants
44
45// these are the approximately correct friction values for various materials
46// however Havok1's friction dynamics are not very correct, so the effective
47// friction coefficients that result from these numbers are approximately
48// 25-50% too low, more incorrect for the lower values.
49F32 const LLMaterialTable::FRICTION_MIN = 0.2f;
50F32 const LLMaterialTable::FRICTION_GLASS = 0.2f; // borosilicate glass
51F32 const LLMaterialTable::FRICTION_LIGHT = 0.2f; //
52F32 const LLMaterialTable::FRICTION_METAL = 0.3f; // steel
53F32 const LLMaterialTable::FRICTION_PLASTIC = 0.4f; // HDPE
54F32 const LLMaterialTable::FRICTION_WOOD = 0.6f; // southern pine
55F32 const LLMaterialTable::FRICTION_FLESH = 0.60f; // saltwater
56F32 const LLMaterialTable::FRICTION_LAND = 0.78f; // dirt
57F32 const LLMaterialTable::FRICTION_STONE = 0.8f; // concrete
58F32 const LLMaterialTable::FRICTION_RUBBER = 0.9f; //
59F32 const LLMaterialTable::FRICTION_MAX = 0.95f; //
60*/
61
62// #if LL_CURRENT_HAVOK_VERSION == LL_HAVOK_VERSION_460
63// Havok4 has more correct friction dynamics, however here we have to use
64// the "incorrect" equivalents for the legacy Havok1 behavior
65F32 const LLMaterialTable::FRICTION_MIN = 0.15f;
66F32 const LLMaterialTable::FRICTION_GLASS = 0.13f; // borosilicate glass
67F32 const LLMaterialTable::FRICTION_LIGHT = 0.14f; //
68F32 const LLMaterialTable::FRICTION_METAL = 0.22f; // steel
69F32 const LLMaterialTable::FRICTION_PLASTIC = 0.3f; // HDPE
70F32 const LLMaterialTable::FRICTION_WOOD = 0.44f; // southern pine
71F32 const LLMaterialTable::FRICTION_FLESH = 0.46f; // saltwater
72F32 const LLMaterialTable::FRICTION_LAND = 0.58f; // dirt
73F32 const LLMaterialTable::FRICTION_STONE = 0.6f; // concrete
74F32 const LLMaterialTable::FRICTION_RUBBER = 0.67f; //
75F32 const LLMaterialTable::FRICTION_MAX = 0.71f; //
76// #endif
77
78F32 const LLMaterialTable::RESTITUTION_MIN = 0.02f;
79F32 const LLMaterialTable::RESTITUTION_LAND = LLMaterialTable::RESTITUTION_MIN;
80F32 const LLMaterialTable::RESTITUTION_FLESH = 0.2f; // saltwater
81F32 const LLMaterialTable::RESTITUTION_STONE = 0.4f; // concrete
82F32 const LLMaterialTable::RESTITUTION_METAL = 0.4f; // steel
83F32 const LLMaterialTable::RESTITUTION_WOOD = 0.5f; // southern pine
84F32 const LLMaterialTable::RESTITUTION_GLASS = 0.7f; // borosilicate glass
85F32 const LLMaterialTable::RESTITUTION_PLASTIC = 0.7f; // HDPE
86F32 const LLMaterialTable::RESTITUTION_LIGHT = 0.7f; //
87F32 const LLMaterialTable::RESTITUTION_RUBBER = 0.9f; //
88F32 const LLMaterialTable::RESTITUTION_MAX = 0.95f;
89
42F32 const LLMaterialTable::DEFAULT_FRICTION = 0.5f; 90F32 const LLMaterialTable::DEFAULT_FRICTION = 0.5f;
43F32 const LLMaterialTable::DEFAULT_RESTITUTION = 0.4f; 91F32 const LLMaterialTable::DEFAULT_RESTITUTION = 0.4f;
44 92