new Tiny.VideoBaseTexture(source, scaleMode, autoPlay)
Name | Type | Default | Description |
---|---|---|---|
source |
HTMLVideoElement |
Video source |
|
scaleMode |
number | Tiny.settings.SCALE_MODE |
optional
See Tiny.SCALE_MODES for possible values |
autoPlay |
boolean | true |
optional
Start playing video as soon as it is loaded |
Extends
Members
-
autoPlayboolean
-
When set to true will automatically play videos used by this texture once they are loaded. If false, it will not modify the playing state.
- Default Value:
- true
-
autoUpdateboolean
-
Should the base texture automatically update itself, set to true by default
-
readonlyhasLoadedboolean
-
Set to true once the base texture has successfully loaded.
This is never true if the underlying source fails to load or has no texture data.
-
readonlyheightnumber
-
The height of the base texture set when the image has loaded
-
readonlyimageTypestring
-
Type of image defined in source, eg.
png
orsvg
-
imageUrlstring
-
The image url of the texture
-
readonlyisLoadingboolean
-
Set to true if the source is currently loading.
If an Image source is loading the 'loaded' or 'error' event will be dispatched when the operation ends. An underyling source that is immediately-available bypasses loading entirely.
-
mipmapboolean
-
Set this to true if a mipmap of this texture needs to be generated. This value needs to be set before the texture is used
Also the texture must be a power of two size to work- See:
-
- Tiny.MIPMAP_TEXTURES
-
readonlyorigSourceImage
-
The image source that is used to create the texture. This is used to store the original Svg source when it is replaced with a canvas element.
TODO: Currently not in use but could be used when re-scaling svg.
-
premultipliedAlphaboolean
-
Controls if RGB channels should be pre-multiplied by Alpha (WebGL only)
All blend modes, and shaders written for default value. Change it on your own risk.- Default Value:
- true
-
readonlyrealHeightnumber
-
Used to store the actual height of the source of this texture
-
readonlyrealWidthnumber
-
Used to store the actual width of the source of this texture
-
resolutionnumber
-
The resolution / device pixel ratio of the texture
- Default Value:
- 1
-
scaleModenumber
-
The scale mode to apply when scaling this texture
- Default Value:
- Tiny.settings.SCALE_MODE
- See:
-
readonlysourceHTMLImageElement HTMLCanvasElement
-
The image source that is used to create the texture.
TODO: Make this a setter that calls loadSource();
-
readonlysourceScalenumber
-
Scale for source image. Used with Svg images to scale them before rasterization.
-
textureCacheIdsArray.<string>
-
The ids under which this BaseTexture has been added to the base texture cache. This is automatically set as long as BaseTexture.addToCache is used, but may not be set if a
BaseTexture is added directly to the BaseTextureCache array. -
readonlywidthnumber
-
The width of the base texture set when the image has loaded
-
wrapModenumber
-
WebGL Texture wrap mode
- See:
Methods
-
staticTiny.VideoBaseTexture.fromUrl(videoSrc, scaleMode, crossorigin, autoPlay) ❯ {Tiny.VideoBaseTexture}
-
Helper function that creates a new BaseTexture based on the given video element.
This BaseTexture can then be used to create a textureName Type Default Description videoSrc
string | object | Array.<string> | Array.<object> The URL(s) for the video.
Name Type Description src
string optional One of the source urls for the video
mime
string optional The mimetype of the video (e.g. 'video/mp4'). If not specified
the url's extension will be used as the second part of the mime type.scaleMode
number See Tiny.SCALE_MODES for possible values
crossorigin
boolean (auto) optional Should use anonymous CORS? Defaults to true if the URL is not a data-URI.
autoPlay
boolean true optional Start playing video as soon as it is loaded
Returns:
Type Description Tiny.VideoBaseTexture Newly created VideoBaseTexture -
staticTiny.VideoBaseTexture.fromVideo(video, scaleMode, autoPlay) ❯ {Tiny.VideoBaseTexture}
-
Mimic Tiny BaseTexture.from.... method.
Name Type Default Description video
HTMLVideoElement Video to create texture from
scaleMode
number Tiny.settings.SCALE_MODE optional See Tiny.SCALE_MODES for possible values
autoPlay
boolean true optional Start playing video as soon as it is loaded
Returns:
Type Description Tiny.VideoBaseTexture Newly created VideoBaseTexture -
inherited _loadSvgSource()
-
Checks if
source
is an SVG image and whether it's loaded via a URL or a data URI. Then calls_loadSvgSourceUsingDataUri
or_loadSvgSourceUsingXhr
. -
inherited _loadSvgSourceUsingDataUri(dataUri)
-
Reads an SVG string from data URI and then calls
_loadSvgSourceUsingString
.Name Type Description dataUri
string The data uri to load from.
-
inherited _loadSvgSourceUsingString(svgString)
-
Loads texture using an SVG string. The original SVG Image is stored as
origSource
and the created canvas is the newsource
. The SVG is scaled usingsourceScale
. Called by_loadSvgSourceUsingXhr
or_loadSvgSourceUsingDataUri
.Name Type Description svgString
string SVG source as string
Fires:
-
inherited _loadSvgSourceUsingXhr()
-
Loads an SVG string from
imageUrl
using XHR and then calls_loadSvgSourceUsingString
. -
inherited _updateDimensions()
-
Update dimensions from real values
-
inherited _updateImageType()
-
Updates type of the source image.
-
destroy()
-
Destroys this texture
-
inherited dispose()
-
Frees the texture from WebGL memory without destroying this texture object.
This means you can still use the texture later which will upload it to GPU memory again.Fires:
-
inherited protectedloadSource(source)
-
Load a source.
If the source is not-immediately-available, such as an image that needs to be downloaded, then the 'loaded' or 'error' event will be dispatched in the future and
hasLoaded
will remain false after this call.The logic state after calling
loadSource
directly or indirectly (eg.fromImage
,new BaseTexture
) is:if (texture.hasLoaded) { // texture ready for use } else if (texture.isLoading) { // listen to 'loaded' and/or 'error' events on texture } else { // not loading, not going to load UNLESS the source is reloaded // (it may still make sense to listen to the events) }
Name Type Description source
HTMLImageElement | HTMLCanvasElement the source object of the texture.
-
Updates the texture on all the webgl renderers, this also assumes the src has changed.
Fires:
- event:update
-
inherited updateSourceImage(newSrc)
-
Changes the source image of the texture.
The original source must be an Image element.Name Type Description newSrc
string the path of the image
Events
-
Fired when BaseTexture is destroyed.
Name Type Description baseTexture
Tiny.BaseTexture Instance of texture being destroyed.
-
Fired when a not-immediately-available source fails to load.
Name Type Description baseTexture
Tiny.BaseTexture Resource errored.
-
Fired when a not-immediately-available source finishes loading.
Name Type Description baseTexture
Tiny.BaseTexture Resource loaded.
-
Fired when BaseTexture is updated.
Name Type Description baseTexture
Tiny.BaseTexture Instance of texture being updated.