Procházet zdrojové kódy

Removed demos

they go to their own project now
Juan Linietsky před 9 roky
rodič
revize
c7d45ec085
100 změnil soubory, kde provedl 0 přidání a 2055 odebrání
  1. binární
      demos/2d/area_input/box_area.png
  2. binární
      demos/2d/area_input/circle_area.png
  3. 0 5
      demos/2d/area_input/engine.cfg
  4. binární
      demos/2d/area_input/icon.png
  5. 0 15
      demos/2d/area_input/input.gd
  6. 0 109
      demos/2d/area_input/input.tscn
  7. 0 17
      demos/2d/dynamic_collision_shapes/ball.gd
  8. binární
      demos/2d/dynamic_collision_shapes/ball.png
  9. 0 47
      demos/2d/dynamic_collision_shapes/ball.tscn
  10. binární
      demos/2d/dynamic_collision_shapes/box.png
  11. binární
      demos/2d/dynamic_collision_shapes/circle.png
  12. 0 19
      demos/2d/dynamic_collision_shapes/dynamic_colobjs.gd
  13. 0 178
      demos/2d/dynamic_collision_shapes/dynamic_colobjs.tscn
  14. 0 5
      demos/2d/dynamic_collision_shapes/engine.cfg
  15. binární
      demos/2d/dynamic_collision_shapes/icon.png
  16. binární
      demos/2d/dynamic_collision_shapes/poly.png
  17. 0 12
      demos/2d/fog_of_war/engine.cfg
  18. binární
      demos/2d/fog_of_war/floor.png
  19. 0 78
      demos/2d/fog_of_war/fog.gd
  20. binární
      demos/2d/fog_of_war/fog.png
  21. 0 25
      demos/2d/fog_of_war/fog.tscn
  22. binární
      demos/2d/fog_of_war/icon.png
  23. 0 32
      demos/2d/fog_of_war/tileset.tres
  24. 0 30
      demos/2d/fog_of_war/tileset_edit.tscn
  25. 0 38
      demos/2d/fog_of_war/troll.gd
  26. binární
      demos/2d/fog_of_war/troll.png
  27. 0 52
      demos/2d/fog_of_war/troll.tscn
  28. 0 21
      demos/2d/hdr/beach_cave.gd
  29. 0 88
      demos/2d/hdr/beach_cave.tscn
  30. 0 14
      demos/2d/hdr/engine.cfg
  31. binární
      demos/2d/hdr/icon.png
  32. binární
      demos/2d/hdr/ocean_beach.png
  33. 0 1
      demos/2d/hdr/ocean_beach.png.flags
  34. binární
      demos/2d/hdr/ocean_cave.png
  35. 0 1
      demos/2d/hdr/ocean_cave.png.flags
  36. binární
      demos/2d/hexamap/WWT-01.png
  37. binární
      demos/2d/hexamap/WWT-02.png
  38. binární
      demos/2d/hexamap/WWT-03.png
  39. binární
      demos/2d/hexamap/WWT-04.png
  40. binární
      demos/2d/hexamap/WWT-05.png
  41. binární
      demos/2d/hexamap/WWT-06.png
  42. binární
      demos/2d/hexamap/WWT-07.png
  43. binární
      demos/2d/hexamap/WWT-08.png
  44. binární
      demos/2d/hexamap/WWT-09.png
  45. binární
      demos/2d/hexamap/WWT-10.png
  46. binární
      demos/2d/hexamap/WWT-11.png
  47. binární
      demos/2d/hexamap/WWT-12.png
  48. binární
      demos/2d/hexamap/WWT-13.png
  49. binární
      demos/2d/hexamap/WWT-14.png
  50. binární
      demos/2d/hexamap/WWT-15.png
  51. binární
      demos/2d/hexamap/WWT-16.png
  52. binární
      demos/2d/hexamap/WWT-17.png
  53. binární
      demos/2d/hexamap/WWT-18.png
  54. binární
      demos/2d/hexamap/WWT-19.png
  55. binární
      demos/2d/hexamap/WWT-20.png
  56. binární
      demos/2d/hexamap/WWT-21.png
  57. binární
      demos/2d/hexamap/WWT-22.png
  58. binární
      demos/2d/hexamap/WWT-23.png
  59. binární
      demos/2d/hexamap/WWT-24.png
  60. binární
      demos/2d/hexamap/WWT-25.png
  61. binární
      demos/2d/hexamap/WWT-26.png
  62. 0 12
      demos/2d/hexamap/engine.cfg
  63. binární
      demos/2d/hexamap/icon.png
  64. 0 31
      demos/2d/hexamap/map.tscn
  65. 0 240
      demos/2d/hexamap/tileset.tres
  66. 0 214
      demos/2d/hexamap/tileset_edit.tscn
  67. 0 38
      demos/2d/hexamap/troll.gd
  68. binární
      demos/2d/hexamap/troll.png
  69. 0 52
      demos/2d/hexamap/troll.tscn
  70. 0 49
      demos/2d/isometric/dungeon.tscn
  71. 0 21
      demos/2d/isometric/engine.cfg
  72. binární
      demos/2d/isometric/icon.png
  73. binární
      demos/2d/isometric/isotiles.png
  74. 0 67
      demos/2d/isometric/tileset.tres
  75. 0 130
      demos/2d/isometric/tileset_edit.tscn
  76. 0 38
      demos/2d/isometric/troll.gd
  77. binární
      demos/2d/isometric/troll.png
  78. 0 53
      demos/2d/isometric/troll.tscn
  79. 0 12
      demos/2d/isometric_light/character_shader.tres
  80. 0 52
      demos/2d/isometric_light/column.tscn
  81. 0 85
      demos/2d/isometric_light/cubio.gd
  82. 0 174
      demos/2d/isometric_light/cubio.tscn
  83. binární
      demos/2d/isometric_light/cubio/idle0001.png
  84. binární
      demos/2d/isometric_light/cubio/idle0002.png
  85. binární
      demos/2d/isometric_light/cubio/idle0003.png
  86. binární
      demos/2d/isometric_light/cubio/idle0004.png
  87. binární
      demos/2d/isometric_light/cubio/idle0005.png
  88. binární
      demos/2d/isometric_light/cubio/idle0006.png
  89. binární
      demos/2d/isometric_light/cubio/idle0007.png
  90. binární
      demos/2d/isometric_light/cubio/idle0008.png
  91. binární
      demos/2d/isometric_light/cubio/idle0009.png
  92. binární
      demos/2d/isometric_light/cubio/idle0010.png
  93. binární
      demos/2d/isometric_light/cubio/idle0011.png
  94. binární
      demos/2d/isometric_light/cubio/idle0012.png
  95. binární
      demos/2d/isometric_light/cubio/idle0013.png
  96. binární
      demos/2d/isometric_light/cubio/idle0014.png
  97. binární
      demos/2d/isometric_light/cubio/idle0015.png
  98. binární
      demos/2d/isometric_light/cubio/idle0016.png
  99. binární
      demos/2d/isometric_light/cubio/idle0017.png
  100. binární
      demos/2d/isometric_light/cubio/idle0018.png

binární
demos/2d/area_input/box_area.png


binární
demos/2d/area_input/circle_area.png


+ 0 - 5
demos/2d/area_input/engine.cfg

@@ -1,5 +0,0 @@
-[application]
-
-name="Area 2D Input Events"
-main_scene="res://input.tscn"
-icon="res://icon.png"

binární
demos/2d/area_input/icon.png


+ 0 - 15
demos/2d/area_input/input.gd

@@ -1,15 +0,0 @@
-
-extends Area2D
-
-
-# Virtual from CollisionObject2D (also available as signal)
-func _input_event(viewport, event, shape_idx):
-	# Convert event to local coordinates
-	if (event.type == InputEvent.MOUSE_MOTION):
-		event = make_input_local(event)
-		get_node("label").set_text(str(event.pos))
-
-
-# Virtual from CollisionObject2D (also available as signal)
-func _mouse_exit():
-	get_node("label").set_text("")

+ 0 - 109
demos/2d/area_input/input.tscn

