texture

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

Documentation

Overview

Package texture implements an efficient texture cache.

At present it does virtually nothing other than thread-safe loading of texture files. Doesn't release memory or attempt to use tiled caching.

Textures are currently represented simply by a string which references into a hashmap. Lookup sounds inefficient but has never shown up as significant on profiling. Expected to change as many more textures are used in shaders.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Asset

func Asset(name string) ([]byte, error)

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetDir

func AssetDir(name string) ([]string, error)

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.

func AssetInfo

func AssetInfo(name string) (os.FileInfo, error)

AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetNames

func AssetNames() []string

AssetNames returns the names of the assets.

func MustAsset

func MustAsset(name string) []byte

MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.

func RestoreAsset

func RestoreAsset(dir, name string) error

RestoreAsset restores an asset under the given directory

func RestoreAssets

func RestoreAssets(dir, name string) error

RestoreAssets restores an asset under the given directory recursively

func SampleFeline

func SampleFeline(filename string, sc *core.ShaderContext) (c [3]float32)

SampleFeline returns the filtered RGB value for the given texture file. Accepts normalized texture coordinates in sc.U & sc.V and texture derivatives Dduvdx&dy. WRL-99-1

func SampleRGB

func SampleRGB(filename string, sg *core.ShaderContext) (out [3]float32)

SampleRGB samples an RGB value from the given file using the coords s,t and footprint ds,dt.

Types

type TexStore

type TexStore map[string]*Texture

TexStore is the type of the cache.

type Texture

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

Texture represents a texture image. (shouldn't be public)

func CreateRGBTexture

func CreateRGBTexture(w, h int) *Texture

CreateRGBTexture creates an RGB texture of appropriate size.

func LoadTexture

func LoadTexture(url string) (*Texture, error)

LoadTexture returns a texture object or an error if can't be openend. Takes a url for future network texture server. (shouldn't be public)

func (*Texture) SetRGB

func (tex *Texture) SetRGB(x, y int, r, g, b byte)

SetRGB sets a pixel in a Texture object. (shouldn't be public)

Jump to

Keyboard shortcuts

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