First Commit
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 clecioespindola
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -0,0 +1,42 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bnucoo28ydn2d"
|
||||
path="res://.godot/imported/godot_coin.glb-66feec0024e4b4d999bdf99cc9cb83cc.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/3dplatformprops-main/godot_coin.glb"
|
||||
dest_files=["res://.godot/imported/godot_coin.glb-66feec0024e4b4d999bdf99cc9cb83cc.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/root_script=null
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_name_suffixes=true
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
materials/extract=0
|
||||
materials/extract_format=0
|
||||
materials/extract_path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=2
|
||||
gltf/embedded_image_handling=1
|
||||
@@ -0,0 +1,31 @@
|
||||
extends Node3D
|
||||
|
||||
@onready var _animation_tree: AnimationTree = $AnimationTree
|
||||
@onready var _main_state_machine: AnimationNodeStateMachinePlayback = _animation_tree.get("parameters/StateMachine/playback")
|
||||
@onready var _secondary_action_timer: Timer = $SecondaryActionTimer
|
||||
|
||||
|
||||
func _on_secondary_action_timer_timeout() -> void:
|
||||
if _main_state_machine.get_current_node() != "Idle":
|
||||
return
|
||||
_main_state_machine.travel("HeadMovement")
|
||||
_secondary_action_timer.start(randf_range(3.0, 8.0))
|
||||
|
||||
|
||||
## Sets the model to a neutral, action-free state.
|
||||
func idle() -> void:
|
||||
_main_state_machine.travel("Idle")
|
||||
_secondary_action_timer.start()
|
||||
|
||||
|
||||
## Plays a one-shot attack animation.
|
||||
## This animation does not play in parallel with other states.
|
||||
func attack() -> void:
|
||||
_main_state_machine.travel("Attack")
|
||||
|
||||
|
||||
## Plays a one-shot power-off animation.
|
||||
## This animation does not play in parallel with other states.
|
||||
func power_off() -> void:
|
||||
_main_state_machine.travel("PowerOff")
|
||||
_secondary_action_timer.stop()
|
||||
@@ -0,0 +1 @@
|
||||
uid://j3jmdmhevnsu
|
||||
@@ -0,0 +1,40 @@
|
||||
[gd_resource type="Animation" format=3 uid="uid://bqprpxg0a2kjd"]
|
||||
|
||||
[resource]
|
||||
step = 0.05
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/bee_bot2:surface_material_override/2:shader_parameter/intensity")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.05, 0.1, 0.15, 0.2, 0.25),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 0.0, 2.0, 0.0, 2.0, 0.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Armature/Skeleton3D/bee_bot2:surface_material_override/3:shader_parameter/global_intensity")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.05, 0.1, 0.15, 0.2),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 1.0, 0.0, 4.0, 0.0]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Armature/Skeleton3D/bee_bot2:surface_material_override/1:emission_energy_multiplier")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0.1, 0.15, 0.2, 0.25),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [1.0, 0.0, 2.0, 0.0]
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://dx8xfrepk0a68"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://dmqt66iywru6d" path="res://addons/gdquest_models_shared/shaders/screen_shader.gdshader" id="1_itpnc"]
|
||||
[ext_resource type="Texture2D" uid="uid://bvxkh2pa1nqdq" path="res://addons/gdquest_models_shared/textures/eye_mask.png" id="2_acs8v"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_itpnc")
|
||||
shader_parameter/face_texture = ExtResource("2_acs8v")
|
||||
shader_parameter/intensity = 2.0
|
||||
shader_parameter/screen_color = Color(1, 0.584314, 0, 0.0784314)
|
||||
shader_parameter/screen_red_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_green_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_blue_offset = Vector2(0, 0)
|
||||
shader_parameter/pixel_size = 32.0
|
||||
@@ -0,0 +1,7 @@
|
||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://bww7by8cvcuoe"]
|
||||
|
||||
[resource]
|
||||
albedo_color = Color(0.470588, 0.470588, 0.470588, 1)
|
||||
emission_enabled = true
|
||||
emission = Color(1, 0.584314, 0, 1)
|
||||
emission_energy_multiplier = 1.25
|
||||
@@ -0,0 +1,11 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://cruyb7vmbaabx"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://cucygkmpgoqm5" path="res://addons/gdquest_bee_bot/shader/bee_wings_shader.gdshader" id="1_b2ohr"]
|
||||
[ext_resource type="Texture2D" uid="uid://blaqa1tkmd0xx" path="res://addons/gdquest_bee_bot/textures/wing_pattern.png" id="2_wfea8"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_b2ohr")
|
||||
shader_parameter/wing_pattern_sampler = ExtResource("2_wfea8")
|
||||
shader_parameter/emission_color = Color(1, 0.584314, 0, 1)
|
||||
shader_parameter/global_intensity = 1.0
|
||||
@@ -0,0 +1,13 @@
|
||||
shader_type spatial;
|
||||
render_mode cull_disabled;
|
||||
|
||||
uniform sampler2D wing_pattern_sampler : repeat_disable;
|
||||
uniform vec3 emission_color : source_color = vec3(1.0);
|
||||
uniform float global_intensity = 1.0;
|
||||
|
||||
void fragment() {
|
||||
float wing_pattern = texture(wing_pattern_sampler, UV).x;
|
||||
float pulse = ((1.0 + sin(UV.y + TIME)) / 2.0) + 0.5;
|
||||
ALBEDO = vec3(0.0);
|
||||
EMISSION = emission_color * smoothstep(0.51, 0.49, wing_pattern) * pulse * global_intensity;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cucygkmpgoqm5
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blaqa1tkmd0xx"
|
||||
path.s3tc="res://.godot/imported/wing_pattern.png-64756dacf6a230dc119aa2633f9ddeb6.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_bee_bot/textures/wing_pattern.png"
|
||||
dest_files=["res://.godot/imported/wing_pattern.png-64756dacf6a230dc119aa2633f9ddeb6.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
@@ -0,0 +1,36 @@
|
||||
extends Node3D
|
||||
|
||||
@onready var _animation_tree: AnimationTree = $AnimationTree
|
||||
@onready var _main_state_machine: AnimationNodeStateMachinePlayback = _animation_tree.get("parameters/StateMachine/playback")
|
||||
@onready var _secondary_action_timer: Timer = $SecondaryActionTimer
|
||||
|
||||
|
||||
func _on_secondary_action_timer_timeout() -> void:
|
||||
if _main_state_machine.get_current_node() != "Idle":
|
||||
return
|
||||
_main_state_machine.travel("Shake")
|
||||
_secondary_action_timer.start(randf_range(3.0, 8.0))
|
||||
|
||||
|
||||
## Sets the model to a neutral, action-free state.
|
||||
func idle() -> void:
|
||||
_main_state_machine.travel("Idle")
|
||||
_secondary_action_timer.start()
|
||||
|
||||
|
||||
## Sets the model to a walking animation or forward movement.
|
||||
func walk() -> void:
|
||||
_main_state_machine.travel("Walk")
|
||||
|
||||
|
||||
## Plays a one-shot attack animation.
|
||||
## This animation does not play in parallel with other states.
|
||||
func attack() -> void:
|
||||
_main_state_machine.travel("Attack")
|
||||
|
||||
|
||||
## Plays a one-shot power-off animation.
|
||||
## This animation does not play in parallel with other states.
|
||||
func power_off() -> void:
|
||||
_main_state_machine.travel("PowerOff")
|
||||
_secondary_action_timer.stop()
|
||||
@@ -0,0 +1 @@
|
||||
uid://bayxkg4v3lp4r
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_resource type="ShaderMaterial" format=3 uid="uid://dg5h8p8fu3mhh"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://dmqt66iywru6d" path="res://test/assets/addons/gdquest_models_shared/shaders/screen_shader.gdshader" id="1_n44cl"]
|
||||
[ext_resource type="Texture2D" uid="uid://bvxkh2pa1nqdq" path="res://test/assets/addons/gdquest_models_shared/textures/eye_mask.png" id="2_hdljt"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_n44cl")
|
||||
shader_parameter/face_texture = ExtResource("2_hdljt")
|
||||
shader_parameter/intensity = 1.25
|
||||
shader_parameter/screen_color = Color(0.619608, 0.862745, 0, 0.0784314)
|
||||
shader_parameter/screen_red_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_green_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_blue_offset = Vector2(0, 0)
|
||||
shader_parameter/pixel_size = 32.0
|
||||
@@ -0,0 +1,7 @@
|
||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://h2e57pyy6lu4"]
|
||||
|
||||
[resource]
|
||||
albedo_color = Color(0.470588, 0.470588, 0.470588, 1)
|
||||
emission_enabled = true
|
||||
emission = Color(0.619608, 0.862745, 0, 1)
|
||||
emission_energy_multiplier = 1.25
|
||||
@@ -0,0 +1,17 @@
|
||||
[gd_resource type="Animation" format=3 uid="uid://b627b68jhaqwt"]
|
||||
|
||||
[resource]
|
||||
length = 3.0
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Armature/Skeleton3D/gdbot_mesh:surface_material_override/2:emission_energy_multiplier")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1.5, 3),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [0.5, 3.0, 0.5]
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
extends Node2D
|
||||
|
||||
var _blinking = null:
|
||||
set = _set_blinking
|
||||
@onready var _animation_player: AnimationPlayer = $AnimationPlayer
|
||||
@onready var _blinking_timer: Timer = $BlinkTimer
|
||||
@onready var _closed_eyes_timer: Timer = $ClosedTimer
|
||||
@onready var _left_eye: Sprite2D = $LeftEye
|
||||
@onready var _right_eye: Sprite2D = $RightEye
|
||||
|
||||
var eyes_textures = {
|
||||
"open": preload("./texture/parts/eye_open.png"),
|
||||
"closed": preload("./texture/parts/eye_close.png"),
|
||||
}
|
||||
|
||||
var current_face = null:
|
||||
set = _set_face
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_blinking_timer.timeout.connect(_on_blink_timer_timeout)
|
||||
_set_blinking(true)
|
||||
current_face = "default"
|
||||
|
||||
|
||||
func _set_blinking(value: bool) -> void:
|
||||
_blinking = value
|
||||
if _blinking:
|
||||
_blinking_timer.start()
|
||||
else:
|
||||
_blinking_timer.stop()
|
||||
|
||||
|
||||
func _on_blink_timer_timeout() -> void:
|
||||
# Play secondary action rather than blink
|
||||
if randf_range(0.0, 1.0) > 0.9:
|
||||
_animation_player.play("look_around")
|
||||
await _animation_player.animation_finished
|
||||
else:
|
||||
# Close eyes
|
||||
_set_eyes("closed")
|
||||
_closed_eyes_timer.start(randf_range(0.1, 0.25))
|
||||
await _closed_eyes_timer.timeout
|
||||
# Return to current eyes
|
||||
_set_eyes("open")
|
||||
if randf_range(0.0, 1.0) > 0.8:
|
||||
_blinking_timer.wait_time = randf_range(0.1, 0.15)
|
||||
else:
|
||||
_blinking_timer.wait_time = randf_range(1.0, 4.0)
|
||||
_blinking_timer.start()
|
||||
|
||||
|
||||
func _set_eyes(eyes_name: String) -> void:
|
||||
_left_eye.texture = eyes_textures[eyes_name]
|
||||
_right_eye.texture = eyes_textures[eyes_name]
|
||||
|
||||
|
||||
func _set_face(face_name: String) -> void:
|
||||
if current_face == face_name:
|
||||
return
|
||||
current_face = face_name
|
||||
_animation_player.play("RESET")
|
||||
_animation_player.seek(0.0, true)
|
||||
if face_name == "default":
|
||||
_set_blinking(true)
|
||||
return
|
||||
_set_blinking(false)
|
||||
if !_animation_player.has_animation(face_name):
|
||||
push_error("Can't set GDBot's face to: '" + face_name + "'")
|
||||
return
|
||||
_animation_player.play(face_name)
|
||||
@@ -0,0 +1 @@
|
||||
uid://8sqitarj6fkw
|
||||
@@ -0,0 +1,373 @@
|
||||
[gd_scene load_steps=14 format=3 uid="uid://dvy2nao23i4rl"]
|
||||
|
||||
[ext_resource type="Script" path="res://addons/gdquest_gdbot/gdbot_face.gd" id="1_g7fgr"]
|
||||
[ext_resource type="Texture2D" uid="uid://cbp882a2a27qw" path="res://addons/gdquest_gdbot/texture/parts/eye_happy.png" id="2_fa0xy"]
|
||||
[ext_resource type="Texture2D" uid="uid://blacn6s3yc88h" path="res://addons/gdquest_gdbot/texture/parts/eye_open.png" id="2_qfyd4"]
|
||||
[ext_resource type="Texture2D" uid="uid://dt0veafbpw6ih" path="res://addons/gdquest_gdbot/texture/parts/eye_spiral.png" id="3_rdwvm"]
|
||||
[ext_resource type="Texture2D" uid="uid://blet3qwl4cbi3" path="res://addons/gdquest_gdbot/texture/parts/smile.png" id="3_xjkgv"]
|
||||
[ext_resource type="Texture2D" uid="uid://b37rqx42rwpv" path="res://addons/gdquest_gdbot/texture/parts/open_mouth.png" id="4_wxn47"]
|
||||
[ext_resource type="Texture2D" uid="uid://b3b243yxcn5vq" path="res://addons/gdquest_gdbot/texture/parts/eye_close.png" id="6_rog2n"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_33is7"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("LeftEye:texture")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("2_qfyd4")]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("RightEye:texture")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("2_qfyd4")]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Mouth:texture")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("3_xjkgv")]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("LeftEye:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("RightEye:rotation")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/5/type = "value"
|
||||
tracks/5/imported = false
|
||||
tracks/5/enabled = true
|
||||
tracks/5/path = NodePath("LeftEye:flip_h")
|
||||
tracks/5/interp = 1
|
||||
tracks/5/loop_wrap = true
|
||||
tracks/5/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [true]
|
||||
}
|
||||
tracks/6/type = "value"
|
||||
tracks/6/imported = false
|
||||
tracks/6/enabled = true
|
||||
tracks/6/path = NodePath("RightEye:flip_h")
|
||||
tracks/6/interp = 1
|
||||
tracks/6/loop_wrap = true
|
||||
tracks/6/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/7/type = "value"
|
||||
tracks/7/imported = false
|
||||
tracks/7/enabled = true
|
||||
tracks/7/path = NodePath("Mouth:position")
|
||||
tracks/7/interp = 1
|
||||
tracks/7/loop_wrap = true
|
||||
tracks/7/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 20.2222)]
|
||||
}
|
||||
tracks/8/type = "value"
|
||||
tracks/8/imported = false
|
||||
tracks/8/enabled = true
|
||||
tracks/8/path = NodePath("Mouth:scale")
|
||||
tracks/8/interp = 1
|
||||
tracks/8/loop_wrap = true
|
||||
tracks/8/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1.2)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ne3is"]
|
||||
resource_name = "dizzy"
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("LeftEye:rotation")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 6.28319]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("RightEye:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [0.0, 6.28319]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("RightEye:texture")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("3_rdwvm")]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("LeftEye:texture")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("3_rdwvm")]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Mouth:texture")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("4_wxn47")]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ttnon"]
|
||||
resource_name = "happy"
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("LeftEye:texture")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("2_fa0xy")]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("RightEye:texture")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("2_fa0xy")]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_rbq53"]
|
||||
resource_name = "look_around"
|
||||
length = 0.8
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("RightEye:texture")
|
||||
tracks/0/interp = 0
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.1, 0.4, 0.5, 0.7),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("6_rog2n"), ExtResource("2_qfyd4"), ExtResource("6_rog2n"), ExtResource("2_qfyd4"), ExtResource("6_rog2n")]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("LeftEye:texture")
|
||||
tracks/1/interp = 0
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.1, 0.4, 0.5, 0.7),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("6_rog2n"), ExtResource("2_qfyd4"), ExtResource("6_rog2n"), ExtResource("2_qfyd4"), ExtResource("6_rog2n")]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("LeftEye:flip_h")
|
||||
tracks/2/interp = 0
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 0.1, 0.4, 0.5, 0.7),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||
"update": 1,
|
||||
"values": [true, false, true, true, true]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("RightEye:flip_h")
|
||||
tracks/3/interp = 0
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5, 0.7),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 1,
|
||||
"values": [false, true, false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_4tctg"]
|
||||
resource_name = "sleepy"
|
||||
length = 4.0
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Mouth:texture")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("4_wxn47")]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("RightEye:texture")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("6_rog2n")]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("LeftEye:texture")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ExtResource("6_rog2n")]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Mouth:position")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(),
|
||||
"transitions": PackedFloat32Array(),
|
||||
"update": 0,
|
||||
"values": []
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Mouth:scale")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(),
|
||||
"transitions": PackedFloat32Array(),
|
||||
"update": 0,
|
||||
"values": []
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_l5i24"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_33is7"),
|
||||
"dizzy": SubResource("Animation_ne3is"),
|
||||
"happy": SubResource("Animation_ttnon"),
|
||||
"look_around": SubResource("Animation_rbq53"),
|
||||
"sleepy": SubResource("Animation_4tctg")
|
||||
}
|
||||
|
||||
[node name="GDbotFace" type="Node2D"]
|
||||
script = ExtResource("1_g7fgr")
|
||||
|
||||
[node name="BG" type="ColorRect" parent="."]
|
||||
offset_left = -144.0
|
||||
offset_top = -144.0
|
||||
offset_right = 144.0
|
||||
offset_bottom = 144.0
|
||||
size_flags_horizontal = 4
|
||||
|
||||
[node name="RightEye" type="Sprite2D" parent="."]
|
||||
position = Vector2(45, -2)
|
||||
texture = ExtResource("2_qfyd4")
|
||||
|
||||
[node name="LeftEye" type="Sprite2D" parent="."]
|
||||
position = Vector2(-45, -2)
|
||||
texture = ExtResource("2_qfyd4")
|
||||
flip_h = true
|
||||
|
||||
[node name="Mouth" type="Sprite2D" parent="."]
|
||||
position = Vector2(0, 20.2222)
|
||||
scale = Vector2(1, 1.2)
|
||||
texture = ExtResource("3_xjkgv")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_l5i24")
|
||||
}
|
||||
|
||||
[node name="BlinkTimer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[node name="ClosedTimer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
@@ -0,0 +1,41 @@
|
||||
extends Node3D
|
||||
|
||||
## Represents the blending between the walking and running animations. It can be set to different values (e.g. 0.0 to 1.0) to adjust the balance between the two animations, resulting in the model appearing to walk or run depending on the value.
|
||||
var walk_run_blending = 0.0:
|
||||
set = _set_walk_run_blending
|
||||
|
||||
@onready var _animation_tree = $AnimationTree
|
||||
@onready var _main_state_machine: AnimationNodeStateMachinePlayback = _animation_tree.get("parameters/StateMachine/playback")
|
||||
@onready var _walk_run_blend_position: String = "parameters/StateMachine/Walk/blend_position"
|
||||
@onready var _face = $SubViewport/GDbotFace
|
||||
|
||||
|
||||
func _set_walk_run_blending(value: float) -> void:
|
||||
walk_run_blending = value
|
||||
_animation_tree.set(_walk_run_blend_position, walk_run_blending)
|
||||
|
||||
|
||||
## Sets the model to a neutral, action-free state.
|
||||
func idle() -> void:
|
||||
_main_state_machine.travel("Idle")
|
||||
|
||||
|
||||
## Sets the model to a walking or running animation or forward movement.
|
||||
func walk() -> void:
|
||||
_main_state_machine.travel("Walk")
|
||||
|
||||
|
||||
## Sets the model to an upward-leaping animation, simulating a jump.
|
||||
func jump() -> void:
|
||||
_main_state_machine.travel("Jump")
|
||||
|
||||
|
||||
## Sets the model to a downward animation, imitating a fall.
|
||||
func fall() -> void:
|
||||
_main_state_machine.travel("Fall")
|
||||
|
||||
|
||||
## Changes the model's facial expression based on the provided input string values. Possible expressions include "default" (for default blinking), "happy" (for a joyful expression), "dizzy" (for spiraling eyes), and "sleepy" (for a drowsy countenance).
|
||||
##[br][b]Note:[/b] To add new expressions, you can edit gdbot_face.tscn, which is a 2D scene utilized by a viewport node to display on Gdbot's face.
|
||||
func set_face(face_name: String) -> void:
|
||||
_face._set_face(face_name)
|
||||
@@ -0,0 +1 @@
|
||||
uid://dk2a8ahqexwrw
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://cdqqp1tvfod18"]
|
||||
|
||||
[ext_resource type="Shader" path="res://addons/gdquest_models_shared/shaders/screen_shader.gdshader" id="1_e2dsf"]
|
||||
[ext_resource type="Texture2D" uid="uid://diovavdu1x8kw" path="res://addons/gdquest_gdbot/texture/open.png" id="2_rkdwa"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_e2dsf")
|
||||
shader_parameter/intensity = 2.0
|
||||
shader_parameter/screen_color = Color(0.101961, 0.662745, 1, 0.0196078)
|
||||
shader_parameter/screen_red_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_green_offset = Vector2(0, 0)
|
||||
shader_parameter/screen_blue_offset = Vector2(0, 0)
|
||||
shader_parameter/pixel_size = 32.0
|
||||
shader_parameter/face_texture = ExtResource("2_rkdwa")
|
||||
@@ -0,0 +1,7 @@
|
||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://4ugdxr58llu8"]
|
||||
|
||||
[resource]
|
||||
transparency = 1
|
||||
albedo_color = Color(1, 1, 1, 0.443137)
|
||||
metallic_specular = 1.0
|
||||
roughness = 0.1
|
||||
@@ -0,0 +1,7 @@
|
||||
[gd_resource type="StandardMaterial3D" format=3 uid="uid://cq6bdna8ieu87"]
|
||||
|
||||
[resource]
|
||||
albedo_color = Color(0, 0, 0, 1)
|
||||
emission_enabled = true
|
||||
emission = Color(0, 1, 0.392157, 1)
|
||||
emission_energy_multiplier = 2.39158
|
||||
|
After Width: | Height: | Size: 4.6 KiB |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cgja2o4qwiksx"
|
||||
path="res://.godot/imported/closed.png-fef69d6a34ff2f7909f3ad32fb746ab3.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/closed.png"
|
||||
dest_files=["res://.godot/imported/closed.png-fef69d6a34ff2f7909f3ad32fb746ab3.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 7.3 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://diovavdu1x8kw"
|
||||
path.s3tc="res://.godot/imported/open.png-fa23bddfc51b3db085d614890efe0381.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/open.png"
|
||||
dest_files=["res://.godot/imported/open.png-fa23bddfc51b3db085d614890efe0381.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 426 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b3b243yxcn5vq"
|
||||
path="res://.godot/imported/eye_close.png-efde4cf43c74014167558b0b58cc9dd1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/eye_close.png"
|
||||
dest_files=["res://.godot/imported/eye_close.png-efde4cf43c74014167558b0b58cc9dd1.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 468 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cbp882a2a27qw"
|
||||
path="res://.godot/imported/eye_happy.png-e9210b9119308ed8a9c328ce24f23b03.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/eye_happy.png"
|
||||
dest_files=["res://.godot/imported/eye_happy.png-e9210b9119308ed8a9c328ce24f23b03.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 658 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blacn6s3yc88h"
|
||||
path="res://.godot/imported/eye_open.png-9bb1fcc1981f76c850c2b63957767079.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/eye_open.png"
|
||||
dest_files=["res://.godot/imported/eye_open.png-9bb1fcc1981f76c850c2b63957767079.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 783 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dt0veafbpw6ih"
|
||||
path="res://.godot/imported/eye_spiral.png-d6350629c0a489736bbb8fd5447ba2dc.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/eye_spiral.png"
|
||||
dest_files=["res://.godot/imported/eye_spiral.png-d6350629c0a489736bbb8fd5447ba2dc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 373 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b37rqx42rwpv"
|
||||
path="res://.godot/imported/open_mouth.png-47f2c7ce90dd333ffa4ce1aa835b4b0f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/open_mouth.png"
|
||||
dest_files=["res://.godot/imported/open_mouth.png-47f2c7ce90dd333ffa4ce1aa835b4b0f.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
|
After Width: | Height: | Size: 395 B |
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blet3qwl4cbi3"
|
||||
path="res://.godot/imported/smile.png-4730846cc97fdf243e99179d556c0636.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gdbot/texture/parts/smile.png"
|
||||
dest_files=["res://.godot/imported/smile.png-4730846cc97fdf243e99179d556c0636.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
@@ -0,0 +1,106 @@
|
||||
extends Node3D
|
||||
|
||||
## Emitted when Gobot's feet hit the ground will running.
|
||||
@warning_ignore("unused_signal")
|
||||
signal foot_step
|
||||
## Gobot's MeshInstance3D model.
|
||||
@export var gobot_model: MeshInstance3D
|
||||
## Determines whether blinking is enabled or disabled.
|
||||
@export var blink = true:
|
||||
set = _set_blink
|
||||
@export var _left_eye_mat_override: String
|
||||
@export var _right_eye_mat_override: String
|
||||
@export var _open_eye: CompressedTexture2D
|
||||
@export var _close_eye: CompressedTexture2D
|
||||
|
||||
@onready var _animation_tree: AnimationTree = %AnimationTree
|
||||
@onready var _state_machine: AnimationNodeStateMachinePlayback = _animation_tree.get(
|
||||
"parameters/StateMachine/playback",
|
||||
)
|
||||
|
||||
@onready var _flip_shot_path: String = "parameters/FlipShot/request"
|
||||
@onready var _hurt_shot_path: String = "parameters/HurtShot/request"
|
||||
|
||||
@onready var _blink_timer = %BlinkTimer
|
||||
@onready var _closed_eyes_timer = %ClosedEyesTimer
|
||||
|
||||
@onready var _left_eye_mat: StandardMaterial3D = gobot_model.get(_left_eye_mat_override)
|
||||
@onready var _right_eye_mat: StandardMaterial3D = gobot_model.get(_right_eye_mat_override)
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_blink_timer.timeout.connect(
|
||||
func() -> void:
|
||||
_left_eye_mat.albedo_texture = _close_eye
|
||||
_right_eye_mat.albedo_texture = _close_eye
|
||||
_closed_eyes_timer.start(0.2)
|
||||
)
|
||||
|
||||
_closed_eyes_timer.timeout.connect(
|
||||
func() -> void:
|
||||
_left_eye_mat.albedo_texture = _open_eye
|
||||
_right_eye_mat.albedo_texture = _open_eye
|
||||
_blink_timer.start(randf_range(1.0, 8.0))
|
||||
)
|
||||
|
||||
|
||||
func _set_blink(state: bool) -> void:
|
||||
if _blink_timer == null or blink == state:
|
||||
return
|
||||
|
||||
blink = state
|
||||
if blink:
|
||||
_blink_timer.start(0.2)
|
||||
else:
|
||||
_blink_timer.stop()
|
||||
_closed_eyes_timer.stop()
|
||||
|
||||
|
||||
## Sets the model to a neutral, action-free state.
|
||||
func idle() -> void:
|
||||
_state_machine.travel("Idle")
|
||||
|
||||
|
||||
## Sets the model to a running animation or forward movement.
|
||||
func run() -> void:
|
||||
_state_machine.travel("Run")
|
||||
|
||||
|
||||
## Sets the model to an upward-leaping animation, simulating a jump.
|
||||
func jump() -> void:
|
||||
_state_machine.travel("Jump")
|
||||
|
||||
|
||||
## Sets the model to a downward animation, imitating a fall.
|
||||
func fall() -> void:
|
||||
_state_machine.travel("Fall")
|
||||
|
||||
|
||||
## Sets the model to an edge-grabbing animation.
|
||||
func edge_grab() -> void:
|
||||
_state_machine.travel("EdgeGrab")
|
||||
|
||||
|
||||
## Sets the model to a wall-sliding animation.
|
||||
func wall_slide() -> void:
|
||||
_state_machine.travel("WallSlide")
|
||||
|
||||
|
||||
## Plays a one-shot front-flip animation.
|
||||
## This animation does not play in parallel with other states.
|
||||
func flip() -> void:
|
||||
_animation_tree.set(_flip_shot_path, AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)
|
||||
|
||||
|
||||
## Makes a victory sign.
|
||||
func victory_sign() -> void:
|
||||
_state_machine.travel("VictorySign")
|
||||
|
||||
|
||||
## Plays a one-shot hurt animation.
|
||||
## This animation plays in parallel with other states.
|
||||
func hurt() -> void:
|
||||
_animation_tree.set(_hurt_shot_path, AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)
|
||||
var tween := create_tween().set_ease(Tween.EASE_OUT)
|
||||
tween.tween_property(self, "scale", Vector3(1.2, 0.8, 1.2), 0.1)
|
||||
tween.tween_property(self, "scale", Vector3.ONE, 0.2)
|
||||
@@ -0,0 +1 @@
|
||||
uid://02pjlm1ilk3w
|
||||
@@ -0,0 +1,10 @@
|
||||
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://div0enqs04w5j"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dq675fmt1rg8c" path="res://addons/gdquest_gobot/textures/open_eye.png" id="1_5dt3l"]
|
||||
|
||||
[resource]
|
||||
resource_local_to_scene = true
|
||||
albedo_texture = ExtResource("1_5dt3l")
|
||||
roughness = 0.6
|
||||
uv1_offset = Vector3(0.1, 0, 0)
|
||||
texture_repeat = false
|
||||
|
After Width: | Height: | Size: 100 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bt5o0sr6peltq"
|
||||
path="res://.godot/imported/gobot_gobot_diffuse.png-c83f8d3c18adfb7066204439a2511192.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
generator_parameters={}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/model/gobot_gobot_diffuse.png"
|
||||
dest_files=["res://.godot/imported/gobot_gobot_diffuse.png-c83f8d3c18adfb7066204439a2511192.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=3
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 338 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d28w5bql3g21l"
|
||||
path="res://.godot/imported/gobot_gobot_normal.png-6f93c6cc4c0a48e074db4dd4db458dbc.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
generator_parameters={}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/model/gobot_gobot_normal.png"
|
||||
dest_files=["res://.godot/imported/gobot_gobot_normal.png-6f93c6cc4c0a48e074db4dd4db458dbc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=3
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=1
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=1
|
||||
roughness/src_normal="res://gobot_gobot_normal.png"
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 18 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cgkj45d67dalm"
|
||||
path="res://.godot/imported/gobot_gobot_roughness.png-8eba6ba5965b45eee2c401c8f0baa19e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
generator_parameters={}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/model/gobot_gobot_roughness.png"
|
||||
dest_files=["res://.godot/imported/gobot_gobot_roughness.png-8eba6ba5965b45eee2c401c8f0baa19e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=3
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cfdf62ci74tew"
|
||||
path.s3tc="res://.godot/imported/closed_eyes.png-aa9cb2ca69d6c9798fa101c808cfe47c.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/textures/closed_eyes.png"
|
||||
dest_files=["res://.godot/imported/closed_eyes.png-aa9cb2ca69d6c9798fa101c808cfe47c.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://yj5yx07nva6l"
|
||||
path.s3tc="res://.godot/imported/hurt_eyes.png-e9e04633bf0c25aa84ffd681ba4d7aab.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/textures/hurt_eyes.png"
|
||||
dest_files=["res://.godot/imported/hurt_eyes.png-e9e04633bf0c25aa84ffd681ba4d7aab.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
|
After Width: | Height: | Size: 7.7 KiB |
@@ -0,0 +1,41 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dq675fmt1rg8c"
|
||||
path.s3tc="res://.godot/imported/open_eye.png-722ffe197d371649d01447f2862e3842.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_gobot/textures/open_eye.png"
|
||||
dest_files=["res://.godot/imported/open_eye.png-722ffe197d371649d01447f2862e3842.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
@@ -0,0 +1,64 @@
|
||||
@icon("./gdquest_model_viewer_3d.svg")
|
||||
class_name GDQuestModelViewer3D extends Node
|
||||
|
||||
const _ModelViewer3d = preload("./viewer/model_viewer_3d.gd")
|
||||
const _MODEL_VIEWER_3D_SCENE = preload("./viewer/model_viewer_3d.tscn")
|
||||
|
||||
signal children_ready
|
||||
|
||||
var _data_models_map := { }
|
||||
var _scene: _ModelViewer3d
|
||||
var _children_are_ready := false
|
||||
|
||||
@export var known_models: Array[ModelData]
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_scene = _MODEL_VIEWER_3D_SCENE.instantiate() as _ModelViewer3d
|
||||
_scene.known_models = known_models
|
||||
add_child(_scene)
|
||||
|
||||
for index in known_models.size():
|
||||
var model := known_models[index]
|
||||
var model_name := model.name.to_lower().replace(" ", "_")
|
||||
_data_models_map[model_name] = index
|
||||
|
||||
# allow the side menu to get its size
|
||||
await get_tree().physics_frame
|
||||
await get_tree().physics_frame
|
||||
_children_are_ready = true
|
||||
children_ready.emit()
|
||||
|
||||
set_model_from_arguments()
|
||||
set_model_from_browser_hash()
|
||||
|
||||
|
||||
func set_model_by_name(model_name: String) -> void:
|
||||
if not (model_name in _data_models_map):
|
||||
return
|
||||
if not _children_are_ready:
|
||||
await children_ready
|
||||
_scene.model_selector.selection = _data_models_map[model_name]
|
||||
|
||||
|
||||
func set_model_from_arguments() -> void:
|
||||
var arguments := { }
|
||||
for argument in OS.get_cmdline_args():
|
||||
if argument.find("=") > -1:
|
||||
var key_value := argument.split("=")
|
||||
arguments[key_value[0].lstrip("--")] = key_value[1]
|
||||
if 'model' in arguments:
|
||||
set_model_by_name(arguments['model'])
|
||||
|
||||
|
||||
func set_model_from_browser_hash() -> void:
|
||||
if not OS.has_feature('web'):
|
||||
return
|
||||
var hash_bits = (JavaScriptBridge.eval("window.location.hash") as String).lstrip('#').split("&")
|
||||
var arguments := { }
|
||||
for hash in hash_bits:
|
||||
if hash.find('=') > -1:
|
||||
var key_value := hash.split("=")
|
||||
arguments[key_value[0]] = key_value[1]
|
||||
if 'model' in arguments:
|
||||
set_model_by_name(arguments['model'])
|
||||
@@ -0,0 +1 @@
|
||||
uid://2elcbvga7dcs
|
||||
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="16"
|
||||
height="16"
|
||||
viewBox="0 0 4.2333333 4.2333333"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
|
||||
sodipodi:docname="gdquest_model_viewer_3d.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="true"
|
||||
inkscape:zoom="32"
|
||||
inkscape:cx="11.984375"
|
||||
inkscape:cy="5.703125"
|
||||
inkscape:window-width="2560"
|
||||
inkscape:window-height="1515"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="48"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid234" />
|
||||
</sodipodi:namedview>
|
||||
<defs
|
||||
id="defs2" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<rect
|
||||
style="font-variation-settings:'wght' 900;fill:#ad7fa8;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
id="rect236"
|
||||
width="4.2333331"
|
||||
height="4.2333331"
|
||||
x="2.2252401e-07"
|
||||
y="2.2252401e-07" />
|
||||
<rect
|
||||
style="font-variation-settings:'wght' 900;fill:#5c3566;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
id="rect238"
|
||||
width="3.7041664"
|
||||
height="3.7041664"
|
||||
x="0.26458335"
|
||||
y="0.26458335" />
|
||||
<path
|
||||
style="font-variation-settings:'wght' 900;fill:#ad7fa8;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
d="m 0.52916667,2.38125 -10e-9,1.3229166 1.32291664,0 V 3.175 l -0.79375,0 0,-0.79375 z"
|
||||
id="path402"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="font-variation-settings:'wght' 900;fill:#ad7fa8;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
d="M 3.7041667,2.38125 V 3.7041666 H 2.38125 V 3.175 H 3.175 V 2.38125 Z"
|
||||
id="path554"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="font-variation-settings:'wght' 900;fill:#ad7fa8;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
d="M 0.52916663,1.8520833 V 0.5291667 H 1.8520834 V 1.0583333 H 1.0583333 v 0.79375 z"
|
||||
id="path556"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="font-variation-settings:'wght' 900;fill:#ad7fa8;stroke-width:2.54;paint-order:stroke fill markers;stop-color:#000000"
|
||||
d="M 3.7041668,1.8520833 V 0.52916673 H 2.38125 V 1.0583333 h 0.7937501 v 0.79375 z"
|
||||
id="path558"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.0 KiB |
@@ -0,0 +1,43 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ct08dwhevk2ru"
|
||||
path="res://.godot/imported/gdquest_model_viewer_3d.svg-0c71335137aa78b827643859c5f97f11.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_model_viewer_3d/gdquest_model_viewer_3d.svg"
|
||||
dest_files=["res://.godot/imported/gdquest_model_viewer_3d.svg-0c71335137aa78b827643859c5f97f11.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=false
|
||||
editor/convert_colors_with_editor_theme=false
|
||||
@@ -0,0 +1,7 @@
|
||||
[plugin]
|
||||
|
||||
name="GDQuest Model Viewer 3D"
|
||||
description="A turntable for 3D models"
|
||||
author="GDQuest"
|
||||
version="1.0"
|
||||
script="plugin.gd"
|
||||
@@ -0,0 +1,2 @@
|
||||
@tool
|
||||
extends EditorPlugin
|
||||
@@ -0,0 +1 @@
|
||||
uid://m22bqkb84le7
|
||||
@@ -0,0 +1,7 @@
|
||||
extends OptionButton
|
||||
|
||||
func setup(values: PackedStringArray) -> void:
|
||||
clear()
|
||||
for value in values:
|
||||
add_item(value)
|
||||
select(0)
|
||||
@@ -0,0 +1 @@
|
||||
uid://b3iqdl3p46v67
|
||||
@@ -0,0 +1,14 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://cqdapslfy1rva"]
|
||||
|
||||
[ext_resource type="Shader" path="res://addons/gdquest_model_viewer_3d/viewer/assets/shaders/bg.gdshader" id="1_4vwfw"]
|
||||
[ext_resource type="Texture2D" uid="uid://bcls3ehldqget" path="res://addons/gdquest_model_viewer_3d/viewer/assets/textures/gdquest_logo_sdf.png" id="2_2b3l1"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_4vwfw")
|
||||
shader_parameter/logo_scale = 2.0
|
||||
shader_parameter/logo_opacity = 0.025
|
||||
shader_parameter/border_color = Color(0.117647, 0.117647, 0.141176, 1)
|
||||
shader_parameter/center_color = Color(0.137255, 0.14902, 0.160784, 1)
|
||||
shader_parameter/ratio = Vector2(2, 1)
|
||||
shader_parameter/logo_sampler_sdf = ExtResource("2_2b3l1")
|
||||
@@ -0,0 +1,999 @@
|
||||
# Blender 3.4.1
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 10.000000 -10.000000
|
||||
v 1.950903 10.000000 -9.807853
|
||||
v 3.826835 10.000000 -9.238795
|
||||
v 5.555702 10.000000 -8.314696
|
||||
v 7.071068 10.000000 -7.071068
|
||||
v 8.314696 10.000000 -5.555702
|
||||
v 9.238795 10.000000 -3.826835
|
||||
v 9.807853 10.000000 -1.950903
|
||||
v 10.000000 10.000000 0.000000
|
||||
v 9.807853 10.000000 1.950903
|
||||
v 9.238795 10.000000 3.826835
|
||||
v 8.314696 10.000000 5.555702
|
||||
v 7.071068 10.000000 7.071068
|
||||
v 5.555702 10.000000 8.314696
|
||||
v 3.826835 10.000000 9.238795
|
||||
v 1.950903 10.000000 9.807853
|
||||
v 0.000000 10.000000 10.000000
|
||||
v -1.950903 10.000000 9.807853
|
||||
v -3.826835 10.000000 9.238795
|
||||
v -5.555702 10.000000 8.314696
|
||||
v -7.071068 10.000000 7.071068
|
||||
v -8.314696 10.000000 5.555702
|
||||
v -9.238795 10.000000 3.826835
|
||||
v -9.807853 10.000000 1.950903
|
||||
v -10.000000 10.000000 0.000000
|
||||
v -9.807853 10.000000 -1.950903
|
||||
v -9.238795 10.000000 -3.826835
|
||||
v -8.314696 10.000000 -5.555702
|
||||
v -7.071068 10.000000 -7.071068
|
||||
v -5.555702 10.000000 -8.314696
|
||||
v -3.826835 10.000000 -9.238795
|
||||
v -1.950903 10.000000 -9.807853
|
||||
v 0.000000 0.000000 -7.990323
|
||||
v 0.000000 2.000000 -10.000000
|
||||
v 0.000000 0.097887 -8.611347
|
||||
v 0.000000 0.381966 -9.171581
|
||||
v 0.000000 0.824430 -9.616185
|
||||
v 0.000000 1.381966 -9.901639
|
||||
v 1.558833 0.000000 -7.836791
|
||||
v 1.950903 2.000000 -9.807853
|
||||
v 1.679990 0.097887 -8.445883
|
||||
v 1.789286 0.381966 -8.995352
|
||||
v 1.876024 0.824430 -9.431414
|
||||
v 1.931714 1.381966 -9.711382
|
||||
v 3.057765 0.000000 -7.382095
|
||||
v 3.826835 2.000000 -9.238795
|
||||
v 3.295421 0.097887 -7.955848
|
||||
v 3.509813 0.381966 -8.473436
|
||||
v 3.679956 0.824430 -8.884198
|
||||
v 3.789194 1.381966 -9.147923
|
||||
v 4.439185 0.000000 -6.643711
|
||||
v 5.555702 2.000000 -8.314696
|
||||
v 4.784208 0.097887 -7.160074
|
||||
v 5.095458 0.381966 -7.625892
|
||||
v 5.342466 0.824430 -7.995566
|
||||
v 5.501056 1.381966 -8.232913
|
||||
v 5.650012 0.000000 -5.650012
|
||||
v 7.071068 2.000000 -7.071068
|
||||
v 6.089141 0.097887 -6.089141
|
||||
v 6.485287 0.381966 -6.485287
|
||||
v 6.799670 0.824430 -6.799670
|
||||
v 7.001516 1.381966 -7.001516
|
||||
v 6.643711 0.000000 -4.439186
|
||||
v 8.314696 2.000000 -5.555702
|
||||
v 7.160073 0.097887 -4.784208
|
||||
v 7.625892 0.381966 -5.095458
|
||||
v 7.995566 0.824430 -5.342466
|
||||
v 8.232912 1.381966 -5.501056
|
||||
v 7.382095 0.000000 -3.057765
|
||||
v 9.238795 2.000000 -3.826835
|
||||
v 7.955848 0.097887 -3.295421
|
||||
v 8.473436 0.381966 -3.509813
|
||||
v 8.884198 0.824430 -3.679956
|
||||
v 9.147923 1.381966 -3.789194
|
||||
v 7.836791 0.000000 -1.558833
|
||||
v 9.807853 2.000000 -1.950903
|
||||
v 8.445883 0.097887 -1.679990
|
||||
v 8.995352 0.381966 -1.789286
|
||||
v 9.431414 0.824430 -1.876024
|
||||
v 9.711382 1.381966 -1.931714
|
||||
v 7.990323 0.000000 0.000000
|
||||
v 10.000000 2.000000 0.000000
|
||||
v 8.611347 0.097887 0.000000
|
||||
v 9.171581 0.381966 0.000000
|
||||
v 9.616185 0.824430 0.000000
|
||||
v 9.901639 1.381966 0.000000
|
||||
v 7.836791 0.000000 1.558833
|
||||
v 9.807853 2.000000 1.950903
|
||||
v 8.445883 0.097887 1.679990
|
||||
v 8.995352 0.381966 1.789286
|
||||
v 9.431414 0.824430 1.876024
|
||||
v 9.711382 1.381966 1.931714
|
||||
v 7.382095 0.000000 3.057765
|
||||
v 9.238795 2.000000 3.826835
|
||||
v 7.955848 0.097887 3.295421
|
||||
v 8.473436 0.381966 3.509813
|
||||
v 8.884198 0.824430 3.679956
|
||||
v 9.147923 1.381966 3.789194
|
||||
v 6.643711 0.000000 4.439185
|
||||
v 8.314696 2.000000 5.555702
|
||||
v 7.160074 0.097887 4.784208
|
||||
v 7.625892 0.381966 5.095458
|
||||
v 7.995566 0.824430 5.342466
|
||||
v 8.232913 1.381966 5.501056
|
||||
v 5.650012 0.000000 5.650012
|
||||
v 7.071068 2.000000 7.071068
|
||||
v 6.089141 0.097887 6.089141
|
||||
v 6.485287 0.381966 6.485287
|
||||
v 6.799670 0.824430 6.799670
|
||||
v 7.001516 1.381966 7.001516
|
||||
v 4.439186 0.000000 6.643711
|
||||
v 5.555702 2.000000 8.314696
|
||||
v 4.784208 0.097887 7.160073
|
||||
v 5.095458 0.381966 7.625892
|
||||
v 5.342466 0.824430 7.995566
|
||||
v 5.501056 1.381966 8.232912
|
||||
v 3.057765 0.000000 7.382095
|
||||
v 3.826835 2.000000 9.238795
|
||||
v 3.295421 0.097887 7.955848
|
||||
v 3.509813 0.381966 8.473436
|
||||
v 3.679956 0.824430 8.884198
|
||||
v 3.789194 1.381966 9.147923
|
||||
v 1.558833 0.000000 7.836791
|
||||
v 1.950903 2.000000 9.807853
|
||||
v 1.679990 0.097887 8.445883
|
||||
v 1.789286 0.381966 8.995352
|
||||
v 1.876024 0.824430 9.431414
|
||||
v 1.931714 1.381966 9.711382
|
||||
v 0.000000 0.000000 7.990323
|
||||
v 0.000000 2.000000 10.000000
|
||||
v 0.000000 0.097887 8.611347
|
||||
v 0.000000 0.381966 9.171581
|
||||
v 0.000000 0.824430 9.616185
|
||||
v 0.000000 1.381966 9.901639
|
||||
v -1.558833 0.000000 7.836791
|
||||
v -1.950903 2.000000 9.807853
|
||||
v -1.679990 0.097887 8.445883
|
||||
v -1.789286 0.381966 8.995352
|
||||
v -1.876024 0.824430 9.431414
|
||||
v -1.931714 1.381966 9.711382
|
||||
v -3.057765 0.000000 7.382095
|
||||
v -3.826835 2.000000 9.238795
|
||||
v -3.295421 0.097887 7.955848
|
||||
v -3.509813 0.381966 8.473436
|
||||
v -3.679956 0.824430 8.884198
|
||||
v -3.789194 1.381966 9.147923
|
||||
v -4.439185 0.000000 6.643711
|
||||
v -5.555702 2.000000 8.314696
|
||||
v -4.784208 0.097887 7.160074
|
||||
v -5.095458 0.381966 7.625892
|
||||
v -5.342466 0.824430 7.995566
|
||||
v -5.501056 1.381966 8.232913
|
||||
v -5.650012 0.000000 5.650012
|
||||
v -7.071068 2.000000 7.071068
|
||||
v -6.089141 0.097887 6.089141
|
||||
v -6.485287 0.381966 6.485287
|
||||
v -6.799670 0.824430 6.799670
|
||||
v -7.001516 1.381966 7.001516
|
||||
v -6.643711 0.000000 4.439186
|
||||
v -8.314696 2.000000 5.555702
|
||||
v -7.160073 0.097887 4.784208
|
||||
v -7.625892 0.381966 5.095458
|
||||
v -7.995566 0.824430 5.342466
|
||||
v -8.232912 1.381966 5.501056
|
||||
v -7.382095 0.000000 3.057765
|
||||
v -9.238795 2.000000 3.826835
|
||||
v -7.955848 0.097887 3.295421
|
||||
v -8.473436 0.381966 3.509813
|
||||
v -8.884198 0.824430 3.679956
|
||||
v -9.147923 1.381966 3.789194
|
||||
v -7.836791 0.000000 1.558833
|
||||
v -9.807853 2.000000 1.950903
|
||||
v -8.445883 0.097887 1.679990
|
||||
v -8.995352 0.381966 1.789286
|
||||
v -9.431414 0.824430 1.876024
|
||||
v -9.711382 1.381966 1.931714
|
||||
v -7.990323 0.000000 0.000000
|
||||
v -10.000000 2.000000 0.000000
|
||||
v -8.611347 0.097887 0.000000
|
||||
v -9.171581 0.381966 0.000000
|
||||
v -9.616185 0.824430 0.000000
|
||||
v -9.901639 1.381966 0.000000
|
||||
v -7.836791 0.000000 -1.558833
|
||||
v -9.807853 2.000000 -1.950903
|
||||
v -8.445883 0.097887 -1.679990
|
||||
v -8.995352 0.381966 -1.789286
|
||||
v -9.431414 0.824430 -1.876024
|
||||
v -9.711382 1.381966 -1.931714
|
||||
v -7.382095 0.000000 -3.057765
|
||||
v -9.238795 2.000000 -3.826835
|
||||
v -7.955848 0.097887 -3.295421
|
||||
v -8.473436 0.381966 -3.509813
|
||||
v -8.884198 0.824430 -3.679956
|
||||
v -9.147923 1.381966 -3.789194
|
||||
v -6.643711 0.000000 -4.439185
|
||||
v -8.314696 2.000000 -5.555702
|
||||
v -7.160074 0.097887 -4.784208
|
||||
v -7.625892 0.381966 -5.095458
|
||||
v -7.995566 0.824430 -5.342466
|
||||
v -8.232913 1.381966 -5.501056
|
||||
v -5.650012 0.000000 -5.650012
|
||||
v -7.071068 2.000000 -7.071068
|
||||
v -6.089141 0.097887 -6.089141
|
||||
v -6.485287 0.381966 -6.485287
|
||||
v -6.799670 0.824430 -6.799670
|
||||
v -7.001516 1.381966 -7.001516
|
||||
v -4.439186 0.000000 -6.643711
|
||||
v -5.555702 2.000000 -8.314696
|
||||
v -4.784208 0.097887 -7.160073
|
||||
v -5.095458 0.381966 -7.625892
|
||||
v -5.342466 0.824430 -7.995566
|
||||
v -5.501056 1.381966 -8.232912
|
||||
v -3.057765 0.000000 -7.382095
|
||||
v -3.826835 2.000000 -9.238795
|
||||
v -3.295421 0.097887 -7.955848
|
||||
v -3.509813 0.381966 -8.473436
|
||||
v -3.679956 0.824430 -8.884198
|
||||
v -3.789194 1.381966 -9.147923
|
||||
v -1.558833 0.000000 -7.836791
|
||||
v -1.950903 2.000000 -9.807853
|
||||
v -1.679990 0.097887 -8.445883
|
||||
v -1.789286 0.381966 -8.995352
|
||||
v -1.876024 0.824430 -9.431414
|
||||
v -1.931714 1.381966 -9.711382
|
||||
vn -0.1945 -0.0784 -0.9778
|
||||
vn -0.1951 -0.0000 -0.9808
|
||||
vn -0.0000 -0.0000 -1.0000
|
||||
vn -0.0000 -0.0784 -0.9969
|
||||
vn 0.3815 -0.0784 -0.9210
|
||||
vn 0.3827 -0.0000 -0.9239
|
||||
vn 0.5556 -0.0000 -0.8315
|
||||
vn 0.5539 -0.0784 -0.8289
|
||||
vn 0.7071 -0.0000 -0.7071
|
||||
vn 0.7049 -0.0784 -0.7049
|
||||
vn 0.8315 -0.0000 -0.5556
|
||||
vn 0.8289 -0.0784 -0.5539
|
||||
vn 0.9239 -0.0000 -0.3827
|
||||
vn 0.9210 -0.0784 -0.3815
|
||||
vn 0.9808 -0.0000 -0.1951
|
||||
vn 0.9778 -0.0784 -0.1945
|
||||
vn 1.0000 -0.0000 -0.0000
|
||||
vn 0.9969 -0.0784 -0.0000
|
||||
vn 0.9808 -0.0000 0.1951
|
||||
vn 0.9778 -0.0784 0.1945
|
||||
vn 0.9239 -0.0000 0.3827
|
||||
vn 0.9210 -0.0784 0.3815
|
||||
vn 0.8315 -0.0000 0.5556
|
||||
vn 0.8289 -0.0784 0.5539
|
||||
vn 0.7071 -0.0000 0.7071
|
||||
vn 0.7049 -0.0784 0.7049
|
||||
vn 0.5556 -0.0000 0.8315
|
||||
vn 0.5539 -0.0784 0.8289
|
||||
vn 0.3827 -0.0000 0.9239
|
||||
vn 0.3815 -0.0784 0.9210
|
||||
vn 0.1951 -0.0000 0.9808
|
||||
vn 0.1945 -0.0784 0.9778
|
||||
vn -0.0000 -0.0000 1.0000
|
||||
vn -0.0000 -0.0784 0.9969
|
||||
vn -0.1951 -0.0000 0.9808
|
||||
vn -0.1945 -0.0784 0.9778
|
||||
vn -0.3827 -0.0000 0.9239
|
||||
vn -0.3815 -0.0784 0.9210
|
||||
vn -0.5556 -0.0000 0.8315
|
||||
vn -0.5539 -0.0784 0.8289
|
||||
vn -0.7071 -0.0000 0.7071
|
||||
vn -0.7049 -0.0784 0.7049
|
||||
vn -0.8315 -0.0000 0.5556
|
||||
vn -0.8289 -0.0784 0.5539
|
||||
vn -0.9239 -0.0000 0.3827
|
||||
vn -0.9210 -0.0784 0.3815
|
||||
vn -0.9808 -0.0000 0.1951
|
||||
vn -0.9778 -0.0784 0.1945
|
||||
vn -1.0000 -0.0000 -0.0000
|
||||
vn -0.9969 -0.0784 -0.0000
|
||||
vn -0.9808 -0.0000 -0.1951
|
||||
vn -0.9778 -0.0784 -0.1945
|
||||
vn -0.9239 -0.0000 -0.3827
|
||||
vn -0.9210 -0.0784 -0.3815
|
||||
vn -0.8315 -0.0000 -0.5556
|
||||
vn -0.8289 -0.0784 -0.5539
|
||||
vn -0.7071 -0.0000 -0.7071
|
||||
vn -0.7049 -0.0784 -0.7049
|
||||
vn -0.5556 -0.0000 -0.8315
|
||||
vn -0.5539 -0.0784 -0.8289
|
||||
vn -0.3827 -0.0000 -0.9239
|
||||
vn -0.3815 -0.0784 -0.9210
|
||||
vn 0.1945 -0.0784 -0.9778
|
||||
vn 0.1951 -0.0000 -0.9808
|
||||
vn 0.1856 -0.3074 -0.9333
|
||||
vn -0.0000 -0.3074 -0.9516
|
||||
vn 0.1582 -0.5849 -0.7955
|
||||
vn -0.0000 -0.5849 -0.8111
|
||||
vn 0.1156 -0.8057 -0.5810
|
||||
vn -0.0000 -0.8057 -0.5924
|
||||
vn 0.0617 -0.9486 -0.3104
|
||||
vn -0.0000 -0.9486 -0.3165
|
||||
vn 0.0162 -0.9966 -0.0813
|
||||
vn -0.0000 -0.9966 -0.0829
|
||||
vn 0.3641 -0.3074 -0.8791
|
||||
vn 0.3104 -0.5849 -0.7493
|
||||
vn 0.2267 -0.8057 -0.5473
|
||||
vn 0.1211 -0.9486 -0.2924
|
||||
vn 0.0317 -0.9966 -0.0766
|
||||
vn 0.5287 -0.3074 -0.7912
|
||||
vn 0.4506 -0.5849 -0.6744
|
||||
vn 0.3291 -0.8057 -0.4925
|
||||
vn 0.1758 -0.9486 -0.2632
|
||||
vn 0.0461 -0.9966 -0.0690
|
||||
vn 0.6729 -0.3074 -0.6729
|
||||
vn 0.5735 -0.5849 -0.5735
|
||||
vn 0.4189 -0.8057 -0.4189
|
||||
vn 0.2238 -0.9486 -0.2238
|
||||
vn 0.0586 -0.9966 -0.0586
|
||||
vn 0.7912 -0.3074 -0.5287
|
||||
vn 0.6744 -0.5849 -0.4506
|
||||
vn 0.4925 -0.8057 -0.3291
|
||||
vn 0.2632 -0.9486 -0.1758
|
||||
vn 0.0690 -0.9966 -0.0461
|
||||
vn 0.8791 -0.3074 -0.3641
|
||||
vn 0.7493 -0.5849 -0.3104
|
||||
vn 0.5473 -0.8057 -0.2267
|
||||
vn 0.2924 -0.9486 -0.1211
|
||||
vn 0.0766 -0.9966 -0.0317
|
||||
vn 0.9333 -0.3074 -0.1856
|
||||
vn 0.7955 -0.5849 -0.1582
|
||||
vn 0.5810 -0.8057 -0.1156
|
||||
vn 0.3104 -0.9486 -0.0617
|
||||
vn 0.0813 -0.9966 -0.0162
|
||||
vn 0.9516 -0.3074 -0.0000
|
||||
vn 0.8111 -0.5849 -0.0000
|
||||
vn 0.5924 -0.8057 -0.0000
|
||||
vn 0.3165 -0.9486 -0.0000
|
||||
vn 0.0829 -0.9966 -0.0000
|
||||
vn 0.9333 -0.3074 0.1856
|
||||
vn 0.7955 -0.5849 0.1582
|
||||
vn 0.5810 -0.8057 0.1156
|
||||
vn 0.3104 -0.9486 0.0617
|
||||
vn 0.0813 -0.9966 0.0162
|
||||
vn 0.8791 -0.3074 0.3641
|
||||
vn 0.7493 -0.5849 0.3104
|
||||
vn 0.5473 -0.8057 0.2267
|
||||
vn 0.2924 -0.9486 0.1211
|
||||
vn 0.0766 -0.9966 0.0317
|
||||
vn 0.7912 -0.3074 0.5287
|
||||
vn 0.6744 -0.5849 0.4506
|
||||
vn 0.4925 -0.8057 0.3291
|
||||
vn 0.2632 -0.9486 0.1758
|
||||
vn 0.0690 -0.9966 0.0461
|
||||
vn 0.6729 -0.3074 0.6729
|
||||
vn 0.5735 -0.5849 0.5735
|
||||
vn 0.4189 -0.8057 0.4189
|
||||
vn 0.2238 -0.9486 0.2238
|
||||
vn 0.0586 -0.9966 0.0586
|
||||
vn 0.5287 -0.3074 0.7912
|
||||
vn 0.4506 -0.5849 0.6744
|
||||
vn 0.3291 -0.8057 0.4925
|
||||
vn 0.1758 -0.9486 0.2632
|
||||
vn 0.0461 -0.9966 0.0690
|
||||
vn 0.3641 -0.3074 0.8791
|
||||
vn 0.3104 -0.5849 0.7493
|
||||
vn 0.2267 -0.8057 0.5473
|
||||
vn 0.1211 -0.9486 0.2924
|
||||
vn 0.0317 -0.9966 0.0766
|
||||
vn 0.1856 -0.3074 0.9333
|
||||
vn 0.1582 -0.5849 0.7955
|
||||
vn 0.1156 -0.8057 0.5810
|
||||
vn 0.0617 -0.9486 0.3104
|
||||
vn 0.0162 -0.9966 0.0813
|
||||
vn -0.0000 -0.3074 0.9516
|
||||
vn -0.0000 -0.5849 0.8111
|
||||
vn -0.0000 -0.8057 0.5924
|
||||
vn -0.0000 -0.9486 0.3165
|
||||
vn -0.0000 -0.9966 0.0829
|
||||
vn -0.1856 -0.3074 0.9333
|
||||
vn -0.1582 -0.5849 0.7955
|
||||
vn -0.1156 -0.8057 0.5810
|
||||
vn -0.0617 -0.9486 0.3104
|
||||
vn -0.0162 -0.9966 0.0813
|
||||
vn -0.3641 -0.3074 0.8791
|
||||
vn -0.3104 -0.5849 0.7493
|
||||
vn -0.2267 -0.8057 0.5473
|
||||
vn -0.1211 -0.9486 0.2924
|
||||
vn -0.0317 -0.9966 0.0766
|
||||
vn -0.5287 -0.3074 0.7912
|
||||
vn -0.4506 -0.5849 0.6744
|
||||
vn -0.3291 -0.8057 0.4925
|
||||
vn -0.1758 -0.9486 0.2632
|
||||
vn -0.0461 -0.9966 0.0690
|
||||
vn -0.6729 -0.3074 0.6729
|
||||
vn -0.5735 -0.5849 0.5735
|
||||
vn -0.4189 -0.8057 0.4189
|
||||
vn -0.2238 -0.9486 0.2238
|
||||
vn -0.0586 -0.9966 0.0586
|
||||
vn -0.7912 -0.3074 0.5287
|
||||
vn -0.6744 -0.5849 0.4506
|
||||
vn -0.4925 -0.8057 0.3291
|
||||
vn -0.2632 -0.9486 0.1758
|
||||
vn -0.0690 -0.9966 0.0461
|
||||
vn -0.8791 -0.3074 0.3641
|
||||
vn -0.7493 -0.5849 0.3104
|
||||
vn -0.5473 -0.8057 0.2267
|
||||
vn -0.2924 -0.9486 0.1211
|
||||
vn -0.0766 -0.9966 0.0317
|
||||
vn -0.9333 -0.3074 0.1856
|
||||
vn -0.7955 -0.5849 0.1582
|
||||
vn -0.5810 -0.8057 0.1156
|
||||
vn -0.3104 -0.9486 0.0617
|
||||
vn -0.0813 -0.9966 0.0162
|
||||
vn -0.9516 -0.3074 -0.0000
|
||||
vn -0.8111 -0.5849 -0.0000
|
||||
vn -0.5924 -0.8057 -0.0000
|
||||
vn -0.3165 -0.9486 -0.0000
|
||||
vn -0.0829 -0.9966 -0.0000
|
||||
vn -0.9333 -0.3074 -0.1856
|
||||
vn -0.7955 -0.5849 -0.1582
|
||||
vn -0.5810 -0.8057 -0.1156
|
||||
vn -0.3104 -0.9486 -0.0617
|
||||
vn -0.0813 -0.9966 -0.0162
|
||||
vn -0.8791 -0.3074 -0.3641
|
||||
vn -0.7493 -0.5849 -0.3104
|
||||
vn -0.5473 -0.8057 -0.2267
|
||||
vn -0.2924 -0.9486 -0.1211
|
||||
vn -0.0766 -0.9966 -0.0317
|
||||
vn -0.7912 -0.3074 -0.5287
|
||||
vn -0.6744 -0.5849 -0.4506
|
||||
vn -0.4925 -0.8057 -0.3291
|
||||
vn -0.2632 -0.9486 -0.1758
|
||||
vn -0.0690 -0.9966 -0.0461
|
||||
vn -0.6729 -0.3074 -0.6729
|
||||
vn -0.5735 -0.5849 -0.5735
|
||||
vn -0.4189 -0.8057 -0.4189
|
||||
vn -0.2238 -0.9486 -0.2238
|
||||
vn -0.0586 -0.9966 -0.0586
|
||||
vn -0.5287 -0.3074 -0.7912
|
||||
vn -0.4506 -0.5849 -0.6744
|
||||
vn -0.3291 -0.8057 -0.4925
|
||||
vn -0.1758 -0.9486 -0.2632
|
||||
vn -0.0461 -0.9966 -0.0690
|
||||
vn -0.3641 -0.3074 -0.8791
|
||||
vn -0.3104 -0.5849 -0.7493
|
||||
vn -0.2267 -0.8057 -0.5473
|
||||
vn -0.1211 -0.9486 -0.2924
|
||||
vn -0.0317 -0.9966 -0.0766
|
||||
vn -0.1856 -0.3074 -0.9333
|
||||
vn -0.1582 -0.5849 -0.7955
|
||||
vn -0.1156 -0.8057 -0.5810
|
||||
vn -0.0617 -0.9486 -0.3104
|
||||
vn -0.0162 -0.9966 -0.0813
|
||||
vt 0.000000 1.000000
|
||||
vt 1.000000 1.000000
|
||||
vt 0.968750 1.000000
|
||||
vt 0.937500 1.000000
|
||||
vt 0.906250 1.000000
|
||||
vt 0.875000 1.000000
|
||||
vt 0.843750 1.000000
|
||||
vt 0.812500 1.000000
|
||||
vt 0.781250 1.000000
|
||||
vt 0.750000 1.000000
|
||||
vt 0.718750 1.000000
|
||||
vt 0.687500 1.000000
|
||||
vt 0.656250 1.000000
|
||||
vt 0.625000 1.000000
|
||||
vt 0.593750 1.000000
|
||||
vt 0.562500 1.000000
|
||||
vt 0.531250 1.000000
|
||||
vt 0.500000 1.000000
|
||||
vt 0.468750 1.000000
|
||||
vt 0.437500 1.000000
|
||||
vt 0.406250 1.000000
|
||||
vt 0.375000 1.000000
|
||||
vt 0.343750 1.000000
|
||||
vt 0.312500 1.000000
|
||||
vt 0.281250 1.000000
|
||||
vt 0.250000 1.000000
|
||||
vt 0.218750 1.000000
|
||||
vt 0.187500 1.000000
|
||||
vt 0.156250 1.000000
|
||||
vt 0.125000 1.000000
|
||||
vt 0.093750 1.000000
|
||||
vt 0.062500 1.000000
|
||||
vt 0.031250 1.000000
|
||||
vt 0.750000 0.441768
|
||||
vt 1.000000 0.600000
|
||||
vt 0.000000 0.600000
|
||||
vt 0.750000 0.456672
|
||||
vt 0.750000 0.470118
|
||||
vt 0.999400 0.500000
|
||||
vt 0.750899 0.489911
|
||||
vt 0.000600 0.500000
|
||||
vt 0.749101 0.489911
|
||||
vt 0.999846 0.569098
|
||||
vt 0.000154 0.569098
|
||||
vt 0.787412 0.438083
|
||||
vt 0.968750 0.600000
|
||||
vt 0.790320 0.452701
|
||||
vt 0.792943 0.465888
|
||||
vt 0.969350 0.500000
|
||||
vt 0.795923 0.485477
|
||||
vt 0.968150 0.500000
|
||||
vt 0.797686 0.485126
|
||||
vt 0.968904 0.569098
|
||||
vt 0.968596 0.569098
|
||||
vt 0.823386 0.427170
|
||||
vt 0.937500 0.600000
|
||||
vt 0.829090 0.440940
|
||||
vt 0.834235 0.453362
|
||||
vt 0.938100 0.500000
|
||||
vt 0.840980 0.471993
|
||||
vt 0.936900 0.500000
|
||||
vt 0.842640 0.471305
|
||||
vt 0.937654 0.569098
|
||||
vt 0.937346 0.569098
|
||||
vt 0.856541 0.409449
|
||||
vt 0.906250 0.600000
|
||||
vt 0.864821 0.421842
|
||||
vt 0.872291 0.433021
|
||||
vt 0.906850 0.500000
|
||||
vt 0.882541 0.449978
|
||||
vt 0.905650 0.500000
|
||||
vt 0.884035 0.448980
|
||||
vt 0.906404 0.569098
|
||||
vt 0.906096 0.569098
|
||||
vt 0.885600 0.385600
|
||||
vt 0.875000 0.600000
|
||||
vt 0.896140 0.396139
|
||||
vt 0.905647 0.405647
|
||||
vt 0.875600 0.500000
|
||||
vt 0.919008 0.420278
|
||||
vt 0.874400 0.500000
|
||||
vt 0.920278 0.419008
|
||||
vt 0.875154 0.569098
|
||||
vt 0.874846 0.569098
|
||||
vt 0.909449 0.356541
|
||||
vt 0.843750 0.600000
|
||||
vt 0.921842 0.364821
|
||||
vt 0.933021 0.372291
|
||||
vt 0.844350 0.500000
|
||||
vt 0.948980 0.384035
|
||||
vt 0.843150 0.500000
|
||||
vt 0.949978 0.382541
|
||||
vt 0.843904 0.569098
|
||||
vt 0.843596 0.569098
|
||||
vt 0.927170 0.323386
|
||||
vt 0.812500 0.600000
|
||||
vt 0.940940 0.329090
|
||||
vt 0.953362 0.334235
|
||||
vt 0.813100 0.500000
|
||||
vt 0.971305 0.342640
|
||||
vt 0.811900 0.500000
|
||||
vt 0.971993 0.340980
|
||||
vt 0.812654 0.569098
|
||||
vt 0.812346 0.569098
|
||||
vt 0.938083 0.287412
|
||||
vt 0.781250 0.600000
|
||||
vt 0.952701 0.290320
|
||||
vt 0.965888 0.292943
|
||||
vt 0.781850 0.500000
|
||||
vt 0.985126 0.297686
|
||||
vt 0.780650 0.500000
|
||||
vt 0.985477 0.295923
|
||||
vt 0.781404 0.569098
|
||||
vt 0.781096 0.569098
|
||||
vt 0.941768 0.250000
|
||||
vt 0.750000 0.600000
|
||||
vt 0.956673 0.250000
|
||||
vt 0.970118 0.250000
|
||||
vt 0.750600 0.500000
|
||||
vt 0.989912 0.250899
|
||||
vt 0.749400 0.500000
|
||||
vt 0.989911 0.249101
|
||||
vt 0.750154 0.569098
|
||||
vt 0.749846 0.569098
|
||||
vt 0.938083 0.212588
|
||||
vt 0.718750 0.600000
|
||||
vt 0.952702 0.209680
|
||||
vt 0.965888 0.207057
|
||||
vt 0.719350 0.500000
|
||||
vt 0.985477 0.204077
|
||||
vt 0.718150 0.500000
|
||||
vt 0.985126 0.202314
|
||||
vt 0.718904 0.569098
|
||||
vt 0.718596 0.569098
|
||||
vt 0.927170 0.176614
|
||||
vt 0.687500 0.600000
|
||||
vt 0.940940 0.170910
|
||||
vt 0.953362 0.165764
|
||||
vt 0.688100 0.500000
|
||||
vt 0.971993 0.159020
|
||||
vt 0.686900 0.500000
|
||||
vt 0.971305 0.157360
|
||||
vt 0.687654 0.569098
|
||||
vt 0.687346 0.569098
|
||||
vt 0.909449 0.143460
|
||||
vt 0.656250 0.600000
|
||||
vt 0.921842 0.135179
|
||||
vt 0.933021 0.127709
|
||||
vt 0.656850 0.500000
|
||||
vt 0.949978 0.117459
|
||||
vt 0.655650 0.500000
|
||||
vt 0.948980 0.115965
|
||||
vt 0.656404 0.569098
|
||||
vt 0.656096 0.569098
|
||||
vt 0.885600 0.114400
|
||||
vt 0.625000 0.600000
|
||||
vt 0.896140 0.103861
|
||||
vt 0.905647 0.094353
|
||||
vt 0.625600 0.500000
|
||||
vt 0.920278 0.080992
|
||||
vt 0.624400 0.500000
|
||||
vt 0.919008 0.079722
|
||||
vt 0.625154 0.569098
|
||||
vt 0.624846 0.569098
|
||||
vt 0.856541 0.090551
|
||||
vt 0.593750 0.600000
|
||||
vt 0.864821 0.078158
|
||||
vt 0.872291 0.066979
|
||||
vt 0.594350 0.500000
|
||||
vt 0.884035 0.051020
|
||||
vt 0.593150 0.500000
|
||||
vt 0.882541 0.050022
|
||||
vt 0.593904 0.569098
|
||||
vt 0.593596 0.569098
|
||||
vt 0.823386 0.072830
|
||||
vt 0.562500 0.600000
|
||||
vt 0.829090 0.059060
|
||||
vt 0.834235 0.046638
|
||||
vt 0.563100 0.500000
|
||||
vt 0.842640 0.028695
|
||||
vt 0.561900 0.500000
|
||||
vt 0.840980 0.028007
|
||||
vt 0.562654 0.569098
|
||||
vt 0.562346 0.569098
|
||||
vt 0.787412 0.061917
|
||||
vt 0.531250 0.600000
|
||||
vt 0.790320 0.047299
|
||||
vt 0.792943 0.034112
|
||||
vt 0.531850 0.500000
|
||||
vt 0.797686 0.014874
|
||||
vt 0.530650 0.500000
|
||||
vt 0.795923 0.014523
|
||||
vt 0.531404 0.569098
|
||||
vt 0.531096 0.569098
|
||||
vt 0.750000 0.058232
|
||||
vt 0.500000 0.600000
|
||||
vt 0.750000 0.043328
|
||||
vt 0.750000 0.029882
|
||||
vt 0.500600 0.500000
|
||||
vt 0.750899 0.010089
|
||||
vt 0.499400 0.500000
|
||||
vt 0.749101 0.010089
|
||||
vt 0.500154 0.569098
|
||||
vt 0.499846 0.569098
|
||||
vt 0.712588 0.061917
|
||||
vt 0.468750 0.600000
|
||||
vt 0.709680 0.047299
|
||||
vt 0.707057 0.034112
|
||||
vt 0.469350 0.500000
|
||||
vt 0.704077 0.014523
|
||||
vt 0.468150 0.500000
|
||||
vt 0.702314 0.014874
|
||||
vt 0.468904 0.569098
|
||||
vt 0.468596 0.569098
|
||||
vt 0.676614 0.072830
|
||||
vt 0.437500 0.600000
|
||||
vt 0.670910 0.059060
|
||||
vt 0.665764 0.046638
|
||||
vt 0.438100 0.500000
|
||||
vt 0.659020 0.028007
|
||||
vt 0.436900 0.500000
|
||||
vt 0.657360 0.028695
|
||||
vt 0.437654 0.569098
|
||||
vt 0.437346 0.569098
|
||||
vt 0.643460 0.090551
|
||||
vt 0.406250 0.600000
|
||||
vt 0.635179 0.078158
|
||||
vt 0.627709 0.066979
|
||||
vt 0.406850 0.500000
|
||||
vt 0.617459 0.050022
|
||||
vt 0.405650 0.500000
|
||||
vt 0.615965 0.051020
|
||||
vt 0.406404 0.569098
|
||||
vt 0.406096 0.569098
|
||||
vt 0.614400 0.114400
|
||||
vt 0.375000 0.600000
|
||||
vt 0.603861 0.103861
|
||||
vt 0.594353 0.094353
|
||||
vt 0.375600 0.500000
|
||||
vt 0.580992 0.079722
|
||||
vt 0.374400 0.500000
|
||||
vt 0.579722 0.080992
|
||||
vt 0.375154 0.569098
|
||||
vt 0.374846 0.569098
|
||||
vt 0.590551 0.143460
|
||||
vt 0.343750 0.600000
|
||||
vt 0.578158 0.135179
|
||||
vt 0.566979 0.127709
|
||||
vt 0.344350 0.500000
|
||||
vt 0.551020 0.115965
|
||||
vt 0.343150 0.500000
|
||||
vt 0.550022 0.117459
|
||||
vt 0.343904 0.569098
|
||||
vt 0.343596 0.569098
|
||||
vt 0.572830 0.176614
|
||||
vt 0.312500 0.600000
|
||||
vt 0.559060 0.170910
|
||||
vt 0.546637 0.165764
|
||||
vt 0.313100 0.500000
|
||||
vt 0.528695 0.157360
|
||||
vt 0.311900 0.500000
|
||||
vt 0.528007 0.159020
|
||||
vt 0.312654 0.569098
|
||||
vt 0.312346 0.569098
|
||||
vt 0.561917 0.212588
|
||||
vt 0.281250 0.600000
|
||||
vt 0.547299 0.209680
|
||||
vt 0.534112 0.207057
|
||||
vt 0.281850 0.500000
|
||||
vt 0.514874 0.202314
|
||||
vt 0.280650 0.500000
|
||||
vt 0.514523 0.204077
|
||||
vt 0.281404 0.569098
|
||||
vt 0.281096 0.569098
|
||||
vt 0.558232 0.250000
|
||||
vt 0.250000 0.600000
|
||||
vt 0.543328 0.250000
|
||||
vt 0.529882 0.250000
|
||||
vt 0.250600 0.500000
|
||||
vt 0.510089 0.249101
|
||||
vt 0.249400 0.500000
|
||||
vt 0.510088 0.250899
|
||||
vt 0.250154 0.569098
|
||||
vt 0.249846 0.569098
|
||||
vt 0.561917 0.287412
|
||||
vt 0.218750 0.600000
|
||||
vt 0.547299 0.290320
|
||||
vt 0.534112 0.292943
|
||||
vt 0.219350 0.500000
|
||||
vt 0.514523 0.295923
|
||||
vt 0.218150 0.500000
|
||||
vt 0.514874 0.297686
|
||||
vt 0.218904 0.569098
|
||||
vt 0.218596 0.569098
|
||||
vt 0.572830 0.323386
|
||||
vt 0.187500 0.600000
|
||||
vt 0.559060 0.329090
|
||||
vt 0.546638 0.334236
|
||||
vt 0.188100 0.500000
|
||||
vt 0.528007 0.340980
|
||||
vt 0.186900 0.500000
|
||||
vt 0.528695 0.342640
|
||||
vt 0.187654 0.569098
|
||||
vt 0.187346 0.569098
|
||||
vt 0.590551 0.356540
|
||||
vt 0.156250 0.600000
|
||||
vt 0.578158 0.364821
|
||||
vt 0.566979 0.372291
|
||||
vt 0.156850 0.500000
|
||||
vt 0.550022 0.382541
|
||||
vt 0.155650 0.500000
|
||||
vt 0.551020 0.384035
|
||||
vt 0.156404 0.569098
|
||||
vt 0.156096 0.569098
|
||||
vt 0.614400 0.385600
|
||||
vt 0.125000 0.600000
|
||||
vt 0.603861 0.396139
|
||||
vt 0.594353 0.405647
|
||||
vt 0.125600 0.500000
|
||||
vt 0.579722 0.419008
|
||||
vt 0.124400 0.500000
|
||||
vt 0.580992 0.420278
|
||||
vt 0.125154 0.569098
|
||||
vt 0.124846 0.569098
|
||||
vt 0.643460 0.409449
|
||||
vt 0.093750 0.600000
|
||||
vt 0.635179 0.421842
|
||||
vt 0.627709 0.433021
|
||||
vt 0.094350 0.500000
|
||||
vt 0.615965 0.448980
|
||||
vt 0.093150 0.500000
|
||||
vt 0.617459 0.449978
|
||||
vt 0.093904 0.569098
|
||||
vt 0.093596 0.569098
|
||||
vt 0.676614 0.427170
|
||||
vt 0.062500 0.600000
|
||||
vt 0.670910 0.440940
|
||||
vt 0.665765 0.453363
|
||||
vt 0.063100 0.500000
|
||||
vt 0.657360 0.471305
|
||||
vt 0.061900 0.500000
|
||||
vt 0.659020 0.471993
|
||||
vt 0.062654 0.569098
|
||||
vt 0.062346 0.569098
|
||||
vt 0.712588 0.438083
|
||||
vt 0.031250 0.600000
|
||||
vt 0.709680 0.452701
|
||||
vt 0.707057 0.465888
|
||||
vt 0.031850 0.500000
|
||||
vt 0.702314 0.485126
|
||||
vt 0.030650 0.500000
|
||||
vt 0.704077 0.485477
|
||||
vt 0.031404 0.569098
|
||||
vt 0.031096 0.569098
|
||||
s 1
|
||||
f 220/346/1 32/33/2 1/1/3 34/36/4
|
||||
f 46/56/5 3/4/6 4/5/7 52/66/8
|
||||
f 52/66/8 4/5/7 5/6/9 58/76/10
|
||||
f 58/76/10 5/6/9 6/7/11 64/86/12
|
||||
f 64/86/12 6/7/11 7/8/13 70/96/14
|
||||
f 70/96/14 7/8/13 8/9/15 76/106/16
|
||||
f 76/106/16 8/9/15 9/10/17 82/116/18
|
||||
f 82/116/18 9/10/17 10/11/19 88/126/20
|
||||
f 88/126/20 10/11/19 11/12/21 94/136/22
|
||||
f 94/136/22 11/12/21 12/13/23 100/146/24
|
||||
f 100/146/24 12/13/23 13/14/25 106/156/26
|
||||
f 106/156/26 13/14/25 14/15/27 112/166/28
|
||||
f 112/166/28 14/15/27 15/16/29 118/176/30
|
||||
f 118/176/30 15/16/29 16/17/31 124/186/32
|
||||
f 124/186/32 16/17/31 17/18/33 130/196/34
|
||||
f 130/196/34 17/18/33 18/19/35 136/206/36
|
||||
f 136/206/36 18/19/35 19/20/37 142/216/38
|
||||
f 142/216/38 19/20/37 20/21/39 148/226/40
|
||||
f 148/226/40 20/21/39 21/22/41 154/236/42
|
||||
f 154/236/42 21/22/41 22/23/43 160/246/44
|
||||
f 160/246/44 22/23/43 23/24/45 166/256/46
|
||||
f 166/256/46 23/24/45 24/25/47 172/266/48
|
||||
f 172/266/48 24/25/47 25/26/49 178/276/50
|
||||
f 178/276/50 25/26/49 26/27/51 184/286/52
|
||||
f 184/286/52 26/27/51 27/28/53 190/296/54
|
||||
f 190/296/54 27/28/53 28/29/55 196/306/56
|
||||
f 196/306/56 28/29/55 29/30/57 202/316/58
|
||||
f 202/316/58 29/30/57 30/31/59 208/326/60
|
||||
f 208/326/60 30/31/59 31/32/61 214/336/62
|
||||
f 214/336/62 31/32/61 32/33/2 220/346/1
|
||||
f 40/46/63 2/3/64 3/4/6 46/56/5
|
||||
f 34/35/4 1/2/3 2/3/64 40/46/63
|
||||
f 34/35/4 40/46/63 44/53/65 38/43/66
|
||||
f 38/43/66 44/53/65 43/49/67 37/39/68
|
||||
f 37/40/68 43/50/67 42/48/69 36/38/70
|
||||
f 36/38/70 42/48/69 41/47/71 35/37/72
|
||||
f 35/37/72 41/47/71 39/45/73 33/34/74
|
||||
f 40/46/63 46/56/5 50/63/75 44/54/65
|
||||
f 44/54/65 50/63/75 49/59/76 43/51/67
|
||||
f 43/52/67 49/60/76 48/58/77 42/48/69
|
||||
f 42/48/69 48/58/77 47/57/78 41/47/71
|
||||
f 41/47/71 47/57/78 45/55/79 39/45/73
|
||||
f 46/56/5 52/66/8 56/73/80 50/64/75
|
||||
f 50/64/75 56/73/80 55/69/81 49/61/76
|
||||
f 49/62/76 55/70/81 54/68/82 48/58/77
|
||||
f 48/58/77 54/68/82 53/67/83 47/57/78
|
||||
f 47/57/78 53/67/83 51/65/84 45/55/79
|
||||
f 52/66/8 58/76/10 62/83/85 56/74/80
|
||||
f 56/74/80 62/83/85 61/79/86 55/71/81
|
||||
f 55/72/81 61/80/86 60/78/87 54/68/82
|
||||
f 54/68/82 60/78/87 59/77/88 53/67/83
|
||||
f 53/67/83 59/77/88 57/75/89 51/65/84
|
||||
f 58/76/10 64/86/12 68/93/90 62/84/85
|
||||
f 62/84/85 68/93/90 67/89/91 61/81/86
|
||||
f 61/82/86 67/90/91 66/88/92 60/78/87
|
||||
f 60/78/87 66/88/92 65/87/93 59/77/88
|
||||
f 59/77/88 65/87/93 63/85/94 57/75/89
|
||||
f 64/86/12 70/96/14 74/103/95 68/94/90
|
||||
f 68/94/90 74/103/95 73/99/96 67/91/91
|
||||
f 67/92/91 73/100/96 72/98/97 66/88/92
|
||||
f 66/88/92 72/98/97 71/97/98 65/87/93
|
||||
f 65/87/93 71/97/98 69/95/99 63/85/94
|
||||
f 70/96/14 76/106/16 80/113/100 74/104/95
|
||||
f 74/104/95 80/113/100 79/109/101 73/101/96
|
||||
f 73/102/96 79/110/101 78/108/102 72/98/97
|
||||
f 72/98/97 78/108/102 77/107/103 71/97/98
|
||||
f 71/97/98 77/107/103 75/105/104 69/95/99
|
||||
f 76/106/16 82/116/18 86/123/105 80/114/100
|
||||
f 80/114/100 86/123/105 85/119/106 79/111/101
|
||||
f 79/112/101 85/120/106 84/118/107 78/108/102
|
||||
f 78/108/102 84/118/107 83/117/108 77/107/103
|
||||
f 77/107/103 83/117/108 81/115/109 75/105/104
|
||||
f 82/116/18 88/126/20 92/133/110 86/124/105
|
||||
f 86/124/105 92/133/110 91/129/111 85/121/106
|
||||
f 85/122/106 91/130/111 90/128/112 84/118/107
|
||||
f 84/118/107 90/128/112 89/127/113 83/117/108
|
||||
f 83/117/108 89/127/113 87/125/114 81/115/109
|
||||
f 88/126/20 94/136/22 98/143/115 92/134/110
|
||||
f 92/134/110 98/143/115 97/139/116 91/131/111
|
||||
f 91/132/111 97/140/116 96/138/117 90/128/112
|
||||
f 90/128/112 96/138/117 95/137/118 89/127/113
|
||||
f 89/127/113 95/137/118 93/135/119 87/125/114
|
||||
f 94/136/22 100/146/24 104/153/120 98/144/115
|
||||
f 98/144/115 104/153/120 103/149/121 97/141/116
|
||||
f 97/142/116 103/150/121 102/148/122 96/138/117
|
||||
f 96/138/117 102/148/122 101/147/123 95/137/118
|
||||
f 95/137/118 101/147/123 99/145/124 93/135/119
|
||||
f 100/146/24 106/156/26 110/163/125 104/154/120
|
||||
f 104/154/120 110/163/125 109/159/126 103/151/121
|
||||
f 103/152/121 109/160/126 108/158/127 102/148/122
|
||||
f 102/148/122 108/158/127 107/157/128 101/147/123
|
||||
f 101/147/123 107/157/128 105/155/129 99/145/124
|
||||
f 106/156/26 112/166/28 116/173/130 110/164/125
|
||||
f 110/164/125 116/173/130 115/169/131 109/161/126
|
||||
f 109/162/126 115/170/131 114/168/132 108/158/127
|
||||
f 108/158/127 114/168/132 113/167/133 107/157/128
|
||||
f 107/157/128 113/167/133 111/165/134 105/155/129
|
||||
f 112/166/28 118/176/30 122/183/135 116/174/130
|
||||
f 116/174/130 122/183/135 121/179/136 115/171/131
|
||||
f 115/172/131 121/180/136 120/178/137 114/168/132
|
||||
f 114/168/132 120/178/137 119/177/138 113/167/133
|
||||
f 113/167/133 119/177/138 117/175/139 111/165/134
|
||||
f 118/176/30 124/186/32 128/193/140 122/184/135
|
||||
f 122/184/135 128/193/140 127/189/141 121/181/136
|
||||
f 121/182/136 127/190/141 126/188/142 120/178/137
|
||||
f 120/178/137 126/188/142 125/187/143 119/177/138
|
||||
f 119/177/138 125/187/143 123/185/144 117/175/139
|
||||
f 124/186/32 130/196/34 134/203/145 128/194/140
|
||||
f 128/194/140 134/203/145 133/199/146 127/191/141
|
||||
f 127/192/141 133/200/146 132/198/147 126/188/142
|
||||
f 126/188/142 132/198/147 131/197/148 125/187/143
|
||||
f 125/187/143 131/197/148 129/195/149 123/185/144
|
||||
f 130/196/34 136/206/36 140/213/150 134/204/145
|
||||
f 134/204/145 140/213/150 139/209/151 133/201/146
|
||||
f 133/202/146 139/210/151 138/208/152 132/198/147
|
||||
f 132/198/147 138/208/152 137/207/153 131/197/148
|
||||
f 131/197/148 137/207/153 135/205/154 129/195/149
|
||||
f 136/206/36 142/216/38 146/223/155 140/214/150
|
||||
f 140/214/150 146/223/155 145/219/156 139/211/151
|
||||
f 139/212/151 145/220/156 144/218/157 138/208/152
|
||||
f 138/208/152 144/218/157 143/217/158 137/207/153
|
||||
f 137/207/153 143/217/158 141/215/159 135/205/154
|
||||
f 142/216/38 148/226/40 152/233/160 146/224/155
|
||||
f 146/224/155 152/233/160 151/229/161 145/221/156
|
||||
f 145/222/156 151/230/161 150/228/162 144/218/157
|
||||
f 144/218/157 150/228/162 149/227/163 143/217/158
|
||||
f 143/217/158 149/227/163 147/225/164 141/215/159
|
||||
f 148/226/40 154/236/42 158/243/165 152/234/160
|
||||
f 152/234/160 158/243/165 157/239/166 151/231/161
|
||||
f 151/232/161 157/240/166 156/238/167 150/228/162
|
||||
f 150/228/162 156/238/167 155/237/168 149/227/163
|
||||
f 149/227/163 155/237/168 153/235/169 147/225/164
|
||||
f 154/236/42 160/246/44 164/253/170 158/244/165
|
||||
f 158/244/165 164/253/170 163/249/171 157/241/166
|
||||
f 157/242/166 163/250/171 162/248/172 156/238/167
|
||||
f 156/238/167 162/248/172 161/247/173 155/237/168
|
||||
f 155/237/168 161/247/173 159/245/174 153/235/169
|
||||
f 160/246/44 166/256/46 170/263/175 164/254/170
|
||||
f 164/254/170 170/263/175 169/259/176 163/251/171
|
||||
f 163/252/171 169/260/176 168/258/177 162/248/172
|
||||
f 162/248/172 168/258/177 167/257/178 161/247/173
|
||||
f 161/247/173 167/257/178 165/255/179 159/245/174
|
||||
f 166/256/46 172/266/48 176/273/180 170/264/175
|
||||
f 170/264/175 176/273/180 175/269/181 169/261/176
|
||||
f 169/262/176 175/270/181 174/268/182 168/258/177
|
||||
f 168/258/177 174/268/182 173/267/183 167/257/178
|
||||
f 167/257/178 173/267/183 171/265/184 165/255/179
|
||||
f 172/266/48 178/276/50 182/283/185 176/274/180
|
||||
f 176/274/180 182/283/185 181/279/186 175/271/181
|
||||
f 175/272/181 181/280/186 180/278/187 174/268/182
|
||||
f 174/268/182 180/278/187 179/277/188 173/267/183
|
||||
f 173/267/183 179/277/188 177/275/189 171/265/184
|
||||
f 178/276/50 184/286/52 188/293/190 182/284/185
|
||||
f 182/284/185 188/293/190 187/289/191 181/281/186
|
||||
f 181/282/186 187/290/191 186/288/192 180/278/187
|
||||
f 180/278/187 186/288/192 185/287/193 179/277/188
|
||||
f 179/277/188 185/287/193 183/285/194 177/275/189
|
||||
f 184/286/52 190/296/54 194/303/195 188/294/190
|
||||
f 188/294/190 194/303/195 193/299/196 187/291/191
|
||||
f 187/292/191 193/300/196 192/298/197 186/288/192
|
||||
f 186/288/192 192/298/197 191/297/198 185/287/193
|
||||
f 185/287/193 191/297/198 189/295/199 183/285/194
|
||||
f 190/296/54 196/306/56 200/313/200 194/304/195
|
||||
f 194/304/195 200/313/200 199/309/201 193/301/196
|
||||
f 193/302/196 199/310/201 198/308/202 192/298/197
|
||||
f 192/298/197 198/308/202 197/307/203 191/297/198
|
||||
f 191/297/198 197/307/203 195/305/204 189/295/199
|
||||
f 196/306/56 202/316/58 206/323/205 200/314/200
|
||||
f 200/314/200 206/323/205 205/319/206 199/311/201
|
||||
f 199/312/201 205/320/206 204/318/207 198/308/202
|
||||
f 198/308/202 204/318/207 203/317/208 197/307/203
|
||||
f 197/307/203 203/317/208 201/315/209 195/305/204
|
||||
f 202/316/58 208/326/60 212/333/210 206/324/205
|
||||
f 206/324/205 212/333/210 211/329/211 205/321/206
|
||||
f 205/322/206 211/330/211 210/328/212 204/318/207
|
||||
f 204/318/207 210/328/212 209/327/213 203/317/208
|
||||
f 203/317/208 209/327/213 207/325/214 201/315/209
|
||||
f 208/326/60 214/336/62 218/343/215 212/334/210
|
||||
f 212/334/210 218/343/215 217/339/216 211/331/211
|
||||
f 211/332/211 217/340/216 216/338/217 210/328/212
|
||||
f 210/328/212 216/338/217 215/337/218 209/327/213
|
||||
f 209/327/213 215/337/218 213/335/219 207/325/214
|
||||
f 214/336/62 220/346/1 224/353/220 218/344/215
|
||||
f 218/344/215 224/353/220 223/349/221 217/341/216
|
||||
f 217/342/216 223/350/221 222/348/222 216/338/217
|
||||
f 216/338/217 222/348/222 221/347/223 215/337/218
|
||||
f 215/337/218 221/347/223 219/345/224 213/335/219
|
||||
f 220/346/1 34/36/4 38/44/66 224/354/220
|
||||
f 224/354/220 38/44/66 37/41/68 223/351/221
|
||||
f 223/352/221 37/42/68 36/38/70 222/348/222
|
||||
f 222/348/222 36/38/70 35/37/72 221/347/223
|
||||
f 221/347/223 35/37/72 33/34/74 219/345/224
|
||||
f 33/34/74 39/45/73 45/55/79 51/65/84 57/75/89 63/85/94 69/95/99 75/105/104 81/115/109 87/125/114 93/135/119 99/145/124 105/155/129 111/165/134 117/175/139 123/185/144 129/195/149 135/205/154 141/215/159 147/225/164 153/235/169 159/245/174 165/255/179 171/265/184 177/275/189 183/285/194 189/295/199 195/305/204 201/315/209 207/325/214 213/335/219 219/345/224
|
||||
@@ -0,0 +1,25 @@
|
||||
[remap]
|
||||
|
||||
importer="wavefront_obj"
|
||||
importer_version=1
|
||||
type="Mesh"
|
||||
uid="uid://r33dd86y85gd"
|
||||
path="res://.godot/imported/room_mesh.obj-53a6a010bf8ba8f7edaba4a426e9ca86.mesh"
|
||||
|
||||
[deps]
|
||||
|
||||
files=["res://.godot/imported/room_mesh.obj-53a6a010bf8ba8f7edaba4a426e9ca86.mesh"]
|
||||
|
||||
source_file="res://test/assets/addons/gdquest_model_viewer_3d/viewer/assets/meshes/room_mesh.obj"
|
||||
dest_files=["res://.godot/imported/room_mesh.obj-53a6a010bf8ba8f7edaba4a426e9ca86.mesh", "res://.godot/imported/room_mesh.obj-53a6a010bf8ba8f7edaba4a426e9ca86.mesh"]
|
||||
|
||||
[params]
|
||||
|
||||
generate_tangents=true
|
||||
generate_lods=true
|
||||
generate_shadow_mesh=true
|
||||
generate_lightmap_uv2=false
|
||||
generate_lightmap_uv2_texel_size=0.2
|
||||
scale_mesh=Vector3(1, 1, 1)
|
||||
offset_mesh=Vector3(0, 0, 0)
|
||||
force_disable_mesh_compression=false
|
||||
@@ -0,0 +1,20 @@
|
||||
shader_type spatial;
|
||||
render_mode unshaded;
|
||||
|
||||
uniform sampler2D logo_sampler_sdf : repeat_disable;
|
||||
uniform float logo_scale = 1.0;
|
||||
uniform float logo_opacity = 0.1;
|
||||
uniform vec3 border_color : source_color = vec3(0.0);
|
||||
uniform vec3 center_color : source_color = vec3(0.08);
|
||||
uniform vec2 ratio = vec2(1.0);
|
||||
const float logo_ratio = 1312.0 / 404.0;
|
||||
|
||||
void vertex() {
|
||||
MODELVIEW_MATRIX = VIEW_MATRIX * mat4(INV_VIEW_MATRIX[0], INV_VIEW_MATRIX[1], INV_VIEW_MATRIX[2], MODEL_MATRIX[3]);
|
||||
MODELVIEW_NORMAL_MATRIX = mat3(MODELVIEW_MATRIX);
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
ALBEDO = vec3(mix(center_color, border_color, distance(vec2(0.5), UV)));
|
||||
ALBEDO += smoothstep(0.45,0.5,texture(logo_sampler_sdf, ((UV - vec2(0.5, 0.2)) * vec2(1.0, logo_ratio) * ratio) * logo_scale + 0.5).a) * logo_opacity;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cxb875k3l7iyn
|
||||
@@ -0,0 +1,16 @@
|
||||
shader_type spatial;
|
||||
render_mode unshaded;
|
||||
|
||||
uniform vec3 grid_color : source_color = vec3(0.0);
|
||||
uniform float grid_opacity = 0.1;
|
||||
|
||||
float grid(vec2 st, float res)
|
||||
{
|
||||
vec2 grid = fract(st*res);
|
||||
return (step(0.015,grid.x) * step(0.015,grid.y));
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
ALPHA = (1.0 - grid(UV, 10.0)) * smoothstep(0.5, 0.0, distance(vec2(0.5), UV)) * grid_opacity;
|
||||
ALBEDO = grid_color;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cmu4l7tiy7ipg
|
||||
@@ -0,0 +1,5 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
void fragment() {
|
||||
COLOR.a *= smoothstep(0.5, 0.49, distance(vec2(0.5), UV));
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cjhwwbt4lmm4r
|
||||
|
After Width: | Height: | Size: 188 B |