mirror of
https://github.com/Relintai/material-maker.git
synced 2025-03-15 20:26:23 +01:00
Finished GradientEditor and improved preview
Now gradient editor can remove points. Improved preview: - added panorama to 3d preview (with panoramas from the godot material demo) - texture preview can be maximized
This commit is contained in:
parent
10ea905090
commit
dffc6fc790
@ -1,12 +0,0 @@
|
|||||||
tool
|
|
||||||
extends Viewport
|
|
||||||
|
|
||||||
var material = null
|
|
||||||
|
|
||||||
func _ready():
|
|
||||||
material = ShaderMaterial.new()
|
|
||||||
material.shader = Shader.new()
|
|
||||||
material.shader.set_code("shader_type spatial;\nvoid fragment() {\n ALBEDO=vec3(0.5);\n}\n")
|
|
||||||
$Objects/Cube.set_surface_material(0, material)
|
|
||||||
$Objects/Cylinder.set_surface_material(0, material)
|
|
||||||
$AnimationPlayer.play("rotate")
|
|
@ -3,11 +3,12 @@ extends "res://addons/procedural_material/node_base.gd"
|
|||||||
|
|
||||||
var amount = 0.0
|
var amount = 0.0
|
||||||
|
|
||||||
|
const blend_types = [
|
||||||
|
{ name="Normal", shortname="normal" }
|
||||||
|
]
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
set_slot(0, true, 0, Color(0.5, 0.5, 1), true, 0, Color(0.5, 0.5, 1))
|
initialize_properties([ $HBoxContainer/amount ])
|
||||||
set_slot(1, true, 0, Color(0.5, 0.5, 1), false, 0, Color(0.5, 0.5, 1))
|
|
||||||
set_slot(2, true, 0, Color(0.5, 0.5, 1), false, 0, Color(0.5, 0.5, 1))
|
|
||||||
initialize_properties([ $amount ])
|
|
||||||
|
|
||||||
func color_to_string(c):
|
func color_to_string(c):
|
||||||
return "vec3("+str(c.r)+","+str(c.g)+","+str(c.b)+")"
|
return "vec3("+str(c.r)+","+str(c.g)+","+str(c.b)+")"
|
||||||
|
@ -12,8 +12,8 @@ anchor_top = 0.0
|
|||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = 1.0
|
margin_left = 1.0
|
||||||
margin_right = 91.0
|
margin_right = 160.0
|
||||||
margin_bottom = 83.0
|
margin_bottom = 104.0
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
mouse_filter = 1
|
mouse_filter = 1
|
||||||
@ -28,7 +28,7 @@ resizable = false
|
|||||||
selected = false
|
selected = false
|
||||||
comment = false
|
comment = false
|
||||||
overlay = 0
|
overlay = 0
|
||||||
slot/0/left_enabled = true
|
slot/0/left_enabled = false
|
||||||
slot/0/left_type = 0
|
slot/0/left_type = 0
|
||||||
slot/0/left_color = Color( 0.5, 0.5, 1, 1 )
|
slot/0/left_color = Color( 0.5, 0.5, 1, 1 )
|
||||||
slot/0/right_enabled = true
|
slot/0/right_enabled = true
|
||||||
@ -46,10 +46,16 @@ slot/2/left_color = Color( 0.5, 0.5, 1, 1 )
|
|||||||
slot/2/right_enabled = false
|
slot/2/right_enabled = false
|
||||||
slot/2/right_type = 0
|
slot/2/right_type = 0
|
||||||
slot/2/right_color = Color( 0.5, 0.5, 1, 1 )
|
slot/2/right_color = Color( 0.5, 0.5, 1, 1 )
|
||||||
|
slot/3/left_enabled = true
|
||||||
|
slot/3/left_type = 0
|
||||||
|
slot/3/left_color = Color( 0.5, 0.5, 1, 1 )
|
||||||
|
slot/3/right_enabled = false
|
||||||
|
slot/3/right_type = 0
|
||||||
|
slot/3/right_color = Color( 0.5, 0.5, 1, 1 )
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
_sections_unfolded = [ "Theme" ]
|
_sections_unfolded = [ "Theme", "slot", "slot/1" ]
|
||||||
|
|
||||||
[node name="Label1" type="Label" parent="." index="0"]
|
[node name="OptionButton" type="OptionButton" parent="." index="0"]
|
||||||
|
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
@ -57,8 +63,36 @@ anchor_right = 0.0
|
|||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = 16.0
|
margin_left = 16.0
|
||||||
margin_top = 24.0
|
margin_top = 24.0
|
||||||
margin_right = 74.0
|
margin_right = 143.0
|
||||||
margin_bottom = 38.0
|
margin_bottom = 44.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = false
|
||||||
|
action_mode = 0
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Normal"
|
||||||
|
flat = false
|
||||||
|
align = 0
|
||||||
|
items = [ "Normal", null, false, -1, null ]
|
||||||
|
selected = 0
|
||||||
|
|
||||||
|
[node name="Label1" type="Label" parent="." index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 16.0
|
||||||
|
margin_top = 44.0
|
||||||
|
margin_right = 143.0
|
||||||
|
margin_bottom = 58.0
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
@ -70,16 +104,16 @@ percent_visible = 1.0
|
|||||||
lines_skipped = 0
|
lines_skipped = 0
|
||||||
max_lines_visible = -1
|
max_lines_visible = -1
|
||||||
|
|
||||||
[node name="Label2" type="Label" parent="." index="1"]
|
[node name="Label2" type="Label" parent="." index="2"]
|
||||||
|
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = 16.0
|
margin_left = 16.0
|
||||||
margin_top = 38.0
|
margin_top = 59.0
|
||||||
margin_right = 74.0
|
margin_right = 143.0
|
||||||
margin_bottom = 52.0
|
margin_bottom = 73.0
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
@ -91,30 +125,69 @@ percent_visible = 1.0
|
|||||||
lines_skipped = 0
|
lines_skipped = 0
|
||||||
max_lines_visible = -1
|
max_lines_visible = -1
|
||||||
|
|
||||||
[node name="amount" type="LineEdit" parent="." index="2"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="." index="3"]
|
||||||
|
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = 16.0
|
margin_left = 16.0
|
||||||
margin_top = 53.0
|
margin_top = 74.0
|
||||||
margin_right = 74.0
|
margin_right = 143.0
|
||||||
margin_bottom = 77.0
|
margin_bottom = 98.0
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
focus_mode = 2
|
mouse_filter = 1
|
||||||
mouse_filter = 0
|
mouse_default_cursor_shape = 0
|
||||||
mouse_default_cursor_shape = 1
|
|
||||||
size_flags_horizontal = 1
|
size_flags_horizontal = 1
|
||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
text = "0.5"
|
alignment = 0
|
||||||
focus_mode = 2
|
|
||||||
context_menu_enabled = true
|
[node name="Label3" type="Label" parent="HBoxContainer" index="0"]
|
||||||
placeholder_alpha = 0.6
|
|
||||||
caret_blink = false
|
anchor_left = 0.0
|
||||||
caret_blink_speed = 0.65
|
anchor_top = 0.0
|
||||||
caret_position = 0
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 49.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 2
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 4
|
||||||
|
text = "Opacity"
|
||||||
|
percent_visible = 1.0
|
||||||
|
lines_skipped = 0
|
||||||
|
max_lines_visible = -1
|
||||||
|
|
||||||
|
[node name="amount" type="SpinBox" parent="HBoxContainer" index="1"]
|
||||||
|
|
||||||
|
anchor_left = 0.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 53.0
|
||||||
|
margin_right = 127.0
|
||||||
|
margin_bottom = 24.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
min_value = 0.0
|
||||||
|
max_value = 1.0
|
||||||
|
step = 0.05
|
||||||
|
page = 0.0
|
||||||
|
value = 0.5
|
||||||
|
exp_edit = false
|
||||||
|
rounded = false
|
||||||
|
editable = true
|
||||||
|
prefix = ""
|
||||||
|
suffix = ""
|
||||||
|
|
||||||
[connection signal="close_request" from="." to="." method="queue_free"]
|
[connection signal="close_request" from="." to="." method="queue_free"]
|
||||||
|
|
||||||
|
BIN
addons/procedural_material/panoramas/experiment.hdr
Normal file
BIN
addons/procedural_material/panoramas/experiment.hdr
Normal file
Binary file not shown.
29
addons/procedural_material/panoramas/experiment.hdr.import
Normal file
29
addons/procedural_material/panoramas/experiment.hdr.import
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/experiment.hdr-d18e99e31a5e03809d487620198f72b4.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/procedural_material/panoramas/experiment.hdr"
|
||||||
|
dest_files=[ "res://.import/experiment.hdr-d18e99e31a5e03809d487620198f72b4.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
9681
addons/procedural_material/panoramas/lobby.hdr
Normal file
9681
addons/procedural_material/panoramas/lobby.hdr
Normal file
File diff suppressed because one or more lines are too long
29
addons/procedural_material/panoramas/lobby.hdr.import
Normal file
29
addons/procedural_material/panoramas/lobby.hdr.import
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/lobby.hdr-6fc8fec9aa03ce8405278cd0e68f7a42.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/procedural_material/panoramas/lobby.hdr"
|
||||||
|
dest_files=[ "res://.import/lobby.hdr-6fc8fec9aa03ce8405278cd0e68f7a42.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
BIN
addons/procedural_material/panoramas/night.hdr
Normal file
BIN
addons/procedural_material/panoramas/night.hdr
Normal file
Binary file not shown.
29
addons/procedural_material/panoramas/night.hdr.import
Normal file
29
addons/procedural_material/panoramas/night.hdr.import
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/night.hdr-b83487dc308f39913d6b85bbf9e8feb0.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/procedural_material/panoramas/night.hdr"
|
||||||
|
dest_files=[ "res://.import/night.hdr-b83487dc308f39913d6b85bbf9e8feb0.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
BIN
addons/procedural_material/panoramas/park.hdr
Normal file
BIN
addons/procedural_material/panoramas/park.hdr
Normal file
Binary file not shown.
29
addons/procedural_material/panoramas/park.hdr.import
Normal file
29
addons/procedural_material/panoramas/park.hdr.import
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/park.hdr-1e56c84521c4230f03b191409247d136.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/procedural_material/panoramas/park.hdr"
|
||||||
|
dest_files=[ "res://.import/park.hdr-1e56c84521c4230f03b191409247d136.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
10542
addons/procedural_material/panoramas/schelde.hdr
Normal file
10542
addons/procedural_material/panoramas/schelde.hdr
Normal file
File diff suppressed because one or more lines are too long
29
addons/procedural_material/panoramas/schelde.hdr.import
Normal file
29
addons/procedural_material/panoramas/schelde.hdr.import
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/schelde.hdr-b680943616a80a290fb3e52fcaf638d7.stex"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/procedural_material/panoramas/schelde.hdr"
|
||||||
|
dest_files=[ "res://.import/schelde.hdr-b680943616a80a290fb3e52fcaf638d7.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
@ -28,9 +28,9 @@ const MENU = [
|
|||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
# Duplicate the material we'll modify and store the shaders
|
# Duplicate the material we'll modify and store the shaders
|
||||||
preview_material = $Preview/ViewportContainer/MaterialPreview.material
|
preview_material = $Preview/Preview.preview_material
|
||||||
$Preview/ViewportContainer/SelectedPreview.material = $Preview/ViewportContainer/SelectedPreview.material.duplicate(true)
|
$Preview/Preview/SelectedPreview.material = $Preview/Preview/SelectedPreview.material.duplicate(true)
|
||||||
texture_preview_material = $Preview/ViewportContainer/SelectedPreview.material
|
texture_preview_material = $Preview/Preview/SelectedPreview.material
|
||||||
$GraphEdit.add_valid_connection_type(0, 0)
|
$GraphEdit.add_valid_connection_type(0, 0)
|
||||||
# create or update popup menu
|
# create or update popup menu
|
||||||
if popup_menu != null:
|
if popup_menu != null:
|
||||||
|
@ -3,149 +3,16 @@
|
|||||||
[ext_resource path="res://addons/procedural_material/pm_editor.gd" type="Script" id=1]
|
[ext_resource path="res://addons/procedural_material/pm_editor.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://addons/procedural_material/graph_edit.gd" type="Script" id=2]
|
[ext_resource path="res://addons/procedural_material/graph_edit.gd" type="Script" id=2]
|
||||||
[ext_resource path="res://addons/procedural_material/nodes/material.tscn" type="PackedScene" id=3]
|
[ext_resource path="res://addons/procedural_material/nodes/material.tscn" type="PackedScene" id=3]
|
||||||
[ext_resource path="res://addons/procedural_material/material_preview.gd" type="Script" id=4]
|
[ext_resource path="res://addons/procedural_material/preview.gd" type="Script" id=4]
|
||||||
|
[ext_resource path="res://addons/procedural_material/panoramas/experiment.hdr" type="Texture" id=5]
|
||||||
|
|
||||||
[sub_resource type="ProceduralSky" id=1]
|
[sub_resource type="Animation" id=1]
|
||||||
|
|
||||||
radiance_size = 4
|
|
||||||
sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
|
|
||||||
sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
|
|
||||||
sky_curve = 0.25
|
|
||||||
sky_energy = 1.0
|
|
||||||
ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
|
|
||||||
ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
|
|
||||||
ground_curve = 0.01
|
|
||||||
ground_energy = 1.0
|
|
||||||
sun_color = Color( 1, 1, 1, 1 )
|
|
||||||
sun_latitude = 35.0
|
|
||||||
sun_longitude = 0.0
|
|
||||||
sun_angle_min = 1.0
|
|
||||||
sun_angle_max = 100.0
|
|
||||||
sun_curve = 0.05
|
|
||||||
sun_energy = 16.0
|
|
||||||
texture_size = 2
|
|
||||||
|
|
||||||
[sub_resource type="Environment" id=2]
|
|
||||||
|
|
||||||
background_mode = 2
|
|
||||||
background_sky = SubResource( 1 )
|
|
||||||
background_sky_custom_fov = 0.0
|
|
||||||
background_color = Color( 0, 0, 0, 1 )
|
|
||||||
background_energy = 1.0
|
|
||||||
background_canvas_max_layer = 0
|
|
||||||
ambient_light_color = Color( 0, 0, 0, 1 )
|
|
||||||
ambient_light_energy = 1.0
|
|
||||||
ambient_light_sky_contribution = 1.0
|
|
||||||
fog_enabled = false
|
|
||||||
fog_color = Color( 0.5, 0.6, 0.7, 1 )
|
|
||||||
fog_sun_color = Color( 1, 0.9, 0.7, 1 )
|
|
||||||
fog_sun_amount = 0.0
|
|
||||||
fog_depth_enabled = true
|
|
||||||
fog_depth_begin = 10.0
|
|
||||||
fog_depth_curve = 1.0
|
|
||||||
fog_transmit_enabled = false
|
|
||||||
fog_transmit_curve = 1.0
|
|
||||||
fog_height_enabled = false
|
|
||||||
fog_height_min = 0.0
|
|
||||||
fog_height_max = 100.0
|
|
||||||
fog_height_curve = 1.0
|
|
||||||
tonemap_mode = 0
|
|
||||||
tonemap_exposure = 1.0
|
|
||||||
tonemap_white = 1.0
|
|
||||||
auto_exposure_enabled = false
|
|
||||||
auto_exposure_scale = 0.4
|
|
||||||
auto_exposure_min_luma = 0.05
|
|
||||||
auto_exposure_max_luma = 8.0
|
|
||||||
auto_exposure_speed = 0.5
|
|
||||||
ss_reflections_enabled = false
|
|
||||||
ss_reflections_max_steps = 64
|
|
||||||
ss_reflections_fade_in = 0.15
|
|
||||||
ss_reflections_fade_out = 2.0
|
|
||||||
ss_reflections_depth_tolerance = 0.2
|
|
||||||
ss_reflections_roughness = true
|
|
||||||
ssao_enabled = false
|
|
||||||
ssao_radius = 1.0
|
|
||||||
ssao_intensity = 1.0
|
|
||||||
ssao_radius2 = 0.0
|
|
||||||
ssao_intensity2 = 1.0
|
|
||||||
ssao_bias = 0.01
|
|
||||||
ssao_light_affect = 0.0
|
|
||||||
ssao_color = Color( 0, 0, 0, 1 )
|
|
||||||
ssao_quality = 0
|
|
||||||
ssao_blur = 3
|
|
||||||
ssao_edge_sharpness = 4.0
|
|
||||||
dof_blur_far_enabled = false
|
|
||||||
dof_blur_far_distance = 10.0
|
|
||||||
dof_blur_far_transition = 5.0
|
|
||||||
dof_blur_far_amount = 0.1
|
|
||||||
dof_blur_far_quality = 1
|
|
||||||
dof_blur_near_enabled = false
|
|
||||||
dof_blur_near_distance = 2.0
|
|
||||||
dof_blur_near_transition = 1.0
|
|
||||||
dof_blur_near_amount = 0.1
|
|
||||||
dof_blur_near_quality = 1
|
|
||||||
glow_enabled = false
|
|
||||||
glow_levels/1 = false
|
|
||||||
glow_levels/2 = false
|
|
||||||
glow_levels/3 = true
|
|
||||||
glow_levels/4 = false
|
|
||||||
glow_levels/5 = true
|
|
||||||
glow_levels/6 = false
|
|
||||||
glow_levels/7 = false
|
|
||||||
glow_intensity = 0.8
|
|
||||||
glow_strength = 1.0
|
|
||||||
glow_bloom = 0.0
|
|
||||||
glow_blend_mode = 2
|
|
||||||
glow_hdr_threshold = 1.0
|
|
||||||
glow_hdr_scale = 2.0
|
|
||||||
glow_bicubic_upscale = false
|
|
||||||
adjustment_enabled = false
|
|
||||||
adjustment_brightness = 1.0
|
|
||||||
adjustment_contrast = 1.0
|
|
||||||
adjustment_saturation = 1.0
|
|
||||||
_sections_unfolded = [ "Background" ]
|
|
||||||
|
|
||||||
[sub_resource type="World" id=3]
|
|
||||||
|
|
||||||
environment = SubResource( 2 )
|
|
||||||
|
|
||||||
[sub_resource type="CubeMesh" id=4]
|
|
||||||
|
|
||||||
custom_aabb = AABB( 0, 0, 0, 0, 0, 0 )
|
|
||||||
size = Vector3( 2, 2, 2 )
|
|
||||||
subdivide_width = 0
|
|
||||||
subdivide_height = 0
|
|
||||||
subdivide_depth = 0
|
|
||||||
|
|
||||||
[sub_resource type="Shader" id=5]
|
|
||||||
|
|
||||||
code = "shader_type spatial;
|
|
||||||
void fragment() {
|
|
||||||
ALBEDO=vec3(0.5);
|
|
||||||
}
|
|
||||||
"
|
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=6]
|
|
||||||
|
|
||||||
render_priority = 0
|
|
||||||
shader = SubResource( 5 )
|
|
||||||
|
|
||||||
[sub_resource type="CylinderMesh" id=7]
|
|
||||||
|
|
||||||
custom_aabb = AABB( 0, 0, 0, 0, 0, 0 )
|
|
||||||
top_radius = 1.0
|
|
||||||
bottom_radius = 1.0
|
|
||||||
height = 2.0
|
|
||||||
radial_segments = 64
|
|
||||||
rings = 4
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=8]
|
|
||||||
|
|
||||||
length = 1.0
|
length = 1.0
|
||||||
loop = true
|
loop = true
|
||||||
step = 0.1
|
step = 0.1
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/path = NodePath("Objects:rotation_degrees")
|
tracks/0/path = NodePath("MaterialPreview/Objects:rotation_degrees")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
@ -157,31 +24,45 @@ tracks/0/keys = {
|
|||||||
"values": [ Vector3( 0, 0, 0 ), Vector3( 0, 360, 0 ) ]
|
"values": [ Vector3( 0, 0, 0 ), Vector3( 0, 360, 0 ) ]
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="ProceduralSky" id=9]
|
[sub_resource type="CubeMesh" id=2]
|
||||||
|
|
||||||
radiance_size = 4
|
custom_aabb = AABB( 0, 0, 0, 0, 0, 0 )
|
||||||
sky_top_color = Color( 0.0470588, 0.454902, 0.976471, 1 )
|
size = Vector3( 2, 2, 2 )
|
||||||
sky_horizon_color = Color( 0.556863, 0.823529, 0.909804, 1 )
|
subdivide_width = 0
|
||||||
sky_curve = 0.25
|
subdivide_height = 0
|
||||||
sky_energy = 1.0
|
subdivide_depth = 0
|
||||||
ground_bottom_color = Color( 0.101961, 0.145098, 0.188235, 1 )
|
|
||||||
ground_horizon_color = Color( 0.482353, 0.788235, 0.952941, 1 )
|
|
||||||
ground_curve = 0.01
|
|
||||||
ground_energy = 1.0
|
|
||||||
sun_color = Color( 1, 1, 1, 1 )
|
|
||||||
sun_latitude = 35.0
|
|
||||||
sun_longitude = 0.0
|
|
||||||
sun_angle_min = 1.0
|
|
||||||
sun_angle_max = 100.0
|
|
||||||
sun_curve = 0.05
|
|
||||||
sun_energy = 16.0
|
|
||||||
texture_size = 2
|
|
||||||
_sections_unfolded = [ "Sky" ]
|
|
||||||
|
|
||||||
[sub_resource type="Environment" id=10]
|
[sub_resource type="Shader" id=3]
|
||||||
|
|
||||||
|
code = "shader_type spatial;
|
||||||
|
void fragment() {
|
||||||
|
ALBEDO=vec3(0.5);
|
||||||
|
}
|
||||||
|
"
|
||||||
|
|
||||||
|
[sub_resource type="ShaderMaterial" id=4]
|
||||||
|
|
||||||
|
render_priority = 0
|
||||||
|
shader = SubResource( 3 )
|
||||||
|
|
||||||
|
[sub_resource type="CylinderMesh" id=5]
|
||||||
|
|
||||||
|
custom_aabb = AABB( 0, 0, 0, 0, 0, 0 )
|
||||||
|
top_radius = 1.0
|
||||||
|
bottom_radius = 1.0
|
||||||
|
height = 2.0
|
||||||
|
radial_segments = 64
|
||||||
|
rings = 4
|
||||||
|
|
||||||
|
[sub_resource type="PanoramaSky" id=6]
|
||||||
|
|
||||||
|
radiance_size = 2
|
||||||
|
panorama = ExtResource( 5 )
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id=7]
|
||||||
|
|
||||||
background_mode = 2
|
background_mode = 2
|
||||||
background_sky = SubResource( 9 )
|
background_sky = SubResource( 6 )
|
||||||
background_sky_custom_fov = 0.0
|
background_sky_custom_fov = 0.0
|
||||||
background_color = Color( 0, 0, 0, 1 )
|
background_color = Color( 0, 0, 0, 1 )
|
||||||
background_energy = 1.0
|
background_energy = 1.0
|
||||||
@ -258,7 +139,7 @@ adjustment_contrast = 1.0
|
|||||||
adjustment_saturation = 1.0
|
adjustment_saturation = 1.0
|
||||||
_sections_unfolded = [ "Background" ]
|
_sections_unfolded = [ "Background" ]
|
||||||
|
|
||||||
[sub_resource type="Shader" id=11]
|
[sub_resource type="Shader" id=8]
|
||||||
|
|
||||||
code = "shader_type canvas_item;
|
code = "shader_type canvas_item;
|
||||||
|
|
||||||
@ -268,12 +149,98 @@ void fragment() {
|
|||||||
"
|
"
|
||||||
_sections_unfolded = [ "Resource" ]
|
_sections_unfolded = [ "Resource" ]
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=12]
|
[sub_resource type="ShaderMaterial" id=9]
|
||||||
|
|
||||||
render_priority = 0
|
render_priority = 0
|
||||||
shader = SubResource( 11 )
|
shader = SubResource( 8 )
|
||||||
|
|
||||||
[sub_resource type="Shader" id=13]
|
[sub_resource type="Animation" id=10]
|
||||||
|
|
||||||
|
resource_name = "maximize"
|
||||||
|
length = 0.2
|
||||||
|
loop = false
|
||||||
|
step = 0.1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("SelectedPreview:rect_position")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.2 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 2, 194 ), Vector2( 2, 2 ) ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("SelectedPreview:rect_size")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.2 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 64, 64 ), Vector2( 256, 256 ) ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("MaterialPreview:render_target_update_mode")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0.2 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ 0 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=11]
|
||||||
|
|
||||||
|
resource_name = "minimize"
|
||||||
|
length = 0.2
|
||||||
|
loop = false
|
||||||
|
step = 0.1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/path = NodePath("SelectedPreview:rect_position")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.2 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 2, 2 ), Vector2( 2, 194 ) ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath("SelectedPreview:rect_size")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = true
|
||||||
|
tracks/1/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.2 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 256, 256 ), Vector2( 64, 64 ) ]
|
||||||
|
}
|
||||||
|
tracks/2/type = "value"
|
||||||
|
tracks/2/path = NodePath("MaterialPreview:render_target_update_mode")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = true
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0 ),
|
||||||
|
"transitions": PoolRealArray( 1 ),
|
||||||
|
"update": 1,
|
||||||
|
"values": [ 3 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Shader" id=12]
|
||||||
|
|
||||||
code = "shader_type canvas_item;
|
code = "shader_type canvas_item;
|
||||||
|
|
||||||
@ -394,12 +361,12 @@ COLOR = vec4(Colorize3_0_rgb, 1.0);
|
|||||||
}
|
}
|
||||||
"
|
"
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=14]
|
[sub_resource type="ShaderMaterial" id=13]
|
||||||
|
|
||||||
render_priority = 0
|
render_priority = 0
|
||||||
shader = SubResource( 13 )
|
shader = SubResource( 12 )
|
||||||
|
|
||||||
[node name="ProceduralMaterialEditor" type="MarginContainer" index="0"]
|
[node name="ProceduralMaterialEditor" type="MarginContainer"]
|
||||||
|
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
@ -413,7 +380,6 @@ size_flags_horizontal = 1
|
|||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
custom_constants/margin_left = 0
|
custom_constants/margin_left = 0
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
_sections_unfolded = [ "custom_constants" ]
|
|
||||||
|
|
||||||
[node name="GraphEdit" type="GraphEdit" parent="." index="0"]
|
[node name="GraphEdit" type="GraphEdit" parent="." index="0"]
|
||||||
|
|
||||||
@ -430,7 +396,7 @@ mouse_filter = 0
|
|||||||
mouse_default_cursor_shape = 0
|
mouse_default_cursor_shape = 0
|
||||||
size_flags_horizontal = 1
|
size_flags_horizontal = 1
|
||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
right_disconnects = false
|
right_disconnects = true
|
||||||
scroll_offset = Vector2( 0, 0 )
|
scroll_offset = Vector2( 0, 0 )
|
||||||
snap_distance = 20
|
snap_distance = 20
|
||||||
use_snap = false
|
use_snap = false
|
||||||
@ -486,17 +452,17 @@ size_flags_horizontal = 1
|
|||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
_sections_unfolded = [ "Mouse" ]
|
_sections_unfolded = [ "Mouse" ]
|
||||||
|
|
||||||
[node name="ViewportContainer" type="ViewportContainer" parent="Preview" index="0"]
|
[node name="Preview" type="ViewportContainer" parent="Preview" index="0"]
|
||||||
|
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = -302.0
|
margin_left = -274.0
|
||||||
margin_top = 7.0
|
margin_top = 3.0
|
||||||
margin_right = -14.0
|
margin_right = -14.0
|
||||||
margin_bottom = 301.0
|
margin_bottom = 263.0
|
||||||
rect_min_size = Vector2( 256, 256 )
|
rect_min_size = Vector2( 260, 260 )
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
@ -505,14 +471,26 @@ size_flags_horizontal = 1
|
|||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
stretch = false
|
stretch = false
|
||||||
stretch_shrink = 1
|
stretch_shrink = 1
|
||||||
|
script = ExtResource( 4 )
|
||||||
_sections_unfolded = [ "Anchor", "Grow Direction", "Margin", "Mouse", "Rect" ]
|
_sections_unfolded = [ "Anchor", "Grow Direction", "Margin", "Mouse", "Rect" ]
|
||||||
|
|
||||||
[node name="MaterialPreview" type="Viewport" parent="Preview/ViewportContainer" index="0"]
|
[node name="ObjectRotate" type="AnimationPlayer" parent="Preview/Preview" index="0"]
|
||||||
|
|
||||||
|
root_node = NodePath("..")
|
||||||
|
autoplay = "rotate"
|
||||||
|
playback_process_mode = 1
|
||||||
|
playback_default_blend_time = 0.0
|
||||||
|
playback_speed = 0.1
|
||||||
|
anims/rotate = SubResource( 1 )
|
||||||
|
blend_times = [ ]
|
||||||
|
_sections_unfolded = [ "Playback Options" ]
|
||||||
|
|
||||||
|
[node name="MaterialPreview" type="Viewport" parent="Preview/Preview" index="1"]
|
||||||
|
|
||||||
arvr = false
|
arvr = false
|
||||||
size = Vector2( 288, 294 )
|
size = Vector2( 260, 260 )
|
||||||
own_world = true
|
own_world = true
|
||||||
world = SubResource( 3 )
|
world = null
|
||||||
transparent_bg = false
|
transparent_bg = false
|
||||||
msaa = 0
|
msaa = 0
|
||||||
hdr = true
|
hdr = true
|
||||||
@ -520,7 +498,7 @@ disable_3d = false
|
|||||||
usage = 2
|
usage = 2
|
||||||
debug_draw = 0
|
debug_draw = 0
|
||||||
render_target_v_flip = false
|
render_target_v_flip = false
|
||||||
render_target_clear_mode = 0
|
render_target_clear_mode = 1
|
||||||
render_target_update_mode = 3
|
render_target_update_mode = 3
|
||||||
audio_listener_enable_2d = false
|
audio_listener_enable_2d = false
|
||||||
audio_listener_enable_3d = false
|
audio_listener_enable_3d = false
|
||||||
@ -532,15 +510,14 @@ shadow_atlas_quad_0 = 2
|
|||||||
shadow_atlas_quad_1 = 2
|
shadow_atlas_quad_1 = 2
|
||||||
shadow_atlas_quad_2 = 3
|
shadow_atlas_quad_2 = 3
|
||||||
shadow_atlas_quad_3 = 4
|
shadow_atlas_quad_3 = 4
|
||||||
script = ExtResource( 4 )
|
_sections_unfolded = [ "GUI", "Render Target" ]
|
||||||
_sections_unfolded = [ "GUI", "Render Target", "Rendering" ]
|
|
||||||
|
|
||||||
[node name="Objects" type="Spatial" parent="Preview/ViewportContainer/MaterialPreview" index="0"]
|
[node name="Objects" type="Spatial" parent="Preview/Preview/MaterialPreview" index="0"]
|
||||||
|
|
||||||
transform = Transform( -0.972392, 0, 0.233345, 0, 1, 0, -0.233345, 0, -0.972392, 0, 0, 0 )
|
transform = Transform( -0.0548036, 0, 0.998495, 0, 1, 0, -0.998495, 0, -0.0548036, 0, 0, 0 )
|
||||||
_sections_unfolded = [ "Transform" ]
|
_sections_unfolded = [ "Transform" ]
|
||||||
|
|
||||||
[node name="Cube" type="MeshInstance" parent="Preview/ViewportContainer/MaterialPreview/Objects" index="0"]
|
[node name="Cube" type="MeshInstance" parent="Preview/Preview/MaterialPreview/Objects" index="0"]
|
||||||
|
|
||||||
layers = 1
|
layers = 1
|
||||||
material_override = null
|
material_override = null
|
||||||
@ -551,12 +528,12 @@ lod_min_distance = 0.0
|
|||||||
lod_min_hysteresis = 0.0
|
lod_min_hysteresis = 0.0
|
||||||
lod_max_distance = 0.0
|
lod_max_distance = 0.0
|
||||||
lod_max_hysteresis = 0.0
|
lod_max_hysteresis = 0.0
|
||||||
mesh = SubResource( 4 )
|
mesh = SubResource( 2 )
|
||||||
skeleton = NodePath("..")
|
skeleton = NodePath("..")
|
||||||
material/0 = SubResource( 6 )
|
material/0 = SubResource( 4 )
|
||||||
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
||||||
|
|
||||||
[node name="Cylinder" type="MeshInstance" parent="Preview/ViewportContainer/MaterialPreview/Objects" index="1"]
|
[node name="Cylinder" type="MeshInstance" parent="Preview/Preview/MaterialPreview/Objects" index="1"]
|
||||||
|
|
||||||
visible = false
|
visible = false
|
||||||
layers = 1
|
layers = 1
|
||||||
@ -568,23 +545,12 @@ lod_min_distance = 0.0
|
|||||||
lod_min_hysteresis = 0.0
|
lod_min_hysteresis = 0.0
|
||||||
lod_max_distance = 0.0
|
lod_max_distance = 0.0
|
||||||
lod_max_hysteresis = 0.0
|
lod_max_hysteresis = 0.0
|
||||||
mesh = SubResource( 7 )
|
mesh = SubResource( 5 )
|
||||||
skeleton = NodePath("..")
|
skeleton = NodePath("..")
|
||||||
material/0 = SubResource( 6 )
|
material/0 = SubResource( 4 )
|
||||||
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
_sections_unfolded = [ "Geometry", "Transform", "material" ]
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="Preview/ViewportContainer/MaterialPreview" index="1"]
|
[node name="OmniLight" type="OmniLight" parent="Preview/Preview/MaterialPreview" index="1"]
|
||||||
|
|
||||||
root_node = NodePath("..")
|
|
||||||
autoplay = "rotate"
|
|
||||||
playback_process_mode = 1
|
|
||||||
playback_default_blend_time = 0.0
|
|
||||||
playback_speed = 0.1
|
|
||||||
anims/rotate = SubResource( 8 )
|
|
||||||
blend_times = [ ]
|
|
||||||
_sections_unfolded = [ "Playback Options" ]
|
|
||||||
|
|
||||||
[node name="OmniLight" type="OmniLight" parent="Preview/ViewportContainer/MaterialPreview" index="2"]
|
|
||||||
|
|
||||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.04729, 1.80471, -2.51024 )
|
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1.04729, 1.80471, -2.51024 )
|
||||||
layers = 1
|
layers = 1
|
||||||
@ -607,12 +573,12 @@ omni_shadow_mode = 1
|
|||||||
omni_shadow_detail = 1
|
omni_shadow_detail = 1
|
||||||
_sections_unfolded = [ "Shadow" ]
|
_sections_unfolded = [ "Shadow" ]
|
||||||
|
|
||||||
[node name="Camera" type="Camera" parent="Preview/ViewportContainer/MaterialPreview" index="3"]
|
[node name="Camera" type="Camera" parent="Preview/Preview/MaterialPreview" index="2"]
|
||||||
|
|
||||||
transform = Transform( 1, 0, 0, 0, 0.766044, 0.642787, 0, -0.642787, 0.766044, 0, 1.83022, 2.2549 )
|
transform = Transform( 1, 0, 0, 0, 0.766044, 0.642787, 0, -0.642787, 0.766044, 0, 1.83022, 2.2549 )
|
||||||
keep_aspect = 1
|
keep_aspect = 1
|
||||||
cull_mask = 1048575
|
cull_mask = 1048575
|
||||||
environment = SubResource( 10 )
|
environment = SubResource( 7 )
|
||||||
h_offset = 0.0
|
h_offset = 0.0
|
||||||
v_offset = 0.0
|
v_offset = 0.0
|
||||||
doppler_tracking = 0
|
doppler_tracking = 0
|
||||||
@ -624,26 +590,69 @@ near = 0.05
|
|||||||
far = 100.0
|
far = 100.0
|
||||||
_sections_unfolded = [ "Transform" ]
|
_sections_unfolded = [ "Transform" ]
|
||||||
|
|
||||||
[node name="SelectedPreview" type="ColorRect" parent="Preview/ViewportContainer" index="1"]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="Preview/Preview/MaterialPreview" index="3"]
|
||||||
|
|
||||||
material = SubResource( 12 )
|
environment = SubResource( 7 )
|
||||||
|
|
||||||
|
[node name="Environment" type="OptionButton" parent="Preview/Preview" index="2"]
|
||||||
|
|
||||||
|
anchor_left = 1.0
|
||||||
|
anchor_top = 0.0
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = -112.0
|
||||||
|
margin_top = 2.0
|
||||||
|
margin_right = -2.0
|
||||||
|
margin_bottom = 22.0
|
||||||
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
|
rect_clip_content = false
|
||||||
|
focus_mode = 2
|
||||||
|
mouse_filter = 0
|
||||||
|
mouse_default_cursor_shape = 0
|
||||||
|
size_flags_horizontal = 1
|
||||||
|
size_flags_vertical = 1
|
||||||
|
toggle_mode = false
|
||||||
|
action_mode = 0
|
||||||
|
enabled_focus_mode = 2
|
||||||
|
shortcut = null
|
||||||
|
group = null
|
||||||
|
text = "Park"
|
||||||
|
flat = false
|
||||||
|
align = 0
|
||||||
|
items = [ "Experiment", null, false, -1, null, "Lobby", null, false, -1, null, "Night", null, false, -1, null, "Park", null, false, -1, null, "Schelde", null, false, -1, null ]
|
||||||
|
selected = 3
|
||||||
|
|
||||||
|
[node name="SelectedPreview" type="ColorRect" parent="Preview/Preview" index="3"]
|
||||||
|
|
||||||
|
material = SubResource( 9 )
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_left = 4.0
|
margin_left = 2.0
|
||||||
margin_top = 226.0
|
margin_top = 194.0
|
||||||
margin_right = 68.0
|
margin_right = 66.0
|
||||||
margin_bottom = 290.0
|
margin_bottom = 258.0
|
||||||
rect_min_size = Vector2( 64, 64 )
|
rect_min_size = Vector2( 64, 64 )
|
||||||
rect_pivot_offset = Vector2( 0, 0 )
|
rect_pivot_offset = Vector2( 0, 0 )
|
||||||
rect_clip_content = false
|
rect_clip_content = false
|
||||||
mouse_filter = 2
|
mouse_filter = 0
|
||||||
mouse_default_cursor_shape = 0
|
mouse_default_cursor_shape = 0
|
||||||
size_flags_horizontal = 8
|
size_flags_horizontal = 8
|
||||||
size_flags_vertical = 0
|
size_flags_vertical = 0
|
||||||
color = Color( 1, 1, 1, 1 )
|
color = Color( 1, 1, 1, 1 )
|
||||||
_sections_unfolded = [ "Material", "Mouse", "Rect" ]
|
_sections_unfolded = [ "Material", "Mouse" ]
|
||||||
|
|
||||||
|
[node name="SelectedPreviewAnimation" type="AnimationPlayer" parent="Preview/Preview" index="4"]
|
||||||
|
|
||||||
|
root_node = NodePath("..")
|
||||||
|
autoplay = ""
|
||||||
|
playback_process_mode = 1
|
||||||
|
playback_default_blend_time = 0.0
|
||||||
|
playback_speed = 1.0
|
||||||
|
anims/maximize = SubResource( 10 )
|
||||||
|
anims/minimize = SubResource( 11 )
|
||||||
|
blend_times = [ ]
|
||||||
|
|
||||||
[node name="SaveViewport" type="Viewport" parent="." index="3"]
|
[node name="SaveViewport" type="Viewport" parent="." index="3"]
|
||||||
|
|
||||||
@ -674,7 +683,7 @@ _sections_unfolded = [ "GUI", "Render Target" ]
|
|||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="SaveViewport" index="0"]
|
[node name="ColorRect" type="ColorRect" parent="SaveViewport" index="0"]
|
||||||
|
|
||||||
material = SubResource( 14 )
|
material = SubResource( 13 )
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
anchor_top = 0.0
|
anchor_top = 0.0
|
||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
@ -707,4 +716,8 @@ autostart = false
|
|||||||
|
|
||||||
[connection signal="timeout" from="GraphEdit/Timer" to="GraphEdit" method="do_send_changed_signal"]
|
[connection signal="timeout" from="GraphEdit/Timer" to="GraphEdit" method="do_send_changed_signal"]
|
||||||
|
|
||||||
|
[connection signal="item_selected" from="Preview/Preview/Environment" to="Preview/Preview" method="_on_Environment_item_selected"]
|
||||||
|
|
||||||
|
[connection signal="gui_input" from="Preview/Preview/SelectedPreview" to="Preview/Preview" method="_on_SelectedPreview_gui_input"]
|
||||||
|
|
||||||
|
|
||||||
|
28
addons/procedural_material/preview.gd
Normal file
28
addons/procedural_material/preview.gd
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
tool
|
||||||
|
extends ViewportContainer
|
||||||
|
|
||||||
|
var preview_material = null
|
||||||
|
var preview_maximized = false
|
||||||
|
|
||||||
|
const ENVIRONMENTS = [
|
||||||
|
"experiment", "lobby", "night", "park", "schelde"
|
||||||
|
]
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
preview_material = ShaderMaterial.new()
|
||||||
|
preview_material.shader = Shader.new()
|
||||||
|
preview_material.shader.set_code("shader_type spatial;\nvoid fragment() {\n ALBEDO=vec3(0.5);\n}\n")
|
||||||
|
$MaterialPreview/Objects/Cube.set_surface_material(0, preview_material)
|
||||||
|
$MaterialPreview/Objects/Cylinder.set_surface_material(0, preview_material)
|
||||||
|
$ObjectRotate.play("rotate")
|
||||||
|
|
||||||
|
func _on_SelectedPreview_gui_input(ev):
|
||||||
|
if ev is InputEventMouseButton && ev.button_index == 1 && ev.doubleclick:
|
||||||
|
if preview_maximized:
|
||||||
|
$SelectedPreviewAnimation.play("minimize")
|
||||||
|
else:
|
||||||
|
$SelectedPreviewAnimation.play("maximize")
|
||||||
|
preview_maximized = !preview_maximized
|
||||||
|
|
||||||
|
func _on_Environment_item_selected(id):
|
||||||
|
$MaterialPreview/WorldEnvironment.environment.background_sky.panorama = load("res://addons/procedural_material/panoramas/"+ENVIRONMENTS[id]+".hdr")
|
@ -11,8 +11,14 @@ class GradientCursor:
|
|||||||
rect_size = Vector2(WIDTH, 20)
|
rect_size = Vector2(WIDTH, 20)
|
||||||
|
|
||||||
func _gui_input(ev):
|
func _gui_input(ev):
|
||||||
if ev is InputEventMouseButton && ev.button_index == 1 && ev.doubleclick:
|
if ev is InputEventMouseButton && ev.doubleclick:
|
||||||
|
if ev.button_index == 1:
|
||||||
get_parent().select_color(self)
|
get_parent().select_color(self)
|
||||||
|
elif ev.button_index == 2 && get_parent().get_sorted_cursors().size() > 2:
|
||||||
|
var parent = get_parent()
|
||||||
|
parent.remove_child(self)
|
||||||
|
parent.update_shader()
|
||||||
|
queue_free()
|
||||||
elif ev is InputEventMouseMotion && (ev.button_mask & 1) != 0:
|
elif ev is InputEventMouseMotion && (ev.button_mask & 1) != 0:
|
||||||
rect_position.x += ev.relative.x
|
rect_position.x += ev.relative.x
|
||||||
rect_position.x = min(max(0, rect_position.x), get_parent().rect_size.x-rect_size.x)
|
rect_position.x = min(max(0, rect_position.x), get_parent().rect_size.x-rect_size.x)
|
||||||
@ -46,7 +52,8 @@ func add_cursor(x, color):
|
|||||||
|
|
||||||
func _gui_input(ev):
|
func _gui_input(ev):
|
||||||
if ev is InputEventMouseButton && ev.button_index == 1 && ev.doubleclick && ev.position.y > 15:
|
if ev is InputEventMouseButton && ev.button_index == 1 && ev.doubleclick && ev.position.y > 15:
|
||||||
add_cursor(ev.position.x, get_color(ev.position.x))
|
var p = max(0, min(ev.position.x, rect_size.x-GradientCursor.WIDTH))
|
||||||
|
add_cursor(p, get_color(p))
|
||||||
|
|
||||||
# Showing a color picker popup to change a cursor's color
|
# Showing a color picker popup to change a cursor's color
|
||||||
|
|
||||||
|
@ -5,18 +5,15 @@
|
|||||||
[sub_resource type="Shader" id=1]
|
[sub_resource type="Shader" id=1]
|
||||||
|
|
||||||
code = "shader_type canvas_item;
|
code = "shader_type canvas_item;
|
||||||
|
|
||||||
vec3 gradient(float x) {
|
vec3 gradient(float x) {
|
||||||
if (x < 0.2) {
|
if (x < 0.000000000) {
|
||||||
return vec3(0.1);
|
return vec3(0.000000000,0.000000000,0.000000000);
|
||||||
} else if (x < 0.8) {
|
} else if (x < 1.000000000) {
|
||||||
return vec3(0.1)+(x-0.2)*vec3(0.7);
|
return vec3(0.000000000,0.000000000,0.000000000)+x*vec3(1.000000000,1.000000000,1.000000000);
|
||||||
}
|
}
|
||||||
return vec3(0.5);
|
return vec3(1.000000000,1.000000000,1.000000000);
|
||||||
}
|
}
|
||||||
|
void fragment() { COLOR = vec4(gradient((UV.x-0.041666667)*1.090909091), 1.0); }"
|
||||||
void fragment() { COLOR = vec4(gradient(UV.x), 1.0); }
|
|
||||||
"
|
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id=2]
|
[sub_resource type="ShaderMaterial" id=2]
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
{"connections":[{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"Perlin","from_port":0,"to":"Warp","to_port":1},{"from":"Perlin2","from_port":0,"to":"Colorize2","to_port":0},{"from":"Perlin2","from_port":0,"to":"Colorize","to_port":0},{"from":"Colorize","from_port":0,"to":"Blend","to_port":0},{"from":"Colorize2","from_port":0,"to":"Blend","to_port":1},{"from":"Warp","from_port":0,"to":"Colorize3","to_port":0},{"from":"Colorize3","from_port":0,"to":"Blend","to_port":2},{"from":"Blend","from_port":0,"to":"Material","to_port":0},{"from":"Warp","from_port":0,"to":"NormalMap","to_port":0},{"from":"NormalMap","from_port":0,"to":"Material","to_port":1}],"nodes":[{"iterations":6,"name":"Perlin","node_position":{"x":254,"y":317},"persistance":0.35,"scale_x":4,"scale_y":4,"type":"perlin"},{"iterations":7,"name":"Perlin2","node_position":{"x":258,"y":-32},"persistance":0.9,"scale_x":8,"scale_y":8,"type":"perlin"},{"name":"Material","node_position":{"x":981,"y":-13},"type":"material"},{"amount":0.4,"name":"Blend","node_position":{"x":803,"y":-23.75},"type":"blend"},{"bevel":0.6,"columns":3,"mortar":0.05,"name":"Bricks","node_position":{"x":260,"y":132},"row_offset":0.5,"rows":6,"type":"bricks"},{"amount":0.5,"name":"Warp","node_position":{"x":504,"y":199.75},"type":"warp"},{"amount":0.5,"name":"NormalMap","node_position":{"x":820,"y":269},"type":"normal_map"},{"gradient":[{"b":0.001994,"g":0.150751,"pos":0,"r":0.382813},{"b":0.001994,"g":0.067447,"pos":1,"r":0.382813}],"name":"Colorize2","node_position":{"x":540,"y":46.25},"type":"colorize"},{"gradient":[{"b":0.299479,"g":0.299479,"pos":0,"r":0.299479},{"b":0.127604,"g":0.127604,"pos":1,"r":0.127604}],"name":"Colorize","node_position":{"x":540,"y":-18.75},"type":"colorize"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.072727,"r":1}],"name":"Colorize3","node_position":{"x":649,"y":136},"type":"colorize"}]}
|
{"connections":[{"from":"Bricks","from_port":0,"to":"Warp","to_port":0},{"from":"Perlin","from_port":0,"to":"Warp","to_port":1},{"from":"Warp","from_port":0,"to":"NormalMap","to_port":0},{"from":"Perlin2","from_port":0,"to":"colorize_0","to_port":0},{"from":"Perlin2","from_port":0,"to":"colorize_1","to_port":0},{"from":"colorize_0","from_port":0,"to":"blend_0","to_port":0},{"from":"colorize_1","from_port":0,"to":"blend_0","to_port":1},{"from":"Warp","from_port":0,"to":"colorize_2","to_port":0},{"from":"colorize_2","from_port":0,"to":"blend_0","to_port":2},{"from":"blend_0","from_port":0,"to":"transform_0","to_port":0},{"from":"transform_0","from_port":0,"to":"Material","to_port":0},{"from":"NormalMap","from_port":0,"to":"transform_1","to_port":0},{"from":"transform_1","from_port":0,"to":"Material","to_port":1}],"nodes":[{"iterations":7,"name":"Perlin2","node_position":{"x":258,"y":-32},"persistance":0.9,"scale_x":8,"scale_y":8,"type":"perlin"},{"bevel":0.6,"columns":6,"mortar":0.05,"name":"Bricks","node_position":{"x":260,"y":132},"row_offset":0.5,"rows":12,"type":"bricks"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":1,"r":1}],"name":"colorize_0","node_position":{"x":556.943665,"y":-32},"type":"colorize"},{"gradient":[{"b":0.002889,"g":0.102424,"pos":0,"r":0.184896},{"b":0,"g":0.19869,"pos":0.327273,"r":0.669271},{"b":0.019368,"g":0.060224,"pos":0.690909,"r":0.309896},{"b":0,"g":0.180135,"pos":1,"r":0.606771}],"name":"colorize_1","node_position":{"x":550.943665,"y":53},"type":"colorize"},{"amount":0.5,"name":"NormalMap","node_position":{"x":694,"y":297},"type":"normal_map"},{"iterations":6,"name":"Perlin","node_position":{"x":255,"y":322},"persistance":0.35,"scale_x":4,"scale_y":4,"type":"perlin"},{"amount":0.2,"name":"Warp","node_position":{"x":504,"y":199.75},"type":"warp"},{"gradient":[{"b":0,"g":0,"pos":0,"r":0},{"b":1,"g":1,"pos":0.072727,"r":1}],"name":"colorize_2","node_position":{"x":639.943665,"y":152},"type":"colorize"},{"amount":0.5,"name":"blend_0","node_position":{"x":819.943726,"y":-33},"type":"blend"},{"name":"transform_0","node_position":{"x":938.779785,"y":129.75},"rotate":0,"scale":1,"type":"transform"},{"name":"transform_1","node_position":{"x":944.779785,"y":262.75},"rotate":0,"scale":1,"type":"transform"},{"name":"Material","node_position":{"x":1165,"y":171},"type":"material"}]}
|
Loading…
Reference in New Issue
Block a user