[sldev] Object and Texture Cache
Kamilion
kamilion at gmail.com
Thu Sep 27 18:05:44 PDT 2007
On 9/27/07, Callum Lerwick <seg at haxxed.com> wrote:
> And a standard serialization format (XML) for SL objects to go with it.
Technically, this has already been accomplished in libsecondlife.
export and import work using an XML format for an object.
Here's an example (9kb, single prim) with a larger object attached (no
idea if sldev will scrub the attachment.):
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfPrimitive
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Primitive>
<ID UUID="3748d2bd-7e96-0978-a6a9-2a133d5a8608" />
<GroupID UUID="00000000-0000-0000-0000-000000000000" />
<LocalID>33178270</LocalID>
<ParentID>0</ParentID>
<RegionHandle>1128098930331392</RegionHandle>
<Flags>Physics ObjectAnyOwner InventoryEmpty CastShadows</Flags>
<GenericData />
<Position X="63.34289" Y="94.85302" Z="700.7215" />
<Scale X="0.8000001" Y="0.8000001" Z="1.28969276" />
<Rotation X="0.645412445" Y="0.2881241" Z="-0.6813986" W="0.1900612" />
<Velocity X="0" Y="0" Z="0" />
<AngularVelocity X="0" Y="0" Z="0" />
<Acceleration X="0" Y="0" Z="0" />
<CollisionPlane X="0" Y="0" Z="0" S="0" />
<Textures>
<DefaultTexture>
<RGBA>0</RGBA>
<RepeatU>1</RepeatU>
<RepeatV>0.9</RepeatV>
<OffsetU>0</OffsetU>
<OffsetV>0</OffsetV>
<Rotation>0</Rotation>
<Bump>None</Bump>
<Shiny>None</Shiny>
<Fullbright>false</Fullbright>
<MediaFlags>false</MediaFlags>
<TexMapType>Default</TexMapType>
<TextureID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
</DefaultTexture>
<FaceTextures>
<TextureEntryFace>
<RGBA>0</RGBA>
<RepeatU>0.98</RepeatU>
<RepeatV>0.48</RepeatV>
<OffsetU>0</OffsetU>
<OffsetV>0.239997566</OffsetV>
<Rotation>0</Rotation>
<Bump>None</Bump>
<Shiny>None</Shiny>
<Fullbright>false</Fullbright>
<MediaFlags>false</MediaFlags>
<TexMapType>Default</TexMapType>
<TextureID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
</TextureEntryFace>
<TextureEntryFace>
<RGBA>0</RGBA>
<RepeatU>2.7</RepeatU>
<RepeatV>0.4</RepeatV>
<OffsetU>0</OffsetU>
<OffsetV>-0.30002746</OffsetV>
<Rotation>0</Rotation>
<Bump>None</Bump>
<Shiny>None</Shiny>
<Fullbright>false</Fullbright>
<MediaFlags>false</MediaFlags>
<TexMapType>Default</TexMapType>
<TextureID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
</TextureEntryFace>
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
<TextureEntryFace xsi:nil="true" />
</FaceTextures>
</Textures>
<Properties>
<ObjectID UUID="3748d2bd-7e96-0978-a6a9-2a133d5a8608" />
<CreatorID UUID="babbe71e-f037-481e-b231-71c1a0ab354d" />
<OwnerID UUID="ba278c50-9f20-4359-b321-cab5e7df3231" />
<GroupID UUID="79be0135-2f04-c3a9-43ae-20213055d02c" />
<CreationDate>1172709155315346</CreationDate>
<BaseMask>557056</BaseMask>
<OwnerMask>557056</OwnerMask>
<GroupMask>0</GroupMask>
<EveryoneMask>0</EveryoneMask>
<NextOwnerMask>557056</NextOwnerMask>
<OwnershipCost>10</OwnershipCost>
<SaleType>0</SaleType>
<SalePrice>10</SalePrice>
<AggregatePerms>0</AggregatePerms>
<AggregatePermTextures>0</AggregatePermTextures>
<AggregatePermTexturesOwner>0</AggregatePermTexturesOwner>
<Category>0</Category>
<InventorySerial>0</InventorySerial>
<ItemID UUID="524dbe3b-e759-7e02-13e9-9a1ffb4a6d6b" />
<FolderID UUID="43196978-79d0-444e-bf99-b51699e7b86e" />
<FromTaskID UUID="00000000-0000-0000-0000-000000000000" />
<LastOwnerID UUID="babbe71e-f037-481e-b231-71c1a0ab354d" />
<Name>toxic barrel 3</Name>
<Description>(No Description)</Description>
<TouchName />
<SitName />
<TextureIDs>
<LLUUID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
<LLUUID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
<LLUUID UUID="70dba6da-952a-dccb-1b04-b7074599a6f1" />
</TextureIDs>
</Properties>
<NameValues />
<Data>
<PathTwistBegin>0</PathTwistBegin>
<PathEnd>1</PathEnd>
<ProfileBegin>0</ProfileBegin>
<PathRadiusOffset>0</PathRadiusOffset>
<PathSkew>0</PathSkew>
<ProfileCurve>0</ProfileCurve>
<PathScaleX>0</PathScaleX>
<PathScaleY>0</PathScaleY>
<Material>Wood</Material>
<PathShearX>0</PathShearX>
<PathShearY>0</PathShearY>
<PathTaperX>0</PathTaperX>
<PathTaperY>0</PathTaperY>
<ProfileEnd>1</ProfileEnd>
<PathBegin>0</PathBegin>
<PathCurve>16</PathCurve>
<PathTwist>0</PathTwist>
<ProfileHollow>0</ProfileHollow>
<PathRevolutions>1</PathRevolutions>
<State>0</State>
<PCode>Prim</PCode>
</Data>
<TextureAnim>
<Flags>0</Flags>
<Face>0</Face>
<SizeX>0</SizeX>
<SizeY>0</SizeY>
<Start>0</Start>
<Length>0</Length>
<Rate>0</Rate>
</TextureAnim>
<Flexible>
<Softness>0</Softness>
<Gravity>0</Gravity>
<Drag>0</Drag>
<Wind>0</Wind>
<Tension>0</Tension>
<Force X="0" Y="0" Z="0" />
</Flexible>
<Light>
<Color R="0" G="0" B="0" A="0" />
<Radius>0</Radius>
<Cutoff>0</Cutoff>
<Falloff>0</Falloff>
</Light>
<Sculpt>
<SculptTexture UUID="00000000-0000-0000-0000-000000000000" />
<Type>None</Type>
</Sculpt>
<ParticleSys>
<CRC>0</CRC>
<PartFlags>0</PartFlags>
<Pattern>None</Pattern>
<MaxAge>0</MaxAge>
<StartAge>0</StartAge>
<InnerAngle>0</InnerAngle>
<OuterAngle>0</OuterAngle>
<BurstRate>0</BurstRate>
<BurstRadius>0</BurstRadius>
<BurstSpeedMin>0</BurstSpeedMin>
<BurstSpeedMax>0</BurstSpeedMax>
<BurstPartCount>0</BurstPartCount>
<AngularVelocity X="0" Y="0" Z="0" />
<PartAcceleration X="0" Y="0" Z="0" />
<Texture UUID="00000000-0000-0000-0000-000000000000" />
<Target UUID="00000000-0000-0000-0000-000000000000" />
<PartDataFlags>None</PartDataFlags>
<PartMaxAge>0</PartMaxAge>
<PartStartColor R="0" G="0" B="0" A="1" />
<PartEndColor R="0" G="0" B="0" A="1" />
<PartStartScaleX>0</PartStartScaleX>
<PartStartScaleY>0</PartStartScaleY>
<PartEndScaleX>0</PartEndScaleX>
<PartEndScaleY>0</PartEndScaleY>
</ParticleSys>
<ClickAction>Touch</ClickAction>
<Sound UUID="00000000-0000-0000-0000-000000000000" />
<OwnerID UUID="00000000-0000-0000-0000-000000000000" />
<SoundFlags>0</SoundFlags>
<SoundGain>0</SoundGain>
<SoundRadius>0</SoundRadius>
<Text />
<TextColor R="0" G="0" B="0" A="255" />
<MediaURL />
<Joint>Invalid</Joint>
<JointPivot X="0" Y="0" Z="0" />
<JointAxisOrAnchor X="0" Y="0" Z="0" />
</Primitive>
</ArrayOfPrimitive>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testobject2.xml
Type: text/xml
Size: 76912 bytes
Desc: not available
Url : http://lists.secondlife.com/pipermail/sldev/attachments/20070927/e40debea/testobject2-0001.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testobject.xml
Type: text/xml
Size: 8198 bytes
Desc: not available
Url : http://lists.secondlife.com/pipermail/sldev/attachments/20070927/e40debea/testobject-0001.bin
More information about the SLDev
mailing list