Skip to content

Commit 73fdd74

Browse files
committed
OPTM-01: Carry optimizations and improvements into main scene.
1 parent 44f0411 commit 73fdd74

File tree

3 files changed

+36
-71
lines changed

3 files changed

+36
-71
lines changed

Scenes/Main.gd

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ func _apply_rotated_color():
4141
func _ready():
4242
var velocity_texture = $ViscosityViewport.get_texture()
4343
$VelocityViewport/Sprite.texture = velocity_texture
44-
$VelocityViewport/Sprite.material.set_shader_param("velocity", $GradientSubtractionViewport.get_texture())
44+
$VelocityViewport/Sprite.material.set_shader_param("velocity", $BorderAndGradientSubtractionViewport.get_texture())
4545
var dye_texture = $BackBufferViewport.get_texture()
4646
$DyeViewport/Sprite.texture = dye_texture
4747
$DyeViewport/Sprite.material.set_shader_param("brushColor", $UIControl/ColorPickerButton.color)
@@ -145,13 +145,13 @@ func _on_FinalViewButton_item_selected(index):
145145
Options.VELOCITY:
146146
$TextureRect.texture = $VelocityViewport.get_texture()
147147
Options.VISCOSITY:
148-
$TextureRect.texture = $VelocityBorderViewport.get_texture()
148+
$TextureRect.texture = $ViscosityViewport.get_texture()
149149
Options.DIVERGENCE:
150150
$TextureRect.texture = $DivergenceViewport.get_texture()
151151
Options.PRESSURE:
152-
$TextureRect.texture = $PressureBorderViewport.get_texture()
152+
$TextureRect.texture = $PressureViewport.get_texture()
153153
Options.PRESSURE_FORCE:
154-
$TextureRect.texture = $GradientSubtractionViewport.get_texture()
154+
$TextureRect.texture = $BorderAndGradientSubtractionViewport.get_texture()
155155
if index == Options.DYE:
156156
$UIControl/RefreshClearButton.show()
157157
else:

Scenes/Main.tscn

Lines changed: 30 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
1-
[gd_scene load_steps=33 format=2]
1+
[gd_scene load_steps=28 format=2]
22

33
[ext_resource path="res://Scenes/Main.gd" type="Script" id=1]
44
[ext_resource path="res://Scenes/UITheme.tres" type="Theme" id=2]
5-
[ext_resource path="res://Shaders/GradientSubtractionShader.tres" type="Shader" id=3]
65
[ext_resource path="res://Shaders/PressureShader.tres" type="Shader" id=4]
7-
[ext_resource path="res://Assets/Images/baseTexture.png" type="Texture" id=5]
6+
[ext_resource path="res://Shaders/BorderAndGradientSubtractionShader.tres" type="Shader" id=5]
87
[ext_resource path="res://Scenes/PressureViewport.gd" type="Script" id=6]
98
[ext_resource path="res://Shaders/DivergenceShaderMaterial.tres" type="Material" id=7]
109
[ext_resource path="res://Shaders/ViscosityShaderMaterial.tres" type="Material" id=8]
1110
[ext_resource path="res://Assets/Brushes/SoftBrush.png" type="Texture" id=9]
1211
[ext_resource path="res://Scenes/NestedViewportControl.tscn" type="PackedScene" id=10]
1312
[ext_resource path="res://Shaders/ShowNegativeColorShaderMaterial.tres" type="Material" id=11]
14-
[ext_resource path="res://Shaders/BorderConditionShader.tres" type="Shader" id=12]
15-
[ext_resource path="res://Shaders/VelocityForcesShaderMaterial.tres" type="Material" id=13]
1613
[ext_resource path="res://Scenes/MouseControl.tscn" type="PackedScene" id=14]
1714
[ext_resource path="res://Shaders/AdvectPaintShader.tres" type="Shader" id=15]
15+
[ext_resource path="res://Shaders/VelocityForcesAndBorderShader.tres" type="Shader" id=16]
1816

1917
[sub_resource type="ShaderMaterial" id=55]
2018
shader = ExtResource( 15 )
@@ -28,20 +26,18 @@ shader_param/brushTexture = ExtResource( 9 )
2826
[sub_resource type="ViewportTexture" id=18]
2927
viewport_path = NodePath("VelocityViewport")
3028

31-
[sub_resource type="ViewportTexture" id=67]
32-
viewport_path = NodePath("ViscosityViewport")
33-
34-
[sub_resource type="ShaderMaterial" id=59]
35-
shader = ExtResource( 12 )
29+
[sub_resource type="ShaderMaterial" id=81]
30+
shader = ExtResource( 16 )
31+
shader_param/vorticityScale = 4.0
3632
shader_param/borderScaleFactor = -1.0
37-
shader_param/borderWidth = 2.0
33+
shader_param/borderWidth = 1.0
3834
shader_param/borderActive = true
3935

40-
[sub_resource type="ViewportTexture" id=68]
41-
viewport_path = NodePath("VelocityForcesViewport")
36+
[sub_resource type="ViewportTexture" id=82]
37+
viewport_path = NodePath("ViscosityViewport")
4238

43-
[sub_resource type="ViewportTexture" id=63]
44-
viewport_path = NodePath("VelocityBorderViewport")
39+
[sub_resource type="ViewportTexture" id=86]
40+
viewport_path = NodePath("VelocityForcesAndBorderViewport")
4541

4642
[sub_resource type="ViewportTexture" id=49]
4743
viewport_path = NodePath("DivergenceViewport")
@@ -51,28 +47,22 @@ resource_local_to_scene = true
5147
shader = ExtResource( 4 )
5248
shader_param/divergence = SubResource( 49 )
5349

54-
[sub_resource type="ShaderMaterial" id=61]
55-
shader = ExtResource( 12 )
56-
shader_param/borderScaleFactor = 1.0
57-
shader_param/borderWidth = 2.0
58-
shader_param/borderActive = true
59-
60-
[sub_resource type="ViewportTexture" id=73]
61-
viewport_path = NodePath("PressureViewport")
62-
6350
[sub_resource type="ViewportTexture" id=75]
64-
viewport_path = NodePath("VelocityBorderViewport")
51+
viewport_path = NodePath("VelocityForcesAndBorderViewport")
6552

66-
[sub_resource type="ShaderMaterial" id=30]
53+
[sub_resource type="ShaderMaterial" id=84]
6754
resource_local_to_scene = true
68-
shader = ExtResource( 3 )
55+
shader = ExtResource( 5 )
56+
shader_param/borderScaleFactor = 1.0
57+
shader_param/borderWidth = 1.0
58+
shader_param/borderActive = true
6959
shader_param/velocity = SubResource( 75 )
7060

71-
[sub_resource type="ViewportTexture" id=74]
72-
viewport_path = NodePath("PressureBorderViewport")
61+
[sub_resource type="ViewportTexture" id=85]
62+
viewport_path = NodePath("PressureViewport")
7363

7464
[sub_resource type="ViewportTexture" id=76]
75-
viewport_path = NodePath("GradientSubtractionViewport")
65+
viewport_path = NodePath("BorderAndGradientSubtractionViewport")
7666

7767
[sub_resource type="ShaderMaterial" id=77]
7868
resource_local_to_scene = true
@@ -110,28 +100,18 @@ centered = false
110100
[node name="ViscosityViewport" parent="." instance=ExtResource( 10 )]
111101
size = Vector2( 1280, 720 )
112102
render_target_v_flip = true
113-
levels = 4
103+
levels = 8
114104
shader_material = ExtResource( 8 )
115105
texture = SubResource( 18 )
116106

117-
[node name="VelocityForcesViewport" type="Viewport" parent="."]
107+
[node name="VelocityForcesAndBorderViewport" type="Viewport" parent="."]
118108
size = Vector2( 1280, 720 )
119109
render_target_v_flip = true
120110
render_target_update_mode = 3
121111

122-
[node name="Sprite" type="Sprite" parent="VelocityForcesViewport"]
123-
material = ExtResource( 13 )
124-
texture = SubResource( 67 )
125-
centered = false
126-
127-
[node name="VelocityBorderViewport" type="Viewport" parent="."]
128-
size = Vector2( 1280, 720 )
129-
render_target_v_flip = true
130-
render_target_update_mode = 3
131-
132-
[node name="Sprite" type="Sprite" parent="VelocityBorderViewport"]
133-
material = SubResource( 59 )
134-
texture = SubResource( 68 )
112+
[node name="Sprite" type="Sprite" parent="VelocityForcesAndBorderViewport"]
113+
material = SubResource( 81 )
114+
texture = SubResource( 82 )
135115
centered = false
136116

137117
[node name="DivergenceViewport" type="Viewport" parent="."]
@@ -141,7 +121,7 @@ render_target_update_mode = 3
141121

142122
[node name="Sprite" type="Sprite" parent="DivergenceViewport"]
143123
material = ExtResource( 7 )
144-
texture = SubResource( 63 )
124+
texture = SubResource( 86 )
145125
centered = false
146126

147127
[node name="PressureViewport" parent="." instance=ExtResource( 10 )]
@@ -151,24 +131,14 @@ script = ExtResource( 6 )
151131
levels = 16
152132
shader_material = SubResource( 27 )
153133

154-
[node name="PressureBorderViewport" type="Viewport" parent="."]
155-
size = Vector2( 1280, 720 )
156-
render_target_v_flip = true
157-
render_target_update_mode = 3
158-
159-
[node name="Sprite" type="Sprite" parent="PressureBorderViewport"]
160-
material = SubResource( 61 )
161-
texture = SubResource( 73 )
162-
centered = false
163-
164-
[node name="GradientSubtractionViewport" type="Viewport" parent="."]
134+
[node name="BorderAndGradientSubtractionViewport" type="Viewport" parent="."]
165135
size = Vector2( 1280, 720 )
166136
render_target_v_flip = true
167137
render_target_update_mode = 3
168138

169-
[node name="Sprite" type="Sprite" parent="GradientSubtractionViewport"]
170-
material = SubResource( 30 )
171-
texture = SubResource( 74 )
139+
[node name="Sprite" type="Sprite" parent="BorderAndGradientSubtractionViewport"]
140+
material = SubResource( 84 )
141+
texture = SubResource( 85 )
172142
centered = false
173143

174144
[node name="DyeViewport" type="Viewport" parent="."]
@@ -180,11 +150,6 @@ render_target_update_mode = 3
180150
material = SubResource( 77 )
181151
centered = false
182152

183-
[node name="Sprite2" type="Sprite" parent="DyeViewport"]
184-
visible = false
185-
texture = ExtResource( 5 )
186-
centered = false
187-
188153
[node name="BackBufferViewport" type="Viewport" parent="."]
189154
size = Vector2( 1280, 720 )
190155
handle_input_locally = false

Scenes/MultiPass.tscn

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ resource_local_to_scene = true
4848
shader = ExtResource( 4 )
4949
shader_param/divergence = SubResource( 49 )
5050

51-
[sub_resource type="ViewportTexture" id=75]
51+
[sub_resource type="ViewportTexture" id=79]
5252
viewport_path = NodePath("VelocityForcesAndBorderViewport")
5353

5454
[sub_resource type="ShaderMaterial" id=30]
@@ -57,7 +57,7 @@ shader = ExtResource( 3 )
5757
shader_param/borderScaleFactor = 1.0
5858
shader_param/borderWidth = 1.0
5959
shader_param/borderActive = true
60-
shader_param/velocity = SubResource( 75 )
60+
shader_param/velocity = SubResource( 79 )
6161

6262
[sub_resource type="ViewportTexture" id=74]
6363
viewport_path = NodePath("PressureViewport")

0 commit comments

Comments
 (0)