diff options
author | Adam Frisby | 2009-04-01 11:03:42 +0000 |
---|---|---|
committer | Adam Frisby | 2009-04-01 11:03:42 +0000 |
commit | 1a25969096834e104d1ea69a26cab9c5b0a061eb (patch) | |
tree | 6cf11568dd739f7c6455cdf4e042232d59f132a6 /OpenSim/Region/OptionalModules/Scripting | |
parent | * MRM Adjustments (diff) | |
download | opensim-SC-1a25969096834e104d1ea69a26cab9c5b0a061eb.zip opensim-SC-1a25969096834e104d1ea69a26cab9c5b0a061eb.tar.gz opensim-SC-1a25969096834e104d1ea69a26cab9c5b0a061eb.tar.bz2 opensim-SC-1a25969096834e104d1ea69a26cab9c5b0a061eb.tar.xz |
* MRM Adjustments
* Renamed 'Material' to PhysicsMaterial (Wood, Glass, Metal, etc.). May want to place in subclass with other physics specific properties. (We however need to support these features in ODE/etc first.)
* Renamed Faces to Materials. IObjectFace to IObjectMaterial - this is for clarity for those coming from a 3D Programming background (it also makes more sense if/when we support Meshes in core). Properties and members remain identical.
* Added XMLDoc comments to IObject to assist people writing MRMs in XMLDoc aware editors.
Diffstat (limited to 'OpenSim/Region/OptionalModules/Scripting')
4 files changed, 32 insertions, 14 deletions
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/IObject.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/IObject.cs index c7f9569..da8fce5 100644 --- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/IObject.cs +++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/IObject.cs | |||
@@ -40,19 +40,41 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
40 | String Name { get; set; } | 40 | String Name { get; set; } |
41 | String Description { get; set; } | 41 | String Description { get; set; } |
42 | 42 | ||
43 | IObject[] Children { get; } | 43 | |
44 | 44 | ||
45 | /// <summary> | 45 | /// <summary> |
46 | /// Equals 'this' if we have no parent. Ergo, Root.Children.Count will always return the total number of items in the linkset. | 46 | /// Returns the root object of a linkset. If this object is the root, it will return itself. |
47 | /// </summary> | 47 | /// </summary> |
48 | IObject Root { get; } | 48 | IObject Root { get; } |
49 | 49 | ||
50 | IObjectFace[] Faces { get; } | 50 | /// <summary> |
51 | /// Returns a collection of objects which are linked to the current object. Does not include the root object. | ||
52 | /// </summary> | ||
53 | IObject[] Children { get; } | ||
54 | |||
55 | /// <summary> | ||
56 | /// Returns a list of materials attached to this object. Each may contain unique texture | ||
57 | /// and other visual information. For primitive based objects, this correlates with | ||
58 | /// Object Faces. For mesh based objects, this correlates with Materials. | ||
59 | /// </summary> | ||
60 | IObjectMaterial[] Materials { get; } | ||
51 | 61 | ||
62 | /// <summary> | ||
63 | /// The bounding box of the object. Primitive and Mesh objects alike are scaled to fit within these bounds. | ||
64 | /// </summary> | ||
52 | Vector3 Scale { get; set; } | 65 | Vector3 Scale { get; set; } |
66 | |||
67 | /// <summary> | ||
68 | /// The rotation of the object relative to the Scene | ||
69 | /// </summary> | ||
53 | Quaternion Rotation { get; set; } | 70 | Quaternion Rotation { get; set; } |
71 | |||
72 | /// <summary> | ||
73 | /// The position of the object relative to the Scene | ||
74 | /// </summary> | ||
54 | Vector3 Position { get; set; } | 75 | Vector3 Position { get; set; } |
55 | 76 | ||
77 | |||
56 | Vector3 SitTarget { get; set; } | 78 | Vector3 SitTarget { get; set; } |
57 | String SitTargetText { get; set; } | 79 | String SitTargetText { get; set; } |
58 | 80 | ||
@@ -80,10 +102,10 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
80 | // Taper[A+B], Shear[A+B], Revolutions, | 102 | // Taper[A+B], Shear[A+B], Revolutions, |
81 | // RadiusOffset, Skew | 103 | // RadiusOffset, Skew |
82 | 104 | ||
83 | Material Material { get; set; } | 105 | PhysicsMaterial PhysicsMaterial { get; set; } |
84 | } | 106 | } |
85 | 107 | ||
86 | public enum Material | 108 | public enum PhysicsMaterial |
87 | { | 109 | { |
88 | Default, | 110 | Default, |
89 | Glass, | 111 | Glass, |
@@ -114,7 +136,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
114 | Planar | 136 | Planar |
115 | } | 137 | } |
116 | 138 | ||
117 | public interface IObjectFace | 139 | public interface IObjectMaterial |
118 | { | 140 | { |
119 | Color Color { get; set; } | 141 | Color Color { get; set; } |
120 | UUID Texture { get; set; } | 142 | UUID Texture { get; set; } |
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/IWorld.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/IWorld.cs index 1b1ce92..f06f57a 100644 --- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/IWorld.cs +++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/IWorld.cs | |||
@@ -25,10 +25,6 @@ | |||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System; | ||
29 | using System.Collections.Generic; | ||
30 | using System.Text; | ||
31 | |||
32 | namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | 28 | namespace OpenSim.Region.OptionalModules.Scripting.Minimodule |
33 | { | 29 | { |
34 | public interface IWorld | 30 | public interface IWorld |
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs index 538a496..8b7b470 100644 --- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs +++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs | |||
@@ -80,12 +80,12 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
80 | get { return new SOPObject(m_rootScene, GetSOP().ParentGroup.RootPart.LocalId); } | 80 | get { return new SOPObject(m_rootScene, GetSOP().ParentGroup.RootPart.LocalId); } |
81 | } | 81 | } |
82 | 82 | ||
83 | public IObjectFace[] Faces | 83 | public IObjectMaterial[] Materials |
84 | { | 84 | { |
85 | get | 85 | get |
86 | { | 86 | { |
87 | SceneObjectPart sop = GetSOP(); | 87 | SceneObjectPart sop = GetSOP(); |
88 | IObjectFace[] rets = new IObjectFace[getNumberOfSides(sop)]; | 88 | IObjectMaterial[] rets = new IObjectMaterial[getNumberOfSides(sop)]; |
89 | 89 | ||
90 | for (int i = 0; i < rets.Length;i++ ) | 90 | for (int i = 0; i < rets.Length;i++ ) |
91 | { | 91 | { |
@@ -208,7 +208,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
208 | set { throw new System.NotImplementedException(); } | 208 | set { throw new System.NotImplementedException(); } |
209 | } | 209 | } |
210 | 210 | ||
211 | public Material Material | 211 | public PhysicsMaterial PhysicsMaterial |
212 | { | 212 | { |
213 | get { throw new System.NotImplementedException(); } | 213 | get { throw new System.NotImplementedException(); } |
214 | set { throw new System.NotImplementedException(); } | 214 | set { throw new System.NotImplementedException(); } |
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/World.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/World.cs index 987868a..c798cc8 100644 --- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/World.cs +++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/World.cs | |||
@@ -35,7 +35,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule | |||
35 | private readonly Scene m_internalScene; | 35 | private readonly Scene m_internalScene; |
36 | private readonly Heightmap m_heights; | 36 | private readonly Heightmap m_heights; |
37 | 37 | ||
38 | private ObjectAccessor m_objs; | 38 | private readonly ObjectAccessor m_objs; |
39 | 39 | ||
40 | public World(Scene internalScene) | 40 | public World(Scene internalScene) |
41 | { | 41 | { |