anti_aliasing.tscn 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107
  1. [gd_scene load_steps=55 format=3 uid="uid://clyxqp0e6qemi"]
  2. [ext_resource type="Texture2D" uid="uid://ccgkupemr6e1q" path="res://textures/paint.png" id="3_2nulf"]
  3. [ext_resource type="PackedScene" uid="uid://daokc0jvx7nkw" path="res://thin_lines.tscn" id="3_5ehjl"]
  4. [ext_resource type="PackedScene" uid="uid://sxx5ow26t0c3" path="res://polyhaven/dutch_ship_medium_1k.gltf" id="3_fa2bl"]
  5. [ext_resource type="Texture2D" uid="uid://bm6eht0bqttpo" path="res://textures/paint_normal.png" id="4_fdfpv"]
  6. [ext_resource type="Texture2D" uid="uid://chjqieyps5n5r" path="res://textures/checker.png" id="14"]
  7. [ext_resource type="Script" path="res://anti_aliasing.gd" id="18"]
  8. [sub_resource type="ProceduralSkyMaterial" id="9"]
  9. [sub_resource type="Sky" id="10"]
  10. sky_material = SubResource("9")
  11. [sub_resource type="Environment" id="11"]
  12. background_mode = 2
  13. sky = SubResource("10")
  14. [sub_resource type="Animation" id="Animation_qdnt6"]
  15. length = 0.001
  16. tracks/0/type = "value"
  17. tracks/0/imported = false
  18. tracks/0/enabled = true
  19. tracks/0/path = NodePath("Testers/MovingObject/MeshInstance3D:position")
  20. tracks/0/interp = 1
  21. tracks/0/loop_wrap = true
  22. tracks/0/keys = {
  23. "times": PackedFloat32Array(0),
  24. "transitions": PackedFloat32Array(1),
  25. "update": 0,
  26. "values": [Vector3(0, 0.5, 0)]
  27. }
  28. tracks/1/type = "value"
  29. tracks/1/imported = false
  30. tracks/1/enabled = true
  31. tracks/1/path = NodePath("Testers/RotatingObject/MeshInstance3D:rotation")
  32. tracks/1/interp = 1
  33. tracks/1/loop_wrap = true
  34. tracks/1/keys = {
  35. "times": PackedFloat32Array(0),
  36. "transitions": PackedFloat32Array(1),
  37. "update": 0,
  38. "values": [Vector3(0, 0, 0)]
  39. }
  40. tracks/2/type = "value"
  41. tracks/2/imported = false
  42. tracks/2/enabled = true
  43. tracks/2/path = NodePath("Testers/ScalingObject/MeshInstance3D:scale")
  44. tracks/2/interp = 1
  45. tracks/2/loop_wrap = true
  46. tracks/2/keys = {
  47. "times": PackedFloat32Array(0),
  48. "transitions": PackedFloat32Array(1),
  49. "update": 0,
  50. "values": [Vector3(0, 0, 0)]
  51. }
  52. tracks/3/type = "value"
  53. tracks/3/imported = false
  54. tracks/3/enabled = true
  55. tracks/3/path = NodePath("Testers/MovingCPUParticles/CPUParticles3D:position")
  56. tracks/3/interp = 1
  57. tracks/3/loop_wrap = true
  58. tracks/3/keys = {
  59. "times": PackedFloat32Array(0),
  60. "transitions": PackedFloat32Array(1),
  61. "update": 0,
  62. "values": [Vector3(0, 0.5, 0)]
  63. }
  64. tracks/4/type = "value"
  65. tracks/4/imported = false
  66. tracks/4/enabled = true
  67. tracks/4/path = NodePath("Testers/MovingDecal/Decal:position")
  68. tracks/4/interp = 1
  69. tracks/4/loop_wrap = true
  70. tracks/4/keys = {
  71. "times": PackedFloat32Array(0),
  72. "transitions": PackedFloat32Array(1),
  73. "update": 0,
  74. "values": [Vector3(1, 1, 1)]
  75. }
  76. tracks/5/type = "value"
  77. tracks/5/imported = false
  78. tracks/5/enabled = true
  79. tracks/5/path = NodePath("Testers/MovingDecal/Decal:rotation")
  80. tracks/5/interp = 1
  81. tracks/5/loop_wrap = true
  82. tracks/5/keys = {
  83. "times": PackedFloat32Array(0),
  84. "transitions": PackedFloat32Array(1),
  85. "update": 0,
  86. "values": [Vector3(0.18405, -2.33886, 0.187249)]
  87. }
  88. tracks/6/type = "value"
  89. tracks/6/imported = false
  90. tracks/6/enabled = true
  91. tracks/6/path = NodePath("Testers/ScrollingUVAnimation/MeshInstance3D:surface_material_override/0:uv1_offset")
  92. tracks/6/interp = 1
  93. tracks/6/loop_wrap = true
  94. tracks/6/keys = {
  95. "times": PackedFloat32Array(0),
  96. "transitions": PackedFloat32Array(1),
  97. "update": 0,
  98. "values": [Vector3(0, 0, 0)]
  99. }
  100. tracks/7/type = "value"
  101. tracks/7/imported = false
  102. tracks/7/enabled = true
  103. tracks/7/path = NodePath("Testers/MovingGPUParticles/GPUParticles3D:position")
  104. tracks/7/interp = 1
  105. tracks/7/loop_wrap = true
  106. tracks/7/keys = {
  107. "times": PackedFloat32Array(0),
  108. "transitions": PackedFloat32Array(1),
  109. "update": 0,
  110. "values": [Vector3(0, 1.2, 0)]
  111. }
  112. [sub_resource type="Animation" id="12"]
  113. resource_name = "move"
  114. length = 4.0
  115. loop_mode = 1
  116. tracks/0/type = "value"
  117. tracks/0/imported = false
  118. tracks/0/enabled = true
  119. tracks/0/path = NodePath("Testers/MovingObject/MeshInstance3D:position")
  120. tracks/0/interp = 1
  121. tracks/0/loop_wrap = true
  122. tracks/0/keys = {
  123. "times": PackedFloat32Array(0, 2),
  124. "transitions": PackedFloat32Array(-2, -2),
  125. "update": 0,
  126. "values": [Vector3(0, 0.5, 0), Vector3(0, 2.5, 0)]
  127. }
  128. tracks/1/type = "value"
  129. tracks/1/imported = false
  130. tracks/1/enabled = true
  131. tracks/1/path = NodePath("Testers/RotatingObject/MeshInstance3D:rotation")
  132. tracks/1/interp = 1
  133. tracks/1/loop_wrap = true
  134. tracks/1/keys = {
  135. "times": PackedFloat32Array(0, 4),
  136. "transitions": PackedFloat32Array(1, 1),
  137. "update": 0,
  138. "values": [Vector3(0, 0, 0), Vector3(0, 18.8496, 0)]
  139. }
  140. tracks/2/type = "value"
  141. tracks/2/imported = false
  142. tracks/2/enabled = true
  143. tracks/2/path = NodePath("Testers/ScalingObject/MeshInstance3D:scale")
  144. tracks/2/interp = 1
  145. tracks/2/loop_wrap = true
  146. tracks/2/keys = {
  147. "times": PackedFloat32Array(0, 2),
  148. "transitions": PackedFloat32Array(1, 1),
  149. "update": 0,
  150. "values": [Vector3(0, 0, 0), Vector3(1, 1, 3)]
  151. }
  152. tracks/3/type = "value"
  153. tracks/3/imported = false
  154. tracks/3/enabled = true
  155. tracks/3/path = NodePath("Testers/MovingCPUParticles/CPUParticles3D:position")
  156. tracks/3/interp = 1
  157. tracks/3/loop_wrap = true
  158. tracks/3/keys = {
  159. "times": PackedFloat32Array(0, 2),
  160. "transitions": PackedFloat32Array(-2, -2),
  161. "update": 0,
  162. "values": [Vector3(0, 0.2, 0), Vector3(0, 2.2, 0)]
  163. }
  164. tracks/4/type = "value"
  165. tracks/4/imported = false
  166. tracks/4/enabled = true
  167. tracks/4/path = NodePath("Testers/MovingDecal/Decal:position")
  168. tracks/4/interp = 1
  169. tracks/4/loop_wrap = true
  170. tracks/4/keys = {
  171. "times": PackedFloat32Array(0, 2),
  172. "transitions": PackedFloat32Array(-2, -2),
  173. "update": 0,
  174. "values": [Vector3(1, 1, 1), Vector3(-1, 1, -1)]
  175. }
  176. tracks/5/type = "value"
  177. tracks/5/imported = false
  178. tracks/5/enabled = true
  179. tracks/5/path = NodePath("Testers/MovingDecal/Decal:rotation")
  180. tracks/5/interp = 1
  181. tracks/5/loop_wrap = true
  182. tracks/5/keys = {
  183. "times": PackedFloat32Array(0, 2),
  184. "transitions": PackedFloat32Array(-2, -2),
  185. "update": 0,
  186. "values": [Vector3(0, 0, 0), Vector3(0.18405, -2.33886, 0.187249)]
  187. }
  188. tracks/6/type = "value"
  189. tracks/6/imported = false
  190. tracks/6/enabled = true
  191. tracks/6/path = NodePath("Testers/ScrollingUVAnimation/MeshInstance3D:surface_material_override/0:uv1_offset")
  192. tracks/6/interp = 1
  193. tracks/6/loop_wrap = true
  194. tracks/6/keys = {
  195. "times": PackedFloat32Array(0, 4),
  196. "transitions": PackedFloat32Array(1, 1),
  197. "update": 0,
  198. "values": [Vector3(0, 0, 0), Vector3(3, 0, 0)]
  199. }
  200. tracks/7/type = "value"
  201. tracks/7/imported = false
  202. tracks/7/enabled = true
  203. tracks/7/path = NodePath("Testers/MovingGPUParticles/GPUParticles3D:position")
  204. tracks/7/interp = 1
  205. tracks/7/loop_wrap = true
  206. tracks/7/keys = {
  207. "times": PackedFloat32Array(0, 2),
  208. "transitions": PackedFloat32Array(-2, -2),
  209. "update": 0,
  210. "values": [Vector3(0, 1.2, 0), Vector3(0, 4.2, 0)]
  211. }
  212. [sub_resource type="AnimationLibrary" id="AnimationLibrary_ecfcr"]
  213. _data = {
  214. "RESET": SubResource("Animation_qdnt6"),
  215. "move": SubResource("12")
  216. }
  217. [sub_resource type="StandardMaterial3D" id="13"]
  218. diffuse_mode = 1
  219. albedo_texture = ExtResource("14")
  220. uv1_scale = Vector3(32, 32, 1)
  221. texture_filter = 5
  222. [sub_resource type="PlaneMesh" id="14"]
  223. material = SubResource("13")
  224. size = Vector2(128, 128)
  225. [sub_resource type="BoxMesh" id="BoxMesh_gwe28"]
  226. [sub_resource type="Gradient" id="Gradient_jyuoy"]
  227. offsets = PackedFloat32Array(0.1, 0.768293)
  228. [sub_resource type="FastNoiseLite" id="FastNoiseLite_kv21n"]
  229. frequency = 0.02
  230. fractal_type = 3
  231. fractal_octaves = 9
  232. fractal_gain = 0.9
  233. fractal_ping_pong_strength = -1.2
  234. [sub_resource type="NoiseTexture2D" id="NoiseTexture_bgiac"]
  235. seamless = true
  236. color_ramp = SubResource("Gradient_jyuoy")
  237. noise = SubResource("FastNoiseLite_kv21n")
  238. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_x42ya"]
  239. albedo_color = Color(1.2, 1, 0.7, 1)
  240. albedo_texture = SubResource("NoiseTexture_bgiac")
  241. uv1_scale = Vector3(3, 2, 1)
  242. texture_filter = 5
  243. [sub_resource type="Gradient" id="Gradient_ylwhn"]
  244. offsets = PackedFloat32Array(0.378049, 0.408537, 0.603659, 1)
  245. colors = PackedColorArray(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1)
  246. [sub_resource type="GradientTexture2D" id="GradientTexture2D_fmnt8"]
  247. gradient = SubResource("Gradient_ylwhn")
  248. width = 16
  249. height = 16
  250. fill = 2
  251. fill_from = Vector2(0.5, 0.5)
  252. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6yfdy"]
  253. specular_mode = 2
  254. albedo_color = Color(0.301961, 1, 0.6, 1)
  255. albedo_texture = SubResource("GradientTexture2D_fmnt8")
  256. uv1_scale = Vector3(3, 2, 1)
  257. texture_filter = 4
  258. [sub_resource type="PlaneMesh" id="PlaneMesh_nllvr"]
  259. size = Vector2(3.9, 3.9)
  260. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_bjmm1"]
  261. albedo_color = Color(1, 0, 0, 1)
  262. [sub_resource type="Gradient" id="Gradient_e2xbk"]
  263. offsets = PackedFloat32Array(0.3, 0.5, 0.699, 0.7)
  264. colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0)
  265. [sub_resource type="GradientTexture2D" id="GradientTexture2D_ufeca"]
  266. gradient = SubResource("Gradient_e2xbk")
  267. width = 128
  268. height = 128
  269. fill = 2
  270. fill_from = Vector2(0.5, 0.5)
  271. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_qcf1j"]
  272. transparency = 1
  273. albedo_texture = SubResource("GradientTexture2D_ufeca")
  274. uv1_scale = Vector3(12, 8, 1)
  275. texture_filter = 5
  276. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xbqpl"]
  277. transparency = 2
  278. alpha_scissor_threshold = 0.5
  279. alpha_antialiasing_mode = 0
  280. albedo_texture = SubResource("GradientTexture2D_ufeca")
  281. uv1_scale = Vector3(12, 8, 1)
  282. texture_filter = 5
  283. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_txrd8"]
  284. transparency = 2
  285. alpha_scissor_threshold = 0.5
  286. alpha_antialiasing_mode = 1
  287. alpha_antialiasing_edge = 0.3
  288. albedo_texture = SubResource("GradientTexture2D_ufeca")
  289. uv1_scale = Vector3(12, 8, 1)
  290. texture_filter = 5
  291. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_xhqpm"]
  292. transparency = 2
  293. alpha_scissor_threshold = 0.5
  294. alpha_antialiasing_mode = 2
  295. alpha_antialiasing_edge = 0.3
  296. albedo_texture = SubResource("GradientTexture2D_ufeca")
  297. uv1_scale = Vector3(12, 8, 1)
  298. texture_filter = 5
  299. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_mjkwh"]
  300. transparency = 3
  301. alpha_hash_scale = 1.0
  302. alpha_antialiasing_mode = 0
  303. albedo_texture = SubResource("GradientTexture2D_ufeca")
  304. uv1_scale = Vector3(12, 8, 1)
  305. texture_filter = 5
  306. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_f4l4p"]
  307. transparency = 4
  308. albedo_texture = SubResource("GradientTexture2D_ufeca")
  309. uv1_scale = Vector3(12, 8, 1)
  310. texture_filter = 5
  311. [sub_resource type="SphereMesh" id="SphereMesh_kfkna"]
  312. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_rfedc"]
  313. transparency = 2
  314. alpha_scissor_threshold = 0.05
  315. alpha_antialiasing_mode = 0
  316. use_point_size = true
  317. point_size = 3.2
  318. [sub_resource type="Gradient" id="Gradient_3dg7h"]
  319. interpolation_mode = 2
  320. offsets = PackedFloat32Array(0, 0.94964)
  321. colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
  322. [sub_resource type="GradientTexture2D" id="GradientTexture2D_42opb"]
  323. gradient = SubResource("Gradient_3dg7h")
  324. fill = 1
  325. fill_from = Vector2(0.5, 0.5)
  326. fill_to = Vector2(0.49, 0)
  327. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_layy4"]
  328. transparency = 1
  329. shading_mode = 0
  330. vertex_color_use_as_albedo = true
  331. albedo_texture = SubResource("GradientTexture2D_42opb")
  332. billboard_mode = 3
  333. billboard_keep_scale = true
  334. particles_anim_h_frames = 1
  335. particles_anim_v_frames = 1
  336. particles_anim_loop = false
  337. [sub_resource type="QuadMesh" id="QuadMesh_imrxg"]
  338. material = SubResource("StandardMaterial3D_layy4")
  339. [sub_resource type="Curve" id="Curve_v0n7y"]
  340. _data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
  341. point_count = 2
  342. [sub_resource type="Gradient" id="Gradient_e7gyf"]
  343. offsets = PackedFloat32Array(0, 0.0946746, 0.5, 0.804734)
  344. colors = PackedColorArray(0, 0.14902, 1, 0, 0.0627836, 0.243372, 0.995875, 1, 0.568541, 1, 0.962647, 1, 1, 1, 1, 1)
  345. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_r4xcu"]
  346. albedo_color = Color(0.521569, 1, 0.776471, 1)
  347. [sub_resource type="BoxMesh" id="BoxMesh_88317"]
  348. material = SubResource("StandardMaterial3D_r4xcu")
  349. size = Vector3(0.1, 0.1, 0.1)
  350. [sub_resource type="Curve" id="Curve_sutnd"]
  351. _data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
  352. point_count = 2
  353. [sub_resource type="ParticleProcessMaterial" id="ParticlesMaterial_ft0gs"]
  354. emission_shape = 6
  355. emission_ring_axis = Vector3(0, 1, 0)
  356. emission_ring_height = 0.0
  357. emission_ring_radius = 0.25
  358. emission_ring_inner_radius = 0.25
  359. radial_accel_min = 2.0
  360. radial_accel_max = 2.0
  361. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1dgwn"]
  362. albedo_color = Color(0.545098, 0.545098, 0.545098, 1)
  363. [sub_resource type="SphereMesh" id="SphereMesh_v4x6x"]
  364. material = SubResource("StandardMaterial3D_1dgwn")
  365. radius = 1.0
  366. height = 2.0
  367. [sub_resource type="CylinderMesh" id="CylinderMesh_5qy8k"]
  368. height = 1.0
  369. radial_segments = 6
  370. rings = 1
  371. [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_53dqy"]
  372. albedo_color = Color(0.946182, 1.18208, 1.2, 1)
  373. albedo_texture = SubResource("NoiseTexture_bgiac")
  374. uv1_scale = Vector3(2, 2, 1)
  375. texture_filter = 5
  376. [sub_resource type="Shader" id="Shader_rejcs"]
  377. code = "// NOTE: Shader automatically converted from Godot Engine 4.0.alpha's StandardMaterial3D.
  378. shader_type spatial;
  379. render_mode blend_mix,depth_draw_opaque,cull_back,diffuse_burley,specular_schlick_ggx;
  380. uniform vec4 albedo : source_color;
  381. uniform sampler2D texture_albedo : source_color,filter_linear_mipmap_anisotropic,repeat_enable;
  382. uniform float point_size : hint_range(0,128);
  383. uniform float roughness : hint_range(0,1);
  384. uniform sampler2D texture_metallic : hint_default_white,filter_linear_mipmap_anisotropic,repeat_enable;
  385. uniform vec4 metallic_texture_channel;
  386. uniform sampler2D texture_roughness : hint_roughness_r,filter_linear_mipmap_anisotropic,repeat_enable;
  387. uniform float specular;
  388. uniform float metallic;
  389. uniform vec3 uv1_scale;
  390. uniform vec3 uv1_offset;
  391. uniform vec3 uv2_scale;
  392. uniform vec3 uv2_offset;
  393. void vertex() {
  394. // Scroll the texture over time.
  395. UV = UV*uv1_scale.xy+uv1_offset.xy + vec2(mod(TIME, 1.0), 0.0);
  396. }
  397. void fragment() {
  398. vec2 base_uv = UV;
  399. vec4 albedo_tex = texture(texture_albedo,base_uv);
  400. ALBEDO = albedo.rgb * albedo_tex.rgb;
  401. float metallic_tex = dot(texture(texture_metallic,base_uv),metallic_texture_channel);
  402. METALLIC = metallic_tex * metallic;
  403. vec4 roughness_texture_channel = vec4(1.0,0.0,0.0,0.0);
  404. float roughness_tex = dot(texture(texture_roughness,base_uv),roughness_texture_channel);
  405. ROUGHNESS = roughness_tex * roughness;
  406. SPECULAR = specular;
  407. }
  408. "
  409. [sub_resource type="ShaderMaterial" id="ShaderMaterial_ltvd2"]
  410. render_priority = 0
  411. shader = SubResource("Shader_rejcs")
  412. shader_parameter/albedo = Color(1.2, 0.915333, 0.997134, 1)
  413. shader_parameter/point_size = 1.0
  414. shader_parameter/roughness = 1.0
  415. shader_parameter/metallic_texture_channel = null
  416. shader_parameter/specular = 0.5
  417. shader_parameter/metallic = 0.0
  418. shader_parameter/uv1_scale = Vector3(2, 2, 1)
  419. shader_parameter/uv1_offset = Vector3(0, 0, 0)
  420. shader_parameter/uv2_scale = Vector3(1, 1, 1)
  421. shader_parameter/uv2_offset = Vector3(0, 0, 0)
  422. shader_parameter/texture_albedo = SubResource("NoiseTexture_bgiac")
  423. [sub_resource type="CylinderMesh" id="CylinderMesh_oopii"]
  424. height = 1.0
  425. radial_segments = 18
  426. rings = 1
  427. [sub_resource type="Shader" id="Shader_ovufm"]
  428. code = "// NOTE: Shader automatically converted from Godot Engine 4.0.alpha's StandardMaterial3D.
  429. shader_type spatial;
  430. render_mode blend_mix,depth_draw_opaque,cull_back,diffuse_burley,specular_schlick_ggx;
  431. uniform vec4 albedo : source_color;
  432. uniform sampler2D texture_albedo : source_color,filter_linear_mipmap_anisotropic,repeat_enable;
  433. uniform float point_size : hint_range(0,128);
  434. uniform float roughness : hint_range(0,1);
  435. uniform sampler2D texture_metallic : hint_default_white,filter_linear_mipmap_anisotropic,repeat_enable;
  436. uniform vec4 metallic_texture_channel;
  437. uniform sampler2D texture_roughness : hint_roughness_r,filter_linear_mipmap_anisotropic,repeat_enable;
  438. uniform float specular;
  439. uniform float metallic;
  440. uniform vec3 uv1_scale;
  441. uniform vec3 uv1_offset;
  442. uniform vec3 uv2_scale;
  443. uniform vec3 uv2_offset;
  444. float rand(vec2 co){
  445. return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);
  446. }
  447. void vertex() {
  448. // Move vertices randomly over time.
  449. VERTEX.y += 0.25 + sin(TIME * 2.0) * rand(vec2(VERTEX.xz)) * 0.5;
  450. }
  451. void fragment() {
  452. vec2 base_uv = UV;
  453. vec4 albedo_tex = texture(texture_albedo,base_uv);
  454. ALBEDO = albedo.rgb * albedo_tex.rgb;
  455. float metallic_tex = dot(texture(texture_metallic,base_uv),metallic_texture_channel);
  456. METALLIC = metallic_tex * metallic;
  457. vec4 roughness_texture_channel = vec4(1.0,0.0,0.0,0.0);
  458. float roughness_tex = dot(texture(texture_roughness,base_uv),roughness_texture_channel);
  459. ROUGHNESS = roughness_tex * roughness;
  460. SPECULAR = specular;
  461. }
  462. "
  463. [sub_resource type="ShaderMaterial" id="ShaderMaterial_fbaw5"]
  464. render_priority = 0
  465. shader = SubResource("Shader_ovufm")
  466. shader_parameter/albedo = Color(1.2, 1.16365, 0.85123, 1)
  467. shader_parameter/point_size = 1.0
  468. shader_parameter/roughness = 1.0
  469. shader_parameter/metallic_texture_channel = null
  470. shader_parameter/specular = 0.5
  471. shader_parameter/metallic = 0.0
  472. shader_parameter/uv1_scale = Vector3(2, 2, 1)
  473. shader_parameter/uv1_offset = Vector3(0, 0, 0)
  474. shader_parameter/uv2_scale = Vector3(1, 1, 1)
  475. shader_parameter/uv2_offset = Vector3(0, 0, 0)
  476. shader_parameter/texture_albedo = SubResource("NoiseTexture_bgiac")
  477. [sub_resource type="Gradient" id="Gradient_ehij4"]
  478. offsets = PackedFloat32Array(0, 0.333, 0.667, 1)
  479. colors = PackedColorArray(1, 0.17, 0.17, 1, 1, 0.816, 0.08, 1, 0.644, 1, 0.11, 1, 0.14, 0.885333, 1, 1)
  480. [node name="AntiAliasingTestScene" type="WorldEnvironment"]
  481. environment = SubResource("11")
  482. script = ExtResource("18")
  483. [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
  484. libraries = {
  485. "": SubResource("AnimationLibrary_ecfcr")
  486. }
  487. autoplay = "move"
  488. [node name="Plane" type="MeshInstance3D" parent="."]
  489. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -38)
  490. layers = 2
  491. mesh = SubResource("14")
  492. [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
  493. 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)
  494. shadow_enabled = true
  495. shadow_bias = 0.03
  496. shadow_normal_bias = 1.5
  497. shadow_blur = 1.5
  498. directional_shadow_mode = 0
  499. directional_shadow_fade_start = 1.0
  500. directional_shadow_max_distance = 25.0
  501. [node name="CameraHolder" type="Node3D" parent="."]
  502. transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0, 0.125, 0)
  503. [node name="RotationX" type="Node3D" parent="CameraHolder"]
  504. [node name="Camera3D" type="Camera3D" parent="CameraHolder/RotationX"]
  505. fov = 70.0
  506. [node name="Testers" type="Node3D" parent="."]
  507. [node name="StaticObject" type="Node3D" parent="Testers"]
  508. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/StaticObject"]
  509. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.5, 0.5, 0)
  510. mesh = SubResource("BoxMesh_gwe28")
  511. surface_material_override/0 = SubResource("StandardMaterial3D_x42ya")
  512. [node name="MeshInstance3D2" type="MeshInstance3D" parent="Testers/StaticObject"]
  513. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.5, 0.5, 0)
  514. mesh = SubResource("BoxMesh_gwe28")
  515. surface_material_override/0 = SubResource("StandardMaterial3D_6yfdy")
  516. [node name="ThinLines" parent="Testers" instance=ExtResource("3_5ehjl")]
  517. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -4)
  518. [node name="Plane" type="MeshInstance3D" parent="Testers/ThinLines"]
  519. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  520. mesh = SubResource("PlaneMesh_nllvr")
  521. skeleton = NodePath("../../TransparencyAlphaBlend")
  522. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  523. [node name="TransparencyAlphaBlend" type="Node3D" parent="Testers"]
  524. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -8)
  525. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyAlphaBlend"]
  526. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  527. mesh = SubResource("BoxMesh_gwe28")
  528. surface_material_override/0 = SubResource("StandardMaterial3D_qcf1j")
  529. [node name="Plane" type="MeshInstance3D" parent="Testers/TransparencyAlphaBlend"]
  530. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  531. mesh = SubResource("PlaneMesh_nllvr")
  532. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  533. [node name="TransparencyAlphaScissor" type="Node3D" parent="Testers"]
  534. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -12)
  535. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissor"]
  536. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  537. mesh = SubResource("BoxMesh_gwe28")
  538. surface_material_override/0 = SubResource("StandardMaterial3D_xbqpl")
  539. [node name="Plane2" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissor"]
  540. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  541. mesh = SubResource("PlaneMesh_nllvr")
  542. skeleton = NodePath("../../TransparencyAlphaBlend")
  543. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  544. [node name="TransparencyAlphaScissorAntialiasingBlend" type="Node3D" parent="Testers"]
  545. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -16)
  546. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissorAntialiasingBlend"]
  547. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  548. mesh = SubResource("BoxMesh_gwe28")
  549. surface_material_override/0 = SubResource("StandardMaterial3D_txrd8")
  550. [node name="Plane3" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissorAntialiasingBlend"]
  551. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  552. mesh = SubResource("PlaneMesh_nllvr")
  553. skeleton = NodePath("../../TransparencyAlphaBlend")
  554. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  555. [node name="TransparencyAlphaScissorAntialiasingClip" type="Node3D" parent="Testers"]
  556. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -20)
  557. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissorAntialiasingClip"]
  558. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  559. mesh = SubResource("BoxMesh_gwe28")
  560. surface_material_override/0 = SubResource("StandardMaterial3D_xhqpm")
  561. [node name="Plane4" type="MeshInstance3D" parent="Testers/TransparencyAlphaScissorAntialiasingClip"]
  562. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  563. mesh = SubResource("PlaneMesh_nllvr")
  564. skeleton = NodePath("../../TransparencyAlphaBlend")
  565. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  566. [node name="TransparencyAlphaHash" type="Node3D" parent="Testers"]
  567. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -24)
  568. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyAlphaHash"]
  569. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  570. mesh = SubResource("BoxMesh_gwe28")
  571. surface_material_override/0 = SubResource("StandardMaterial3D_mjkwh")
  572. [node name="Plane5" type="MeshInstance3D" parent="Testers/TransparencyAlphaHash"]
  573. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  574. mesh = SubResource("PlaneMesh_nllvr")
  575. skeleton = NodePath("../../TransparencyAlphaBlend")
  576. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  577. [node name="TransparencyDepthPrepass" type="Node3D" parent="Testers"]
  578. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -28)
  579. [node name="MeshInstance3D3" type="MeshInstance3D" parent="Testers/TransparencyDepthPrepass"]
  580. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.501, 0)
  581. mesh = SubResource("BoxMesh_gwe28")
  582. surface_material_override/0 = SubResource("StandardMaterial3D_f4l4p")
  583. [node name="Plane6" type="MeshInstance3D" parent="Testers/TransparencyDepthPrepass"]
  584. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.002, 0)
  585. mesh = SubResource("PlaneMesh_nllvr")
  586. skeleton = NodePath("../../TransparencyAlphaBlend")
  587. surface_material_override/0 = SubResource("StandardMaterial3D_bjmm1")
  588. [node name="ComplexObject" parent="Testers" instance=ExtResource("3_fa2bl")]
  589. transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 0.35, -32)
  590. [node name="PointRendering" type="Node3D" parent="Testers"]
  591. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -36)
  592. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/PointRendering"]
  593. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  594. mesh = SubResource("SphereMesh_kfkna")
  595. surface_material_override/0 = SubResource("StandardMaterial3D_rfedc")
  596. [node name="MovingObject" type="Node3D" parent="Testers"]
  597. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -40)
  598. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/MovingObject"]
  599. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  600. mesh = SubResource("BoxMesh_gwe28")
  601. surface_material_override/0 = SubResource("StandardMaterial3D_x42ya")
  602. [node name="RotatingObject" type="Node3D" parent="Testers"]
  603. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -44)
  604. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/RotatingObject"]
  605. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  606. mesh = SubResource("BoxMesh_gwe28")
  607. surface_material_override/0 = SubResource("StandardMaterial3D_x42ya")
  608. [node name="ScalingObject" type="Node3D" parent="Testers"]
  609. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -48)
  610. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/ScalingObject"]
  611. transform = Transform3D(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 0)
  612. mesh = SubResource("BoxMesh_gwe28")
  613. surface_material_override/0 = SubResource("StandardMaterial3D_x42ya")
  614. [node name="StaticCPUParticles" type="Node3D" parent="Testers"]
  615. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -52)
  616. [node name="CPUParticles3D" type="CPUParticles3D" parent="Testers/StaticCPUParticles"]
  617. amount = 100
  618. draw_order = 1
  619. mesh = SubResource("QuadMesh_imrxg")
  620. direction = Vector3(0, 1, 0)
  621. spread = 10.0
  622. initial_velocity_min = 5.0
  623. initial_velocity_max = 5.0
  624. scale_amount_min = 0.25
  625. scale_amount_max = 0.25
  626. scale_amount_curve = SubResource("Curve_v0n7y")
  627. color_ramp = SubResource("Gradient_e7gyf")
  628. [node name="CPUParticles3D2" type="CPUParticles3D" parent="Testers/StaticCPUParticles/CPUParticles3D"]
  629. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0.2, 0)
  630. amount = 20
  631. mesh = SubResource("BoxMesh_88317")
  632. spread = 180.0
  633. gravity = Vector3(0, 0, 0)
  634. initial_velocity_min = 2.5
  635. initial_velocity_max = 2.5
  636. radial_accel_min = -5.0
  637. radial_accel_max = -5.0
  638. scale_amount_min = 0.25
  639. scale_amount_max = 2.5
  640. scale_amount_curve = SubResource("Curve_sutnd")
  641. [node name="MovingCPUParticles" type="Node3D" parent="Testers"]
  642. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -56)
  643. [node name="CPUParticles3D" type="CPUParticles3D" parent="Testers/MovingCPUParticles"]
  644. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  645. amount = 100
  646. lifetime = 0.5
  647. draw_order = 1
  648. mesh = SubResource("QuadMesh_imrxg")
  649. direction = Vector3(0, 1, 0)
  650. spread = 10.0
  651. initial_velocity_min = 2.0
  652. initial_velocity_max = 2.0
  653. tangential_accel_min = 6.0
  654. tangential_accel_max = 40.0
  655. scale_amount_min = 0.25
  656. scale_amount_max = 0.25
  657. scale_amount_curve = SubResource("Curve_v0n7y")
  658. color = Color(6, 2, 6, 1)
  659. color_ramp = SubResource("Gradient_e7gyf")
  660. [node name="CPUParticles3D" type="CPUParticles3D" parent="Testers/MovingCPUParticles/CPUParticles3D"]
  661. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 0)
  662. amount = 20
  663. mesh = SubResource("BoxMesh_88317")
  664. spread = 180.0
  665. gravity = Vector3(0, 0, 0)
  666. initial_velocity_min = 2.5
  667. initial_velocity_max = 2.5
  668. scale_amount_curve = SubResource("Curve_sutnd")
  669. [node name="StaticGPUParticles" type="Node3D" parent="Testers"]
  670. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -60)
  671. [node name="GPUParticles3D" type="GPUParticles3D" parent="Testers/StaticGPUParticles"]
  672. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.2, 0)
  673. amount = 50
  674. lifetime = 2.0
  675. fixed_fps = 0
  676. collision_base_size = 0.05
  677. visibility_aabb = AABB(-1.63511, -1.25001, -1.31512, 3.0892, 2.15487, 2.91765)
  678. process_material = SubResource("ParticlesMaterial_ft0gs")
  679. draw_pass_1 = SubResource("BoxMesh_88317")
  680. [node name="GPUParticlesCollisionBox3D" type="GPUParticlesCollisionBox3D" parent="Testers/StaticGPUParticles"]
  681. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
  682. size = Vector3(4, 2, 4)
  683. [node name="MovingGPUParticles" type="Node3D" parent="Testers"]
  684. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -64)
  685. [node name="GPUParticles3D" type="GPUParticles3D" parent="Testers/MovingGPUParticles"]
  686. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.2, 0)
  687. extra_cull_margin = 3.0
  688. amount = 50
  689. lifetime = 2.0
  690. fixed_fps = 0
  691. collision_base_size = 0.05
  692. visibility_aabb = AABB(-1.50087, -1.25001, -1.4745, 3.19423, 2.13905, 3.02308)
  693. process_material = SubResource("ParticlesMaterial_ft0gs")
  694. draw_pass_1 = SubResource("BoxMesh_88317")
  695. [node name="GPUParticlesCollisionBox3D2" type="GPUParticlesCollisionBox3D" parent="Testers/MovingGPUParticles"]
  696. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
  697. size = Vector3(4, 2, 4)
  698. [node name="MovingDecal" type="Node3D" parent="Testers"]
  699. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -68)
  700. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/MovingDecal"]
  701. mesh = SubResource("SphereMesh_v4x6x")
  702. [node name="Decal" type="Decal" parent="Testers/MovingDecal"]
  703. transform = Transform3D(-0.707104, -1.01328e-06, -0.707109, 0.183013, 0.965926, -0.183013, 0.683015, -0.258819, -0.68301, 1, 1, 1)
  704. texture_albedo = ExtResource("3_2nulf")
  705. texture_normal = ExtResource("4_fdfpv")
  706. [node name="ScrollingUVAnimation" type="Node3D" parent="Testers"]
  707. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -72)
  708. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/ScrollingUVAnimation"]
  709. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  710. mesh = SubResource("CylinderMesh_5qy8k")
  711. surface_material_override/0 = SubResource("StandardMaterial3D_53dqy")
  712. [node name="ScrollingUVCustomShader" type="Node3D" parent="Testers"]
  713. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -76)
  714. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/ScrollingUVCustomShader"]
  715. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  716. mesh = SubResource("CylinderMesh_5qy8k")
  717. surface_material_override/0 = SubResource("ShaderMaterial_ltvd2")
  718. [node name="CustomShaderVertexMovement" type="Node3D" parent="Testers"]
  719. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -80)
  720. [node name="MeshInstance3D" type="MeshInstance3D" parent="Testers/CustomShaderVertexMovement"]
  721. transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
  722. extra_cull_margin = 1.0
  723. mesh = SubResource("CylinderMesh_oopii")
  724. surface_material_override/0 = SubResource("ShaderMaterial_fbaw5")
  725. [node name="TestName" type="Label" parent="."]
  726. anchors_preset = 7
  727. anchor_left = 0.5
  728. anchor_top = 1.0
  729. anchor_right = 0.5
  730. anchor_bottom = 1.0
  731. offset_left = -192.0
  732. offset_top = -58.0
  733. offset_right = 192.0
  734. offset_bottom = -24.0
  735. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  736. theme_override_constants/outline_size = 5
  737. theme_override_font_sizes/font_size = 24
  738. horizontal_alignment = 1
  739. [node name="Previous" type="Button" parent="."]
  740. anchors_preset = 2
  741. anchor_top = 1.0
  742. anchor_bottom = 1.0
  743. offset_left = 24.0
  744. offset_top = -55.0
  745. offset_right = 135.0
  746. offset_bottom = -24.0
  747. text = "« Previous"
  748. [node name="Next" type="Button" parent="."]
  749. anchors_preset = 3
  750. anchor_left = 1.0
  751. anchor_top = 1.0
  752. anchor_right = 1.0
  753. anchor_bottom = 1.0
  754. offset_left = -107.0
  755. offset_top = -55.0
  756. offset_right = -24.0
  757. offset_bottom = -24.0
  758. text = "Next »"
  759. [node name="Antialiasing" type="VBoxContainer" parent="."]
  760. offset_left = 24.0
  761. offset_top = 24.0
  762. offset_right = 394.0
  763. offset_bottom = 340.0
  764. theme_override_constants/separation = 10
  765. [node name="MSAAContainer" type="HBoxContainer" parent="Antialiasing"]
  766. layout_mode = 2
  767. [node name="Label" type="Label" parent="Antialiasing/MSAAContainer"]
  768. custom_minimum_size = Vector2(120, 2.08165e-12)
  769. layout_mode = 2
  770. size_flags_horizontal = 3
  771. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  772. theme_override_constants/outline_size = 4
  773. text = "MSAA
  774. "
  775. vertical_alignment = 1
  776. [node name="MSAA" type="OptionButton" parent="Antialiasing/MSAAContainer"]
  777. custom_minimum_size = Vector2(235, 2.08165e-12)
  778. layout_mode = 2
  779. item_count = 4
  780. selected = 0
  781. popup/item_0/text = "Disabled (Fastest)"
  782. popup/item_0/id = 0
  783. popup/item_1/text = "2× (Average)"
  784. popup/item_1/id = 1
  785. popup/item_2/text = "4× (Slow)"
  786. popup/item_2/id = 2
  787. popup/item_3/text = "8× (Slower)"
  788. popup/item_3/id = 3
  789. [node name="FXAAContainer" type="HBoxContainer" parent="Antialiasing"]
  790. layout_mode = 2
  791. [node name="Label" type="Label" parent="Antialiasing/FXAAContainer"]
  792. custom_minimum_size = Vector2(120, 2.08165e-12)
  793. layout_mode = 2
  794. size_flags_horizontal = 3
  795. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  796. theme_override_constants/outline_size = 4
  797. text = "FXAA
  798. "
  799. vertical_alignment = 1
  800. [node name="FXAA" type="OptionButton" parent="Antialiasing/FXAAContainer"]
  801. custom_minimum_size = Vector2(235, 2.08165e-12)
  802. layout_mode = 2
  803. item_count = 2
  804. selected = 0
  805. popup/item_0/text = "Disabled (Fastest)"
  806. popup/item_0/id = 0
  807. popup/item_1/text = "Enabled (Fast)"
  808. popup/item_1/id = 1
  809. [node name="TAAContainer" type="HBoxContainer" parent="Antialiasing"]
  810. layout_mode = 2
  811. [node name="Label" type="Label" parent="Antialiasing/TAAContainer"]
  812. custom_minimum_size = Vector2(120, 2.08165e-12)
  813. layout_mode = 2
  814. size_flags_horizontal = 3
  815. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  816. theme_override_constants/outline_size = 4
  817. text = "TAA
  818. "
  819. vertical_alignment = 1
  820. [node name="TAA" type="OptionButton" parent="Antialiasing/TAAContainer"]
  821. custom_minimum_size = Vector2(235, 2.08165e-12)
  822. layout_mode = 2
  823. item_count = 2
  824. selected = 0
  825. popup/item_0/text = "Disabled (Fastest)"
  826. popup/item_0/id = 0
  827. popup/item_1/text = "Enabled (Average)"
  828. popup/item_1/id = 1
  829. [node name="VSyncContainer" type="HBoxContainer" parent="Antialiasing"]
  830. layout_mode = 2
  831. [node name="Label" type="Label" parent="Antialiasing/VSyncContainer"]
  832. custom_minimum_size = Vector2(120, 2.08165e-12)
  833. layout_mode = 2
  834. size_flags_horizontal = 3
  835. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  836. theme_override_constants/outline_size = 4
  837. text = "V-Sync"
  838. vertical_alignment = 1
  839. [node name="VSync" type="OptionButton" parent="Antialiasing/VSyncContainer"]
  840. custom_minimum_size = Vector2(235, 2.08165e-12)
  841. layout_mode = 2
  842. item_count = 3
  843. selected = 0
  844. popup/item_0/text = "Disabled"
  845. popup/item_0/id = 0
  846. popup/item_1/text = "Adaptive"
  847. popup/item_1/id = 1
  848. popup/item_2/text = "Enabled"
  849. popup/item_2/id = 2
  850. [node name="LimitFPSContainer" type="HBoxContainer" parent="Antialiasing"]
  851. layout_mode = 2
  852. theme_override_constants/separation = 15
  853. [node name="Label" type="Label" parent="Antialiasing/LimitFPSContainer"]
  854. custom_minimum_size = Vector2(120, 2.08165e-12)
  855. layout_mode = 2
  856. size_flags_horizontal = 3
  857. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  858. theme_override_constants/outline_size = 4
  859. text = "Limit FPS"
  860. vertical_alignment = 1
  861. [node name="LimitFPSScale" type="HSlider" parent="Antialiasing/LimitFPSContainer"]
  862. layout_mode = 2
  863. size_flags_horizontal = 3
  864. size_flags_vertical = 4
  865. size_flags_stretch_ratio = 3.0
  866. max_value = 300.0
  867. step = 10.0
  868. [node name="Value" type="Label" parent="Antialiasing/LimitFPSContainer"]
  869. layout_mode = 2
  870. size_flags_horizontal = 3
  871. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  872. theme_override_constants/outline_size = 4
  873. text = "0"
  874. horizontal_alignment = 1
  875. vertical_alignment = 1
  876. [node name="RenderScaleContainer" type="HBoxContainer" parent="Antialiasing"]
  877. layout_mode = 2
  878. theme_override_constants/separation = 15
  879. [node name="Label" type="Label" parent="Antialiasing/RenderScaleContainer"]
  880. custom_minimum_size = Vector2(120, 2.08165e-12)
  881. layout_mode = 2
  882. size_flags_horizontal = 3
  883. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  884. theme_override_constants/outline_size = 4
  885. text = "Render Scale"
  886. vertical_alignment = 1
  887. [node name="RenderScale" type="HSlider" parent="Antialiasing/RenderScaleContainer"]
  888. layout_mode = 2
  889. size_flags_horizontal = 3
  890. size_flags_vertical = 4
  891. size_flags_stretch_ratio = 3.0
  892. min_value = 0.25
  893. max_value = 2.0
  894. step = 0.01
  895. value = 1.0
  896. [node name="Value" type="Label" parent="Antialiasing/RenderScaleContainer"]
  897. layout_mode = 2
  898. size_flags_horizontal = 3
  899. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  900. theme_override_constants/outline_size = 4
  901. text = "100%"
  902. horizontal_alignment = 1
  903. vertical_alignment = 1
  904. [node name="FidelityFXFSR" type="CheckButton" parent="Antialiasing"]
  905. visible = false
  906. layout_mode = 2
  907. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  908. theme_override_constants/outline_size = 4
  909. text = "AMD FidelityFX Super Resolution 1.0"
  910. [node name="FSRSharpness" type="OptionButton" parent="Antialiasing"]
  911. visible = false
  912. layout_mode = 2
  913. item_count = 5
  914. selected = 3
  915. popup/item_0/text = "No FSR Sharpness"
  916. popup/item_0/id = 0
  917. popup/item_1/text = "Low FSR Sharpness"
  918. popup/item_1/id = 1
  919. popup/item_2/text = "Medium FSR Sharpness"
  920. popup/item_2/id = 2
  921. popup/item_3/text = "High FSR Sharpness"
  922. popup/item_3/id = 3
  923. popup/item_4/text = "Highest FSR Sharpness"
  924. popup/item_4/id = 4
  925. [node name="ViewportResolution" type="Label" parent="."]
  926. anchors_preset = 1
  927. anchor_left = 1.0
  928. anchor_right = 1.0
  929. offset_left = -344.0
  930. offset_top = 16.0
  931. offset_right = -16.0
  932. offset_bottom = 42.0
  933. grow_horizontal = 0
  934. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  935. theme_override_constants/outline_size = 4
  936. text = "Viewport resolution: 1152×648"
  937. horizontal_alignment = 2
  938. [node name="FPSLabel" type="Label" parent="."]
  939. anchors_preset = 1
  940. anchor_left = 1.0
  941. anchor_right = 1.0
  942. offset_left = -344.0
  943. offset_top = 48.0
  944. offset_right = -16.0
  945. offset_bottom = 74.0
  946. grow_horizontal = 0
  947. theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
  948. theme_override_constants/outline_size = 4
  949. text = "FPS: 0"
  950. horizontal_alignment = 2
  951. metadata/gradient = SubResource("Gradient_ehij4")
  952. [connection signal="pressed" from="Previous" to="." method="_on_previous_pressed"]
  953. [connection signal="pressed" from="Next" to="." method="_on_next_pressed"]
  954. [connection signal="item_selected" from="Antialiasing/MSAAContainer/MSAA" to="." method="_on_msaa_item_selected"]
  955. [connection signal="item_selected" from="Antialiasing/FXAAContainer/FXAA" to="." method="_on_fxaa_item_selected"]
  956. [connection signal="item_selected" from="Antialiasing/TAAContainer/TAA" to="." method="_on_taa_item_selected"]
  957. [connection signal="item_selected" from="Antialiasing/VSyncContainer/VSync" to="." method="_on_v_sync_item_selected"]
  958. [connection signal="value_changed" from="Antialiasing/LimitFPSContainer/LimitFPSScale" to="." method="_on_limit_fps_scale_value_changed"]
  959. [connection signal="value_changed" from="Antialiasing/RenderScaleContainer/RenderScale" to="." method="_on_render_scale_value_changed"]
  960. [connection signal="toggled" from="Antialiasing/FidelityFXFSR" to="." method="_on_amd_fidelityfx_fsr1_toggled"]
  961. [connection signal="item_selected" from="Antialiasing/FSRSharpness" to="." method="_on_fsr_sharpness_item_selected"]