[gd_scene load_steps=40 format=3 uid="uid://pvjist0vg8ah"]

[ext_resource type="Shader" uid="uid://dvegch8bn85w4" path="res://exo1/shaders/pastouche/ground.gdshader" id="1_nj86p"]
[ext_resource type="Texture2D" uid="uid://d2ln6in2cciqc" path="res://exo1/assets/GroundTile.png" id="2_1460h"]
[ext_resource type="Script" uid="uid://dtwr10xf504og" path="res://exo1/cam_follow.gd" id="3_dd5tk"]
[ext_resource type="PackedScene" uid="uid://hb5qh45e6x1s" path="res://pas_touche/inter_exo/lana.tscn" id="4_j5uwi"]
[ext_resource type="Texture2D" uid="uid://b0isklem0n1d1" path="res://exo1/assets/painting_frame.png" id="6_mi18a"]
[ext_resource type="Shader" uid="uid://bqkbm7kxjbvbl" path="res://exo1/shaders/exo1_tableaux/1uv_painting_example.gdshader" id="7_q8ng3"]
[ext_resource type="Shader" uid="uid://u4ti6qojfd6n" path="res://exo1/shaders/exo1_tableaux/2diagonale.gdshader" id="8_mk50y"]
[ext_resource type="Texture2D" uid="uid://bbqjjcli4roq5" path="res://exo1/screenshot_goal/Soluce_Diagonale.png" id="9_0dfpm"]
[ext_resource type="Shader" uid="uid://tueskvsn60l0" path="res://exo1/shaders/exo1_tableaux/3circle.gdshader" id="10_56yv0"]
[ext_resource type="Texture2D" uid="uid://d8mtqjjcrh7m" path="res://exo1/screenshot_goal/circle.png" id="11_5c586"]
[ext_resource type="Shader" uid="uid://uusggwbep2j4" path="res://exo1/shaders/exo1_tableaux/4uv_time.gdshader" id="12_1swba"]
[ext_resource type="Shader" uid="uid://clc4aqodbhhv5" path="res://exo1/shaders/exo1_tableaux/5circle_time.gdshader" id="13_ven0y"]
[ext_resource type="Shader" uid="uid://03ee6p7b6pnn" path="res://exo1/shaders/exo1_zexemples_jolies/plasma.gdshader" id="14_hyh6e"]
[ext_resource type="Shader" uid="uid://d0n6gjxkt6okq" path="res://exo1/shaders/exo1_zexemples_jolies/mandelbrot.gdshader" id="15_5klk2"]
[ext_resource type="Shader" uid="uid://sl1g7w1jmk6x" path="res://exo1/shaders/exo1_zexemples_jolies/zolie_user.gdshader" id="16_mpwm1"]
[ext_resource type="Shader" uid="uid://bjw6mgbjij8fc" path="res://exo1/shaders/exo1_zexemples_jolies/zolie_user2.gdshader" id="17_kjdq4"]

[sub_resource type="Gradient" id="Gradient_fqaua"]
interpolation_mode = 2
colors = PackedColorArray(0.650128, 0.650128, 0.650128, 1, 1, 1, 1, 1)

[sub_resource type="GradientTexture2D" id="GradientTexture2D_c3ei3"]
gradient = SubResource("Gradient_fqaua")
height = 1024
fill_from = Vector2(1, 1)
repeat = 1

[sub_resource type="ShaderMaterial" id="ShaderMaterial_disjo"]
shader = ExtResource("1_nj86p")
shader_parameter/skew_amount = 0.25

[sub_resource type="Gradient" id="Gradient_c3ei3"]
interpolation_mode = 2
colors = PackedColorArray(0.650128, 0.650128, 0.650128, 1, 1, 1, 1, 1)

[sub_resource type="GradientTexture2D" id="GradientTexture2D_u32k3"]
gradient = SubResource("Gradient_c3ei3")
height = 1024
fill_from = Vector2(1, 1)
repeat = 1

[sub_resource type="RectangleShape2D" id="RectangleShape2D_v6q5x"]
size = Vector2(4342, 20)

[sub_resource type="RectangleShape2D" id="RectangleShape2D_disjo"]
size = Vector2(128, 392.919)

[sub_resource type="LabelSettings" id="LabelSettings_ipmo5"]
font_size = 32
font_color = Color(0.10748, 0.10748, 0.10748, 1)

[sub_resource type="LabelSettings" id="LabelSettings_y65yk"]
font_color = Color(0.10748, 0.10748, 0.10748, 1)

[sub_resource type="LabelSettings" id="LabelSettings_u32k3"]
font_color = Color(0.10748, 0.10748, 0.10748, 1)

[sub_resource type="ShaderMaterial" id="ShaderMaterial_l1x0l"]
shader = ExtResource("7_q8ng3")

[sub_resource type="Gradient" id="Gradient_u32k3"]
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 1)

[sub_resource type="GradientTexture2D" id="GradientTexture2D_l1x0l"]
gradient = SubResource("Gradient_u32k3")
width = 180
height = 116

[sub_resource type="ShaderMaterial" id="ShaderMaterial_u32k3"]
shader = ExtResource("8_mk50y")

[sub_resource type="Gradient" id="Gradient_l1x0l"]
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 1)

[sub_resource type="GradientTexture2D" id="GradientTexture2D_m5f4m"]
gradient = SubResource("Gradient_l1x0l")
width = 180
height = 116

[sub_resource type="ShaderMaterial" id="ShaderMaterial_y65yk"]
shader = ExtResource("10_56yv0")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_yru7n"]
shader = ExtResource("12_1swba")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_nqvhh"]
shader = ExtResource("13_ven0y")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_2n602"]
shader = ExtResource("14_hyh6e")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_xyfjg"]
shader = ExtResource("15_5klk2")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_pj7t7"]
shader = ExtResource("16_mpwm1")

[sub_resource type="ShaderMaterial" id="ShaderMaterial_swa6w"]
shader = ExtResource("17_kjdq4")

[node name="Exo1" type="Node2D"]

[node name="PasTouche" type="Node2D" parent="."]

[node name="WallBG" type="Node2D" parent="PasTouche"]
position = Vector2(-19, -361)

[node name="Sprite2D" type="Sprite2D" parent="PasTouche/WallBG"]
texture = SubResource("GradientTexture2D_c3ei3")
region_enabled = true
region_rect = Rect2(0, 0, 10240, 1024)

[node name="Ground" type="Sprite2D" parent="PasTouche"]
texture_filter = 1
texture_repeat = 3
material = SubResource("ShaderMaterial_disjo")
position = Vector2(0, 160)
texture = ExtResource("2_1460h")
region_enabled = true
region_rect = Rect2(0, 0, 8192, 320)

[node name="LeftWall" type="Sprite2D" parent="PasTouche"]
position = Vector2(-2591, 171)
rotation = -0.234771
texture = SubResource("GradientTexture2D_u32k3")
region_enabled = true
region_rect = Rect2(0, 0, 1024, 2024)

[node name="LeftWall2" type="Sprite2D" parent="PasTouche"]
position = Vector2(2562, -15.9999)
rotation = -0.234771
texture = SubResource("GradientTexture2D_u32k3")
region_enabled = true
region_rect = Rect2(0, 0, 1024, 2024)

[node name="GlobalCollider" type="StaticBody2D" parent="PasTouche"]

[node name="Top" type="CollisionShape2D" parent="PasTouche/GlobalCollider"]
position = Vector2(0, -11)
shape = SubResource("RectangleShape2D_v6q5x")

[node name="Bottom" type="CollisionShape2D" parent="PasTouche/GlobalCollider"]
position = Vector2(0, 324)
shape = SubResource("RectangleShape2D_v6q5x")

[node name="Right" type="CollisionShape2D" parent="PasTouche/GlobalCollider"]
position = Vector2(-2140.2, 130.01)
rotation = -0.240294
shape = SubResource("RectangleShape2D_disjo")

[node name="Left" type="CollisionShape2D" parent="PasTouche/GlobalCollider"]
position = Vector2(2135, 139)
rotation = -0.217829
shape = SubResource("RectangleShape2D_disjo")

[node name="CamExo1" type="Camera2D" parent="PasTouche" node_paths=PackedStringArray("lana")]
position = Vector2(0, -192)
script = ExtResource("3_dd5tk")
lana = NodePath("../Lana")
lerp_speed = null

[node name="Lana" parent="PasTouche" instance=ExtResource("4_j5uwi")]
position = Vector2(-1670, 126)

[node name="Tableaux" type="Node2D" parent="."]
position = Vector2(-1500, -190)

[node name="Labels" type="Node2D" parent="Tableaux"]