@@ -1,109 +0,0 @@
-[gd_scene load_steps=6 format=1]
-
-[ext_resource path="res://input.gd" type="Script" id=1]
-[ext_resource path="res://box_area.png" type="Texture" id=2]
-[ext_resource path="res://circle_area.png" type="Texture" id=3]
-
-[sub_resource type="RectangleShape2D" id=1]
-
-custom_solver_bias = 0.0
-extents = Vector2( 64, 64 )
-
-[sub_resource type="CircleShape2D" id=2]
-
-custom_solver_bias = 0.0
-radius = 64.0
-
-[node name="base" type="Node2D"]
-
-[node name="box" type="Area2D" parent="."]
-
-transform/pos = Vector2( 212, 281 )
-transform/rot = 35.4081
-input/pickable = true
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-script/script = ExtResource( 1 )
-
-[node name="sprite" type="Sprite" parent="box"]
-
-texture = ExtResource( 2 )
-
-[node name="label" type="Label" parent="box"]
-
-focus/ignore_mouse = true
-focus/stop_mouse = true
-size_flags/horizontal = 2
-margin/left = -43.0
-margin/top = 71.0
-margin/right = 43.0
-margin/bottom = 84.0
-align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="shape" type="CollisionShape2D" parent="box"]
-
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = -1
-
-[node name="circle" type="Area2D" parent="."]
-
-transform/pos = Vector2( 547.877, 286.808 )
-transform/rot = -40.5985
-input/pickable = true
-shapes/0/shape = SubResource( 2 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-gravity_vec = Vector2( 0, 1 )
-gravity = 98.0
-linear_damp = 0.1
-angular_damp = 1.0
-script/script = ExtResource( 1 )
-
-[node name="sprite" type="Sprite" parent="circle"]
-
-texture = ExtResource( 3 )
-
-[node name="label" type="Label" parent="circle"]
-
-focus/ignore_mouse = true
-focus/stop_mouse = true
-size_flags/horizontal = 2
-margin/left = -43.0
-margin/top = 71.0
-margin/right = 43.0
-margin/bottom = 84.0
-align = 1
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-[node name="shape" type="CollisionShape2D" parent="circle"]
-
-shape = SubResource( 2 )
-trigger = false
-_update_shape_index = -1
-
-[node name="Label" type="Label" parent="."]
-
-focus/ignore_mouse = true
-focus/stop_mouse = true
-size_flags/horizontal = 2
-margin/left = 0.0
-margin/top = 0.0
-margin/right = 40.0
-margin/bottom = 13.0
-text = "This demo shows how to use a regular Area2D to get input events, and how to convert the input events to local coordinates of the node.\nUnlike controls, Input on Area2D or PhysicsBody2D nodes only works properly (with scrolling) on canvas layer 0."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-

+ 0 - 17
demos/2d/dynamic_collision_shapes/ball.gd

@@ -1,17 +0,0 @@
-
-extends RigidBody2D
-
-# Member variables
-var timeout = 5
-
-
-func _process(delta):
-	timeout -= delta
-	if (timeout < 1):
-		set_opacity(timeout)
-	if (timeout < 0):
-		queue_free()
-
-
-func _ready():
-	set_process(true)

binární
demos/2d/dynamic_collision_shapes/ball.png


+ 0 - 47
demos/2d/dynamic_collision_shapes/ball.tscn

@@ -1,47 +0,0 @@
-[gd_scene load_steps=4 format=1]
-
-[ext_resource path="res://ball.gd" type="Script" id=1]
-[ext_resource path="res://ball.png" type="Texture" id=2]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 7.45713
-
-[node name="bal" type="RigidBody2D"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-mode = 0
-mass = 1.0
-friction = 1.0
-bounce = 0.0
-gravity_scale = 1.0
-custom_integrator = false
-continuous_cd = 0
-contacts_reported = 0
-contact_monitor = false
-sleeping = false
-can_sleep = true
-velocity/linear = Vector2( 0, 0 )
-velocity/angular = 0.0
-damp_override/linear = -1.0
-damp_override/angular = -1.0
-script/script = ExtResource( 1 )
-
-[node name="sprite" type="Sprite" parent="."]
-
-transform/pos = Vector2( 0, 1 )
-texture = ExtResource( 2 )
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
-
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = 0
-
-

binární
demos/2d/dynamic_collision_shapes/box.png


binární
demos/2d/dynamic_collision_shapes/circle.png


+ 0 - 19
demos/2d/dynamic_collision_shapes/dynamic_colobjs.gd

@@ -1,19 +0,0 @@
-
-extends Node2D
-
-# Member variables
-const EMIT_INTERVAL = 0.1
-var timeout = EMIT_INTERVAL
-
-
-func _process(delta):
-	timeout -= delta
-	if (timeout < 0):
-		timeout = EMIT_INTERVAL
-		var ball = preload("res://ball.tscn").instance()
-		ball.set_pos(Vector2(randf()*get_viewport_rect().size.x, 0))
-		add_child(ball)
-
-
-func _ready():
-	set_process(true)

+ 0 - 178
demos/2d/dynamic_collision_shapes/dynamic_colobjs.tscn

@@ -1,178 +0,0 @@
-[gd_scene load_steps=13 format=1]
-
-[ext_resource path="res://dynamic_colobjs.gd" type="Script" id=1]
-[ext_resource path="res://circle.png" type="Texture" id=2]
-[ext_resource path="res://box.png" type="Texture" id=3]
-[ext_resource path="res://poly.png" type="Texture" id=4]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 28.8504
-
-[sub_resource type="RectangleShape2D" id=2]
-
-custom_solver_bias = 0.0
-extents = Vector2( 32.1805, 30.0328 )
-
-[sub_resource type="ConvexPolygonShape2D" id=3]
-
-custom_solver_bias = 0.0
-points = Vector2Array( 49.5669, -27.9744, 45.1564, 15.3961, 18.6931, -1.51105 )
-
-[sub_resource type="ConvexPolygonShape2D" id=4]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -55.093, -14.2052, -37.1739, 2.89948, -40.1345, 21.2602, -53.3067, 15.8716 )
-
-[sub_resource type="ConvexPolygonShape2D" id=5]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -40.1345, 21.2602, -37.1739, 2.89948, -14.386, -14.0076, -6.30005, 0.694214 )
-
-[sub_resource type="ConvexPolygonShape2D" id=6]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -14.386, -14.0076, 18.6931, -1.51105, 45.1564, 15.3961, -6.30005, 0.694214 )
-
-[sub_resource type="Animation" id=7]
-
-resource/name = "movethem"
-length = 4.0
-loop = true
-step = 0.1
-tracks/0/type = "value"
-tracks/0/path = NodePath("base/circle:transform/pos")
-tracks/0/interp = 1
-tracks/0/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 0, 0 ), Vector2( 52.7569, -70.845 ) ] }
-tracks/1/type = "value"
-tracks/1/path = NodePath("base/box:transform/pos")
-tracks/1/interp = 1
-tracks/1/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 193.173, -2.72076 ), Vector2( 195.894, -72.0999 ) ] }
-tracks/2/type = "value"
-tracks/2/path = NodePath("base/box:transform/rot")
-tracks/2/interp = 1
-tracks/2/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ 0.0, 92.8111 ] }
-tracks/3/type = "value"
-tracks/3/path = NodePath("base/polygon:transform/pos")
-tracks/3/interp = 1
-tracks/3/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 382.265, -2.72076 ), Vector2( 495.176, -10.883 ) ] }
-
-[sub_resource type="Animation" id=8]
-
-resource/name = "toggletrigger"
-length = 6.0
-loop = true
-step = 0.1
-tracks/0/type = "value"
-tracks/0/path = NodePath("base/box:trigger")
-tracks/0/interp = 1
-tracks/0/keys = { "cont":false, "times":FloatArray( 0, 4 ), "transitions":FloatArray( 1, 1 ), "values":[ false, true ] }
-tracks/1/type = "value"
-tracks/1/path = NodePath("base/box:visibility/opacity")
-tracks/1/interp = 1
-tracks/1/keys = { "cont":false, "times":FloatArray( 0, 4 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.2 ] }
-
-[node name="base" type="Node2D"]
-
-script/script = ExtResource( 1 )
-
-[node name="base" type="KinematicBody2D" parent="."]
-
-transform/pos = Vector2( 137, 470 )
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 7.91353, -10.6267 )
-shapes/0/trigger = false
-shapes/1/shape = SubResource( 2 )
-shapes/1/transform = Matrix32( 0.970626, -0.240595, 0.240595, 0.970626, 193.581, -13.1276 )
-shapes/1/trigger = false
-shapes/2/shape = SubResource( 3 )
-shapes/2/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
-shapes/2/trigger = false
-shapes/3/shape = SubResource( 4 )
-shapes/3/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
-shapes/3/trigger = false
-shapes/4/shape = SubResource( 5 )
-shapes/4/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
-shapes/4/trigger = false
-shapes/5/shape = SubResource( 6 )
-shapes/5/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
-shapes/5/trigger = false
-collision/layers = 1
-collision/mask = 1
-collision/margin = 0.08
-
-[node name="circle" type="CollisionShape2D" parent="base"]
-
-transform/pos = Vector2( 7.91353, -10.6267 )
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = 0
-
-[node name="sprite" type="Sprite" parent="base/circle"]
-
-texture = ExtResource( 2 )
-
-[node name="box" type="CollisionShape2D" parent="base"]
-
-transform/pos = Vector2( 193.581, -13.1276 )
-transform/rot = 13.9217
-shape = SubResource( 2 )
-trigger = false
-_update_shape_index = 1
-
-[node name="Sprite" type="Sprite" parent="base/box"]
-
-texture = ExtResource( 3 )
-
-[node name="polygon" type="CollisionPolygon2D" parent="base"]
-
-transform/pos = Vector2( 399.202, -3.9451 )
-build_mode = 0
-polygon = Vector2Array( -55.093, -14.2052, -37.1739, 2.89948, -14.386, -14.0076, 18.6931, -1.51105, 49.5669, -27.9744, 45.1564, 15.3961, -6.30005, 0.694214, -40.1345, 21.2602, -53.3067, 15.8716 )
-shape_range = Vector2( 2, 5 )
-trigger = false
-
-[node name="Sprite" type="Sprite" parent="base/polygon"]
-
-texture = ExtResource( 4 )
-
-[node name="shapemove" type="AnimationPlayer" parent="."]
-
-playback/process_mode = 1
-playback/default_blend_time = 0.0
-root/root = NodePath("..")
-anims/movethem = SubResource( 7 )
-playback/active = true
-playback/speed = 1.0
-blend_times = [  ]
-autoplay = "movethem"
-
-[node name="triggertoggle" type="AnimationPlayer" parent="."]
-
-playback/process_mode = 1
-playback/default_blend_time = 0.0
-root/root = NodePath("..")
-anims/movethem = SubResource( 7 )
-anims/toggletrigger = SubResource( 8 )
-playback/active = true
-playback/speed = 1.0
-blend_times = [  ]
-autoplay = "toggletrigger"
-
-[node name="Label" type="Label" parent="."]
-
-focus/ignore_mouse = true
-focus/stop_mouse = true
-size_flags/horizontal = 2
-margin/left = 21.0
-margin/top = 21.0
-margin/right = 719.0
-margin/bottom = 73.0
-text = "This demo simply shows that it\'s possible now to move a CollisionShape and CollisionPolygon after it was created\nand also turn it into a trigger at run-time. CollisionShape will remain alive during the running game and you can\ninteract with them, even though they are just meant to be helpers.\nIt is always recommended in a real use-case scenario, to move a body instead of a shape, as that path is better optimized."
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-

