dmx

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Decoder

type Decoder struct {
	// contains filtered or unexported fields
}

func NewDecoder

func NewDecoder(r io.Reader) *Decoder

func (*Decoder) Decode

func (d *Decoder) Decode() (*DmElement, error)

type DmElement

type DmElement struct {
	Name          string
	Model         *DmeModel
	Skeleton      *DmeModel
	AnimationList *DmeAnimationList
}

type DmeAnimationList added in v0.5.0

type DmeAnimationList struct {
	Name       string
	Animations []*DmeChannelsClip
}

type DmeAttachment

type DmeAttachment struct {
	*DmeDag
	Visible bool
}

type DmeChannel added in v0.5.0

type DmeChannel struct {
	Name          string
	FromAttribute string
	FromIndex     int32
	ToElement     *DmeTransform
	ToAttribute   string
	ToIndex       int32
	LogQuaternion *DmeLog[[4]float32]
	LogVector3    *DmeLog[[3]float32]
}

type DmeChannelsClip added in v0.5.0

type DmeChannelsClip struct {
	Name      string
	TimeFrame *DmeTimeFrame
	Color     color.RGBA
	Text      string
	Mute      bool
	Channels  []*DmeChannel
	FrameRate int32
}

type DmeDag

type DmeDag struct {
	Name       string
	Transform  *DmeTransform
	Visible    bool
	Children   []IDag
	Mesh       *DmeMesh
	Attachment *DmeAttachment
}

func (*DmeDag) Dag

func (d *DmeDag) Dag() *DmeDag

type DmeFaceSet

type DmeFaceSet struct {
	Material *DmeMaterial
	Faces    []int32
}

type DmeJoint

type DmeJoint struct {
	*DmeDag
	Transform            *DmeTransform
	Visible              bool
	Children             []IDag
	LockInfluenceWeights bool
}

type DmeLog added in v0.5.0

type DmeLog[T LogType] struct {
	Name            string
	Layers          []*DmeLogLayer[T]
	UseDefaultValue bool
	DefaultValue    T
}

type DmeLogLayer added in v0.5.0

type DmeLogLayer[T LogType] struct {
	Name   string
	Times  []int32
	Values []T
}

Layer //

type DmeMaterial

type DmeMaterial struct {
	MtlName string
}

type DmeMesh

type DmeMesh struct {
	*DmeDag
	Visible      bool
	CurrentState *DmeVertexData
	BaseStates   []*DmeVertexData
	DeltaStates  []*DmeVertexData
	FaceSets     []*DmeFaceSet
}

type DmeModel

type DmeModel struct {
	Name            string
	Visible         bool
	Children        []IDag
	JointTransforms []*DmeTransform
}

type DmeModelRoot

type DmeModelRoot struct {
	Model    DmeModel
	Skeleton DmeModel
}

type DmeTimeFrame added in v0.5.0

type DmeTimeFrame struct {
	Name         string
	StartTime    int32
	DurationTime int32
	OffsetTime   int32
	Scale        float32
}

type DmeTransform

type DmeTransform struct {
	Name        string
	Position    [3]float32
	Orientation [4]float32
}

type DmeTransformList

type DmeTransformList struct {
	Transforms []*DmeTransform
}

type DmeVertexData

type DmeVertexData struct {
	VertexFormat              []string
	JointCount                int32
	Positions                 [][3]float32
	PositionIndices           []int32
	Normals                   [][3]float32
	NormalsIndices            []int32
	TextureCoordinates        [][2]float32
	TextureCoordinatesIndices []int32
	// TODO Balance
	// TODO BalanceIndices
	JointWeights []float32
	JointIndices []int32
}

type DmeVertexDeltaData

type DmeVertexDeltaData struct {
	VertexFormat     []string
	FlipVCoordinates bool
	Corrected        bool
	Positions        [][3]float32
	PositionIndices  []int
	Normals          [][3]float32
	NormalsIndices   []int
	Wrinkle          []float32
	WrinkleIndices   []int
}

type IDag

type IDag interface {
	Dag() *DmeDag
}

type LogType added in v0.5.0

type LogType interface {
	[4]float32 | [3]float32
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL