mirror of
https://github.com/Insality/druid.git
synced 2025-09-28 10:32:20 +02:00
Add Defold annotations
This commit is contained in:
760
annotations/defold/resource.lua
Normal file
760
annotations/defold/resource.lua
Normal file
@@ -0,0 +1,760 @@
|
||||
--[[
|
||||
Generated with github.com/astrochili/defold-annotations
|
||||
Defold 1.8.0
|
||||
|
||||
Resource API documentation
|
||||
|
||||
Functions and constants to access resources.
|
||||
--]]
|
||||
|
||||
---@diagnostic disable: lowercase-global
|
||||
---@diagnostic disable: missing-return
|
||||
---@diagnostic disable: duplicate-doc-param
|
||||
---@diagnostic disable: duplicate-set-field
|
||||
|
||||
---@class defold_api.resource
|
||||
resource = {}
|
||||
|
||||
---BASIS_UASTC compression type
|
||||
resource.COMPRESSION_TYPE_BASIS_UASTC = nil
|
||||
|
||||
---COMPRESSION_TYPE_DEFAULT compression type
|
||||
resource.COMPRESSION_TYPE_DEFAULT = nil
|
||||
|
||||
---luminance type texture format
|
||||
resource.TEXTURE_FORMAT_LUMINANCE = nil
|
||||
|
||||
---R16F type texture format
|
||||
resource.TEXTURE_FORMAT_R16F = nil
|
||||
|
||||
---R32F type texture format
|
||||
resource.TEXTURE_FORMAT_R32F = nil
|
||||
|
||||
---RG16F type texture format
|
||||
resource.TEXTURE_FORMAT_RG16F = nil
|
||||
|
||||
---RG32F type texture format
|
||||
resource.TEXTURE_FORMAT_RG32F = nil
|
||||
|
||||
---RGB type texture format
|
||||
resource.TEXTURE_FORMAT_RGB = nil
|
||||
|
||||
---RGB16F type texture format
|
||||
resource.TEXTURE_FORMAT_RGB16F = nil
|
||||
|
||||
---RGB32F type texture format
|
||||
resource.TEXTURE_FORMAT_RGB32F = nil
|
||||
|
||||
---RGBA type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA = nil
|
||||
|
||||
---RGBA16F type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA16F = nil
|
||||
|
||||
---RGBA32F type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA32F = nil
|
||||
|
||||
---RGBA_ASTC_4x4 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_ASTC_4x4 = nil
|
||||
|
||||
---RGBA_BC3 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_BC3 = nil
|
||||
|
||||
---RGBA_BC7 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_BC7 = nil
|
||||
|
||||
---RGBA_ETC2 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_ETC2 = nil
|
||||
|
||||
---RGBA_PVRTC_2BPPV1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_PVRTC_2BPPV1 = nil
|
||||
|
||||
---RGBA_PVRTC_4BPPV1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGBA_PVRTC_4BPPV1 = nil
|
||||
|
||||
---RGB_BC1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGB_BC1 = nil
|
||||
|
||||
---RGB_ETC1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGB_ETC1 = nil
|
||||
|
||||
---RGB_PVRTC_2BPPV1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGB_PVRTC_2BPPV1 = nil
|
||||
|
||||
---RGB_PVRTC_4BPPV1 type texture format
|
||||
resource.TEXTURE_FORMAT_RGB_PVRTC_4BPPV1 = nil
|
||||
|
||||
---RG_BC5 type texture format
|
||||
resource.TEXTURE_FORMAT_RG_BC5 = nil
|
||||
|
||||
---R_BC4 type texture format
|
||||
resource.TEXTURE_FORMAT_R_BC4 = nil
|
||||
|
||||
---2D texture type
|
||||
resource.TEXTURE_TYPE_2D = nil
|
||||
|
||||
---2D Array texture type
|
||||
resource.TEXTURE_TYPE_2D_ARRAY = nil
|
||||
|
||||
---Cube map texture type
|
||||
resource.TEXTURE_TYPE_CUBE_MAP = nil
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.atlas(path) end
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.buffer(path) end
|
||||
|
||||
---This function creates a new atlas resource that can be used in the same way as any atlas created during build time.
|
||||
---The path used for creating the atlas must be unique, trying to create a resource at a path that is already
|
||||
---registered will trigger an error. If the intention is to instead modify an existing atlas, use the resource.set_atlas
|
||||
---function. Also note that the path to the new atlas resource must have a '.texturesetc' extension,
|
||||
---meaning "/path/my_atlas" is not a valid path but "/path/my_atlas.texturesetc" is.
|
||||
---When creating the atlas, at least one geometry and one animation is required, and an error will be
|
||||
---raised if these requirements are not met. A reference to the resource will be held by the collection
|
||||
---that created the resource and will automatically be released when that collection is destroyed.
|
||||
---Note that releasing a resource essentially means decreasing the reference count of that resource,
|
||||
---and not necessarily that it will be deleted.
|
||||
---@param path string The path to the resource.
|
||||
---@param table resource.atlas A table containing info about how to create the atlas. Supported entries:
|
||||
---
|
||||
---
|
||||
---
|
||||
---texture
|
||||
---string | hash the path to the texture resource, e.g "/main/my_texture.texturec"
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---animations
|
||||
---table a list of the animations in the atlas. Supports the following fields:
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---id
|
||||
---string the id of the animation, used in e.g sprite.play_animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---width
|
||||
---integer the width of the animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---height
|
||||
---integer the height of the animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---frame_start
|
||||
---integer index to the first geometry of the animation. Indices are lua based and must be in the range of 1 .. in atlas.
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---frame_end
|
||||
---integer index to the last geometry of the animation (non-inclusive). Indices are lua based and must be in the range of 1 .. in atlas.
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---playback
|
||||
---constant optional playback mode of the animation, the default value is go.PLAYBACK_ONCE_FORWARD
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---fps
|
||||
---integer optional fps of the animation, the default value is 30
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---flip_vertical
|
||||
---boolean optional flip the animation vertically, the default value is false
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---flip_horizontal
|
||||
---boolean optional flip the animation horizontally, the default value is false
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---geometries
|
||||
---table A list of the geometries that should map to the texture data. Supports the following fields:
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---id
|
||||
---string The name of the geometry. Used when matching animations between multiple atlases
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---vertices
|
||||
---table a list of the vertices in texture space of the geometry in the form {px0, py0, px1, py1, ..., pxn, pyn}
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---uvs
|
||||
---table a list of the uv coordinates in texture space of the geometry in the form of {u0, v0, u1, v1, ..., un, vn}
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---indices
|
||||
---table a list of the indices of the geometry in the form {i0, i1, i2, ..., in}. Each tripe in the list represents a triangle.
|
||||
---
|
||||
---
|
||||
---
|
||||
---@return hash path Returns the atlas resource path
|
||||
function resource.create_atlas(path, table) end
|
||||
|
||||
---This function creates a new buffer resource that can be used in the same way as any buffer created during build time.
|
||||
---The function requires a valid buffer created from either buffer.create or another pre-existing buffer resource.
|
||||
---By default, the new resource will take ownership of the buffer lua reference, meaning the buffer will not automatically be removed
|
||||
---when the lua reference to the buffer is garbage collected. This behaviour can be overruled by specifying 'transfer_ownership = false'
|
||||
---in the argument table. If the new buffer resource is created from a buffer object that is created by another resource,
|
||||
---the buffer object will be copied and the new resource will effectively own a copy of the buffer instead.
|
||||
---Note that the path to the new resource must have the '.bufferc' extension, "/path/my_buffer" is not a valid path but "/path/my_buffer.bufferc" is.
|
||||
---The path must also be unique, attempting to create a buffer with the same name as an existing resource will raise an error.
|
||||
---@param path string The path to the resource.
|
||||
---@param table { buffer:buffer_data, transfer_ownership:boolean|nil }|nil A table containing info about how to create the buffer. Supported entries:
|
||||
---
|
||||
---
|
||||
---
|
||||
---buffer
|
||||
---buffer the buffer to bind to this resource
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---transfer_ownership
|
||||
---boolean optional flag to determine wether or not the resource should take over ownership of the buffer object (default true)
|
||||
---
|
||||
---
|
||||
---
|
||||
---@return hash path Returns the buffer resource path
|
||||
function resource.create_buffer(path, table) end
|
||||
|
||||
---Creates a new texture resource that can be used in the same way as any texture created during build time.
|
||||
---The path used for creating the texture must be unique, trying to create a resource at a path that is already
|
||||
---registered will trigger an error. If the intention is to instead modify an existing texture, use the resource.set_texture
|
||||
---function. Also note that the path to the new texture resource must have a '.texturec' extension,
|
||||
---meaning "/path/my_texture" is not a valid path but "/path/my_texture.texturec" is.
|
||||
---If the texture is created without a buffer, the pixel data will be blank.
|
||||
---@param path string The path to the resource.
|
||||
---@param table { type:number, width:number, height:number, format:number, max_mipmaps:number|nil, compression_type:number|nil} A table containing info about how to create the texture. Supported entries:
|
||||
---
|
||||
---type
|
||||
---number The texture type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_TYPE_2D
|
||||
---resource.TEXTURE_TYPE_CUBE_MAP
|
||||
---
|
||||
---
|
||||
---width
|
||||
---number The width of the texture (in pixels). Must be larger than 0.
|
||||
---height
|
||||
---number The width of the texture (in pixels). Must be larger than 0.
|
||||
---format
|
||||
---number The texture format, note that some of these formats might not be supported by the running device. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_FORMAT_LUMINANCE
|
||||
---resource.TEXTURE_FORMAT_RGB
|
||||
---resource.TEXTURE_FORMAT_RGBA
|
||||
---
|
||||
---These constants might not be available on the device:
|
||||
---
|
||||
---resource.TEXTURE_FORMAT_RGB_PVRTC_2BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGB_PVRTC_4BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGBA_PVRTC_2BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGBA_PVRTC_4BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGB_ETC1
|
||||
---resource.TEXTURE_FORMAT_RGBA_ETC2
|
||||
---resource.TEXTURE_FORMAT_RGBA_ASTC_4x4
|
||||
---resource.TEXTURE_FORMAT_RGB_BC1
|
||||
---resource.TEXTURE_FORMAT_RGBA_BC3
|
||||
---resource.TEXTURE_FORMAT_R_BC4
|
||||
---resource.TEXTURE_FORMAT_RG_BC5
|
||||
---resource.TEXTURE_FORMAT_RGBA_BC7
|
||||
---resource.TEXTURE_FORMAT_RGB16F
|
||||
---resource.TEXTURE_FORMAT_RGB32F
|
||||
---resource.TEXTURE_FORMAT_RGBA16F
|
||||
---resource.TEXTURE_FORMAT_RGBA32F
|
||||
---resource.TEXTURE_FORMAT_R16F
|
||||
---resource.TEXTURE_FORMAT_RG16F
|
||||
---resource.TEXTURE_FORMAT_R32F
|
||||
---resource.TEXTURE_FORMAT_RG32F
|
||||
---
|
||||
---You can test if the device supports these values by checking if a specific enum is nil or not:
|
||||
---if resource.TEXTURE_FORMAT_RGBA16F ~= nil then
|
||||
--- -- it is safe to use this format
|
||||
---end
|
||||
---
|
||||
---
|
||||
---
|
||||
---max_mipmaps
|
||||
---number optional max number of mipmaps. Defaults to zero, i.e no mipmap support
|
||||
---compression_type
|
||||
---number optional specify the compression type for the data in the buffer object that holds the texture data. Will only be used when a compressed buffer has been passed into the function.
|
||||
---Creating an empty texture with no buffer data is not supported as a core feature. Defaults to resource.COMPRESSION_TYPE_DEFAULT, i.e no compression. Supported values:
|
||||
---
|
||||
---
|
||||
---COMPRESSION_TYPE_DEFAULT
|
||||
---COMPRESSION_TYPE_BASIS_UASTC
|
||||
---
|
||||
---@param buffer buffer_data optional buffer of precreated pixel data
|
||||
---@return hash path The path to the resource.
|
||||
function resource.create_texture(path, table, buffer) end
|
||||
|
||||
---Creates a new texture resource that can be used in the same way as any texture created during build time.
|
||||
---The path used for creating the texture must be unique, trying to create a resource at a path that is already
|
||||
---registered will trigger an error. If the intention is to instead modify an existing texture, use the resource.set_texture
|
||||
---function. Also note that the path to the new texture resource must have a '.texturec' extension,
|
||||
---meaning "/path/my_texture" is not a valid path but "/path/my_texture.texturec" is.
|
||||
---If the texture is created without a buffer, the pixel data will be blank.
|
||||
---The difference between the async version and resource.create_texture is that the texture data will be uploaded
|
||||
---in a graphics worker thread. The function will return a resource immediately that contains a 1x1 blank texture which can be used
|
||||
---immediately after the function call. When the new texture has been uploaded, the initial blank texture will be deleted and replaced with the
|
||||
---new texture. Be careful when using the initial texture handle handle as it will not be valid after the upload has finished.
|
||||
---@param path string The path to the resource.
|
||||
---@param table { type:number, width:number, height:number, format:number, max_mipmaps:number|nil, compression_type:number|nil}
|
||||
---A table containing info about how to create the texture. Supported entries:
|
||||
---type
|
||||
---number The texture type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_TYPE_2D
|
||||
---resource.TEXTURE_TYPE_CUBE_MAP
|
||||
---
|
||||
---
|
||||
---width
|
||||
---number The width of the texture (in pixels). Must be larger than 0.
|
||||
---height
|
||||
---number The width of the texture (in pixels). Must be larger than 0.
|
||||
---format
|
||||
---number The texture format, note that some of these formats might not be supported by the running device. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_FORMAT_LUMINANCE
|
||||
---resource.TEXTURE_FORMAT_RGB
|
||||
---resource.TEXTURE_FORMAT_RGBA
|
||||
---
|
||||
---These constants might not be available on the device:
|
||||
---
|
||||
---resource.TEXTURE_FORMAT_RGB_PVRTC_2BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGB_PVRTC_4BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGBA_PVRTC_2BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGBA_PVRTC_4BPPV1
|
||||
---resource.TEXTURE_FORMAT_RGB_ETC1
|
||||
---resource.TEXTURE_FORMAT_RGBA_ETC2
|
||||
---resource.TEXTURE_FORMAT_RGBA_ASTC_4x4
|
||||
---resource.TEXTURE_FORMAT_RGB_BC1
|
||||
---resource.TEXTURE_FORMAT_RGBA_BC3
|
||||
---resource.TEXTURE_FORMAT_R_BC4
|
||||
---resource.TEXTURE_FORMAT_RG_BC5
|
||||
---resource.TEXTURE_FORMAT_RGBA_BC7
|
||||
---resource.TEXTURE_FORMAT_RGB16F
|
||||
---resource.TEXTURE_FORMAT_RGB32F
|
||||
---resource.TEXTURE_FORMAT_RGBA16F
|
||||
---resource.TEXTURE_FORMAT_RGBA32F
|
||||
---resource.TEXTURE_FORMAT_R16F
|
||||
---resource.TEXTURE_FORMAT_RG16F
|
||||
---resource.TEXTURE_FORMAT_R32F
|
||||
---resource.TEXTURE_FORMAT_RG32F
|
||||
---
|
||||
---You can test if the device supports these values by checking if a specific enum is nil or not:
|
||||
---if resource.TEXTURE_FORMAT_RGBA16F ~= nil then
|
||||
--- -- it is safe to use this format
|
||||
---end
|
||||
---
|
||||
---
|
||||
---
|
||||
---max_mipmaps
|
||||
---number optional max number of mipmaps. Defaults to zero, i.e no mipmap support
|
||||
---compression_type
|
||||
---number optional specify the compression type for the data in the buffer object that holds the texture data. Will only be used when a compressed buffer has been passed into the function.
|
||||
---Creating an empty texture with no buffer data is not supported as a core feature. Defaults to resource.COMPRESSION_TYPE_DEFAULT, i.e no compression. Supported values:
|
||||
---
|
||||
---
|
||||
---COMPRESSION_TYPE_DEFAULT
|
||||
---COMPRESSION_TYPE_BASIS_UASTC
|
||||
---
|
||||
---@param buffer buffer_data optional buffer of precreated pixel data
|
||||
---@return hash path The path to the resource.
|
||||
---@return resource_handle request_id The request id for the async request.
|
||||
function resource.create_texture_async(path, table, buffer) end
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.font(path) end
|
||||
|
||||
---Returns the atlas data for an atlas
|
||||
---@param path hash|string The path to the atlas resource
|
||||
---@return resource.atlas data A table with the following entries:
|
||||
---
|
||||
---texture
|
||||
---geometries
|
||||
---animations
|
||||
---
|
||||
---See resource.set_atlas for a detailed description of each field
|
||||
function resource.get_atlas(path) end
|
||||
|
||||
---gets the buffer from a resource
|
||||
---@param path hash|string The path to the resource
|
||||
---@return buffer_data buffer The resource buffer
|
||||
function resource.get_buffer(path) end
|
||||
|
||||
---Gets render target info from a render target resource path or a render target handle
|
||||
---@param path hash|string|resource_handle The path to the resource or a render target handle
|
||||
---@return { handle:resource_handle, attachments:{ handle:resource_handle, width:number, height:number, depth:number, mipmaps:number, type:number, buffer_type:number }[] } table A table containing info about the render target:
|
||||
---
|
||||
---handle
|
||||
---handle the opaque handle to the texture resource
|
||||
---'attachments'
|
||||
---table a table of attachments, where each attachment contains the following entries:
|
||||
---handle
|
||||
---handle the opaque handle to the texture resource
|
||||
---width
|
||||
---integer width of the texture
|
||||
---height
|
||||
---integer height of the texture
|
||||
---depth
|
||||
---integer depth of the texture (i.e 1 for a 2D texture and 6 for a cube map)
|
||||
---mipmaps
|
||||
---integer number of mipmaps of the texture
|
||||
---type
|
||||
---number The texture type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_TYPE_2D
|
||||
---resource.TEXTURE_TYPE_CUBE_MAP
|
||||
---resource.TEXTURE_TYPE_2D_ARRAY
|
||||
---
|
||||
---
|
||||
---buffer_type
|
||||
---number The attachment buffer type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.BUFFER_TYPE_COLOR0
|
||||
---resource.BUFFER_TYPE_COLOR1
|
||||
---resource.BUFFER_TYPE_COLOR2
|
||||
---resource.BUFFER_TYPE_COLOR3
|
||||
---resource.BUFFER_TYPE_DEPTH
|
||||
---resource.BUFFER_TYPE_STENCIL
|
||||
---
|
||||
function resource.get_render_target_info(path) end
|
||||
|
||||
---Gets the text metrics from a font
|
||||
---@param url hash the font to get the (unscaled) metrics from
|
||||
---@param text string text to measure
|
||||
---@param options { width:number|nil, leading:number|nil, tracking:number|nil, line_break:boolean|nil}|nil A table containing parameters for the text. Supported entries:
|
||||
---
|
||||
---width
|
||||
---integer The width of the text field. Not used if line_break is false.
|
||||
---leading
|
||||
---number The leading (default 1.0)
|
||||
---tracking
|
||||
---number The tracking (default 0.0)
|
||||
---line_break
|
||||
---boolean If the calculation should consider line breaks (default false)
|
||||
---
|
||||
---@return { width:number, height:number, max_ascent:number, max_descent:number } metrics a table with the following fields:
|
||||
---
|
||||
---width
|
||||
---height
|
||||
---max_ascent
|
||||
---max_descent
|
||||
---
|
||||
function resource.get_text_metrics(url, text, options) end
|
||||
|
||||
---Gets texture info from a texture resource path or a texture handle
|
||||
---@param path hash|string|resource_handle The path to the resource or a texture handle
|
||||
---@return { handle:resource_handle, width:number, height:number, depth:number, mipmaps:number, type:number } table A table containing info about the texture:
|
||||
---
|
||||
---handle
|
||||
---handle the opaque handle to the texture resource
|
||||
---width
|
||||
---integer width of the texture
|
||||
---height
|
||||
---integer height of the texture
|
||||
---depth
|
||||
---integer depth of the texture (i.e 1 for a 2D texture and 6 for a cube map)
|
||||
---mipmaps
|
||||
---integer number of mipmaps of the texture
|
||||
---type
|
||||
---number The texture type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_TYPE_2D
|
||||
---resource.TEXTURE_TYPE_CUBE_MAP
|
||||
---resource.TEXTURE_TYPE_2D_ARRAY
|
||||
---
|
||||
function resource.get_texture_info(path) end
|
||||
|
||||
---Loads the resource data for a specific resource.
|
||||
---@param path string The path to the resource
|
||||
---@return buffer_data buffer Returns the buffer stored on disc
|
||||
function resource.load(path) end
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.material(path) end
|
||||
|
||||
---Release a resource.
|
||||
--- This is a potentially dangerous operation, releasing resources currently being used can cause unexpected behaviour.
|
||||
---@param path hash|string The path to the resource.
|
||||
function resource.release(path) end
|
||||
|
||||
---Sets the resource data for a specific resource
|
||||
---@param path string|hash The path to the resource
|
||||
---@param buffer buffer_data The buffer of precreated data, suitable for the intended resource type
|
||||
function resource.set(path, buffer) end
|
||||
|
||||
---Sets the data for a specific atlas resource. Setting new atlas data is specified by passing in
|
||||
---a texture path for the backing texture of the atlas, a list of geometries and a list of animations
|
||||
---that map to the entries in the geometry list. The geometry entries are represented by three lists:
|
||||
---vertices, uvs and indices that together represent triangles that are used in other parts of the
|
||||
---engine to produce render objects from.
|
||||
---Vertex and uv coordinates for the geometries are expected to be
|
||||
---in pixel coordinates where 0,0 is the top left corner of the texture.
|
||||
---There is no automatic padding or margin support when setting custom data,
|
||||
---which could potentially cause filtering artifacts if used with a material sampler that has linear filtering.
|
||||
---If that is an issue, you need to calculate padding and margins manually before passing in the geometry data to
|
||||
---this function.
|
||||
---@param path hash|string The path to the atlas resource
|
||||
---@param table resource.atlas A table containing info about the atlas. Supported entries:
|
||||
---
|
||||
---
|
||||
---
|
||||
---texture
|
||||
---string | hash the path to the texture resource, e.g "/main/my_texture.texturec"
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---animations
|
||||
---table a list of the animations in the atlas. Supports the following fields:
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---id
|
||||
---string the id of the animation, used in e.g sprite.play_animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---width
|
||||
---integer the width of the animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---height
|
||||
---integer the height of the animation
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---frame_start
|
||||
---integer index to the first geometry of the animation. Indices are lua based and must be in the range of 1 .. in atlas.
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---frame_end
|
||||
---integer index to the last geometry of the animation (non-inclusive). Indices are lua based and must be in the range of 1 .. in atlas.
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---playback
|
||||
---constant optional playback mode of the animation, the default value is go.PLAYBACK_ONCE_FORWARD
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---fps
|
||||
---integer optional fps of the animation, the default value is 30
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---flip_vertical
|
||||
---boolean optional flip the animation vertically, the default value is false
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---flip_horizontal
|
||||
---boolean optional flip the animation horizontally, the default value is false
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---geometries
|
||||
---table A list of the geometries that should map to the texture data. Supports the following fields:
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---vertices
|
||||
---table a list of the vertices in texture space of the geometry in the form {px0, py0, px1, py1, ..., pxn, pyn}
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---uvs
|
||||
---table a list of the uv coordinates in texture space of the geometry in the form of {u0, v0, u1, v1, ..., un, vn}
|
||||
---
|
||||
---
|
||||
---
|
||||
---
|
||||
---indices
|
||||
---table a list of the indices of the geometry in the form {i0, i1, i2, ..., in}. Each tripe in the list represents a triangle.
|
||||
---
|
||||
---
|
||||
---
|
||||
function resource.set_atlas(path, table) end
|
||||
|
||||
---Sets the buffer of a resource. By default, setting the resource buffer will either copy the data from the incoming buffer object
|
||||
---to the buffer stored in the destination resource, or make a new buffer object if the sizes between the source buffer and the destination buffer
|
||||
---stored in the resource differs. In some cases, e.g performance reasons, it might be beneficial to just set the buffer object on the resource without copying or cloning.
|
||||
---To achieve this, set the transfer_ownership flag to true in the argument table. Transferring ownership from a lua buffer to a resource with this function
|
||||
---works exactly the same as resource.create_buffer: the destination resource will take ownership of the buffer held by the lua reference, i.e the buffer will not automatically be removed
|
||||
---when the lua reference to the buffer is garbage collected.
|
||||
---Note: When setting a buffer with transfer_ownership = true, the currently bound buffer in the resource will be destroyed.
|
||||
---@param path hash|string The path to the resource
|
||||
---@param buffer buffer_data The resource buffer
|
||||
---@param table { transfer_ownership: boolean|nil }|nil A table containing info about how to set the buffer. Supported entries:
|
||||
---
|
||||
---
|
||||
---
|
||||
---transfer_ownership
|
||||
---boolean optional flag to determine wether or not the resource should take over ownership of the buffer object (default false)
|
||||
---
|
||||
---
|
||||
---
|
||||
function resource.set_buffer(path, buffer, table) end
|
||||
|
||||
---Update internal sound resource (wavc/oggc) with new data
|
||||
---@param path hash|string The path to the resource
|
||||
---@param buffer string A lua string containing the binary sound data
|
||||
function resource.set_sound(path, buffer) end
|
||||
|
||||
---Sets the pixel data for a specific texture.
|
||||
---@param path hash|string The path to the resource
|
||||
---@param table { type:number, width:number, height:number, format:number, x:number|nil, y:number|nil, mipmap:number|nil, compression_type:number|nil} A table containing info about the texture. Supported entries:
|
||||
---
|
||||
---type
|
||||
---number The texture type. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_TYPE_2D
|
||||
---resource.TEXTURE_TYPE_CUBE_MAP
|
||||
---
|
||||
---
|
||||
---width
|
||||
---number The width of the texture (in pixels)
|
||||
---height
|
||||
---number The width of the texture (in pixels)
|
||||
---format
|
||||
---number The texture format, note that some of these formats are platform specific. Supported values:
|
||||
---
|
||||
---
|
||||
---resource.TEXTURE_FORMAT_LUMINANCE
|
||||
---resource.TEXTURE_FORMAT_RGB
|
||||
---resource.TEXTURE_FORMAT_RGBA
|
||||
---
|
||||
---These constants might not be available on the device:
|
||||
---- resource.TEXTURE_FORMAT_RGB_PVRTC_2BPPV1
|
||||
---- resource.TEXTURE_FORMAT_RGB_PVRTC_4BPPV1
|
||||
---- resource.TEXTURE_FORMAT_RGBA_PVRTC_2BPPV1
|
||||
---- resource.TEXTURE_FORMAT_RGBA_PVRTC_4BPPV1
|
||||
---- resource.TEXTURE_FORMAT_RGB_ETC1
|
||||
---- resource.TEXTURE_FORMAT_RGBA_ETC2
|
||||
---- resource.TEXTURE_FORMAT_RGBA_ASTC_4x4
|
||||
---- resource.TEXTURE_FORMAT_RGB_BC1
|
||||
---- resource.TEXTURE_FORMAT_RGBA_BC3
|
||||
---- resource.TEXTURE_FORMAT_R_BC4
|
||||
---- resource.TEXTURE_FORMAT_RG_BC5
|
||||
---- resource.TEXTURE_FORMAT_RGBA_BC7
|
||||
---- resource.TEXTURE_FORMAT_RGB16F
|
||||
---- resource.TEXTURE_FORMAT_RGB32F
|
||||
---- resource.TEXTURE_FORMAT_RGBA16F
|
||||
---- resource.TEXTURE_FORMAT_RGBA32F
|
||||
---- resource.TEXTURE_FORMAT_R16F
|
||||
---- resource.TEXTURE_FORMAT_RG16F
|
||||
---- resource.TEXTURE_FORMAT_R32F
|
||||
---- resource.TEXTURE_FORMAT_RG32F
|
||||
---You can test if the device supports these values by checking if a specific enum is nil or not:
|
||||
---if resource.TEXTURE_FORMAT_RGBA16F ~= nil then
|
||||
--- -- it is safe to use this format
|
||||
---end
|
||||
---
|
||||
---
|
||||
---
|
||||
---x
|
||||
---number optional x offset of the texture (in pixels)
|
||||
---y
|
||||
---number optional y offset of the texture (in pixels)
|
||||
---mipmap
|
||||
---number optional mipmap to upload the data to
|
||||
---compression_type
|
||||
---number optional specify the compression type for the data in the buffer object that holds the texture data. Defaults to resource.COMPRESSION_TYPE_DEFAULT, i.e no compression. Supported values:
|
||||
---
|
||||
---
|
||||
---COMPRESSION_TYPE_DEFAULT
|
||||
---COMPRESSION_TYPE_BASIS_UASTC
|
||||
---
|
||||
---@param buffer buffer_data The buffer of precreated pixel data
|
||||
--- To update a cube map texture you need to pass in six times the amount of data via the buffer, since a cube map has six sides!
|
||||
function resource.set_texture(path, table, buffer) end
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.texture(path) end
|
||||
|
||||
---Constructor-like function with two purposes:
|
||||
---Load the specified resource as part of loading the script
|
||||
---Return a hash to the run-time version of the resource
|
||||
--- This function can only be called within go.property function calls.
|
||||
---@param path string|nil optional resource path string to the resource
|
||||
---@return hash path a path hash to the binary version of the resource
|
||||
function resource.tile_source(path) end
|
||||
|
||||
return resource
|
Reference in New Issue
Block a user