+ 0 - 5
demos/2d/dynamic_collision_shapes/engine.cfg

@@ -1,5 +0,0 @@
-[application]
-
-name="Run-Time CollisionShape"
-main_scene="res://dynamic_colobjs.tscn"
-icon="res://icon.png"

binární
demos/2d/dynamic_collision_shapes/icon.png


binární
demos/2d/dynamic_collision_shapes/poly.png


+ 0 - 12
demos/2d/fog_of_war/engine.cfg

@@ -1,12 +0,0 @@
-[application]
-
-name="Fog of War"
-main_scene="res://fog.tscn"
-icon="res://icon.png"
-
-[input]
-
-move_up=[key(Up)]
-move_bottom=[key(Down)]
-move_left=[key(Left)]
-move_right=[key(Right)]

binární
demos/2d/fog_of_war/floor.png


+ 0 - 78
demos/2d/fog_of_war/fog.gd

@@ -1,78 +0,0 @@
-
-extends TileMap
-
-# Member variables
-
-# Boundaries for the fog rectangle
-var x_min = -20 # Left start tile
-var x_max = 20 # Right end tile
-var y_min = -20 # Top start tile
-var y_max = 20 # Bottom end tile
-
-var position # Player's position
-
-# Iteration variables
-var x
-var y
-
-# Variables to check if the player moved
-var x_old
-var y_old
-
-# Array to build up the visible area like a square.
-# First value determines the width/height of the tip.
-# Here it would be 2*2 + 1 = 5 tiles wide/high.
-# Second value determines the total squares size.
-# Here it would be 5*2 + 1 = 10 tiles wide/high.
-var l = range(2, 5)
-
-
-# Process that runs in realtime
-func _fixed_process(delta):
-	position = get_node("../troll").get_pos()
-	
-	# Calculate the corresponding tile
-	# from the players position
-	x = int(position.x/get_cell_size().x)
-	# Switching from positive to negative tile positions
-	# causes problems because of rounding problems
-	if position.x < 0:
-		x -= 1 # Correct negative values
-	
-	y = int(position.y/get_cell_size().y)
-	if (position.y < 0):
-		y -= 1
-	
-	# Check if the player moved one tile further
-	if ((x_old != x) or (y_old != y)):
-		# Create the transparent part (visited area)
-		var end = l.size() - 1
-		var start = 0
-		for steps in range(l.size()):
-			for m in range(x - l[end] - 1, x + l[end] + 2):
-				for n in range(y - l[start] - 1, y + l[start] + 2):
-					if (get_cell(m, n) != 0):
-						set_cell(m, n, 1, 0, 0)
-			end -= 1
-			start += 1
-		
-		# Create the actual and active visible part
-		var end = l.size() - 1
-		var start = 0
-		for steps in range(l.size()):
-			for m in range(x - l[end], x + l[end] + 1):
-				for n in range(y - l[start], y + l[start] + 1):
-					set_cell(m, n, -1)
-			end -= 1
-			start += 1
-	
-	x_old = x
-	y_old = y
-
-
-func _ready():
-	# Create a square filled with the 100% opaque fog
-	for x in range(x_min, x_max):
-		for y in range(y_min, y_max):
-			set_cell(x, y, 0, 0, 0)
-	set_fixed_process(true)

binární
demos/2d/fog_of_war/fog.png


Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 0 - 25
demos/2d/fog_of_war/fog.tscn


binární
demos/2d/fog_of_war/icon.png


+ 0 - 32
demos/2d/fog_of_war/tileset.tres

@@ -1,32 +0,0 @@
-[gd_resource type="TileSet" load_steps=3 format=1]
-
-[ext_resource path="res://fog.png" type="Texture" id=1]
-[ext_resource path="res://floor.png" type="Texture" id=2]
-
-[resource]
-
-0/name = "fog opaque"
-0/texture = ExtResource( 1 )
-0/tex_offset = Vector2( -48, -48 )
-0/region = Rect2( 0, 0, 144, 144 )
-0/occluder_offset = Vector2( 0, 0 )
-0/navigation_offset = Vector2( 0, 0 )
-0/shape_offset = Vector2( 0, 0 )
-0/shapes = [  ]
-1/name = "fog transparent"
-1/texture = ExtResource( 1 )
-1/tex_offset = Vector2( -48, -48 )
-1/region = Rect2( 144, 0, 144, 144 )
-1/occluder_offset = Vector2( 0, 0 )
-1/navigation_offset = Vector2( 0, 0 )
-1/shape_offset = Vector2( 0, 0 )
-1/shapes = [  ]
-2/name = "floor"
-2/texture = ExtResource( 2 )
-2/tex_offset = Vector2( 0, 0 )
-2/region = Rect2( 0, 0, 0, 0 )
-2/occluder_offset = Vector2( 24, 24 )
-2/navigation_offset = Vector2( 24, 24 )
-2/shape_offset = Vector2( 0, 0 )
-2/shapes = [  ]
-

+ 0 - 30
demos/2d/fog_of_war/tileset_edit.tscn

@@ -1,30 +0,0 @@
-[gd_scene load_steps=3 format=1]
-
-[ext_resource path="res://fog.png" type="Texture" id=1]
-[ext_resource path="res://floor.png" type="Texture" id=2]
-
-[node name="Node2D" type="Node2D"]
-
-[node name="fog opaque" type="Sprite" parent="."]
-
-texture = ExtResource( 1 )
-centered = false
-offset = Vector2( -48, -48 )
-region = true
-region_rect = Rect2( 0, 0, 144, 144 )
-
-[node name="fog transparent" type="Sprite" parent="."]
-
-transform/pos = Vector2( 144, 0 )
-texture = ExtResource( 1 )
-centered = false
-offset = Vector2( -48, -48 )
-region = true
-region_rect = Rect2( 144, 0, 144, 144 )
-
-[node name="floor" type="Sprite" parent="."]
-
-transform/pos = Vector2( 264, 24 )
-texture = ExtResource( 2 )
-
-

+ 0 - 38
demos/2d/fog_of_war/troll.gd

@@ -1,38 +0,0 @@
-
-extends KinematicBody2D
-
-# This is a simple collision demo showing how
-# the kinematic controller works.
-# move() will allow to move the node, and will
-# always move it to a non-colliding spot,
-# as long as it starts from a non-colliding spot too.
-
-# Member variables
-const MOTION_SPEED = 160 # Pixels/second
-
-
-func _fixed_process(delta):
-	var motion = Vector2()
-	
-	if (Input.is_action_pressed("move_up")):
-		motion += Vector2(0, -1)
-	if (Input.is_action_pressed("move_bottom")):
-		motion += Vector2(0, 1)
-	if (Input.is_action_pressed("move_left")):
-		motion += Vector2(-1, 0)
-	if (Input.is_action_pressed("move_right")):
-		motion += Vector2(1, 0)
-	
-	motion = motion.normalized()*MOTION_SPEED*delta
-	motion = move(motion)
-	
-	# Make character slide nicely through the world
-	var slide_attempts = 4
-	while(is_colliding() and slide_attempts > 0):
-		motion = get_collision_normal().slide(motion)
-		motion = move(motion)
-		slide_attempts -= 1
-
-
-func _ready():
-	set_fixed_process(true)

binární
demos/2d/fog_of_war/troll.png


+ 0 - 52
demos/2d/fog_of_war/troll.tscn

