Skip to content
This repository has been archived by the owner on Aug 19, 2018. It is now read-only.

Flatbuffer Prim

David Daeschler edited this page Feb 3, 2017 · 3 revisions

Flatbuffer Prim Format

High level

For a flatbuffer primitive object, we only need to send enough data to describe the visual aspects. The flatbuffer version of a prim is based on the thoosa protobuf version. The required fields have been extracted below.

Primitive

type name
Guid Id
string Name
string Description
Guid Sound
byte SoundFlags
float SoundGain
float SoundRadius
Guid CreatorId
int ObjectFlags
uint LocalId
byte[] TextureAnimation
Vector3 GroupPosition
Vector3 OffsetPosition
Quaternion RotationOffset
Vector3 Velocity
Vector3 AngularVelocityTarget
Vector3 AngularVelocity

PrimitiveBaseShape

type name
byte ProfileCurve
byte[] TextureEntry
byte[] ExtraParams
ushort PathBegin
byte PathCurve
ushort PathEnd
sbyte PathRadiusOffset
byte PathRevolutions
byte PathScaleX
byte PathScaleY
byte PathShearX
byte PathShearY
sbyte PathTwist
sbyte PathTwistBegin
byte PCode
ushort ProfileBegin
ushort ProfileEnd
ushort ProfileHollow
Vector3 Scale
byte State
ProfileShape ProfileShape
HollowShape HollowShape
Guid SculptTexture
byte SculptType
int FlexiSoftness
float FlexiTension
float FlexiDrag
float FlexiGravity
float FlexiWind
float FlexiForceX
float FlexiForceY
float FlexiForceZ
float[] LightColor
float LightRadius
float LightCutoff
float LightIntensity
bool FlexiEntry
bool LightEntry
bool SculptEntry
bool ProjectionEntry
Guid ProjectionTextureId
float ProjectionFOV
float ProjectionFocus
float ProjectionAmbiance
sbyte PathSkew
sbyte PathTaperX
sbyte PathTaperY
int VertexCount
int HighLODBytes
int MidLODBytes
int LowLODBytes
int LowestLODBytes
RenderMaterials RenderMaterials