proc

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2017 License: BSD-2-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterHandler

func RegisterHandler(name string, create func() (Handler, error)) error

RegisterHandler is called by handlers to register their creation functions.

Types

type Handler

type Handler interface {
	Init(proc *Proc, datastring string, userdata interface{}) error
}

Handler is the type of procedural generation/loading handlers.

type Proc

type Proc struct {
	NodeDef  core.NodeDef `node:"-"`
	NodeName string       `node:"Name"`

	Handler string

	DataString string      `node:"Data"`
	Userdata   interface{} `node:"-"`

	Geom   []core.Geom   `node:"-"`
	Shader []core.Shader `node:"-"`

	BMin param.PointArray
	BMax param.PointArray

	Transform param.MatrixArray `node:",opt"`
	// contains filtered or unexported fields
}

Proc supports procedural loading/generation of geometry via handlers. Handlers may create Geom or Shader nodes.

func (*Proc) Bounds

func (proc *Proc) Bounds(time float32) m.BoundingBox

Bounds implements core.Geom.

func (*Proc) Def

func (proc *Proc) Def() core.NodeDef

Def is a core.Node method.

func (*Proc) MotionKeys

func (proc *Proc) MotionKeys() int

MotionKeys returns the number of motion keys.

func (*Proc) Name

func (proc *Proc) Name() string

Name is a core.Node method.

func (*Proc) PostRender

func (proc *Proc) PostRender() error

PostRender is a core.Node method.

func (*Proc) PreRender

func (proc *Proc) PreRender() error

PreRender is a core.Node method.

func (*Proc) Trace

func (proc *Proc) Trace(ray *core.Ray, sg *core.ShaderContext) bool

Trace implements core.Primitive.

type TransformSRTArray

type TransformSRTArray []m.TransformDecomp

TransformSRTArray is an array of Transforms supporting lerp.

func (*TransformSRTArray) TimeKey

func (t *TransformSRTArray) TimeKey(time float32) m.TransformDecomp

TimeKey returns the interpolated transform from the array (whole array is assumed to cover [0,1) linearly. This should be altered to allow time to be non-linearly related to the keys.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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