use specific texture part for pieces
This commit is contained in:
parent
efcb9ca4ed
commit
4419e84e25
4 changed files with 53 additions and 38 deletions
|
@ -4,15 +4,17 @@ tool
|
|||
|
||||
export var size: int = 64
|
||||
var number: int = 0
|
||||
|
||||
func set_number(num: int) -> void:
|
||||
number = num
|
||||
var taquin_position = Vector2(0, 0)
|
||||
var piece_scale = Vector2(0.25, 0.25)
|
||||
|
||||
func _ready() -> void:
|
||||
$ColorRect.rect_size.x = size
|
||||
$ColorRect.rect_size.y = size
|
||||
$ColorRect/Label.text = str(number)
|
||||
|
||||
var shader = $ColorRect.material as ShaderMaterial
|
||||
shader.set_shader_param("scale", Vector3(0.5, 0.5, 1.0))
|
||||
shader.set_shader_param("offset", Vector3(0.8, 0.1, 0.0))
|
||||
# We need a dedicated material to have separate uniform,
|
||||
# otherwise uniforms will be shared.
|
||||
var mat = $ColorRect.material.duplicate() as ShaderMaterial
|
||||
mat.set_shader_param("scale", Vector3(piece_scale.x, piece_scale.y, 1.0))
|
||||
mat.set_shader_param("offset", Vector3(taquin_position.x, taquin_position.y, 0.0))
|
||||
$ColorRect.material = mat
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue