feat: expanded style test
This commit is contained in:
parent
b34aae1bda
commit
c0d0451236
19 changed files with 135 additions and 5 deletions
|
|
@ -1,16 +1,25 @@
|
|||
@tool
|
||||
extends EditorScenePostImport
|
||||
|
||||
var outline_material : StandardMaterial3D
|
||||
var regular_outline_material : StandardMaterial3D
|
||||
var character_outline_material : StandardMaterial3D
|
||||
var outline_disable_flag : String = "-nooutline"
|
||||
|
||||
func _post_import(root : Node):
|
||||
outline_material = ResourceLoader.load("res://assets/style/base_outline_material.tres") as StandardMaterial3D
|
||||
regular_outline_material = ResourceLoader.load("res://assets/style/base_outline_material.tres") as StandardMaterial3D
|
||||
character_outline_material = ResourceLoader.load("res://assets/style/character_outline_material.tres") as StandardMaterial3D
|
||||
apply_outline_recursive(root)
|
||||
return root
|
||||
|
||||
func apply_outline_recursive(node : Node):
|
||||
if node != null:
|
||||
if node is MeshInstance3D and outline_material:
|
||||
(node as MeshInstance3D).material_overlay = outline_material
|
||||
if node.name.contains(outline_disable_flag):
|
||||
node.name = node.name.erase(node.name.find(outline_disable_flag), outline_disable_flag.length())
|
||||
elif node is MeshInstance3D:
|
||||
var mesh : MeshInstance3D = (node as MeshInstance3D)
|
||||
if mesh.skeleton and character_outline_material:
|
||||
mesh.material_overlay = character_outline_material
|
||||
elif regular_outline_material:
|
||||
mesh.material_overlay = regular_outline_material
|
||||
for child in node.get_children():
|
||||
apply_outline_recursive(child)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue