Difference between revisions of "Texture.new"

From GiderosMobile
(reformatting)
(Texture to TextureBase)
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 +
'''Available since:''' Gideros 2011.6<br/>
 +
'''Class:''' [[Texture]]<br/>
  
<languages />
+
=== Description ===
 
 
'''<translate>Available since</translate>:''' Gideros 2011.6
 
<br/>
 
 
 
'''<translate>Class</translate>:''' [[Special:MyLanguage/Texture|Texture]]
 
<br/>
 
 
 
=== <translate>Description</translate> ===
 
<translate>
 
 
Creates a new Texture object.
 
Creates a new Texture object.
<br/>
+
<syntaxhighlight lang="lua">
</translate>
 
 
 
<source lang="lua">
 
 
Texture.new(filename,filtering,options)
 
Texture.new(filename,filtering,options)
</source>
+
</syntaxhighlight>
  
=== <translate>Parameters</translate> ===
+
=== Parameters ===
'''filename''': (string) <translate>The name of the texture file to be loaded.</translate>
+
'''filename''': (string) the name of the texture file to be loaded<br/>
<br/>
+
'''filtering''': (boolean, default = false) whether or not the texture is filtered, that is smoothing the image (''blurry'') '''optional'''<br/>
'''filtering''': (boolean, default = false) <translate>Whether or not the texture is filtered.</translate>
+
'''options''': (table) a table that specifies optional parameters '''optional'''. The following options are supported:<br/>
<br/>
 
'''options''': (table, optional) <translate>A table that specifies optional paramaters. The following options are supported:</translate>
 
<br/>
 
* '''transparentColor''':<translate>Specify which color stands for transparent, for formats that don't supply an alpha channel such as JPEG</translate>
 
* '''wrap''':<translate>How to treat texels outside the texture. Possible values are Texture.CLAMP and Texture.REPEAT.</translate>
 
* '''format''':<translate>The GPU pixel format for the texture</translate>
 
* '''extend''':<translate>Wether the texture should be extended to a power of two size. Defaults to true.</translate>
 
* '''scale''':<translate>The scale at which this texture was made, if it cannot be determined by a suffix. Defaults to 1.</translate>
 
  
=== <translate>Examples</translate> ===
+
* '''transparentColor''': specify which color stands for transparent for formats that don't supply an alpha channel such as JPEG
'''Example'''
+
* '''wrap''': how to treat texels outside the texture. Possible values are TextureBase.CLAMP ('''default''') and TextureBase.REPEAT
<br/>
+
* '''format''': the GPU pixel format for the texture ('''default = RGBA8888''') see '''[[TextureBase]]'''
 +
* '''extend''': whether the texture should be extended to a power of two size ('''default = true''')
 +
* '''scale''': the scale at which this texture was made, if it cannot be determined by a suffix ('''default = 1''')
 +
* '''rawalpha''': disable alpha premultiplication. This can be helpful if one wants to store specific data in the alpha channel of a texture along with a dedicated shader ('''new 2022.3''') ('''default = false''')
 +
* '''mipmap''': enable mipmaping ('''new 2022.6''') ('''default = false'''), for more info see https://www.khronos.org/opengl/wiki/Texture#Mip_maps
  
<source lang="lua">
+
=== Examples ===
 +
<syntaxhighlight lang="lua">
 
-- do not filter and make the color 0xff00ff transparent
 
-- do not filter and make the color 0xff00ff transparent
local texture = Texture.new("image.png", false, {transparentColor = 0xff00ff})
+
local texture = Texture.new("image.jpg", false, {transparentColor = 0xff00ff})
 
-- enable filtering and repeat the texture
 
-- enable filtering and repeat the texture
 
local texture = Texture.new("image.png", true, {wrap = Texture.REPEAT})
 
local texture = Texture.new("image.png", true, {wrap = Texture.REPEAT})
</source>
+
</syntaxhighlight>
  
__NOTOC__
 
  
<languages />
+
----
  
'''<translate>Available since</translate>:''' Gideros 2016.08
+
__NOTOC__
<br/>
+
'''Available since:''' Gideros 2016.08<br/>
'''<translate>Class</translate>:''' [[Special:MyLanguage/Texture|Texture]]
+
'''Class:''' [[Texture]]<br/>
<br/>
 
  
=== <translate>Description</translate> ===
+
=== Description ===
<translate>Create a texture from pixel data.</translate>
+
Creates a texture from pixel data.
 +
<syntaxhighlight lang="lua">
 +
Texture.new(pixels,width,height,filtering,options)
 +
</syntaxhighlight>
  
<source lang="lua">
+
=== Parameters ===
Texture.new(pixels, width, height, filtering, options)
+
'''pixels''': (string) a string containing actual R,G,B,A components of each pixel in the new texture. Each component is stored as a byte. You can pass nil if you don't need to initialize texture content<br/>
</source>
+
'''width''': (number) width of the texture to create<br/>
 +
'''height''': (number) height of the texture to create<br/>
 +
'''filtering''': (boolean, default = false) indicates that the texture should be filtered, that is smoothing the image (''blurry'') '''optional'''<br/>
 +
'''options''': (table) a table that specifies optional parameters '''optional'''. The following options are supported:<br/>
  
