Still trying to make model loading work.
This commit is contained in:
parent
45a3f6018d
commit
1cb8a639f3
|
@ -4,7 +4,7 @@ class_name SummerDayEditableTube
|
||||||
|
|
||||||
|
|
||||||
func _check_for_selection(event: InputEvent): # Virtual.
|
func _check_for_selection(event: InputEvent): # Virtual.
|
||||||
print(event.position)
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _interact(event: InputEvent): # Virtual.
|
func _interact(event: InputEvent): # Virtual.
|
||||||
|
|
|
@ -3,6 +3,10 @@ extends Resource
|
||||||
class_name SummerDayDocument
|
class_name SummerDayDocument
|
||||||
|
|
||||||
|
|
||||||
|
signal track_added(track)
|
||||||
|
signal track_deleted(track)
|
||||||
|
|
||||||
|
|
||||||
export(Resource) var scene = _scene_generation()
|
export(Resource) var scene = _scene_generation()
|
||||||
export(Array, Resource) var tracks
|
export(Array, Resource) var tracks
|
||||||
|
|
||||||
|
@ -12,6 +16,7 @@ func add_track(blueprint: SummerDayBlueprint):
|
||||||
track.blueprint = blueprint
|
track.blueprint = blueprint
|
||||||
track.add_cell(0)
|
track.add_cell(0)
|
||||||
tracks.append(track)
|
tracks.append(track)
|
||||||
|
emit_signal("track_added", track)
|
||||||
|
|
||||||
|
|
||||||
func _scene_generation() -> SummerDayScene:
|
func _scene_generation() -> SummerDayScene:
|
||||||
|
|
|
@ -12,6 +12,10 @@ func _init():
|
||||||
priority = 1
|
priority = 1
|
||||||
|
|
||||||
|
|
||||||
|
func _handle_global_input(event: InputEvent):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _check_for_use(event: InputEvent, tool_context: SummerDayToolContext):
|
func _check_for_use(event: InputEvent, tool_context: SummerDayToolContext):
|
||||||
if event is InputEventScreenTouch:
|
if event is InputEventScreenTouch:
|
||||||
if event.pressed:
|
if event.pressed:
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
extends Reference
|
extends Object
|
||||||
class_name SummerDayTool
|
class_name SummerDayTool
|
||||||
|
|
||||||
var priority = 0
|
var priority = 0
|
||||||
|
|
|
@ -2,6 +2,8 @@ tool
|
||||||
extends PanelContainer
|
extends PanelContainer
|
||||||
class_name SummerDayCanvas
|
class_name SummerDayCanvas
|
||||||
|
|
||||||
|
onready var MeshContainer := $Render/RenderLayer/Container
|
||||||
|
|
||||||
var document: SummerDayDocument
|
var document: SummerDayDocument
|
||||||
var scene: SummerDayScene
|
var scene: SummerDayScene
|
||||||
var canvas_state := SummerDayCanvasState.new()
|
var canvas_state := SummerDayCanvasState.new()
|
||||||
|
@ -47,6 +49,8 @@ func drop_data(position, data):
|
||||||
func _on_SummerDay_document_changed(new_doc):
|
func _on_SummerDay_document_changed(new_doc):
|
||||||
if new_doc != document:
|
if new_doc != document:
|
||||||
document = new_doc
|
document = new_doc
|
||||||
|
new_doc.connect("track_added",
|
||||||
|
MeshContainer, "_on_Document_add_track")
|
||||||
|
|
||||||
|
|
||||||
func _on_SummerDay_scene_changed(new_scene):
|
func _on_SummerDay_scene_changed(new_scene):
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[gd_scene load_steps=8 format=2]
|
[gd_scene load_steps=8 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/summer_day/user_interface/canvas/canvas.gd" type="Script" id=1]
|
[ext_resource path="res://addons/summer_day/user_interface/canvas/canvas.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://Main.tscn" type="PackedScene" id=2]
|
[ext_resource path="res://addons/summer_day/user_interface/canvas/mesh_container.gd" type="Script" id=2]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=3]
|
[sub_resource type="StyleBoxFlat" id=3]
|
||||||
bg_color = Color( 0.180392, 0.172549, 0.203922, 1 )
|
bg_color = Color( 0.180392, 0.172549, 0.203922, 1 )
|
||||||
|
@ -70,7 +70,12 @@ handle_input_locally = false
|
||||||
render_target_update_mode = 3
|
render_target_update_mode = 3
|
||||||
gui_disable_input = true
|
gui_disable_input = true
|
||||||
|
|
||||||
[node name="Main" parent="Render/RenderLayer" instance=ExtResource( 2 )]
|
[node name="Container" type="Spatial" parent="Render/RenderLayer"]
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
|
||||||
|
[node name="Camera" type="Camera" parent="Render/RenderLayer"]
|
||||||
|
projection = 1
|
||||||
|
current = true
|
||||||
|
|
||||||
[node name="BorderShadow" type="Polygon2D" parent="Render/RenderLayer" groups=["SummerDayCanvasPolygon"]]
|
[node name="BorderShadow" type="Polygon2D" parent="Render/RenderLayer" groups=["SummerDayCanvasPolygon"]]
|
||||||
material = SubResource( 5 )
|
material = SubResource( 5 )
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
tool
|
||||||
|
extends Spatial
|
||||||
|
|
||||||
|
|
||||||
|
func _on_Document_add_track(track: SummerDayTrack):
|
||||||
|
var packed_scene = track.blueprint._create_model()
|
||||||
|
print("I'm winning it")
|
||||||
|
var instance = packed_scene.instance()
|
||||||
|
add_child(instance, true)
|
||||||
|
#instance.name = "THE_BIG"
|
||||||
|
print("pain")
|
|
@ -1,9 +1,31 @@
|
||||||
[gd_resource type="Resource" load_steps=3 format=2]
|
[gd_resource type="Resource" load_steps=12 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/summer_day/data/document/document.gd" type="Script" id=1]
|
[ext_resource path="res://addons/summer_day/data/document/document.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://production/test/scene_001.tres" type="Resource" id=2]
|
[ext_resource path="res://production/test/scene_001.tres" type="Resource" id=2]
|
||||||
|
[ext_resource path="res://addons/summer_day/data/document/cell.gd" type="Script" id=3]
|
||||||
|
[ext_resource path="res://addons/summer_day/data/document/track.gd" type="Script" id=4]
|
||||||
|
[ext_resource path="res://addons/summer_day/data/blueprint/template_editables/tube.gd" type="Script" id=5]
|
||||||
|
[ext_resource path="res://production/blueprints/mannequin/mannequin.tres" type="Resource" id=6]
|
||||||
|
|
||||||
|
[sub_resource type="Resource" id=1]
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
[sub_resource type="Resource" id=2]
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
[sub_resource type="Resource" id=3]
|
||||||
|
script = ExtResource( 5 )
|
||||||
|
|
||||||
|
[sub_resource type="Resource" id=4]
|
||||||
|
script = ExtResource( 3 )
|
||||||
|
editable_list = [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ) ]
|
||||||
|
|
||||||
|
[sub_resource type="Resource" id=5]
|
||||||
|
script = ExtResource( 4 )
|
||||||
|
blueprint = ExtResource( 6 )
|
||||||
|
cells = [ SubResource( 4 ) ]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
scene = ExtResource( 2 )
|
scene = ExtResource( 2 )
|
||||||
tracks = [ ]
|
tracks = [ SubResource( 5 ) ]
|
||||||
|
|
|
@ -17,11 +17,11 @@ func _create_model():
|
||||||
var caps = CapsuleMesh.new()
|
var caps = CapsuleMesh.new()
|
||||||
var arr_mesh := ArrayMesh.new()
|
var arr_mesh := ArrayMesh.new()
|
||||||
arr_mesh.add_surface_from_arrays(
|
arr_mesh.add_surface_from_arrays(
|
||||||
Mesh.PRIMITIVE_TRIANGLES, caps.get_mesh_arrays
|
Mesh.PRIMITIVE_TRIANGLES, caps.get_mesh_arrays()
|
||||||
)
|
)
|
||||||
|
|
||||||
var m = MeshInstance.new()
|
var m = MeshInstance.new()
|
||||||
m.material = custom_material
|
m.material_override = custom_material
|
||||||
m.add_to_group(\"SummerDaySpatialTransform\")
|
m.add_to_group(\"SummerDaySpatialTransform\")
|
||||||
m.mesh = arr_mesh
|
m.mesh = arr_mesh
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ func _create_model():
|
||||||
var texture = ImageTexture.new()
|
var texture = ImageTexture.new()
|
||||||
#
|
#
|
||||||
texture.create_from_image(table, 0)
|
texture.create_from_image(table, 0)
|
||||||
m.material.set_shader_param(\"table\", table)
|
m.material_override.set_shader_param(\"table\", texture)
|
||||||
|
|
||||||
|
|
||||||
model = PackedScene.new()
|
model = PackedScene.new()
|
||||||
|
@ -43,7 +43,8 @@ func _create_cell():
|
||||||
var cell = SummerDayCell.new()
|
var cell = SummerDayCell.new()
|
||||||
var cylinder = SummerDayEditableTube.new()
|
var cylinder = SummerDayEditableTube.new()
|
||||||
cell.editable_list.append(cylinder)
|
cell.editable_list.append(cylinder)
|
||||||
return cell"
|
return cell
|
||||||
|
"
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = SubResource( 1 )
|
script = SubResource( 1 )
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_resource type="ShaderMaterial" load_steps=2 format=2]
|
[gd_resource type="ShaderMaterial" load_steps=4 format=2]
|
||||||
|
|
||||||
[sub_resource type="Shader" id=1]
|
[sub_resource type="Shader" id=1]
|
||||||
code = "shader_type spatial;
|
code = "shader_type spatial;
|
||||||
|
@ -40,12 +40,33 @@ void vertex() {
|
||||||
vec4 post = vec4(transformed_xy.x, transformed_xy.y, pre.z, pre.w);
|
vec4 post = vec4(transformed_xy.x, transformed_xy.y, pre.z, pre.w);
|
||||||
POSITION = post;
|
POSITION = post;
|
||||||
VERTEX = (post / post.w).xyz;
|
VERTEX = (post / post.w).xyz;
|
||||||
|
|
||||||
|
// vec3 tran = vec3(VERTEX.xy, 1.0) * transpose(canvas_transform);
|
||||||
|
// vec4 pos_t = vec4(tran.x, tran.y, VERTEX.z, 1.0);
|
||||||
|
// POSITION = pos_t;
|
||||||
|
// VERTEX = (pos_t / pos_t.w).xyz;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fragment() {
|
void fragment() {
|
||||||
ALBEDO = vec3(0.33, 0.81, 0.95);
|
ALBEDO = vec3(0.33, 0.81, 0.95);
|
||||||
}"
|
}"
|
||||||
|
|
||||||
|
[sub_resource type="Image" id=4]
|
||||||
|
data = {
|
||||||
|
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
|
||||||
|
"format": "RGBAFloat",
|
||||||
|
"height": 1,
|
||||||
|
"mipmaps": false,
|
||||||
|
"width": 8
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="ImageTexture" id=3]
|
||||||
|
flags = 0
|
||||||
|
flags = 0
|
||||||
|
image = SubResource( 4 )
|
||||||
|
size = Vector2( 8, 1 )
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
shader = SubResource( 1 )
|
shader = SubResource( 1 )
|
||||||
shader_param/canvas_transform = null
|
shader_param/canvas_transform = null
|
||||||
|
shader_param/table = SubResource( 3 )
|
||||||
|
|
|
@ -134,7 +134,7 @@ _global_script_classes=[ {
|
||||||
"language": "GDScript",
|
"language": "GDScript",
|
||||||
"path": "res://addons/summer_day/user_interface/timeline/timeline.gd"
|
"path": "res://addons/summer_day/user_interface/timeline/timeline.gd"
|
||||||
}, {
|
}, {
|
||||||
"base": "Reference",
|
"base": "Object",
|
||||||
"class": "SummerDayTool",
|
"class": "SummerDayTool",
|
||||||
"language": "GDScript",
|
"language": "GDScript",
|
||||||
"path": "res://addons/summer_day/tools/tool_system/base_tool.gd"
|
"path": "res://addons/summer_day/tools/tool_system/base_tool.gd"
|
||||||
|
@ -214,6 +214,10 @@ config/icon="res://icon.png"
|
||||||
|
|
||||||
Util="res://addons/summer_day/utilities/math_helper.gd"
|
Util="res://addons/summer_day/utilities/math_helper.gd"
|
||||||
|
|
||||||
|
[editor_plugins]
|
||||||
|
|
||||||
|
enabled=PoolStringArray( "res://addons/summer_day/plugin.cfg" )
|
||||||
|
|
||||||
[gdnative]
|
[gdnative]
|
||||||
|
|
||||||
singletons=[ "res://addons/godot-git-plugin/git_api.gdnlib" ]
|
singletons=[ "res://addons/godot-git-plugin/git_api.gdnlib" ]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user