mesh

package
v0.5.1-0...-f3d9953 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2019 License: Unlicense Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Face

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

Face

func NewFace

func NewFace(offset int32, length int32, mat texture.ITexture, lightmap *texture.Lightmap) Face

NewFace

func (*Face) AddLightmap

func (face *Face) AddLightmap(lightmap *texture.Lightmap)

AddLightmap

func (*Face) AddMaterial

func (face *Face) AddMaterial(mat material.IMaterial)

AddMaterial

func (*Face) IsLightmapped

func (face *Face) IsLightmapped() bool

IsLightmapped

func (*Face) Length

func (face *Face) Length() int32

Length

func (*Face) Lightmap

func (face *Face) Lightmap() *texture.Lightmap

Lightmap

func (*Face) Material

func (face *Face) Material() material.IMaterial

Material

func (*Face) Offset

func (face *Face) Offset() int32

Offset

type IMesh

type IMesh interface {
	// AddVertex
	AddVertex(...mgl32.Vec3)
	// AddNormal
	AddNormal(...mgl32.Vec3)
	// AddUV
	AddUV(...mgl32.Vec2)
	// AddLightmapCoordinate
	AddLightmapCoordinate(...mgl32.Vec3)
	// GenerateTangents
	GenerateTangents()

	// Vertices
	Vertices() []mgl32.Vec3
	// Normals
	Normals() []mgl32.Vec3
	// UVs
	UVs() []mgl32.Vec2
	// Tangents
	Tangents() []mgl32.Vec4
	// Colors
	Colors() []float32
	ResetColors(colors ...float32)
	// LightmapCoordinates
	LightmapCoordinates() []mgl32.Vec3

	// Material
	Material() material.IMaterial
	// SetMaterial
	SetMaterial(material.IMaterial)
	// Lightmap
	Lightmap() texture.ITexture
	// SetLightmap
	SetLightmap(texture.ITexture)

	Meta(string) interface{}
}

IMesh Generic Mesh interface Most renderable objects should implement this, but there are probably many custom cases that may not

type Mesh

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

Mesh

func NewMesh

func NewMesh() *Mesh

NewMesh

func (*Mesh) AddColor

func (mesh *Mesh) AddColor(colors ...float32)

func (*Mesh) AddLightmapCoordinate

func (mesh *Mesh) AddLightmapCoordinate(uv ...mgl32.Vec3)

AddLightmapCoordinate

func (*Mesh) AddLine

func (mesh *Mesh) AddLine(color []float32, a, b mgl32.Vec3)

AddLine adds a line between 2 points

func (*Mesh) AddNormal

func (mesh *Mesh) AddNormal(normal ...mgl32.Vec3)

AddNormal

func (*Mesh) AddTangent

func (mesh *Mesh) AddTangent(tangent ...mgl32.Vec4)

AddTangent

func (*Mesh) AddUV

func (mesh *Mesh) AddUV(uv ...mgl32.Vec2)

AddUV

func (*Mesh) AddVertex

func (mesh *Mesh) AddVertex(vertex ...mgl32.Vec3)

AddVertex

func (*Mesh) Colors

func (mesh *Mesh) Colors() []float32

func (*Mesh) GenerateTangents

func (mesh *Mesh) GenerateTangents()

GenerateTangents

func (*Mesh) Lightmap

func (mesh *Mesh) Lightmap() texture.ITexture

Lightmap

func (*Mesh) LightmapCoordinates

func (mesh *Mesh) LightmapCoordinates() []mgl32.Vec3

LightmapCoordinates

func (*Mesh) Material

func (mesh *Mesh) Material() material.IMaterial

Material

func (*Mesh) Meta

func (mesh *Mesh) Meta(key string) interface{}

Meta returns metadata

func (*Mesh) Normals

func (mesh *Mesh) Normals() []mgl32.Vec3

Normals

func (*Mesh) ResetColors

func (mesh *Mesh) ResetColors(colors ...float32)

func (*Mesh) SetLightmap

func (mesh *Mesh) SetLightmap(mat texture.ITexture)

SetLightmap

func (*Mesh) SetMaterial

func (mesh *Mesh) SetMaterial(mat material.IMaterial)

SetMaterial

func (*Mesh) SetMeta

func (mesh *Mesh) SetMeta(key string, value interface{})

SetMeta sets metadata

func (*Mesh) Tangents

func (mesh *Mesh) Tangents() []mgl32.Vec4

Tangents

func (*Mesh) UVs

func (mesh *Mesh) UVs() []mgl32.Vec2

UVs

func (*Mesh) Vertices

func (mesh *Mesh) Vertices() []mgl32.Vec3

Vertices

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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