mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
In UuidGatherer, gather materials referenced in the prim's TextureEntry
Signed-off-by: dahlia <dahlia@nomail>
This commit is contained in:
@@ -161,7 +161,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
{
|
||||
// Get the prim's default texture. This will be used for faces which don't have their own texture
|
||||
if (textureEntry.DefaultTexture != null)
|
||||
assetUuids[textureEntry.DefaultTexture.TextureID] = (sbyte)AssetType.Texture;
|
||||
GatherTextureEntryAssets(textureEntry.DefaultTexture, assetUuids);
|
||||
|
||||
if (textureEntry.FaceTextures != null)
|
||||
{
|
||||
@@ -169,7 +169,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
foreach (Primitive.TextureEntryFace texture in textureEntry.FaceTextures)
|
||||
{
|
||||
if (texture != null)
|
||||
assetUuids[texture.TextureID] = (sbyte)AssetType.Texture;
|
||||
GatherTextureEntryAssets(texture, assetUuids);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -233,6 +233,19 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gather all the asset uuids found in one face of a Texture Entry.
|
||||
/// </summary>
|
||||
private void GatherTextureEntryAssets(Primitive.TextureEntryFace texture, IDictionary<UUID, sbyte> assetUuids)
|
||||
{
|
||||
assetUuids[texture.TextureID] = (sbyte)AssetType.Texture;
|
||||
|
||||
if (texture.MaterialID != UUID.Zero)
|
||||
{
|
||||
GatherAssetUuids(texture.MaterialID, (sbyte)OpenSimAssetType.Material, assetUuids);
|
||||
}
|
||||
}
|
||||
|
||||
// /// <summary>
|
||||
// /// The callback made when we request the asset for an object from the asset service.
|
||||
// /// </summary>
|
||||
|
||||
Reference in New Issue
Block a user