light

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: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Disk

type Disk struct {
	NodeDef       core.NodeDef `node:"-"`
	NodeName      string       `node:"Name"`
	P, Up, LookAt m.Vec3
	T, B, N       m.Vec3 `node:"-"`
	Radius        float32
	Shader        string
	Segments      int `node:",opt"`
	Samples       int `node:",opt"`
	// contains filtered or unexported fields
}

Disk represents a circular disk light node.

func (*Disk) Def

func (d *Disk) Def() core.NodeDef

Def implements core.Node.

func (*Disk) DiffuseShadeMult

func (d *Disk) DiffuseShadeMult() float32

DiffuseShadeMult implements core.Light.

func (*Disk) Geom

func (d *Disk) Geom() core.Geom

Geom implements core.Light

func (*Disk) Name

func (d *Disk) Name() string

Name implements core.Node.

func (*Disk) NumSamples

func (d *Disk) NumSamples(sg *core.ShaderContext) int

NumSamples implements core.Light

func (*Disk) PostRender

func (d *Disk) PostRender() error

PostRender implelments core.Node.

func (*Disk) PotentialContrib

func (d *Disk) PotentialContrib(sg *core.ShaderContext) float32

PotentialContrib implements core.Light.

func (*Disk) PreRender

func (d *Disk) PreRender() error

PreRender implelments core.Node.

func (*Disk) SampleArea

func (d *Disk) SampleArea(sg *core.ShaderContext, n int) error

SampleArea implements core.Light.

func (*Disk) ValidSample

func (d *Disk) ValidSample(sg *core.ShaderContext, sample *core.BSDFSample) bool

ValidSample implements core.Light.

type Quad

type Quad struct {
	NodeDef  core.NodeDef `node:"-"`
	NodeName string       `node:"Name"`
	P        m.Vec3
	U, V     m.Vec3

	Shader string

	Samples int `node:",opt"`
	// contains filtered or unexported fields
}

Quad represents a (planar) quadrilateral light node.

func (*Quad) Def

func (d *Quad) Def() core.NodeDef

Def implements core.Node.

func (*Quad) DiffuseShadeMult

func (d *Quad) DiffuseShadeMult() float32

DiffuseShadeMult implements core.Light.

func (*Quad) Geom

func (d *Quad) Geom() core.Geom

Geom implements core.Light

func (*Quad) Name

func (d *Quad) Name() string

Name implements core.Node.

func (*Quad) NumSamples

func (d *Quad) NumSamples(sg *core.ShaderContext) int

NumSamples implements core.Light

func (*Quad) PostRender

func (d *Quad) PostRender() error

PostRender implelments core.Node.

func (*Quad) PotentialContrib

func (d *Quad) PotentialContrib(sg *core.ShaderContext) float32

PotentialContrib implements core.Light.

func (*Quad) PreRender

func (d *Quad) PreRender() error

PreRender implelments core.Node.

func (*Quad) SampleArea

func (d *Quad) SampleArea(sg *core.ShaderContext, n int) error

SampleArea implements core.Light.

func (*Quad) ValidSample

func (d *Quad) ValidSample(sg *core.ShaderContext, sample *core.BSDFSample) bool

ValidSample implements core.Light.

type Sphere

type Sphere struct {
	NodeDef  core.NodeDef `node:"-"`
	NodeName string       `node:"Name"`
	P        m.Vec3
	Radius   float32
	Shader   string

	Samples int `node:",opt"`
	// contains filtered or unexported fields
}

Sphere represents a spherical light node.

func (*Sphere) Def

func (d *Sphere) Def() core.NodeDef

Def implements core.Node.

func (*Sphere) DiffuseShadeMult

func (d *Sphere) DiffuseShadeMult() float32

DiffuseShadeMult implements core.Light.

func (*Sphere) Geom

func (d *Sphere) Geom() core.Geom

Geom implements core.Light

func (*Sphere) Name

func (d *Sphere) Name() string

Name implements core.Node.

func (*Sphere) NumSamples

func (d *Sphere) NumSamples(sg *core.ShaderContext) int

NumSamples implements core.Light

func (*Sphere) PostRender

func (d *Sphere) PostRender() error

PostRender implements core.Node.

func (*Sphere) PotentialContrib

func (d *Sphere) PotentialContrib(sg *core.ShaderContext) float32

PotentialContrib implements core.Light.

func (*Sphere) PreRender

func (d *Sphere) PreRender() error

PreRender implelments core.Node.

func (*Sphere) SampleArea

func (d *Sphere) SampleArea(sg *core.ShaderContext, n int) error

SampleArea implements core.Light.

func (*Sphere) ValidSample

func (d *Sphere) ValidSample(sg *core.ShaderContext, sample *core.BSDFSample) bool

ValidSample implements core.Light.

type Tri

type Tri struct {
	NodeDef    core.NodeDef `node:"-"`
	NodeName   string       `node:"Name"`
	P0, P1, P2 m.Vec3
	Shader     string

	Samples int
	// contains filtered or unexported fields
}

Tri represents a triangular light node.

func (*Tri) Def

func (d *Tri) Def() core.NodeDef

Def implements core.Node.

func (*Tri) DiffuseShadeMult

func (d *Tri) DiffuseShadeMult() float32

DiffuseShadeMult implements core.Light.

func (*Tri) Geom

func (d *Tri) Geom() core.Geom

Geom implements core.Light

func (*Tri) Name

func (d *Tri) Name() string

Name implements core.Node.

func (*Tri) NumSamples

func (d *Tri) NumSamples(sg *core.ShaderContext) int

NumSamples implements core.Light

func (*Tri) PostRender

func (d *Tri) PostRender() error

PostRender implelments core.Node.

func (*Tri) PotentialContrib

func (d *Tri) PotentialContrib(sg *core.ShaderContext) float32

PotentialContrib imeplements core.Light

func (*Tri) PreRender

func (d *Tri) PreRender() error

PreRender implelments core.Node.

func (*Tri) SampleArea

func (d *Tri) SampleArea(sg *core.ShaderContext, n int) error

SampleArea implements core.Light.

func (*Tri) ValidSample

func (d *Tri) ValidSample(sg *core.ShaderContext, sample *core.BSDFSample) bool

ValidSample implements core.Light.

Jump to

Keyboard shortcuts

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