Skip to content

package stages

import "kaiju/stages"

Types

EntityDataBinding

struct

type EntityDataBinding struct {
    RegistraionKey string
    Fields         map[string]any `json:",omitempty"`
}

//////////////////////////////////////////////////////////////////////////////

EntityDescription

struct

type EntityDescription struct {
    Id             string
    Name           string
    Mesh           string
    Material       string
    Textures       []string
    Position       matrix.Vec3
    Rotation       matrix.Vec3
    Scale          matrix.Vec3
    DataBinding    []EntityDataBinding
    Children       []EntityDescription
    RawDataBinding []any
}

//////////////////////////////////////////////////////////////////////////////

EntityDescriptionJson

struct

type EntityDescriptionJson struct {
    Id          string
    Name        string
    Mesh        int
    Material    int                     `json:"Mat"`
    Textures    []int                   `json:"Tex,omitempty"`
    Position    matrix.Vec3             `json:"P"`
    Rotation    matrix.Vec3             `json:"R"`
    Scale       matrix.Vec3             `json:"S"`
    DataBinding []EntityDataBinding     `json:"Data,omitempty"`
    Children    []EntityDescriptionJson `json:"Kids,omitempty"`
}

Stage

struct

type Stage struct {
    Id       string
    Entities []EntityDescription
}

//////////////////////////////////////////////////////////////////////////////

ArchiveDeserializer

func ArchiveDeserializer(rawData []byte) (Stage, error)

Stage.FromMinimized

func (s *Stage) FromMinimized(ss StageJson)

Stage.Launch

func (s *Stage) Launch(host *engine.Host)

Stage.ToMinimized

func (s *Stage) ToMinimized() StageJson

StageJson

struct

type StageJson struct {
    Id        string
    Meshes    []string                `json:",omitempty"`
    Materials []string                `json:",omitempty"`
    Textures  []string                `json:",omitempty"`
    Entities  []EntityDescriptionJson `json:",omitempty"`
}