[node name="Label" type="Label" parent="Tableaux/Labels"]
offset_left = -645.0
offset_top = -305.0
offset_right = -259.0
offset_bottom = -256.0
text = "EXERCICE 1"
label_settings = SubResource("LabelSettings_ipmo5")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/Labels/Label"]
layout_mode = 0
offset_left = 65.0
offset_top = 54.0
offset_right = 451.0
offset_bottom = 207.0
text = "On va faire des beaux tableaux 
et voir la fonction fragment des
shaders, pour faire cette exo
il suffit juste de modifier les 
shaders qui sont dans
exo1/shaders/exo1_tableaux"
label_settings = SubResource("LabelSettings_y65yk")

[node name="Label2" type="Label" parent="Tableaux/Labels"]
offset_left = 462.0
offset_top = -305.0
offset_right = 848.0
offset_bottom = -256.0
label_settings = SubResource("LabelSettings_ipmo5")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/Labels/Label2"]
layout_mode = 0
offset_left = 23.0
offset_top = 26.0
offset_right = 363.0
offset_bottom = 179.0
text = "Bon c'est cool COLOR et UV
Mais ca bouge pas trop...
Autant faire du dessin, c'est bof les shaders.
ET BIEN NON
Il existe aussi TIME
qui permet de faire
des trucs rigolos"
label_settings = SubResource("LabelSettings_y65yk")

[node name="Label3" type="Label" parent="Tableaux/Labels"]
offset_left = 1123.0
offset_top = -282.0
offset_right = 1509.0
offset_bottom = -233.0
text = "Vous avez fini l'exo 1"
label_settings = SubResource("LabelSettings_ipmo5")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/Labels/Label3"]
layout_mode = 0
offset_left = 40.0
offset_top = 54.0
offset_right = 426.0
offset_bottom = 207.0
text = "Bien joue !!
Vous etes des vrais artistes!!
J'ai mis quelques exemples de tableaux que
vous pouvez faire avec un peu plus de temps"
label_settings = SubResource("LabelSettings_y65yk")

[node name="Label4" type="Label" parent="Tableaux/Labels"]
offset_left = 2043.0
offset_top = -294.0
offset_right = 2429.0
offset_bottom = -245.0
text = "Vers l'exo 2"
label_settings = SubResource("LabelSettings_ipmo5")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/Labels/Label4"]
layout_mode = 0
offset_left = 40.0
offset_top = 54.0
offset_right = 426.0
offset_bottom = 207.0
text = "Bon c'est bien sympa de faire des 
beaux tableaux mais c'est pas l'utilisation
principale des shaders dans les jeux.
Dans l'exo 2 on va voir des exemples
de trucs plus utiles 
(cascade, effets sous l'eau etc...)"
label_settings = SubResource("LabelSettings_y65yk")

[node name="UVFrame" type="Sprite2D" parent="Tableaux"]
position = Vector2(-229, 59)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/UVFrame"]
offset_left = -192.0
offset_top = -93.0
offset_right = 194.0
offset_bottom = -44.0
text = "1) Exemple UV"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/UVFrame"]
offset_left = -192.0
offset_top = 64.0
offset_right = 194.0
offset_bottom = 113.0
text = "1uv_painting_example.gdshader"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="UVPainting" type="Sprite2D" parent="Tableaux/UVFrame"]
material = SubResource("ShaderMaterial_l1x0l")
texture = SubResource("GradientTexture2D_l1x0l")

[node name="DiagonaleFrame" type="Sprite2D" parent="Tableaux"]
position = Vector2(48, -35)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/DiagonaleFrame"]
offset_left = -248.0
offset_top = -118.0
offset_right = 264.0
offset_bottom = -17.0
text = "2) Diagonale
Essaye de decouper le tableau (comme en haut)
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/DiagonaleFrame"]
offset_left = -248.0
offset_top = 68.0
offset_right = 264.0
offset_bottom = 169.0
text = "2diagonale.gdshader
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="LinePainting" type="Sprite2D" parent="Tableaux/DiagonaleFrame"]
material = SubResource("ShaderMaterial_u32k3")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="ScreenshotGoal" type="Sprite2D" parent="Tableaux/DiagonaleFrame"]
position = Vector2(-2, -191)
texture = ExtResource("9_0dfpm")

[node name="CircleFrame" type="Sprite2D" parent="Tableaux"]
position = Vector2(348, 31)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/CircleFrame"]
offset_left = -253.0
offset_top = -118.0
offset_right = 259.0
offset_bottom = -17.0
text = "3) Cercle
Fais un cercle (comme en haut)"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/CircleFrame"]
offset_left = -253.0
offset_top = 69.0
offset_right = 259.0
offset_bottom = 170.0
text = "3circle.gdshader
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="CirclePainting" type="Sprite2D" parent="Tableaux/CircleFrame"]
material = SubResource("ShaderMaterial_y65yk")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="Circle" type="Sprite2D" parent="Tableaux/CircleFrame"]
position = Vector2(3, -193)
scale = Vector2(0.42, 0.42)
texture = ExtResource("11_5c586")