@@ -1,52 +0,0 @@
-[gd_scene load_steps=4 format=1]
-
-[ext_resource path="res://troll.gd" type="Script" id=1]
-[ext_resource path="res://troll.png" type="Texture" id=2]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 16.0
-
-[node name="troll" type="KinematicBody2D"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 3.24216, 19.453 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-collision/margin = 0.001
-script/script = ExtResource( 1 )
-
-[node name="Sprite" type="Sprite" parent="."]
-
-texture = ExtResource( 2 )
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
-
-transform/pos = Vector2( 3.24216, 19.453 )
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = -1
-
-[node name="Camera2D" type="Camera2D" parent="."]
-
-anchor_mode = 1
-rotating = false
-current = true
-zoom = Vector2( 1, 1 )
-limit/left = -10000000
-limit/top = -10000000
-limit/right = 10000000
-limit/bottom = 10000000
-drag_margin/h_enabled = true
-drag_margin/v_enabled = true
-smoothing/enable = false
-smoothing/speed = 5.0
-drag_margin/left = 0.2
-drag_margin/top = 0.2
-drag_margin/right = 0.2
-drag_margin/bottom = 0.2
-
-

+ 0 - 21
demos/2d/hdr/beach_cave.gd

@@ -1,21 +0,0 @@
-
-extends Node2D
-
-# Member variables
-const CAVE_LIMIT = 1000
-
-
-func _input(event):
-	if (event.type == InputEvent.MOUSE_MOTION and event.button_mask&1):
-		var rel_x = event.relative_x
-		var cavepos = get_node("cave").get_pos()
-		cavepos.x += rel_x
-		if (cavepos.x < -CAVE_LIMIT):
-			cavepos.x = -CAVE_LIMIT
-		elif (cavepos.x > 0):
-			cavepos.x = 0
-		get_node("cave").set_pos(cavepos)
-
-
-func _ready():
-	set_process_input(true)

+ 0 - 88
demos/2d/hdr/beach_cave.tscn

@@ -1,88 +0,0 @@
-[gd_scene load_steps=5 format=1]
-
-[ext_resource path="res://beach_cave.gd" type="Script" id=1]
-[ext_resource path="res://ocean_beach.png" type="Texture" id=2]
-[ext_resource path="res://ocean_cave.png" type="Texture" id=3]
-
-[sub_resource type="Environment" id=1]
-
-ambient_light/enabled = false
-ambient_light/color = Color( 0, 0, 0, 1 )
-ambient_light/energy = 1.0
-fxaa/enabled = false
-background/mode = 5
-background/color = Color( 0, 0, 0, 1 )
-background/energy = 1.0
-background/scale = 1.0
-background/glow = 0.0
-background/canvas_max_layer = null
-glow/enabled = true
-glow/blur_passes = 3
-glow/blur_scale = 1.2
-glow/blur_strength = 1.2
-glow/blur_blend_mode = 0
-glow/bloom = 0.0
-glow/bloom_treshold = 0.5
-dof_blur/enabled = false
-dof_blur/blur_passes = 1
-dof_blur/begin = 100.0
-dof_blur/range = 10.0
-hdr/enabled = true
-hdr/tonemapper = 0.0
-hdr/exposure = 0.5
-hdr/white = 1.0
-hdr/glow_treshold = 0.7
-hdr/glow_scale = 0.5
-hdr/min_luminance = 0.3
-hdr/max_luminance = 8.0
-hdr/exposure_adj_speed = 2.0
-fog/enabled = false
-fog/begin = 100.0
-fog/begin_color = Color( 0, 0, 0, 1 )
-fog/end_color = Color( 0, 0, 0, 1 )
-fog/attenuation = 1.0
-fog/bg = true
-bcs/enabled = false
-bcs/brightness = 1.0
-bcs/contrast = 1.0
-bcs/saturation = 1.0
-srgb/enabled = true
-
-[node name="hdr" type="Node2D"]
-
-script/script = ExtResource( 1 )
-
-[node name="beach" type="Sprite" parent="."]
-
-texture = ExtResource( 2 )
-centered = false
-modulate = Color( 2, 2, 2, 1 )
-
-[node name="cave" type="Sprite" parent="."]
-
-transform/scale = Vector2( 1.2, 1 )
-texture = ExtResource( 3 )
-centered = false
-modulate = Color( 0.233166, 0.221219, 0.23582, 1 )
-
-[node name="environment" type="WorldEnvironment" parent="."]
-
-_import_transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
-environment = SubResource( 1 )
-
-[node name="Label" type="Label" parent="."]
-
-focus/ignore_mouse = true
-focus/stop_mouse = true
-size_flags/horizontal = 2
-margin/left = 0.0
-margin/top = 0.0
-margin/right = 40.0
-margin/bottom = 13.0
-custom_colors/font_color = Color( 0.213955, 0.205626, 0.20313, 1 )
-text = "Drag  Left and Right"
-percent_visible = 1.0
-lines_skipped = 0
-max_lines_visible = -1
-
-

+ 0 - 14
demos/2d/hdr/engine.cfg

@@ -1,14 +0,0 @@
-[application]
-
-name="HDR for 2D"
-main_scene="res://beach_cave.tscn"
-icon="res://icon.png"
-
-[display]
-
-width=1080
-height=720
-
-[rasterizer]
-
-blur_buffer_size=128

binární
demos/2d/hdr/icon.png


binární
demos/2d/hdr/ocean_beach.png


+ 0 - 1
demos/2d/hdr/ocean_beach.png.flags

@@ -1 +0,0 @@
-tolinear=true

binární
demos/2d/hdr/ocean_cave.png


+ 0 - 1
demos/2d/hdr/ocean_cave.png.flags

@@ -1 +0,0 @@
-tolinear=true

binární
demos/2d/hexamap/WWT-01.png


binární
demos/2d/hexamap/WWT-02.png


binární
demos/2d/hexamap/WWT-03.png


binární
demos/2d/hexamap/WWT-04.png


binární
demos/2d/hexamap/WWT-05.png


binární
demos/2d/hexamap/WWT-06.png


binární
demos/2d/hexamap/WWT-07.png


binární
demos/2d/hexamap/WWT-08.png


binární
demos/2d/hexamap/WWT-09.png


binární
demos/2d/hexamap/WWT-10.png


binární
demos/2d/hexamap/WWT-11.png


binární
demos/2d/hexamap/WWT-12.png


binární
demos/2d/hexamap/WWT-13.png


binární
demos/2d/hexamap/WWT-14.png


binární
demos/2d/hexamap/WWT-15.png


binární
demos/2d/hexamap/WWT-16.png


binární
demos/2d/hexamap/WWT-17.png


binární
demos/2d/hexamap/WWT-18.png


binární
demos/2d/hexamap/WWT-19.png


binární
demos/2d/hexamap/WWT-20.png


binární
demos/2d/hexamap/WWT-21.png


binární
demos/2d/hexamap/WWT-22.png


binární
demos/2d/hexamap/WWT-23.png


binární
demos/2d/hexamap/WWT-24.png


binární
demos/2d/hexamap/WWT-25.png


binární
demos/2d/hexamap/WWT-26.png


+ 0 - 12
demos/2d/hexamap/engine.cfg

@@ -1,12 +0,0 @@
-[application]
-
-name="Hexagonal Game"
-main_scene="res://map.tscn"
-icon="res://icon.png"
-
-[input]
-
-move_up=[key(Up)]
-move_left=[key(Left)]
-move_right=[key(Right)]
-move_bottom=[key(Down)]

binární
demos/2d/hexamap/icon.png


+ 0 - 31
demos/2d/hexamap/map.tscn

@@ -1,31 +0,0 @@
-[gd_scene load_steps=3 format=1]
-
-[ext_resource path="res://tileset.tres" type="TileSet" id=1]
-[ext_resource path="res://troll.tscn" type="PackedScene" id=2]
-
-[node name="Node2D" type="Node2D"]
-
-[node name="TileMap" type="TileMap" parent="."]
-
-mode = 0
-tile_set = ExtResource( 1 )
-cell/size = Vector2( 82, 94 )
-cell/quadrant_size = 16
-cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-cell/half_offset = 1
-cell/tile_origin = 0
-cell/y_sort = false
-collision/use_kinematic = false
-collision/friction = 1.0
-collision/bounce = 0.0
-collision/layers = 1
-collision/mask = 1
-occluder/light_mask = 1
-tile_data = IntArray( -458747, 1073741831, -393213, 1073741831, -393212, 1073741831, -393211, 6, -393210, 1073741831, -393209, 1073741830, -393208, 1073741830, -393207, 6, -393206, 8, -327679, 1073741831, -327678, 1073741831, -327677, 1073741831, -327676, 1073741830, -327675, 1073741831, -327674, 6, -327673, 6, -327672, 6, -327671, 6, -327670, 6, -327669, 0, -327668, 0, -262143, 1073741831, -262142, 1073741831, -262141, 6, -262140, 6, -262139, 0, -262138, 6, -262137, 1, -262136, 0, -262135, 1, -262134, 1, -262133, 0, -262132, 0, -262131, 0, -196608, 9, -196607, 1073741832, -196606, 1073741830, -196605, 2, -196604, 2, -196603, 1073741845, -196602, 21, -196601, 19, -196600, 1073741826, -196599, 0, -196598, 16, -196597, 0, -196596, 0, -196595, 0, -196594, 0, -196593, 0, -131071, 0, -131070, 1, -131069, 1073741827, -131068, 1073741846, -131067, 20, -131066, 19, -131065, 2, -131064, 0, -131063, 14, -131062, 0, -131061, 0, -131060, 0, -131059, 0, -131058, 0, -131057, 0, -131056, 0, -65534, 1, -65533, 2, -65532, 1073741827, -65531, 1, -65530, 1, -65529, 0, -65528, 10, -65527, 12, -65526, 0, -65525, 0, -65524, 0, -65523, 0, -65522, 0, -65521, 0, -65520, 0, 1, 0, 2, 0, 3, 2, 4, 1073741826, 5, 1, 6, 15, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 65537, 0, 65538, 1, 65539, 1610612749, 65540, 1, 65541, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 1610612753, 65546, 0, 65547, 0, 65548, 0, 65549, 0, 65550, 1073741848, 65551, 1073741849, 65552, 0, 131073, 0, 131074, 0, 131075, 0, 131076, 0, 131077, 1610612751, 131078, 1610612752, 131079, 1610612752, 131080, 1610612751, 131081, 1610612751, 131082, 0, 131083, 0, 131084, 0, 131085, 0, 131086, 0, 196612, 0, 196613, 1610612751, 196614, 1610612752, 196615, 1610612751, 196616, 1610612751, 196617, 1073741839, 196618, 1073741839, 196619, 0, 196620, 0, 196621, 0, 262150, 0, 262152, 0, 262154, 0, 262156, 0 )
-
-[node name="troll" parent="." instance=ExtResource( 2 )]
-
-transform/pos = Vector2( 602.819, -39.2876 )
-collision/margin = 0.001
-
-

+ 0 - 240
demos/2d/hexamap/tileset.tres

@@ -1,240 +0,0 @@
-[gd_resource type="TileSet" load_steps=27 format=1]
-
-[ext_resource path="res://WWT-01.png" type="Texture" id=1]
-[ext_resource path="res://WWT-02.png" type="Texture" id=2]
-[ext_resource path="res://WWT-11.png" type="Texture" id=3]
-[ext_resource path="res://WWT-12.png" type="Texture" id=4]
-[ext_resource path="res://WWT-13.png" type="Texture" id=5]
-[ext_resource path="res://WWT-14.png" type="Texture" id=6]
-[ext_resource path="res://WWT-15.png" type="Texture" id=7]
-[ext_resource path="res://WWT-16.png" type="Texture" id=8]
-[ext_resource path="res://WWT-17.png" type="Texture" id=9]
-[ext_resource path="res://WWT-18.png" type="Texture" id=10]
-[ext_resource path="res://WWT-19.png" type="Texture" id=11]
-[ext_resource path="res://WWT-20.png" type="Texture" id=12]
-[ext_resource path="res://WWT-03.png" type="Texture" id=13]
-[ext_resource path="res://WWT-21.png" type="Texture" id=14]
-[ext_resource path="res://WWT-22.png" type="Texture" id=15]
-[ext_resource path="res://WWT-23.png" type="Texture" id=16]
-[ext_resource path="res://WWT-24.png" type="Texture" id=17]
-[ext_resource path="res://WWT-25.png" type="Texture" id=18]
-[ext_resource path="res://WWT-26.png" type="Texture" id=19]
-[ext_resource path="res://WWT-04.png" type="Texture" id=20]
-[ext_resource path="res://WWT-05.png" type="Texture" id=21]
-[ext_resource path="res://WWT-06.png" type="Texture" id=22]
-[ext_resource path="res://WWT-07.png" type="Texture" id=23]
-[ext_resource path="res://WWT-08.png" type="Texture" id=24]
-[ext_resource path="res://WWT-09.png" type="Texture" id=25]
-[ext_resource path="res://WWT-10.png" type="Texture" id=26]
-
-[resource]
-
-0/name = "Tile 1"
-0/texture = ExtResource( 1 )
-0/tex_offset = Vector2( -24, -17 )
-0/region = Rect2( 0, 0, 0, 0 )
-0/occluder_offset = Vector2( -0, -0 )
-0/navigation_offset = Vector2( -0, -0 )
-0/shape_offset = Vector2( 0, 0 )
-0/shapes = [  ]
-1/name = "Tile 2"
-1/texture = ExtResource( 2 )
-1/tex_offset = Vector2( -24, -17 )
-1/region = Rect2( 0, 0, 0, 0 )
-1/occluder_offset = Vector2( -0, -0 )
-1/navigation_offset = Vector2( -0, -0 )
-1/shape_offset = Vector2( 0, 0 )
-1/shapes = [  ]
-2/name = "Tile 3"
-2/texture = ExtResource( 13 )
-2/tex_offset = Vector2( -24, -17 )
-2/region = Rect2( 0, 0, 0, 0 )
-2/occluder_offset = Vector2( -0, -0 )
-2/navigation_offset = Vector2( -0, -0 )
-2/shape_offset = Vector2( 0, 0 )
-2/shapes = [  ]
-3/name = "Tile 4"
-3/texture = ExtResource( 20 )
-3/tex_offset = Vector2( -24, -17 )
-3/region = Rect2( 0, 0, 0, 0 )
-3/occluder_offset = Vector2( -0, -0 )
-3/navigation_offset = Vector2( -0, -0 )
-3/shape_offset = Vector2( 0, 0 )
-3/shapes = [  ]
-4/name = "Tile 5"
-4/texture = ExtResource( 21 )
-4/tex_offset = Vector2( -24, -17 )
-4/region = Rect2( 0, 0, 0, 0 )
-4/occluder_offset = Vector2( -0, -0 )
-4/navigation_offset = Vector2( -0, -0 )
-4/shape_offset = Vector2( 0, 0 )
-4/shapes = [  ]
-5/name = "Tile 6"
-5/texture = ExtResource( 22 )
-5/tex_offset = Vector2( -24, -17 )
-5/region = Rect2( 0, 0, 0, 0 )
-5/occluder_offset = Vector2( -0, -0 )
-5/navigation_offset = Vector2( -0, -0 )
-5/shape_offset = Vector2( 0, 0 )
-5/shapes = [  ]
-6/name = "Tile 7"
-6/texture = ExtResource( 23 )
-6/tex_offset = Vector2( -24, -17 )
-6/region = Rect2( 0, 0, 0, 0 )
-6/occluder_offset = Vector2( -0, -0 )
-6/navigation_offset = Vector2( -0, -0 )
-6/shape_offset = Vector2( 0, 0 )
-6/shapes = [  ]
-7/name = "Tile 8"
-7/texture = ExtResource( 24 )
-7/tex_offset = Vector2( -24, -17 )
-7/region = Rect2( 0, 0, 0, 0 )
-7/occluder_offset = Vector2( -0, -0 )
-7/navigation_offset = Vector2( -0, -0 )
-7/shape_offset = Vector2( 0, 0 )
-7/shapes = [  ]
-8/name = "Tile 9"
-8/texture = ExtResource( 25 )
-8/tex_offset = Vector2( -24, -17 )
-8/region = Rect2( 0, 0, 0, 0 )
-8/occluder_offset = Vector2( -0, -0 )
-8/navigation_offset = Vector2( -0, -0 )
-8/shape_offset = Vector2( 0, 0 )
-8/shapes = [  ]
-9/name = "Tile 10"
-9/texture = ExtResource( 26 )
-9/tex_offset = Vector2( -24, -17 )
-9/region = Rect2( 0, 0, 0, 0 )
-9/occluder_offset = Vector2( -0, -0 )
-9/navigation_offset = Vector2( -0, -0 )
-9/shape_offset = Vector2( 0, 0 )
-9/shapes = [  ]
-10/name = "Tile 11"
-10/texture = ExtResource( 3 )
-10/tex_offset = Vector2( -24, -17 )
-10/region = Rect2( 0, 0, 0, 0 )
-10/occluder_offset = Vector2( -0, -0 )
-10/navigation_offset = Vector2( -0, -0 )
-10/shape_offset = Vector2( 0, 0 )
-10/shapes = [  ]
-11/name = "Tile 12"
-11/texture = ExtResource( 4 )
-11/tex_offset = Vector2( -24, -17 )
-11/region = Rect2( 0, 0, 0, 0 )
-11/occluder_offset = Vector2( -0, -0 )
-11/navigation_offset = Vector2( -0, -0 )
-11/shape_offset = Vector2( 0, 0 )
-11/shapes = [  ]
-12/name = "Tile 13"
-12/texture = ExtResource( 5 )
-12/tex_offset = Vector2( -24, -17 )
-12/region = Rect2( 0, 0, 0, 0 )
-12/occluder_offset = Vector2( -0, -0 )
-12/navigation_offset = Vector2( -0, -0 )
-12/shape_offset = Vector2( 0, 0 )
-12/shapes = [  ]
-13/name = "Tile 14"
-13/texture = ExtResource( 6 )
-13/tex_offset = Vector2( -24, -17 )
-13/region = Rect2( 0, 0, 0, 0 )
-13/occluder_offset = Vector2( -0, -0 )
-13/navigation_offset = Vector2( -0, -0 )
-13/shape_offset = Vector2( 0, 0 )
-13/shapes = [  ]
-14/name = "Tile 15"
-14/texture = ExtResource( 7 )
-14/tex_offset = Vector2( -24, -17 )
-14/region = Rect2( 0, 0, 0, 0 )
-14/occluder_offset = Vector2( -0, -0 )
-14/navigation_offset = Vector2( -0, -0 )
-14/shape_offset = Vector2( 0, 0 )
-14/shapes = [  ]
-15/name = "Tile 16"
-15/texture = ExtResource( 8 )
-15/tex_offset = Vector2( -24, -17 )
-15/region = Rect2( 0, 0, 0, 0 )
-15/occluder_offset = Vector2( -0, -0 )
-15/navigation_offset = Vector2( -0, -0 )
-15/shape_offset = Vector2( 0, 0 )
-15/shapes = [  ]
-16/name = "Tile 17"
-16/texture = ExtResource( 9 )
-16/tex_offset = Vector2( -24, -17 )
-16/region = Rect2( 0, 0, 0, 0 )
-16/occluder_offset = Vector2( -0, -0 )
-16/navigation_offset = Vector2( -0, -0 )
-16/shape_offset = Vector2( 0, 0 )
-16/shapes = [  ]
-17/name = "Tile 18"
-17/texture = ExtResource( 10 )
-17/tex_offset = Vector2( -24, -17 )
-17/region = Rect2( 0, 0, 0, 0 )
-17/occluder_offset = Vector2( -0, -0 )
-17/navigation_offset = Vector2( -0, -0 )
-17/shape_offset = Vector2( 0, 0 )
-17/shapes = [  ]
-18/name = "Tile 19"
-18/texture = ExtResource( 11 )
-18/tex_offset = Vector2( -24, -17 )
-18/region = Rect2( 0, 0, 0, 0 )
-18/occluder_offset = Vector2( -0, -0 )
-18/navigation_offset = Vector2( -0, -0 )
-18/shape_offset = Vector2( 0, 0 )
-18/shapes = [  ]
-19/name = "Tile 20"
-19/texture = ExtResource( 12 )
-19/tex_offset = Vector2( -24, -17 )
-19/region = Rect2( 0, 0, 0, 0 )
-19/occluder_offset = Vector2( -0, -0 )
-19/navigation_offset = Vector2( -0, -0 )
-19/shape_offset = Vector2( 0, 0 )
-19/shapes = [  ]
-20/name = "Tile 21"
-20/texture = ExtResource( 14 )
-20/tex_offset = Vector2( -24, -17 )
-20/region = Rect2( 0, 0, 0, 0 )
-20/occluder_offset = Vector2( -0, -0 )
-20/navigation_offset = Vector2( -0, -0 )
-20/shape_offset = Vector2( 0, 0 )
-20/shapes = [  ]
-21/name = "Tile 22"
-21/texture = ExtResource( 15 )
-21/tex_offset = Vector2( -24, -17 )
-21/region = Rect2( 0, 0, 0, 0 )
-21/occluder_offset = Vector2( -0, -0 )
-21/navigation_offset = Vector2( -0, -0 )
-21/shape_offset = Vector2( 0, 0 )
-21/shapes = [  ]
-22/name = "Tile 23"
-22/texture = ExtResource( 16 )
-22/tex_offset = Vector2( -24, -17 )
-22/region = Rect2( 0, 0, 0, 0 )
-22/occluder_offset = Vector2( -0, -0 )
-22/navigation_offset = Vector2( -0, -0 )
-22/shape_offset = Vector2( 0, 0 )
-22/shapes = [  ]
-23/name = "Tile 24"
-23/texture = ExtResource( 17 )
-23/tex_offset = Vector2( -24, -17 )
-23/region = Rect2( 0, 0, 0, 0 )
-23/occluder_offset = Vector2( -0, -0 )
-23/navigation_offset = Vector2( -0, -0 )
-23/shape_offset = Vector2( 0, 0 )
-23/shapes = [  ]
-24/name = "Tile 25"
-24/texture = ExtResource( 18 )
-24/tex_offset = Vector2( -24, -17 )
-24/region = Rect2( 0, 0, 0, 0 )
-24/occluder_offset = Vector2( -0, -0 )
-24/navigation_offset = Vector2( -0, -0 )
-24/shape_offset = Vector2( 0, 0 )
-24/shapes = [  ]
-25/name = "Tile 26"
-25/texture = ExtResource( 19 )
-25/tex_offset = Vector2( -24, -17 )
-25/region = Rect2( 0, 0, 0, 0 )
-25/occluder_offset = Vector2( -0, -0 )
-25/navigation_offset = Vector2( -0, -0 )
-25/shape_offset = Vector2( 0, 0 )
-25/shapes = [  ]
-

+ 0 - 214
demos/2d/hexamap/tileset_edit.tscn

@@ -1,214 +0,0 @@
-[gd_scene load_steps=27 format=1]
-
-[ext_resource path="res://WWT-01.png" type="Texture" id=1]
-[ext_resource path="res://WWT-02.png" type="Texture" id=2]
-[ext_resource path="res://WWT-03.png" type="Texture" id=3]
-[ext_resource path="res://WWT-04.png" type="Texture" id=4]
-[ext_resource path="res://WWT-05.png" type="Texture" id=5]
-[ext_resource path="res://WWT-06.png" type="Texture" id=6]
-[ext_resource path="res://WWT-07.png" type="Texture" id=7]
-[ext_resource path="res://WWT-08.png" type="Texture" id=8]
-[ext_resource path="res://WWT-09.png" type="Texture" id=9]
-[ext_resource path="res://WWT-10.png" type="Texture" id=10]
-[ext_resource path="res://WWT-11.png" type="Texture" id=11]
-[ext_resource path="res://WWT-12.png" type="Texture" id=12]
-[ext_resource path="res://WWT-13.png" type="Texture" id=13]
-[ext_resource path="res://WWT-14.png" type="Texture" id=14]
-[ext_resource path="res://WWT-15.png" type="Texture" id=15]
-[ext_resource path="res://WWT-16.png" type="Texture" id=16]
-[ext_resource path="res://WWT-17.png" type="Texture" id=17]
-[ext_resource path="res://WWT-18.png" type="Texture" id=18]
-[ext_resource path="res://WWT-19.png" type="Texture" id=19]
-[ext_resource path="res://WWT-20.png" type="Texture" id=20]
-[ext_resource path="res://WWT-21.png" type="Texture" id=21]
-[ext_resource path="res://WWT-22.png" type="Texture" id=22]
-[ext_resource path="res://WWT-23.png" type="Texture" id=23]
-[ext_resource path="res://WWT-24.png" type="Texture" id=24]
-[ext_resource path="res://WWT-25.png" type="Texture" id=25]
-[ext_resource path="res://WWT-26.png" type="Texture" id=26]
-
-[node name="Node2D" type="Node2D"]
-
-[node name="Tile 1" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 1 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 2" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 2 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 3" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 3 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 4" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 4 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 5" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 5 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 6" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 6 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 7" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 7 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 8" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 8 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 9" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 9 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 10" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 10 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 11" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 11 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 12" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 12 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 13" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 13 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 14" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 14 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 15" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 15 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 16" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 16 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 17" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 17 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 18" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 18 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 19" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 19 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 20" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 20 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 21" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 21 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 22" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 22 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 23" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 23 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 24" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 24 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 25" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 25 )
-centered = false
-offset = Vector2( -24, -17 )
-
-[node name="Tile 26" type="Sprite" parent="."]
-
-transform/pos = Vector2( 96.6174, 42.2665 )
-texture = ExtResource( 26 )
-centered = false
-offset = Vector2( -24, -17 )
-
-

+ 0 - 38
demos/2d/hexamap/troll.gd

@@ -1,38 +0,0 @@
-
-extends KinematicBody2D
-
-# This is a simple collision demo showing how
-# the kinematic controller works.
-# move() will allow to move the node, and will
-# always move it to a non-colliding spot, 
-# as long as it starts from a non-colliding spot too.
-
-# Member variables
-const MOTION_SPEED = 160 # Pixels/second
-
-
-func _fixed_process(delta):
-	var motion = Vector2()
-	
-	if (Input.is_action_pressed("move_up")):
-		motion += Vector2(0, -1)
-	if (Input.is_action_pressed("move_bottom")):
-		motion += Vector2(0, 1)
-	if (Input.is_action_pressed("move_left")):
-		motion += Vector2(-1, 0)
-	if (Input.is_action_pressed("move_right")):
-		motion += Vector2(1, 0)
-	
-	motion = motion.normalized()*MOTION_SPEED*delta
-	motion = move(motion)
-	
-	# Make character slide nicely through the world
-	var slide_attempts = 4
-	while(is_colliding() and slide_attempts > 0):
-		motion = get_collision_normal().slide(motion)
-		motion = move(motion)
-		slide_attempts -= 1
-
-
-func _ready():
-	set_fixed_process(true)

binární
demos/2d/hexamap/troll.png


+ 0 - 52
demos/2d/hexamap/troll.tscn

@@ -1,52 +0,0 @@
-[gd_scene load_steps=4 format=1]
-
-[ext_resource path="res://troll.gd" type="Script" id=1]
-[ext_resource path="res://troll.png" type="Texture" id=2]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 16.0
-
-[node name="troll" type="KinematicBody2D"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 3.24216, 19.453 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-collision/margin = 0.001
-script/script = ExtResource( 1 )
-
-[node name="Sprite" type="Sprite" parent="."]
-
-texture = ExtResource( 2 )
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
-
-transform/pos = Vector2( 3.24216, 19.453 )
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = -1
-
-[node name="Camera2D" type="Camera2D" parent="."]
-
-anchor_mode = 1
-rotating = false
-current = true
-zoom = Vector2( 1, 1 )
-limit/left = -10000000
-limit/top = -10000000
-limit/right = 10000000
-limit/bottom = 10000000
-drag_margin/h_enabled = true
-drag_margin/v_enabled = true
-smoothing/enable = false
-smoothing/speed = 5.0
-drag_margin/left = 0.2
-drag_margin/top = 0.2
-drag_margin/right = 0.2
-drag_margin/bottom = 0.2
-
-

+ 0 - 49
demos/2d/isometric/dungeon.tscn

@@ -1,49 +0,0 @@
-[gd_scene load_steps=3 format=1]
-
-[ext_resource path="res://tileset.tres" type="TileSet" id=1]
-[ext_resource path="res://troll.tscn" type="PackedScene" id=2]
-
-[node name="dungeon" type="Node2D"]
-
-[node name="floor" type="TileMap" parent="."]
-
-mode = 1
-tile_set = ExtResource( 1 )
-cell/size = Vector2( 128, 64 )
-cell/quadrant_size = 16
-cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-cell/half_offset = 2
-cell/tile_origin = 1
-cell/y_sort = false
-collision/use_kinematic = false
-collision/friction = 1.0
-collision/bounce = 0.0
-collision/layers = 1
-collision/mask = 1
-occluder/light_mask = 1
-tile_data = IntArray( -851956, 0, -851955, 0, -851954, 0, -786420, 1, -786419, 0, -786418, 0, -720884, 0, -720883, 0, -720882, 0, -655348, 1, -655347, 0, -655346, 0, -589812, 1, -589811, 0, -589810, 0, -524276, 0, -524275, 1, -524274, 0, -458740, 0, -458739, 0, -458738, 0, -393210, 0, -393209, 0, -393208, 0, -393207, 0, -393206, 0, -393205, 0, -393204, 0, -393203, 0, -393202, 0, -327674, 0, -327673, 0, -327672, 1, -327671, 1, -327670, 1, -327669, 1, -327668, 1, -327667, 0, -327666, 0, -262138, 0, -262137, 0, -262136, 0, -262135, 0, -262134, 0, -262133, 0, -262132, 0, -262131, 0, -262130, 0, -196602, 0, -196601, 0, -196600, 0, -196599, 0, -196598, 0, -196597, 0, -196596, 0, -196595, 0, -196594, 0, -131066, 0, -131065, 0, -131064, 0, -131063, 0, -65530, 0, -65529, 0, -65528, 0, -65527, 0, 6, 0, 7, 1, 8, 0, 9, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 0, 131078, 0, 131079, 0, 131080, 0, 131081, 0, 196614, 0, 196615, 0, 196616, 0 )
-
-[node name="walls" type="TileMap" parent="."]
-
-mode = 1
-tile_set = ExtResource( 1 )
-cell/size = Vector2( 128, 64 )
-cell/quadrant_size = 16
-cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-cell/half_offset = 2
-cell/tile_origin = 1
-cell/y_sort = true
-collision/use_kinematic = false
-collision/friction = 1.0
-collision/bounce = 0.0
-collision/layers = 1
-collision/mask = 1
-occluder/light_mask = 1
-tile_data = IntArray( -917493, 2, -917492, 2, -917491, 2, -917490, 2, -917489, 2, -851957, 2, -851956, 3, -851954, 3, -851953, 2, -786421, 2, -786420, 3, -786418, 3, -786417, 2, -720885, 2, -720881, 2, -655349, 2, -655348, 2, -655346, 3, -655345, 2, -589813, 2, -589809, 2, -524277, 2, -524273, 2, -458747, 2, -458746, 2, -458745, 2, -458744, 536870916, -458743, 536870916, -458742, 2, -458741, 2, -458740, 2, -458738, 2, -458737, 2, -393211, 2, -393209, 3, -393205, 3, -393201, 2, -327675, 4, -327665, 2, -262139, 4, -262134, 3, -262133, 3, -262129, 2, -196603, 2, -196601, 3, -196593, 2, -131067, 2, -131066, 3, -131062, 2, -131061, 2, -131060, 2, -131059, 2, -131058, 2, -131057, 2, -65531, 2, -65530, 2, -65527, 2, -65526, 2, 5, 2, 10, 2, 65541, 2, 65543, 3, 65546, 2, 131077, 2, 131082, 2, 196613, 2, 196618, 2, 262149, 2, 262150, 2, 262151, 2, 262152, 2, 262153, 2, 262154, 2 )
-
-[node name="troll" parent="walls" instance=ExtResource( 2 )]
-
-transform/pos = Vector2( 299.38, 326.037 )
-collision/margin = 0.001
-
-

+ 0 - 21
demos/2d/isometric/engine.cfg

@@ -1,21 +0,0 @@
-[application]
-
-name="Isometric Game"
-main_scene="res://dungeon.tscn"
-icon="res://icon.png"
-
-[image_loader]
-
-filter=false
-gen_mipmaps=false
-
-[input]
-
-move_up=[key(Up)]
-move_left=[key(Left)]
-move_right=[key(Right)]
-move_bottom=[key(Down)]
-
-[rasterizer]
-
-use_pixel_snap=true

binární
demos/2d/isometric/icon.png


binární
demos/2d/isometric/isotiles.png


+ 0 - 67
demos/2d/isometric/tileset.tres

@@ -1,67 +0,0 @@
-[gd_resource type="TileSet" load_steps=6 format=1]
-
-[ext_resource path="res://isotiles.png" type="Texture" id=1]
-
-[sub_resource type="ConvexPolygonShape2D" id=1]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -68, 2, -4, -30, 60, 2, -4, 34 )
-
-[sub_resource type="ConvexPolygonShape2D" id=2]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -20, -6, -4, -22, 12, -22, 4, 10, -4, 10 )
-
-[sub_resource type="ConvexPolygonShape2D" id=3]
-
-custom_solver_bias = 0.0
-points = Vector2Array( 28, -6, 4, 10, 12, -22 )
-
-[sub_resource type="ConvexPolygonShape2D" id=4]
-
-custom_solver_bias = 0.0
-points = Vector2Array( 66.095, -0.62516, -5.90501, 31.3748, -21.905, 23.3748, 50.095, -8.62516 )
-
-[resource]
-
-0/name = "base"
-0/texture = ExtResource( 1 )
-0/tex_offset = Vector2( -4, 6 )
-0/region = Rect2( 28, 92, 132, 84 )
-0/occluder_offset = Vector2( 66, 42 )
-0/navigation_offset = Vector2( 66, 42 )
-0/shape_offset = Vector2( 0, 0 )
-0/shapes = [  ]
-1/name = "base2"
-1/texture = ExtResource( 1 )
-1/tex_offset = Vector2( -4, 6 )
-1/region = Rect2( 220, 92, 132, 84 )
-1/occluder_offset = Vector2( 66, 42 )
-1/navigation_offset = Vector2( 66, 42 )
-1/shape_offset = Vector2( 0, 0 )
-1/shapes = [  ]
-2/name = "wall"
-2/texture = ExtResource( 1 )
-2/tex_offset = Vector2( -4, -32 )
-2/region = Rect2( 28, 220, 132, 136 )
-2/occluder_offset = Vector2( 66, 68 )
-2/navigation_offset = Vector2( 66, 68 )
-2/shape_offset = Vector2( 66, 68 )
-2/shapes = [ SubResource( 1 ) ]
-3/name = "column"
-3/texture = ExtResource( 1 )
-3/tex_offset = Vector2( -2, -32 )
-3/region = Rect2( 220, 220, 132, 136 )
-3/occluder_offset = Vector2( 66, 68 )
-3/navigation_offset = Vector2( 66, 68 )
-3/shape_offset = Vector2( 66, 68 )
-3/shapes = [ SubResource( 2 ), SubResource( 3 ) ]
-4/name = "door1"
-4/texture = ExtResource( 1 )
-4/tex_offset = Vector2( 16, -22 )
-4/region = Rect2( 24, 408, 132, 136 )
-4/occluder_offset = Vector2( 66, 68 )
-4/navigation_offset = Vector2( 66, 68 )
-4/shape_offset = Vector2( 66, 68 )
-4/shapes = [ SubResource( 4 ) ]
-

