test.tscn 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448
  1. [gd_scene load_steps=40 format=3 uid="uid://c4i1xdk0nc7s0"]
  2. [ext_resource type="Material" uid="uid://chsncadr63hoc" path="res://materials/grass.tres" id="4_gplko"]
  3. [ext_resource type="Material" uid="uid://3odjrwml2nes" path="res://materials/sand.tres" id="5_12jug"]
  4. [ext_resource type="Material" uid="uid://cw85kxowmkj37" path="res://materials/wet_concrete.tres" id="6_q1c2f"]
  5. [ext_resource type="Material" uid="uid://c5wve1c3hypfo" path="res://materials/marble.tres" id="7_ebvqo"]
  6. [ext_resource type="Material" uid="uid://cbijbaq5qol7n" path="res://materials/ice.tres" id="7_k1q1v"]
  7. [ext_resource type="Material" uid="uid://b74tdcluvrao6" path="res://materials/lava.tres" id="8_jphcw"]
  8. [ext_resource type="Material" uid="uid://68rvwiamrckm" path="res://materials/glass.tres" id="9_vei4q"]
  9. [ext_resource type="Script" path="res://scripts/grid.gd" id="10_wwlcf"]
  10. [ext_resource type="Shader" path="res://shaders/plasma.gdshader" id="11_aoush"]
  11. [ext_resource type="Texture2D" uid="uid://chjqieyps5n5r" path="res://checker.png" id="14"]
  12. [ext_resource type="Script" path="res://tester.gd" id="18"]
  13. [sub_resource type="ProceduralSkyMaterial" id="9"]
  14. [sub_resource type="Sky" id="10"]
  15. sky_material = SubResource("9")
  16. [sub_resource type="Environment" id="11"]
  17. background_mode = 2
  18. sky = SubResource("10")
  19. tonemap_mode = 3
  20. tonemap_white = 6.0
  21. [sub_resource type="StandardMaterial3D" id="13"]
  22. diffuse_mode = 1
  23. albedo_texture = ExtResource("14")
  24. uv1_scale = Vector3(32, 32, 1)
  25. texture_filter = 5
  26. [sub_resource type="PlaneMesh" id="14"]
  27. material = SubResource("13")
  28. size = Vector2(128, 128)
  29. [sub_resource type="Animation" id="Animation_2qwoj"]
  30. length = 0.001
  31. tracks/0/type = "value"
  32. tracks/0/imported = false
  33. tracks/0/enabled = true
  34. tracks/0/path = NodePath("Testers/NoiseTextureLava/MeshInstance3D:surface_material_override/0:uv1_offset")
  35. tracks/0/interp = 1
  36. tracks/0/loop_wrap = true
  37. tracks/0/keys = {
  38. "times": PackedFloat32Array(0),
  39. "transitions": PackedFloat32Array(1),
  40. "update": 0,
  41. "values": [Vector3(0, 0, 0)]
  42. }
  43. [sub_resource type="Animation" id="Animation_nbv0n"]
  44. resource_name = "animate_textures"
  45. length = 300.0
  46. loop_mode = 1
  47. tracks/0/type = "value"
  48. tracks/0/imported = false
  49. tracks/0/enabled = true
  50. tracks/0/path = NodePath("Testers/NoiseTextureLava/MeshInstance3D:surface_material_override/0:uv1_offset")
  51. tracks/0/interp = 1
  52. tracks/0/loop_wrap = true
  53. tracks/0/keys = {
  54. "times": PackedFloat32Array(0, 300),
  55. "transitions": PackedFloat32Array(1, 1),
  56. "update": 0,
  57. "values": [Vector3(0, 0, 0), Vector3(4, 1, 0)]
  58. }
  59. [sub_resource type="AnimationLibrary" id="AnimationLibrary_sin37"]
  60. _data = {
  61. "RESET": SubResource("Animation_2qwoj"),
  62. "animate_textures": SubResource("Animation_nbv0n")
  63. }
  64. [sub_resource type="SphereMesh" id="SphereMesh_be5u0"]
  65. radius = 0.75
  66. height = 1.5
  67. [sub_resource type="BoxMesh" id="BoxMesh_opf1g"]
  68. size = Vector3(3, 1, 4)
  69. [sub_resource type="Gradient" id="Gradient_iy4y2"]
  70. offsets = PackedFloat32Array(0, 0.0211082, 0.0435356, 0.0633245, 1)
  71. colors = PackedColorArray(0, 0, 0, 1, 0.733005, 0.733005, 0.733005, 1, 0.0461741, 0.0461741, 0.0461741, 1, 0.72, 0.69192, 0.6264, 1, 1, 1, 1, 1)
  72. [sub_resource type="FastNoiseLite" id="FastNoiseLite_mc7b4"]
  73. noise_type = 2
  74. frequency = 0.042
  75. fractal_type = 0
  76. fractal_octaves = 3
  77. fractal_gain = 1.596
  78. fractal_weighted_strength = 0.44
  79. cellular_jitter = 0.03
  80. cellular_return_type = 4
  81. domain_warp_enabled = true
  82. domain_warp_type = 2
  83. domain_warp_amplitude = 2.0
  84. domain_warp_fractal_type = 2
  85. [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_e1o5w"]
  86. width = 1024
  87. height = 1024
  88. seamless = true
  89. seamless_blend_skirt = 0.0
  90. color_ramp = SubResource("Gradient_iy4y2")
  91. noise = SubResource("FastNoiseLite_mc7b4")
  92. [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_71qgk"]
  93. width = 1024
  94. height = 1024
  95. seamless = true
  96. seamless_blend_skirt = 0.065
  97. as_normal_map = true
  98. bump_strength = 2.0
  99. color_ramp = SubResource("Gradient_iy4y2")
  100. noise = SubResource("FastNoiseLite_mc7b4")
  101. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_aq2a1"]
  102. albedo_texture = SubResource("NoiseTexture2D_e1o5w")
  103. roughness = 0.5
  104. roughness_texture = SubResource("NoiseTexture2D_e1o5w")
  105. normal_enabled = true
  106. normal_texture = SubResource("NoiseTexture2D_71qgk")
  107. texture_filter = 5
  108. [sub_resource type="Gradient" id="Gradient_5l3re"]
  109. interpolation_mode = 2
  110. offsets = PackedFloat32Array(0, 0.135884, 0.329815, 0.341689, 0.544855, 0.581794, 0.770449, 0.943272)
  111. colors = PackedColorArray(0, 0, 0, 1, 0.111922, 0.139008, 0.140144, 1, 0.398808, 0.12884, 0.147843, 1, 0.421438, 0.289437, 0.227878, 1, 0.65045, 0.360142, 0.181692, 1, 0.739192, 0.503788, 0.301212, 1, 1, 0.672262, 0.366251, 1, 1, 1, 1, 1)
  112. [sub_resource type="FastNoiseLite" id="FastNoiseLite_10olv"]
  113. frequency = 0.05
  114. fractal_weighted_strength = 1.0
  115. domain_warp_enabled = true
  116. [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_e0bku"]
  117. width = 64
  118. height = 64
  119. seamless = true
  120. color_ramp = SubResource("Gradient_5l3re")
  121. noise = SubResource("FastNoiseLite_10olv")
  122. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_k7qv4"]
  123. albedo_texture = SubResource("NoiseTexture2D_e0bku")
  124. texture_filter = 4
  125. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_msbte"]
  126. roughness = 0.75
  127. normal_enabled = true
  128. texture_filter = 5
  129. [sub_resource type="ViewportTexture" id="ViewportTexture_ykq6a"]
  130. viewport_path = NodePath("Testers/ShaderPlasma/SubViewport")
  131. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_4ovjj"]
  132. resource_local_to_scene = true
  133. shading_mode = 0
  134. albedo_texture = SubResource("ViewportTexture_ykq6a")
  135. heightmap_enabled = true
  136. heightmap_scale = 9.0
  137. heightmap_deep_parallax = true
  138. heightmap_min_layers = 8
  139. heightmap_max_layers = 32
  140. heightmap_texture = SubResource("ViewportTexture_ykq6a")
  141. heightmap_flip_texture = true
  142. texture_filter = 5
  143. [sub_resource type="Gradient" id="Gradient_hsp0x"]
  144. offsets = PackedFloat32Array(0, 0.385224, 0.655673, 0.886544, 1)
  145. colors = PackedColorArray(1.95531e-08, 0.0213273, 0.0973903, 1, 0.294665, 0.332091, 0.73046, 1, 0.22273, 0.723553, 0.777314, 1, 0.877091, 0.64938, 0.963435, 1, 0.932381, 0.719091, 0.921475, 1)
  146. [sub_resource type="FastNoiseLite" id="FastNoiseLite_r8ncc"]
  147. frequency = 0.002
  148. fractal_type = 2
  149. fractal_octaves = 4
  150. fractal_lacunarity = 2.901
  151. fractal_gain = 0.353
  152. [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_n04ac"]
  153. width = 1024
  154. height = 1024
  155. seamless = true
  156. color_ramp = SubResource("Gradient_hsp0x")
  157. noise = SubResource("FastNoiseLite_r8ncc")
  158. [sub_resource type="FastNoiseLite" id="FastNoiseLite_25kcu"]
  159. seed = 60607
  160. fractal_gain = 0.695
  161. domain_warp_enabled = true
  162. [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_pn44s"]
  163. width = 1024
  164. height = 1024
  165. seamless = true
  166. noise = SubResource("FastNoiseLite_25kcu")
  167. [sub_resource type="ShaderMaterial" id="ShaderMaterial_2p45w"]
  168. shader = ExtResource("11_aoush")
  169. shader_parameter/noise1 = SubResource("NoiseTexture2D_n04ac")
  170. shader_parameter/noise2 = SubResource("NoiseTexture2D_pn44s")
  171. [node name="WorldEnvironment" type="WorldEnvironment"]
  172. environment = SubResource("11")
  173. script = ExtResource("18")
  174. [node name="Plane" type="MeshInstance3D" parent="."]
  175. layers = 2
  176. mesh = SubResource("14")
  177. [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
  178. transform = Transform3D(0.909487, -0.23874, 0.340349, 0, 0.818672, 0.574262, -0.415733, -0.522284, 0.744571, 3.9506, 3.39961, 3.54442)
  179. shadow_enabled = true
  180. shadow_bias = 0.04
  181. directional_shadow_mode = 0
  182. directional_shadow_fade_start = 1.0
  183. directional_shadow_max_distance = 24.0
  184. [node name="ReflectionProbe" type="ReflectionProbe" parent="."]
  185. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 8)
  186. max_distance = 100.0
  187. size = Vector3(100, 100, 100)
  188. box_projection = true
  189. enable_shadows = true
  190. ambient_mode = 0
  191. [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
  192. autoplay = "animate_textures"
  193. libraries = {
  194. "": SubResource("AnimationLibrary_sin37")
  195. }
  196. [node name="CameraHolder" type="Node3D" parent="."]
  197. transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0, 0.125, 26)
  198. [node name="RotationX" type="Node3D" parent="CameraHolder"]
  199. [node name="Camera3D" type="Camera3D" parent="CameraHolder/RotationX"]
  200. fov = 70.0
  201. [node name="Testers" type="Node3D" parent="."]
  202. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4)
  203. [node name="NoiseTextureGrass" type="Node3D" parent="Testers"]
  204. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 22)
  205. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureGrass"]
  206. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  207. mesh = SubResource("SphereMesh_be5u0")
  208. skeleton = NodePath("../../..")
  209. surface_material_override/0 = ExtResource("4_gplko")
  210. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureGrass"]
  211. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  212. mesh = SubResource("BoxMesh_opf1g")
  213. surface_material_override/0 = ExtResource("4_gplko")
  214. [node name="NoiseTextureSand" type="Node3D" parent="Testers"]
  215. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 18)
  216. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureSand"]
  217. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  218. mesh = SubResource("SphereMesh_be5u0")
  219. skeleton = NodePath("../../..")
  220. surface_material_override/0 = ExtResource("5_12jug")
  221. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureSand"]
  222. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  223. mesh = SubResource("BoxMesh_opf1g")
  224. surface_material_override/0 = ExtResource("5_12jug")
  225. [node name="NoiseTextureWetConcrete" type="Node3D" parent="Testers"]
  226. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 14)
  227. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureWetConcrete"]
  228. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  229. mesh = SubResource("SphereMesh_be5u0")
  230. skeleton = NodePath("../../..")
  231. surface_material_override/0 = ExtResource("6_q1c2f")
  232. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureWetConcrete"]
  233. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  234. mesh = SubResource("BoxMesh_opf1g")
  235. surface_material_override/0 = ExtResource("6_q1c2f")
  236. [node name="NoiseTextureBathroomFloorTile" type="Node3D" parent="Testers"]
  237. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 10)
  238. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureBathroomFloorTile"]
  239. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  240. mesh = SubResource("SphereMesh_be5u0")
  241. skeleton = NodePath("../../..")
  242. surface_material_override/0 = SubResource("StandardMaterial3D_aq2a1")
  243. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureBathroomFloorTile"]
  244. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  245. mesh = SubResource("BoxMesh_opf1g")
  246. surface_material_override/0 = SubResource("StandardMaterial3D_aq2a1")
  247. [node name="NoiseTextureIce" type="Node3D" parent="Testers"]
  248. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 6)
  249. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureIce"]
  250. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  251. mesh = SubResource("SphereMesh_be5u0")
  252. skeleton = NodePath("../../..")
  253. surface_material_override/0 = ExtResource("7_k1q1v")
  254. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureIce"]
  255. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  256. mesh = SubResource("BoxMesh_opf1g")
  257. surface_material_override/0 = ExtResource("7_k1q1v")
  258. [node name="NoiseTextureMarble" type="Node3D" parent="Testers"]
  259. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, 2)
  260. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureMarble"]
  261. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  262. mesh = SubResource("SphereMesh_be5u0")
  263. skeleton = NodePath("../../..")
  264. surface_material_override/0 = ExtResource("7_ebvqo")
  265. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureMarble"]
  266. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  267. mesh = SubResource("BoxMesh_opf1g")
  268. surface_material_override/0 = ExtResource("7_ebvqo")
  269. [node name="NoiseTextureLava" type="Node3D" parent="Testers"]
  270. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, -2)
  271. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureLava"]
  272. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
  273. mesh = SubResource("SphereMesh_be5u0")
  274. skeleton = NodePath("../../..")
  275. surface_material_override/0 = ExtResource("8_jphcw")
  276. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureLava"]
  277. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  278. mesh = SubResource("BoxMesh_opf1g")
  279. surface_material_override/0 = ExtResource("8_jphcw")
  280. [node name="NoiseTextureGlass" type="Node3D" parent="Testers"]
  281. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, -6)
  282. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTextureGlass"]
  283. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00275182, -0.244153, -0.000101089)
  284. mesh = SubResource("SphereMesh_be5u0")
  285. skeleton = NodePath("../../..")
  286. surface_material_override/0 = ExtResource("9_vei4q")
  287. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTextureGlass"]
  288. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  289. mesh = SubResource("BoxMesh_opf1g")
  290. surface_material_override/0 = ExtResource("9_vei4q")
  291. [node name="NoiseTexturePixelArt" type="Node3D" parent="Testers"]
  292. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, -10)
  293. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/NoiseTexturePixelArt"]
  294. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00275182, -0.244153, -0.000101089)
  295. mesh = SubResource("SphereMesh_be5u0")
  296. skeleton = NodePath("../../..")
  297. surface_material_override/0 = SubResource("StandardMaterial3D_k7qv4")
  298. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/NoiseTexturePixelArt"]
  299. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  300. mesh = SubResource("BoxMesh_opf1g")
  301. surface_material_override/0 = SubResource("StandardMaterial3D_k7qv4")
  302. [node name="ScriptGrid" type="Node3D" parent="Testers"]
  303. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, -14)
  304. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/ScriptGrid"]
  305. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00275182, -0.244153, -0.000101089)
  306. mesh = SubResource("SphereMesh_be5u0")
  307. skeleton = NodePath("../../..")
  308. surface_material_override/0 = SubResource("StandardMaterial3D_msbte")
  309. script = ExtResource("10_wwlcf")
  310. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/ScriptGrid"]
  311. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  312. mesh = SubResource("BoxMesh_opf1g")
  313. surface_material_override/0 = SubResource("StandardMaterial3D_msbte")
  314. [node name="ShaderPlasma" type="Node3D" parent="Testers"]
  315. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.025, -18)
  316. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/ShaderPlasma"]
  317. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.00275182, -0.244153, -0.000101089)
  318. mesh = SubResource("SphereMesh_be5u0")
  319. skeleton = NodePath("../../..")
  320. surface_material_override/0 = SubResource("StandardMaterial3D_4ovjj")
  321. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/ShaderPlasma"]
  322. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.5, 0)
  323. mesh = SubResource("BoxMesh_opf1g")
  324. surface_material_override/0 = SubResource("StandardMaterial3D_4ovjj")
  325. [node name="SubViewport" type="SubViewport" parent="Testers/ShaderPlasma"]
  326. size = Vector2i(1024, 1024)
  327. [node name="ColorRect" type="ColorRect" parent="Testers/ShaderPlasma/SubViewport"]
  328. material = SubResource("ShaderMaterial_2p45w")
  329. offset_right = 1024.0
  330. offset_bottom = 1024.0
  331. [node name="TestName" type="Label" parent="."]
  332. anchors_preset = 7
  333. anchor_left = 0.5
  334. anchor_top = 1.0
  335. anchor_right = 0.5
  336. anchor_bottom = 1.0
  337. offset_left = -192.0
  338. offset_top = -58.0
  339. offset_right = 192.0
  340. offset_bottom = -24.0
  341. grow_horizontal = 2
  342. grow_vertical = 0
  343. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  344. theme_override_constants/outline_size = 5
  345. theme_override_font_sizes/font_size = 24
  346. horizontal_alignment = 1
  347. [node name="Previous" type="Button" parent="."]
  348. anchors_preset = 2
  349. anchor_top = 1.0
  350. anchor_bottom = 1.0
  351. offset_left = 24.0
  352. offset_top = -55.0
  353. offset_right = 135.0
  354. offset_bottom = -24.0
  355. grow_vertical = 0
  356. text = "« Previous"
  357. [node name="Next" type="Button" parent="."]
  358. anchors_preset = 3
  359. anchor_left = 1.0
  360. anchor_top = 1.0
  361. anchor_right = 1.0
  362. anchor_bottom = 1.0
  363. offset_left = -107.0
  364. offset_top = -55.0
  365. offset_right = -24.0
  366. offset_bottom = -24.0
  367. grow_horizontal = 0
  368. grow_vertical = 0
  369. text = "Next »"
  370. [connection signal="pressed" from="Previous" to="." method="_on_previous_pressed"]
  371. [connection signal="pressed" from="Next" to="." method="_on_next_pressed"]