[node name="UVFrameTime" type="Sprite2D" parent="Tableaux"]
position = Vector2(691, 36)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/UVFrameTime"]
offset_left = -192.0
offset_top = -93.0
offset_right = 194.0
offset_bottom = -44.0
text = "4) Exemple UV TIME"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/UVFrameTime"]
offset_left = -192.0
offset_top = 64.0
offset_right = 194.0
offset_bottom = 113.0
text = "4uv_time"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="UVPainting" type="Sprite2D" parent="Tableaux/UVFrameTime"]
material = SubResource("ShaderMaterial_yru7n")
texture = SubResource("GradientTexture2D_l1x0l")

[node name="CircleFrameTime" type="Sprite2D" parent="Tableaux"]
position = Vector2(933, -28)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/CircleFrameTime"]
offset_left = -253.0
offset_top = -139.0
offset_right = 259.0
offset_bottom = -38.0
text = "5) Faites des cercles concentriques 
qui bougent"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/CircleFrameTime"]
offset_left = -253.0
offset_top = 69.0
offset_right = 259.0
offset_bottom = 170.0
text = "3circle.gdshader
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="CirclePainting" type="Sprite2D" parent="Tableaux/CircleFrameTime"]
material = SubResource("ShaderMaterial_nqvhh")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="PlasmaFrame" type="Sprite2D" parent="Tableaux"]
position = Vector2(1274, 63)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/PlasmaFrame"]
offset_left = -253.0
offset_top = -95.0
offset_right = 259.0
offset_bottom = 6.0
text = "plasma"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/PlasmaFrame"]
offset_left = -253.0
offset_top = 69.0
offset_right = 259.0
offset_bottom = 170.0
text = "zexemples_jolies
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="PlasmaPainting" type="Sprite2D" parent="Tableaux/PlasmaFrame"]
material = SubResource("ShaderMaterial_2n602")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="MandelbrotFrame" type="Sprite2D" parent="Tableaux"]
position = Vector2(1557, -3)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/MandelbrotFrame"]
offset_left = -253.0
offset_top = -95.0
offset_right = 259.0
offset_bottom = 6.0
text = "mandelbrot zoom"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/MandelbrotFrame"]
offset_left = -253.0
offset_top = 69.0
offset_right = 259.0
offset_bottom = 170.0
text = "zexemples_jolies
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="MandelBrot" type="Sprite2D" parent="Tableaux/MandelbrotFrame"]
material = SubResource("ShaderMaterial_xyfjg")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="ZolieUserFrame1" type="Sprite2D" parent="Tableaux"]
position = Vector2(1796, -225)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/ZolieUserFrame1"]
offset_left = -253.0
offset_top = -95.0
offset_right = 259.0
offset_bottom = 6.0
text = "Tu peux faire un truc joli ici stv"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/ZolieUserFrame1"]
offset_left = -253.0
offset_top = 69.0
offset_right = 259.0
offset_bottom = 170.0
text = "zexemples_jolies/zolie_user1
"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="ZolieUser1" type="Sprite2D" parent="Tableaux/ZolieUserFrame1"]
material = SubResource("ShaderMaterial_pj7t7")
texture = SubResource("GradientTexture2D_m5f4m")

[node name="ZolieUserFrame2" type="Sprite2D" parent="Tableaux"]
position = Vector2(1869, 5)
texture = ExtResource("6_mi18a")

[node name="Label" type="Label" parent="Tableaux/ZolieUserFrame2"]
offset_left = -253.0
offset_top = -95.0
offset_right = 259.0
offset_bottom = 6.0
text = "Autre truc zolie de ta part"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="Label2" type="Label" parent="Tableaux/ZolieUserFrame2"]
offset_left = -250.0
offset_top = 70.0
offset_right = 262.0
offset_bottom = 171.0
text = "zexemples_jolies/zolie_user2

"
label_settings = SubResource("LabelSettings_u32k3")
horizontal_alignment = 1

[node name="ZolieUser2" type="Sprite2D" parent="Tableaux/ZolieUserFrame2"]
material = SubResource("ShaderMaterial_swa6w")
texture = SubResource("GradientTexture2D_m5f4m")