+ 0 - 130
demos/2d/isometric/tileset_edit.tscn

@@ -1,130 +0,0 @@
-[gd_scene load_steps=6 format=1]
-
-[ext_resource path="res://isotiles.png" type="Texture" id=1]
-
-[sub_resource type="ConvexPolygonShape2D" id=1]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -68, 2, -4, -30, 60, 2, -4, 34 )
-
-[sub_resource type="ConvexPolygonShape2D" id=2]
-
-custom_solver_bias = 0.0
-points = Vector2Array( -20, -6, -4, -22, 12, -22, 4, 10, -4, 10 )
-
-[sub_resource type="ConvexPolygonShape2D" id=3]
-
-custom_solver_bias = 0.0
-points = Vector2Array( 28, -6, 4, 10, 12, -22 )
-
-[sub_resource type="ConvexPolygonShape2D" id=4]
-
-custom_solver_bias = 0.0
-points = Vector2Array( 66.095, -0.62516, -5.90501, 31.3748, -21.905, 23.3748, 50.095, -8.62516 )
-
-[node name="Node2D" type="Node2D"]
-
-[node name="base" type="Sprite" parent="."]
-
-transform/pos = Vector2( 87.5658, 0.113792 )
-texture = ExtResource( 1 )
-offset = Vector2( -4, 6 )
-region = true
-region_rect = Rect2( 28, 92, 132, 84 )
-
-[node name="base2" type="Sprite" parent="."]
-
-transform/pos = Vector2( 196, 44 )
-texture = ExtResource( 1 )
-offset = Vector2( -4, 6 )
-region = true
-region_rect = Rect2( 220, 92, 132, 84 )
-
-[node name="wall" type="Sprite" parent="."]
-
-transform/pos = Vector2( 356, 70 )
-texture = ExtResource( 1 )
-offset = Vector2( -4, -32 )
-region = true
-region_rect = Rect2( 28, 220, 132, 136 )
-
-[node name="StaticBody2D" type="StaticBody2D" parent="wall"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
-[node name="collision" type="CollisionPolygon2D" parent="wall/StaticBody2D"]
-
-build_mode = 0
-polygon = Vector2Array( -68, 2, -4, 34, 60, 2, -4, -30 )
-shape_range = Vector2( -1, -1 )
-trigger = false
-
-[node name="column" type="Sprite" parent="."]
-
-transform/pos = Vector2( 292, 198 )
-texture = ExtResource( 1 )
-offset = Vector2( -2, -32 )
-region = true
-region_rect = Rect2( 220, 220, 132, 136 )
-
-[node name="StaticBody" type="StaticBody2D" parent="column"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 2 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-shapes/1/shape = SubResource( 3 )
-shapes/1/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/1/trigger = false
-collision/layers = 1
-collision/mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
-[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="column/StaticBody"]
-
-build_mode = 0
-polygon = Vector2Array( -20, -6, -4, 10, 4, 10, 28, -6, 12, -22, -4, -22 )
-shape_range = Vector2( -1, -1 )
-trigger = false
-
-[node name="door1" type="Sprite" parent="."]
-
-transform/pos = Vector2( 85.905, 0.62516 )
-texture = ExtResource( 1 )
-offset = Vector2( 16, -22 )
-region = true
-region_rect = Rect2( 24, 408, 132, 136 )
-
-[node name="StaticBody2D" type="StaticBody2D" parent="door1"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 4 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
-[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="door1/StaticBody2D"]
-
-build_mode = 0
-polygon = Vector2Array( -5.90501, 31.3748, 66.095, -0.62516, 50.095, -8.62516, -21.905, 23.3748 )
-shape_range = Vector2( -1, -1 )
-trigger = false
-
-

+ 0 - 38
demos/2d/isometric/troll.gd

@@ -1,38 +0,0 @@
-
-extends KinematicBody2D
-
-# This is a simple collision demo showing how
-# the kinematic controller works.
-# move() will allow to move the node, and will
-# always move it to a non-colliding spot, 
-# as long as it starts from a non-colliding spot too.
-
-# Member variables
-const MOTION_SPEED = 160 # Pixels/seconds
-
-
-func _fixed_process(delta):
-	var motion = Vector2()
-	
-	if (Input.is_action_pressed("move_up")):
-		motion += Vector2(0, -1)
-	if (Input.is_action_pressed("move_bottom")):
-		motion += Vector2(0, 1)
-	if (Input.is_action_pressed("move_left")):
-		motion += Vector2(-1, 0)
-	if (Input.is_action_pressed("move_right")):
-		motion += Vector2(1, 0)
-	
-	motion = motion.normalized()*MOTION_SPEED*delta
-	motion = move(motion)
-	
-	# Make character slide nicely through the world
-	var slide_attempts = 4
-	while(is_colliding() and slide_attempts > 0):
-		motion = get_collision_normal().slide(motion)
-		motion = move(motion)
-		slide_attempts -= 1
-
-
-func _ready():
-	set_fixed_process(true)

binární
demos/2d/isometric/troll.png


+ 0 - 53
demos/2d/isometric/troll.tscn

@@ -1,53 +0,0 @@
-[gd_scene load_steps=4 format=1]
-
-[ext_resource path="res://troll.gd" type="Script" id=1]
-[ext_resource path="res://troll.png" type="Texture" id=2]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 16.0
-
-[node name="troll" type="KinematicBody2D"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, -0.342697, -0.980721 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-collision/margin = 0.001
-script/script = ExtResource( 1 )
-
-[node name="Sprite" type="Sprite" parent="."]
-
-transform/pos = Vector2( -3.94334, -36.924 )
-texture = ExtResource( 2 )
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
-
-transform/pos = Vector2( -0.342697, -0.980721 )
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = -1
-
-[node name="Camera2D" type="Camera2D" parent="."]
-
-anchor_mode = 1
-rotating = false
-current = true
-zoom = Vector2( 1, 1 )
-limit/left = -10000000
-limit/top = -10000000
-limit/right = 10000000
-limit/bottom = 10000000
-drag_margin/h_enabled = true
-drag_margin/v_enabled = true
-smoothing/enable = false
-smoothing/speed = 5.0
-drag_margin/left = 0.2
-drag_margin/top = 0.2
-drag_margin/right = 0.2
-drag_margin/bottom = 0.2
-
-

+ 0 - 12
demos/2d/isometric_light/character_shader.tres

@@ -1,12 +0,0 @@
-[gd_resource type="CanvasItemMaterial" load_steps=2 format=1]
-
-[sub_resource type="CanvasItemShader" id=1]
-
-_code = { "fragment":"//there is no albedo (all shading is normal)\nuniform color col;\nCOLOR=col;\n//sample normal texture\nvec4 ntex = tex(TEXTURE,UV);\n//take the alpha from the normal texture\nCOLOR.a=ntex.a;\n//adjust normalmap from [0..1] to [-1..1]\nntex.rgb = ntex.rgb * vec3(-2,-2,1) - vec3(-1,-1,0);\n//half size of the tile \nvec2 tile_vec=vec2(47,22);\n//rotation to convert the normal to pseudo 3d coordinates\n//this could be optimized\nfloat r = asin(tile_vec.y / tile_vec.x);\nmat3 rot_mat = mat3( vec3(1,0,0), vec3(0,cos(r),-sin(r)), vec3(0,sin(r),cos(r)));\n\n//pass the normal\nNORMAL =  rot_mat * ntex.rgb;\n\n\n\n\n", "fragment_ofs":0, "light":"//apply the normal as simple diffuse (same as default code)\nvec3 light_normal = normalize(vec3(LIGHT_VEC,-LIGHT_HEIGHT));\nLIGHT=LIGHT_COLOR*COLOR*max(dot(-light_normal,NORMAL),0.0);\n//substract light position to be always aligned to the bottom of the sprite\n//this makes lighting on it look like a billboard\nLIGHT_VEC.y-=VAR1.y;\n", "light_ofs":0, "vertex":"// pass the local sprite coordinates through a varying\n// the red cross in the sprite is the 0,0\nVAR1.xy=SRC_VERTEX;", "vertex_ofs":0 }
-
-[resource]
-
-shader/shader = SubResource( 1 )
-shader/shading_mode = 0
-shader_param/col = Color( 1, 0.836638, 0.693806, 1 )
-

+ 0 - 52
demos/2d/isometric_light/column.tscn

@@ -1,52 +0,0 @@
-[gd_scene load_steps=5 format=1]
-
-[ext_resource path="res://wall_shader.tres" type="CanvasItemMaterial" id=1]
-[ext_resource path="res://faceColor.png" type="Texture" id=2]
-
-[sub_resource type="CircleShape2D" id=1]
-
-custom_solver_bias = 0.0
-radius = 20.0
-
-[sub_resource type="OccluderPolygon2D" id=2]
-
-closed = false
-cull_mode = 0
-polygon = Vector2Array( -16.1183, 62.9508, 4.32091, 74.9223, 23.3002, 65.2867 )
-
-[node name="column" type="StaticBody2D"]
-
-input/pickable = false
-shapes/0/shape = SubResource( 1 )
-shapes/0/transform = Matrix32( 1, 0, 0, 1, 1.36365, 7.83751 )
-shapes/0/trigger = false
-collision/layers = 1
-collision/mask = 1
-constant_linear_velocity = Vector2( 0, 0 )
-constant_angular_velocity = 0.0
-friction = 1.0
-bounce = 0.0
-
-[node name="Sprite" type="Sprite" parent="."]
-
-material/material = ExtResource( 1 )
-transform/pos = Vector2( 0.487671, 0.487679 )
-texture = ExtResource( 2 )
-offset = Vector2( -4.37984, -50.8523 )
-region = true
-region_rect = Rect2( 569, 179, 48, 154 )
-
-[node name="occluder" type="LightOccluder2D" parent="."]
-
-transform/pos = Vector2( -3.90138, -50.97 )
-occluder = SubResource( 2 )
-light_mask = 1
-
-[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
-
-transform/pos = Vector2( 1.36365, 7.83751 )
-shape = SubResource( 1 )
-trigger = false
-_update_shape_index = -1
-
-

+ 0 - 85
demos/2d/isometric_light/cubio.gd

@@ -1,85 +0,0 @@
-
-extends KinematicBody2D
-
-# Member variables
-const MAX_SPEED = 300.0
-const IDLE_SPEED = 10.0
-const ACCEL = 5.0
-const VSCALE = 0.5
-const SHOOT_INTERVAL = 0.3
-
-var speed = Vector2()
-var current_anim = ""
-var current_mirror = false
-
-var shoot_countdown = 0
-
-
-func _input(event):
-	if (event.type == InputEvent.MOUSE_BUTTON and event.button_index == 1 and event.pressed and shoot_countdown <= 0):
-		var pos = get_canvas_transform().affine_inverse()*event.pos
-		var dir = (pos - get_global_pos()).normalized()
-		var bullet = preload("res://shoot.tscn").instance()
-		bullet.advance_dir = dir
-		bullet.set_pos(get_global_pos() + dir*60)
-		get_parent().add_child(bullet)
-		shoot_countdown = SHOOT_INTERVAL
-
-
-func _fixed_process(delta):
-	shoot_countdown -= delta
-	var dir = Vector2()
-	if (Input.is_action_pressed("up")):
-		dir += Vector2(0, -1)
-	if (Input.is_action_pressed("down")):
-		dir += Vector2(0, 1)
-	if (Input.is_action_pressed("left")):
-		dir += Vector2(-1, 0)
-	if (Input.is_action_pressed("right")):
-		dir += Vector2(1, 0)
-	
-	if (dir != Vector2()):
-		dir = dir.normalized()
-	speed = speed.linear_interpolate(dir*MAX_SPEED, delta*ACCEL)
-	var motion = speed*delta
-	motion.y *= VSCALE
-	motion = move(motion)
-	
-	if (is_colliding()):
-		var n = get_collision_normal()
-		motion = n.slide(motion)
-		move(motion)
-
-	var next_anim = ""
-	var next_mirror = false
-	
-	if (dir == Vector2() and speed.length() < IDLE_SPEED):
-		next_anim = "idle"
-		next_mirror = false
-	elif (speed.length() > IDLE_SPEED*0.1):
-		var angle = atan2(abs(speed.x), speed.y)
-		
-		next_mirror = speed.x > 0
-		if (angle < PI/8):
-			next_anim = "bottom"
-			next_mirror = false
-		elif (angle < PI/4 + PI/8):
-			next_anim = "bottom_left"
-		elif (angle < PI*2/4 + PI/8):
-			next_anim = "left"
-		elif (angle < PI*3/4 + PI/8):
-			next_anim = "top_left"
-		else:
-			next_anim = "top"
-			next_mirror = false
-	
-	if (next_anim != current_anim or next_mirror != current_mirror):
-		get_node("frames").set_flip_h(next_mirror)
-		get_node("anim").play(next_anim)
-		current_anim = next_anim
-		current_mirror = next_mirror
-
-
-func _ready():
-	set_fixed_process(true)
-	set_process_input(true)

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 0 - 174
demos/2d/isometric_light/cubio.tscn


binární
demos/2d/isometric_light/cubio/idle0001.png


binární
demos/2d/isometric_light/cubio/idle0002.png


binární
demos/2d/isometric_light/cubio/idle0003.png


binární
demos/2d/isometric_light/cubio/idle0004.png


binární
demos/2d/isometric_light/cubio/idle0005.png


binární
demos/2d/isometric_light/cubio/idle0006.png


binární
demos/2d/isometric_light/cubio/idle0007.png


binární
demos/2d/isometric_light/cubio/idle0008.png


binární
demos/2d/isometric_light/cubio/idle0009.png


binární
demos/2d/isometric_light/cubio/idle0010.png


binární
demos/2d/isometric_light/cubio/idle0011.png


binární
demos/2d/isometric_light/cubio/idle0012.png


binární
demos/2d/isometric_light/cubio/idle0013.png


binární
demos/2d/isometric_light/cubio/idle0014.png


binární
demos/2d/isometric_light/cubio/idle0015.png


binární
demos/2d/isometric_light/cubio/idle0016.png


binární
demos/2d/isometric_light/cubio/idle0017.png


binární
demos/2d/isometric_light/cubio/idle0018.png


Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů