back buffer copy node, to improve on texscreen()
back buffer copy node and respective demo
This commit is contained in:
@ -9,6 +9,10 @@ down=[key(S), key(Down)]
|
||||
left=[key(Left), key(A)]
|
||||
right=[key(Right), key(D)]
|
||||
|
||||
[rasterizer]
|
||||
|
||||
shadow_filter=0
|
||||
|
||||
[render]
|
||||
|
||||
default_clear_color=#ff000000
|
||||
|
||||
Binary file not shown.
BIN
demos/2d/texscreen/bubble.png
Normal file
BIN
demos/2d/texscreen/bubble.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
17
demos/2d/texscreen/bubbles.gd
Normal file
17
demos/2d/texscreen/bubbles.gd
Normal file
@ -0,0 +1,17 @@
|
||||
|
||||
extends Control
|
||||
|
||||
# member variables here, example:
|
||||
# var a=2
|
||||
# var b="textvar"
|
||||
|
||||
const MAX_BUBBLES=10
|
||||
|
||||
func _ready():
|
||||
# Initialization here
|
||||
for i in range(MAX_BUBBLES):
|
||||
var bubble = preload("res://lens.scn").instance()
|
||||
add_child(bubble)
|
||||
pass
|
||||
|
||||
|
||||
BIN
demos/2d/texscreen/bubbles.scn
Normal file
BIN
demos/2d/texscreen/bubbles.scn
Normal file
Binary file not shown.
BIN
demos/2d/texscreen/burano.png
Normal file
BIN
demos/2d/texscreen/burano.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 952 KiB |
4
demos/2d/texscreen/engine.cfg
Normal file
4
demos/2d/texscreen/engine.cfg
Normal file
@ -0,0 +1,4 @@
|
||||
[application]
|
||||
|
||||
name="Glass Bubbles (Texscreen)"
|
||||
main_scene="res://bubbles.scn"
|
||||
37
demos/2d/texscreen/lens.gd
Normal file
37
demos/2d/texscreen/lens.gd
Normal file
@ -0,0 +1,37 @@
|
||||
|
||||
extends BackBufferCopy
|
||||
|
||||
# member variables here, example:
|
||||
# var a=2
|
||||
# var b="textvar"
|
||||
const MOTION_SPEED=150
|
||||
|
||||
var vsize;
|
||||
var dir;
|
||||
|
||||
func _process(delta):
|
||||
var pos = get_pos() + dir * delta * MOTION_SPEED
|
||||
|
||||
if (pos.x<0):
|
||||
dir.x=abs(dir.x)
|
||||
elif (pos.x>vsize.x):
|
||||
dir.x=-abs(dir.x)
|
||||
|
||||
if (pos.y<0):
|
||||
dir.y=abs(dir.y)
|
||||
elif (pos.y>vsize.y):
|
||||
dir.y=-abs(dir.y)
|
||||
|
||||
set_pos(pos)
|
||||
|
||||
func _ready():
|
||||
vsize = get_viewport_rect().size
|
||||
var pos = vsize * Vector2(randf(),randf());
|
||||
set_pos(pos);
|
||||
dir = Vector2(randf()*2.0-1,randf()*2.0-1).normalized()
|
||||
set_process(true)
|
||||
|
||||
# Initialization here
|
||||
pass
|
||||
|
||||
|
||||
BIN
demos/2d/texscreen/lens.scn
Normal file
BIN
demos/2d/texscreen/lens.scn
Normal file
Binary file not shown.
Reference in New Issue
Block a user