diff options
Diffstat (limited to 'OpenSim/Region/Physics/Manager/IMesher.cs')
-rw-r--r-- | OpenSim/Region/Physics/Manager/IMesher.cs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/Manager/IMesher.cs b/OpenSim/Region/Physics/Manager/IMesher.cs index 3a9ca1b..a8c99f7 100644 --- a/OpenSim/Region/Physics/Manager/IMesher.cs +++ b/OpenSim/Region/Physics/Manager/IMesher.cs | |||
@@ -27,6 +27,7 @@ | |||
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using System.Runtime.InteropServices; | ||
30 | using OpenSim.Framework; | 31 | using OpenSim.Framework; |
31 | using OpenMetaverse; | 32 | using OpenMetaverse; |
32 | 33 | ||
@@ -36,6 +37,9 @@ namespace OpenSim.Region.Physics.Manager | |||
36 | { | 37 | { |
37 | IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod); | 38 | IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod); |
38 | IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod, bool isPhysical); | 39 | IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod, bool isPhysical); |
40 | IMesh CreateMesh(String primName, PrimitiveBaseShape primShape, Vector3 size, float lod, bool isPhysical,bool convex); | ||
41 | void ReleaseMesh(IMesh mesh); | ||
42 | void ExpireReleaseMeshs(); | ||
39 | } | 43 | } |
40 | 44 | ||
41 | // Values for level of detail to be passed to the mesher. | 45 | // Values for level of detail to be passed to the mesher. |
@@ -53,6 +57,17 @@ namespace OpenSim.Region.Physics.Manager | |||
53 | { | 57 | { |
54 | } | 58 | } |
55 | 59 | ||
60 | [StructLayout(LayoutKind.Explicit)] | ||
61 | public struct AMeshKey | ||
62 | { | ||
63 | [FieldOffset(0)] | ||
64 | public UUID uuid; | ||
65 | [FieldOffset(0)] | ||
66 | public ulong hashA; | ||
67 | [FieldOffset(8)] | ||
68 | public ulong hashB; | ||
69 | } | ||
70 | |||
56 | public interface IMesh | 71 | public interface IMesh |
57 | { | 72 | { |
58 | List<Vector3> getVertexList(); | 73 | List<Vector3> getVertexList(); |
@@ -65,5 +80,6 @@ namespace OpenSim.Region.Physics.Manager | |||
65 | void releasePinned(); | 80 | void releasePinned(); |
66 | void Append(IMesh newMesh); | 81 | void Append(IMesh newMesh); |
67 | void TransformLinear(float[,] matrix, float[] offset); | 82 | void TransformLinear(float[,] matrix, float[] offset); |
83 | Vector3 GetCentroid(); | ||
68 | } | 84 | } |
69 | } | 85 | } |