diff options
author | Adam Frisby | 2007-05-27 06:50:23 +0000 |
---|---|---|
committer | Adam Frisby | 2007-05-27 06:50:23 +0000 |
commit | 4383a148877bef2f67b4d14977dc49e29af09eb7 (patch) | |
tree | 8d941c67672b34db311bdb4953c09742a5d9b707 /OpenSim/OpenSim.RegionServer | |
parent | * Added ability to set default terrain to a file in region config. If unable ... (diff) | |
download | opensim-SC_OLD-4383a148877bef2f67b4d14977dc49e29af09eb7.zip opensim-SC_OLD-4383a148877bef2f67b4d14977dc49e29af09eb7.tar.gz opensim-SC_OLD-4383a148877bef2f67b4d14977dc49e29af09eb7.tar.bz2 opensim-SC_OLD-4383a148877bef2f67b4d14977dc49e29af09eb7.tar.xz |
* Region Terrain textures are now loaded from the RegionInfo class rather than being hard coded in the handshake packets.
* Supports: Base0-3 textures, Detail0-3 textures, Start00-11 values, Range00-11 values.
* Added notes on how terrain texturing works to their definition in regionInfoBase.
Diffstat (limited to 'OpenSim/OpenSim.RegionServer')
-rw-r--r-- | OpenSim/OpenSim.RegionServer/RegionInfoBase.cs | 38 | ||||
-rw-r--r-- | OpenSim/OpenSim.RegionServer/world/Avatar.cs | 32 | ||||
-rw-r--r-- | OpenSim/OpenSim.RegionServer/world/WorldBase.cs | 2 |
3 files changed, 39 insertions, 33 deletions
diff --git a/OpenSim/OpenSim.RegionServer/RegionInfoBase.cs b/OpenSim/OpenSim.RegionServer/RegionInfoBase.cs index afad245..6e4c110 100644 --- a/OpenSim/OpenSim.RegionServer/RegionInfoBase.cs +++ b/OpenSim/OpenSim.RegionServer/RegionInfoBase.cs | |||
@@ -24,22 +24,28 @@ namespace OpenSim | |||
24 | public string IPListenAddr; | 24 | public string IPListenAddr; |
25 | 25 | ||
26 | // Region Information | 26 | // Region Information |
27 | public LLUUID TerrainBase0 = new LLUUID(); // Insert default here | 27 | // Low resolution 'base' textures. No longer used. |
28 | public LLUUID TerrainBase1 = new LLUUID(); | 28 | public LLUUID TerrainBase0 = new LLUUID("b8d3965a-ad78-bf43-699b-bff8eca6c975"); // Default |
29 | public LLUUID TerrainBase2 = new LLUUID(); | 29 | public LLUUID TerrainBase1 = new LLUUID("abb783e6-3e93-26c0-248a-247666855da3"); // Default |
30 | public LLUUID TerrainBase3 = new LLUUID(); | 30 | public LLUUID TerrainBase2 = new LLUUID("179cdabd-398a-9b6b-1391-4dc333ba321f"); // Default |
31 | public LLUUID TerrainDetail0 = new LLUUID(); | 31 | public LLUUID TerrainBase3 = new LLUUID("beb169c7-11ea-fff2-efe5-0f24dc881df2"); // Default |
32 | public LLUUID TerrainDetail1 = new LLUUID(); | 32 | // Higher resolution terrain textures |
33 | public LLUUID TerrainDetail2 = new LLUUID(); | 33 | public LLUUID TerrainDetail0 = new LLUUID("00000000-0000-0000-0000-000000000000"); |
34 | public LLUUID TerrainDetail3 = new LLUUID(); | 34 | public LLUUID TerrainDetail1 = new LLUUID("00000000-0000-0000-0000-000000000000"); |
35 | public float TerrainStartHeight00 = 0.0f; | 35 | public LLUUID TerrainDetail2 = new LLUUID("00000000-0000-0000-0000-000000000000"); |
36 | public float TerrainStartHeight01 = 0.0f; | 36 | public LLUUID TerrainDetail3 = new LLUUID("00000000-0000-0000-0000-000000000000"); |
37 | public float TerrainStartHeight10 = 0.0f; | 37 | // First quad - each point is bilinearly interpolated at each meter of terrain |
38 | public float TerrainStartHeight11 = 0.0f; | 38 | public float TerrainStartHeight00 = 10.0f; // NW Corner ( I think ) |
39 | public float TerrainHeightRange00 = 40.0f; | 39 | public float TerrainStartHeight01 = 10.0f; // NE Corner ( I think ) |
40 | public float TerrainHeightRange01 = 40.0f; | 40 | public float TerrainStartHeight10 = 10.0f; // SW Corner ( I think ) |
41 | public float TerrainHeightRange10 = 40.0f; | 41 | public float TerrainStartHeight11 = 10.0f; // SE Corner ( I think ) |
42 | public float TerrainHeightRange11 = 40.0f; | 42 | // Second quad - also bilinearly interpolated. |
43 | // Terrain texturing is done that: | ||
44 | // 0..3 (0 = base0, 3 = base3) = (terrain[x,y] - start[x,y]) / range[x,y] | ||
45 | public float TerrainHeightRange00 = 60.0f; | ||
46 | public float TerrainHeightRange01 = 60.0f; | ||
47 | public float TerrainHeightRange10 = 60.0f; | ||
48 | public float TerrainHeightRange11 = 60.0f; | ||
43 | 49 | ||
44 | // Terrain Default (Must be in F32 Format!) | 50 | // Terrain Default (Must be in F32 Format!) |
45 | public string TerrainFile = "default.r32"; | 51 | public string TerrainFile = "default.r32"; |
diff --git a/OpenSim/OpenSim.RegionServer/world/Avatar.cs b/OpenSim/OpenSim.RegionServer/world/Avatar.cs index 2c1ccdf..a09ce73 100644 --- a/OpenSim/OpenSim.RegionServer/world/Avatar.cs +++ b/OpenSim/OpenSim.RegionServer/world/Avatar.cs | |||
@@ -389,14 +389,14 @@ namespace OpenSim.world | |||
389 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.VERBOSE,"Avatar.cs:SendRegionhandshake() - Filling in RegionHandshake details"); | 389 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.VERBOSE,"Avatar.cs:SendRegionhandshake() - Filling in RegionHandshake details"); |
390 | handshake.RegionInfo.BillableFactor = 0; | 390 | handshake.RegionInfo.BillableFactor = 0; |
391 | handshake.RegionInfo.IsEstateManager = false; | 391 | handshake.RegionInfo.IsEstateManager = false; |
392 | handshake.RegionInfo.TerrainHeightRange00 = 60; | 392 | handshake.RegionInfo.TerrainHeightRange00 = regionInfo.m_regInfo.TerrainHeightRange00; |
393 | handshake.RegionInfo.TerrainHeightRange01 = 60; | 393 | handshake.RegionInfo.TerrainHeightRange01 = regionInfo.m_regInfo.TerrainHeightRange01; |
394 | handshake.RegionInfo.TerrainHeightRange10 = 60; | 394 | handshake.RegionInfo.TerrainHeightRange10 = regionInfo.m_regInfo.TerrainHeightRange10; |
395 | handshake.RegionInfo.TerrainHeightRange11 = 60; | 395 | handshake.RegionInfo.TerrainHeightRange11 = regionInfo.m_regInfo.TerrainHeightRange11; |
396 | handshake.RegionInfo.TerrainStartHeight00 = 10; | 396 | handshake.RegionInfo.TerrainStartHeight00 = regionInfo.m_regInfo.TerrainStartHeight00; |
397 | handshake.RegionInfo.TerrainStartHeight01 = 10; | 397 | handshake.RegionInfo.TerrainStartHeight01 = regionInfo.m_regInfo.TerrainStartHeight01; |
398 | handshake.RegionInfo.TerrainStartHeight10 = 10; | 398 | handshake.RegionInfo.TerrainStartHeight10 = regionInfo.m_regInfo.TerrainStartHeight10; |
399 | handshake.RegionInfo.TerrainStartHeight11 = 10; | 399 | handshake.RegionInfo.TerrainStartHeight11 = regionInfo.m_regInfo.TerrainStartHeight11; |
400 | handshake.RegionInfo.SimAccess = 13; | 400 | handshake.RegionInfo.SimAccess = 13; |
401 | handshake.RegionInfo.WaterHeight = m_regionWaterHeight; | 401 | handshake.RegionInfo.WaterHeight = m_regionWaterHeight; |
402 | uint regionFlags = 72458694; | 402 | uint regionFlags = 72458694; |
@@ -407,14 +407,14 @@ namespace OpenSim.world | |||
407 | handshake.RegionInfo.RegionFlags = regionFlags; | 407 | handshake.RegionInfo.RegionFlags = regionFlags; |
408 | handshake.RegionInfo.SimName = _enc.GetBytes(m_regionName + "\0"); | 408 | handshake.RegionInfo.SimName = _enc.GetBytes(m_regionName + "\0"); |
409 | handshake.RegionInfo.SimOwner = new LLUUID("00000000-0000-0000-0000-000000000000"); | 409 | handshake.RegionInfo.SimOwner = new LLUUID("00000000-0000-0000-0000-000000000000"); |
410 | handshake.RegionInfo.TerrainBase0 = new LLUUID("b8d3965a-ad78-bf43-699b-bff8eca6c975"); | 410 | handshake.RegionInfo.TerrainBase0 = regionInfo.m_regInfo.TerrainBase0; |
411 | handshake.RegionInfo.TerrainBase1 = new LLUUID("abb783e6-3e93-26c0-248a-247666855da3"); | 411 | handshake.RegionInfo.TerrainBase1 = regionInfo.m_regInfo.TerrainBase1; |
412 | handshake.RegionInfo.TerrainBase2 = new LLUUID("179cdabd-398a-9b6b-1391-4dc333ba321f"); | 412 | handshake.RegionInfo.TerrainBase2 = regionInfo.m_regInfo.TerrainBase2; |
413 | handshake.RegionInfo.TerrainBase3 = new LLUUID("beb169c7-11ea-fff2-efe5-0f24dc881df2"); | 413 | handshake.RegionInfo.TerrainBase3 = regionInfo.m_regInfo.TerrainBase3; |
414 | handshake.RegionInfo.TerrainDetail0 = new LLUUID("00000000-0000-0000-0000-000000000000"); | 414 | handshake.RegionInfo.TerrainDetail0 = regionInfo.m_regInfo.TerrainDetail0; |
415 | handshake.RegionInfo.TerrainDetail1 = new LLUUID("00000000-0000-0000-0000-000000000000"); | 415 | handshake.RegionInfo.TerrainDetail1 = regionInfo.m_regInfo.TerrainDetail1; |
416 | handshake.RegionInfo.TerrainDetail2 = new LLUUID("00000000-0000-0000-0000-000000000000"); | 416 | handshake.RegionInfo.TerrainDetail2 = regionInfo.m_regInfo.TerrainDetail2; |
417 | handshake.RegionInfo.TerrainDetail3 = new LLUUID("00000000-0000-0000-0000-000000000000"); | 417 | handshake.RegionInfo.TerrainDetail3 = regionInfo.m_regInfo.TerrainDetail3; |
418 | handshake.RegionInfo.CacheID = new LLUUID("545ec0a5-5751-1026-8a0b-216e38a7ab37"); | 418 | handshake.RegionInfo.CacheID = new LLUUID("545ec0a5-5751-1026-8a0b-216e38a7ab37"); |
419 | 419 | ||
420 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.VERBOSE,"Avatar.cs:SendRegionHandshake() - Sending RegionHandshake packet"); | 420 | OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.VERBOSE,"Avatar.cs:SendRegionHandshake() - Sending RegionHandshake packet"); |
diff --git a/OpenSim/OpenSim.RegionServer/world/WorldBase.cs b/OpenSim/OpenSim.RegionServer/world/WorldBase.cs index ea71411..f8fb49d 100644 --- a/OpenSim/OpenSim.RegionServer/world/WorldBase.cs +++ b/OpenSim/OpenSim.RegionServer/world/WorldBase.cs | |||
@@ -25,7 +25,7 @@ namespace OpenSim.world | |||
25 | protected string m_regionName; | 25 | protected string m_regionName; |
26 | protected InventoryCache _inventoryCache; | 26 | protected InventoryCache _inventoryCache; |
27 | protected AssetCache _assetCache; | 27 | protected AssetCache _assetCache; |
28 | protected RegionInfo m_regInfo; | 28 | public RegionInfo m_regInfo; |
29 | 29 | ||
30 | public TerrainEngine Terrain; //TODO: Replace TerrainManager with this. | 30 | public TerrainEngine Terrain; //TODO: Replace TerrainManager with this. |
31 | protected libsecondlife.TerrainManager TerrainManager; // To be referenced via TerrainEngine | 31 | protected libsecondlife.TerrainManager TerrainManager; // To be referenced via TerrainEngine |