=== <translate>Parameters</translate> ===
+
* '''transparentColor''': specify which color stands for transparent for formats that don't supply an alpha channel such as JPEG
'''pixels''': (string) <translate>A string containing actual R,G,B,A compoents of each pixel in the new texture. Each component is stored as a byte. You can pass nil if you don't need to initialize texture content</translate>
+
* '''wrap''': how to treat texels outside the texture. Possible values are TextureBase.CLAMP ('''default''') and TextureBase.REPEAT
<br/>
+
* '''format''': the GPU pixel format for the texture ('''default = RGBA8888''') see '''[[TextureBase]]'''
'''width''': (number) <translate>width of the texture to create</translate>
+
* '''extend''': whether the texture should be extended to a power of two size ('''default = true''')
<br/>
+
* '''scale''': the scale at which this texture was made, if it cannot be determined by a suffix ('''default = 1''')
'''height''': (number) <translate>Height of the texture to create</translate>
+
* '''rawalpha''': disable alpha premultiplication. This can be helpful if one wants to store specific data in the alpha channel of a texture along with a dedicated shader ('''new 2022.3''') ('''default = false''')
<br/>
+
* '''mipmap''': enable mipmaping ('''new 2022.6''') ('''default = false''')
'''filtering''': (boolean, default to false) <translate>indicate that the texture should be filtered</translate> '''optional'''
 
<br/>
 
'''options''': (table, optional) <translate>A table that specifies optional paramaters. The following options are supported:</translate>
 
<br/>
 
  
* '''transparentColor''':<translate>Specify which color stands for transparent, for formats that don't supply an alpha channel such as JPEG</translate>
+
=== Example ===
* '''wrap''':<translate>How to treat texels outside the texture. Possible values are Texture.CLAMP and Texture.REPEAT.</translate>
+
<syntaxhighlight lang="lua">
* '''format''':<translate>The GPU pixel format for the texture</translate>
+
-- Create a 300x400 empty texture. Prevent gideros from extending the texture to the next power of two size
* '''extend''':<translate>Wether the texture should be extended to a power of two size. Defaults to true.</translate>
+
local texture = Texture.new(nil, 300, 400, false, {extend=false})
* '''scale''':<translate>The scale at which this texture was made, if it cannot be determined by a suffix. Defaults to 1.</translate>
+
</syntaxhighlight>
 
 
=== <translate>Examples</translate> ===
 
'''Example'''
 
<br/>
 
  
<source lang="lua">
+
{{Texture}}
-- Create a 300x400 empty texture. Prevent gideros from extending the texture to the next power of two size
 
local texture = Texture.new(nil,300,400, false, {extend=false})
 
</source>
 
<br/>
 
<br/>
 

Latest revision as of 14:30, 20 July 2024

Available since: Gideros 2011.6
Class: Texture

Description

Creates a new Texture object.

Texture.new(filename,filtering,options)

Parameters

filename: (string) the name of the texture file to be loaded
filtering: (boolean, default = false) whether or not the texture is filtered, that is smoothing the image (blurry) optional
options: (table) a table that specifies optional parameters optional. The following options are supported:

  • transparentColor: specify which color stands for transparent for formats that don't supply an alpha channel such as JPEG
  • wrap: how to treat texels outside the texture. Possible values are TextureBase.CLAMP (default) and TextureBase.REPEAT
  • format: the GPU pixel format for the texture (default = RGBA8888) see TextureBase
  • extend: whether the texture should be extended to a power of two size (default = true)
  • scale: the scale at which this texture was made, if it cannot be determined by a suffix (default = 1)
  • rawalpha: disable alpha premultiplication. This can be helpful if one wants to store specific data in the alpha channel of a texture along with a dedicated shader (new 2022.3) (default = false)
  • mipmap: enable mipmaping (new 2022.6) (default = false), for more info see https://www.khronos.org/opengl/wiki/Texture#Mip_maps

Examples

-- do not filter and make the color 0xff00ff transparent
local texture = Texture.new("image.jpg", false, {transparentColor = 0xff00ff})
-- enable filtering and repeat the texture
local texture = Texture.new("image.png", true, {wrap = Texture.REPEAT})




Available since: Gideros 2016.08
Class: Texture

Description

Creates a texture from pixel data.

Texture.new(pixels,width,height,filtering,options)

Parameters

pixels: (string) a string containing actual R,G,B,A components of each pixel in the new texture. Each component is stored as a byte. You can pass nil if you don't need to initialize texture content
width: (number) width of the texture to create
height: (number) height of the texture to create
filtering: (boolean, default = false) indicates that the texture should be filtered, that is smoothing the image (blurry) optional
options: (table) a table that specifies optional parameters optional. The following options are supported:

  • transparentColor: specify which color stands for transparent for formats that don't supply an alpha channel such as JPEG
  • wrap: how to treat texels outside the texture. Possible values are TextureBase.CLAMP (default) and TextureBase.REPEAT
  • format: the GPU pixel format for the texture (default = RGBA8888) see TextureBase
  • extend: whether the texture should be extended to a power of two size (default = true)
  • scale: the scale at which this texture was made, if it cannot be determined by a suffix (default = 1)
  • rawalpha: disable alpha premultiplication. This can be helpful if one wants to store specific data in the alpha channel of a texture along with a dedicated shader (new 2022.3) (default = false)
  • mipmap: enable mipmaping (new 2022.6) (default = false)

Example

-- Create a 300x400 empty texture. Prevent gideros from extending the texture to the next power of two size
local texture = Texture.new(nil, 300, 400, false, {extend=false})