diff options
author | Sean McNamara | 2011-04-23 18:33:08 -0400 |
---|---|---|
committer | Sean McNamara | 2011-04-23 18:33:08 -0400 |
commit | d287e0ac683acb0cab51bf0dbbc9d1fd08bd6bc9 (patch) | |
tree | 30a24bf66050c66ebe74b68745c4f1764fe09181 /OpenSim/Region/Physics/Meshing | |
parent | AutoBackup: Removed unneeded imports. (diff) | |
parent | Added MaxAgents configuration option to RegionConfig.ini allowing region host... (diff) | |
download | opensim-SC_OLD-d287e0ac683acb0cab51bf0dbbc9d1fd08bd6bc9.zip opensim-SC_OLD-d287e0ac683acb0cab51bf0dbbc9d1fd08bd6bc9.tar.gz opensim-SC_OLD-d287e0ac683acb0cab51bf0dbbc9d1fd08bd6bc9.tar.bz2 opensim-SC_OLD-d287e0ac683acb0cab51bf0dbbc9d1fd08bd6bc9.tar.xz |
Merge git://opensimulator.org/git/opensim
Diffstat (limited to 'OpenSim/Region/Physics/Meshing')
-rw-r--r-- | OpenSim/Region/Physics/Meshing/Meshmerizer.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/Physics/Meshing/SculptMap.cs | 13 |
2 files changed, 12 insertions, 4 deletions
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs index 211a0a7..64774d8 100644 --- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs +++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs | |||
@@ -84,10 +84,11 @@ namespace OpenSim.Region.Physics.Meshing | |||
84 | public Meshmerizer(IConfigSource config) | 84 | public Meshmerizer(IConfigSource config) |
85 | { | 85 | { |
86 | IConfig start_config = config.Configs["Startup"]; | 86 | IConfig start_config = config.Configs["Startup"]; |
87 | IConfig mesh_config = config.Configs["Mesh"]; | ||
87 | 88 | ||
88 | decodedSculptMapPath = start_config.GetString("DecodedSculptMapPath","j2kDecodeCache"); | 89 | decodedSculptMapPath = start_config.GetString("DecodedSculptMapPath","j2kDecodeCache"); |
89 | cacheSculptMaps = start_config.GetBoolean("CacheSculptMaps", cacheSculptMaps); | 90 | cacheSculptMaps = start_config.GetBoolean("CacheSculptMaps", cacheSculptMaps); |
90 | useMeshiesPhysicsMesh = start_config.GetBoolean("UseMeshiesPhysicsMesh", useMeshiesPhysicsMesh); | 91 | useMeshiesPhysicsMesh = mesh_config.GetBoolean("UseMeshiesPhysicsMesh", useMeshiesPhysicsMesh); |
91 | 92 | ||
92 | try | 93 | try |
93 | { | 94 | { |
diff --git a/OpenSim/Region/Physics/Meshing/SculptMap.cs b/OpenSim/Region/Physics/Meshing/SculptMap.cs index d2d71de..740424e 100644 --- a/OpenSim/Region/Physics/Meshing/SculptMap.cs +++ b/OpenSim/Region/Physics/Meshing/SculptMap.cs | |||
@@ -62,6 +62,8 @@ namespace PrimMesher | |||
62 | 62 | ||
63 | bool needsScaling = false; | 63 | bool needsScaling = false; |
64 | 64 | ||
65 | bool smallMap = bmW * bmH <= lod * lod; | ||
66 | |||
65 | width = bmW; | 67 | width = bmW; |
66 | height = bmH; | 68 | height = bmH; |
67 | while (width * height > numLodPixels) | 69 | while (width * height > numLodPixels) |
@@ -104,9 +106,14 @@ namespace PrimMesher | |||
104 | { | 106 | { |
105 | for (int x = 0; x <= width; x++) | 107 | for (int x = 0; x <= width; x++) |
106 | { | 108 | { |
107 | int bmY = y < height ? y * 2 : y * 2 - 1; | 109 | Color c; |
108 | int bmX = x < width ? x * 2 : x * 2 - 1; | 110 | |
109 | Color c = bm.GetPixel(bmX, bmY); | 111 | if (smallMap) |
112 | c = bm.GetPixel(x < width ? x : x - 1, | ||
113 | y < height ? y : y - 1); | ||
114 | else | ||
115 | c = bm.GetPixel(x < width ? x * 2 : x * 2 - 1, | ||
116 | y < height ? y * 2 : y * 2 - 1); | ||
110 | 117 | ||
111 | redBytes[byteNdx] = c.R; | 118 | redBytes[byteNdx] = c.R; |
112 | greenBytes[byteNdx] = c.G; | 119 | greenBytes[byteNdx] = c.G; |