Functions for creating image objects.
RGB image type
RGBA image type
luminance image type
luminance image type
Load image (PNG or JPEG) from buffer.
buffer - image data buffer
[options] - An optional table containing parameters for loading the image. Supported entries:
premultiply_alpha
false
.flip_vertically
false
.image - object or nil
if loading fails. The object is a table with the following fields:
width
: image widthheight
: image heighttype
: image typeimage.TYPE_RGB
image.TYPE_RGBA
image.TYPE_LUMINANCE
image.TYPE_LUMINANCE_ALPHA
buffer
: the raw image dataHow to load an image from an URL and create a GUI texture from it:
local imgurl = "http://www.site.com/image.png"
http.request(imgurl, "GET", function(self, id, response)
local img = image.load(response.response)
local tx = gui.new_texture("image_node", img.width, img.height, img.type, img.buffer)
end)
Load image (PNG or JPEG) from a string buffer.
buffer - image data buffer
[options] - An optional table containing parameters for loading the image. Supported entries:
premultiply_alpha
false
.flip_vertically
false
.image - object or nil
if loading fails. The object is a table with the following fields:
width
: image widthheight
: image heighttype
: image typeimage.TYPE_RGB
image.TYPE_RGBA
image.TYPE_LUMINANCE
image.TYPE_LUMINANCE_ALPHA
buffer
: the script buffer that holds the decompressed image data. See buffer.create how to use the buffer.Load an image from an URL as a buffer and create a texture resource from it:
local imgurl = "http://www.site.com/image.png"
http.request(imgurl, "GET", function(self, id, response)
local img = image.load_buffer(response.response, { flip_vertically = true })
local tparams = {
width = img.width,
height = img.height,
type = resource.TEXTURE_TYPE_2D,
format = resource.TEXTURE_FORMAT_RGBA }
local my_texture_id = resource.create_texture("/my_custom_texture.texturec", tparams, img.buffer)
-- Apply the texture to a model
go.set("/go1#model", "texture0", my_texture_id)
end)