Hold net artwork and refresh contributor credits
This commit is contained in:
parent
24d91b37e5
commit
6d0e996583
13 changed files with 77 additions and 323 deletions
Binary file not shown.
|
|
@ -1,45 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://cvwxg6kh8ulqv"
|
|
||||||
path="res://.godot/imported/net.glb-cbbc53905aec6a50c4a3322ca7a93b1e.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://art/exported/items/equipment/net.glb"
|
|
||||||
dest_files=["res://.godot/imported/net.glb-cbbc53905aec6a50c4a3322ca7a93b1e.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/root_script=null
|
|
||||||
mesh_library/use_node_names_as_mesh_names=false
|
|
||||||
array_mesh/deduplicate_surfaces=true
|
|
||||||
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
|
|
||||||
gltf/texture_map_mode=1
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 276 KiB |
|
|
@ -1,45 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://binoqhg45vgbs"
|
|
||||||
path.s3tc="res://.godot/imported/net_Material.png-f4c4b0400561bc2751fe719b6b1a1e1a.s3tc.ctex"
|
|
||||||
path.etc2="res://.godot/imported/net_Material.png-f4c4b0400561bc2751fe719b6b1a1e1a.etc2.ctex"
|
|
||||||
metadata={
|
|
||||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
|
||||||
"vram_texture": true
|
|
||||||
}
|
|
||||||
generator_parameters={
|
|
||||||
"md5": "ef2c2ae657c9460c90eb808ba5217f39"
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://art/exported/items/equipment/net_Material.png"
|
|
||||||
dest_files=["res://.godot/imported/net_Material.png-f4c4b0400561bc2751fe719b6b1a1e1a.s3tc.ctex", "res://.godot/imported/net_Material.png-f4c4b0400561bc2751fe719b6b1a1e1a.etc2.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=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=0
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 42 KiB |
|
|
@ -1,45 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://cdsabucjy5rpk"
|
|
||||||
path.s3tc="res://.godot/imported/net_Plane Base Color.png-3875ae3dd186ddf319c55aabb13e663f.s3tc.ctex"
|
|
||||||
path.etc2="res://.godot/imported/net_Plane Base Color.png-3875ae3dd186ddf319c55aabb13e663f.etc2.ctex"
|
|
||||||
metadata={
|
|
||||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
|
||||||
"vram_texture": true
|
|
||||||
}
|
|
||||||
generator_parameters={
|
|
||||||
"md5": "a6001c381d4c8e16bd2d64ea74ccff82"
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://art/exported/items/equipment/net_Plane Base Color.png"
|
|
||||||
dest_files=["res://.godot/imported/net_Plane Base Color.png-3875ae3dd186ddf319c55aabb13e663f.s3tc.ctex", "res://.godot/imported/net_Plane Base Color.png-3875ae3dd186ddf319c55aabb13e663f.etc2.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=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=0
|
|
||||||
Binary file not shown.
|
|
@ -24,8 +24,10 @@ independent team Woofmeow.
|
||||||
arms, ears and tails, and multiple world props and decorative assets,
|
arms, ears and tails, and multiple world props and decorative assets,
|
||||||
including trees and bridges. The contributor requested to be credited as
|
including trees and bridges. The contributor requested to be credited as
|
||||||
`chillnfill`.
|
`chillnfill`.
|
||||||
- adamantris: contributor of the original hand-net model and texture artwork;
|
- kat: supplied the original source voice recording for the kat animalese set.
|
||||||
the contributor is credited as `adamantris`.
|
Voyager created the sliced, normalized runtime derivatives.
|
||||||
|
- kim: supplied the original source voice recording for the kim animalese set.
|
||||||
|
Voyager created the sliced, normalized runtime derivatives.
|
||||||
|
|
||||||
Voyager is also the original catalog porter credit in PortMaster metadata.
|
Voyager is also the original catalog porter credit in PortMaster metadata.
|
||||||
Third-party creators are credited with their individual records below. Those
|
Third-party creators are credited with their individual records below. Those
|
||||||
|
|
@ -156,6 +158,8 @@ against the repository when this record was revised.
|
||||||
|
|
||||||
| Material | Runtime location | Credit or terms |
|
| Material | Runtime location | Credit or terms |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
|
| Kat animalese alphabet and number sounds | `sound/dialogue/animalese/alphanumeric/` | Project-processed derivatives of the original source voice recording supplied by NETfishing community member kat. |
|
||||||
|
| Kim animalese alphabet and number sounds | `sound/dialogue/animalese/kim/` | Project-processed derivatives of the original source voice recording supplied by NETfishing community member kim. |
|
||||||
| Tuffy font | `ui/fonts/Tuffy_Bold.otf` | Public-domain dedication in `ui/fonts/Tuffy-LICENSE.txt`. |
|
| Tuffy font | `ui/fonts/Tuffy_Bold.otf` | Public-domain dedication in `ui/fonts/Tuffy-LICENSE.txt`. |
|
||||||
| Seattle Avenue font | `ui/fonts/seattle_avenue.otf` | Public-domain font by JLH Fonts; notice in `ui/fonts/Seattle-Avenue-LICENSE.txt`. |
|
| Seattle Avenue font | `ui/fonts/seattle_avenue.otf` | Public-domain font by JLH Fonts; notice in `ui/fonts/Seattle-Avenue-LICENSE.txt`. |
|
||||||
| Fishing fight loop | `audio/sfx/fishing/fighting.wav` | Edited from “Spinning reel.wav” by Freesound user tosha73, sound 509902, CC0. |
|
| Fishing fight loop | `audio/sfx/fishing/fighting.wav` | Edited from “Spinning reel.wav” by Freesound user tosha73, sound 509902, CC0. |
|
||||||
|
|
@ -185,20 +189,6 @@ https://creativecommons.org/licenses/by/3.0/legalcode.
|
||||||
later written confirmation covering Project use, modification,
|
later written confirmation covering Project use, modification,
|
||||||
distribution, commercial release, and applicable sublicensing.
|
distribution, commercial release, and applicable sublicensing.
|
||||||
|
|
||||||
### adamantris hand-net contribution record
|
|
||||||
|
|
||||||
- Requested credit: `adamantris`.
|
|
||||||
- Original contribution: hand-net model and texture artwork.
|
|
||||||
- The maintained repository source and runtime export contain later Project
|
|
||||||
adaptations. Git history, rather than a duplicated current-file hash here,
|
|
||||||
identifies their bytes at any given revision.
|
|
||||||
- Repository adaptation: reshaping and the generic `net_root`, `net_rim`,
|
|
||||||
`net_mid`, and `net_tip` deformation rig were prepared by Voyager for
|
|
||||||
reuse across gathering activities.
|
|
||||||
- Permission record: retain the original submission correspondence or a
|
|
||||||
written confirmation accepting `CONTRIBUTOR-TERMS.md` with the project
|
|
||||||
records.
|
|
||||||
|
|
||||||
### Endeavour 2D contribution record
|
### Endeavour 2D contribution record
|
||||||
|
|
||||||
Endeavour created the incorporated character customization patterns and
|
Endeavour created the incorporated character customization patterns and
|
||||||
|
|
|
||||||
|
|
@ -1,88 +1,7 @@
|
||||||
extends "res://player/tool_socket_attachment.gd"
|
extends "res://player/tool_socket_attachment.gd"
|
||||||
|
|
||||||
const TextureSamplingPolicyScript := preload(
|
@onready var _impact_marker: Marker3D = %ImpactMarker
|
||||||
"res://main/texture_sampling_policy.gd"
|
|
||||||
)
|
|
||||||
const SPRING_ROOT_BONE: StringName = &"net_mid"
|
|
||||||
const SPRING_END_BONE: StringName = &"net_tip"
|
|
||||||
const IMPACT_BONE: StringName = &"net_rim"
|
|
||||||
|
|
||||||
@export_range(0.0, 10.0, 0.05) var spring_stiffness: float = 1.8
|
|
||||||
@export_range(0.0, 1.0, 0.01) var spring_drag: float = 0.68
|
|
||||||
@export_range(0.0, 10.0, 0.05) var spring_gravity: float = 0.3
|
|
||||||
@export_range(0.01, 0.5, 0.01) var spring_end_length: float = 0.1
|
|
||||||
|
|
||||||
@onready var _catching_net: Node3D = %CatchingNet
|
|
||||||
@onready var _net_model: Node3D = %NetModel
|
|
||||||
|
|
||||||
var _spring: SpringBoneSimulator3D
|
|
||||||
var _spring_was_visible: bool = false
|
|
||||||
var _net_skeleton: Skeleton3D
|
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
|
||||||
super._ready()
|
|
||||||
TextureSamplingPolicyScript.enforce_subtree(_net_model)
|
|
||||||
_configure_spring()
|
|
||||||
_sync_spring_activity()
|
|
||||||
|
|
||||||
|
|
||||||
func _process(_delta: float) -> void:
|
|
||||||
_sync_spring_activity()
|
|
||||||
|
|
||||||
|
|
||||||
func _configure_spring() -> void:
|
|
||||||
_net_skeleton = _net_model.find_child(
|
|
||||||
"Skeleton3D", true, false
|
|
||||||
) as Skeleton3D
|
|
||||||
if _net_skeleton == null:
|
|
||||||
push_error("Imported net model is missing its Skeleton3D.")
|
|
||||||
return
|
|
||||||
if _net_skeleton.find_bone(SPRING_ROOT_BONE) < 0:
|
|
||||||
push_error("Imported net model is missing bone %s." % SPRING_ROOT_BONE)
|
|
||||||
return
|
|
||||||
if _net_skeleton.find_bone(SPRING_END_BONE) < 0:
|
|
||||||
push_error("Imported net model is missing bone %s." % SPRING_END_BONE)
|
|
||||||
return
|
|
||||||
if _net_skeleton.find_bone(IMPACT_BONE) < 0:
|
|
||||||
push_error("Imported net model is missing bone %s." % IMPACT_BONE)
|
|
||||||
return
|
|
||||||
|
|
||||||
_spring = SpringBoneSimulator3D.new()
|
|
||||||
_spring.name = "NetSpring"
|
|
||||||
_spring.set_setting_count(1)
|
|
||||||
_spring.set_root_bone_name(0, SPRING_ROOT_BONE)
|
|
||||||
_spring.set_end_bone_name(0, SPRING_END_BONE)
|
|
||||||
_spring.set_extend_end_bone(0, true)
|
|
||||||
_spring.set_end_bone_direction(
|
|
||||||
0, SkeletonModifier3D.BONE_DIRECTION_FROM_PARENT
|
|
||||||
)
|
|
||||||
_spring.set_end_bone_length(0, spring_end_length)
|
|
||||||
_spring.set_stiffness(0, spring_stiffness)
|
|
||||||
_spring.set_drag(0, spring_drag)
|
|
||||||
_spring.set_gravity(0, spring_gravity)
|
|
||||||
_spring.set_gravity_direction(0, Vector3.DOWN)
|
|
||||||
_net_skeleton.add_child(_spring)
|
|
||||||
|
|
||||||
|
|
||||||
func get_impact_world_position() -> Vector3:
|
func get_impact_world_position() -> Vector3:
|
||||||
if _net_skeleton == null:
|
return _impact_marker.global_position
|
||||||
return _catching_net.global_position
|
|
||||||
var impact_bone_index := _net_skeleton.find_bone(IMPACT_BONE)
|
|
||||||
if impact_bone_index < 0:
|
|
||||||
return _catching_net.global_position
|
|
||||||
return _net_skeleton.global_transform * (
|
|
||||||
_net_skeleton.get_bone_global_pose(impact_bone_index).origin
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
func _sync_spring_activity() -> void:
|
|
||||||
if _spring == null:
|
|
||||||
return
|
|
||||||
var is_visible := _catching_net.is_visible_in_tree()
|
|
||||||
if is_visible and not _spring_was_visible:
|
|
||||||
_spring.active = true
|
|
||||||
_spring.reset()
|
|
||||||
elif not is_visible:
|
|
||||||
_spring.active = false
|
|
||||||
_spring_was_visible = is_visible
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,42 @@
|
||||||
[gd_scene load_steps=3 format=3]
|
[gd_scene load_steps=8 format=3]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://player/net_attachment.gd" id="1_script"]
|
[ext_resource type="Script" path="res://player/net_attachment.gd" id="1_script"]
|
||||||
[ext_resource type="PackedScene" path="res://art/exported/items/equipment/net.glb" id="2_model"]
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="HandleMaterial"]
|
||||||
|
albedo_color = Color(0.25, 0.13, 0.055, 1)
|
||||||
|
roughness = 0.9
|
||||||
|
|
||||||
|
[sub_resource type="CylinderMesh" id="HandleMesh"]
|
||||||
|
material = SubResource("HandleMaterial")
|
||||||
|
top_radius = 0.025
|
||||||
|
bottom_radius = 0.035
|
||||||
|
height = 1.25
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="HoopMaterial"]
|
||||||
|
albedo_color = Color(0.34, 0.39, 0.4, 1)
|
||||||
|
metallic = 0.25
|
||||||
|
roughness = 0.65
|
||||||
|
|
||||||
|
[sub_resource type="TorusMesh" id="HoopMesh"]
|
||||||
|
material = SubResource("HoopMaterial")
|
||||||
|
inner_radius = 0.24
|
||||||
|
outer_radius = 0.29
|
||||||
|
rings = 12
|
||||||
|
ring_segments = 18
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="NetMaterial"]
|
||||||
|
transparency = 1
|
||||||
|
albedo_color = Color(0.65, 0.78, 0.75, 0.42)
|
||||||
|
shading_mode = 0
|
||||||
|
cull_mode = 2
|
||||||
|
|
||||||
|
[sub_resource type="CylinderMesh" id="NetMesh"]
|
||||||
|
material = SubResource("NetMaterial")
|
||||||
|
top_radius = 0.24
|
||||||
|
bottom_radius = 0.08
|
||||||
|
height = 0.34
|
||||||
|
radial_segments = 12
|
||||||
|
rings = 1
|
||||||
|
|
||||||
[node name="NetAttachment" type="BoneAttachment3D"]
|
[node name="NetAttachment" type="BoneAttachment3D"]
|
||||||
bone_name = "rod_socket"
|
bone_name = "rod_socket"
|
||||||
|
|
@ -12,9 +47,18 @@ aligned_mount_path = NodePath("CatchingNet")
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
[node name="ModelMount" type="Node3D" parent="CatchingNet"]
|
[node name="Handle" type="MeshInstance3D" parent="CatchingNet"]
|
||||||
position = Vector3(-0.000217, -0.098636, -0.020218)
|
position = Vector3(0, 0.55, 0)
|
||||||
rotation = Vector3(0, 3.1415927, 0)
|
mesh = SubResource("HandleMesh")
|
||||||
|
|
||||||
[node name="NetModel" parent="CatchingNet/ModelMount" unique_id=1627767240 instance=ExtResource("2_model")]
|
[node name="Hoop" type="MeshInstance3D" parent="CatchingNet"]
|
||||||
|
position = Vector3(0, 1.17, 0)
|
||||||
|
mesh = SubResource("HoopMesh")
|
||||||
|
|
||||||
|
[node name="Bag" type="MeshInstance3D" parent="CatchingNet"]
|
||||||
|
position = Vector3(0, 1, 0)
|
||||||
|
mesh = SubResource("NetMesh")
|
||||||
|
|
||||||
|
[node name="ImpactMarker" type="Marker3D" parent="CatchingNet"]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
position = Vector3(0, 1.17, 0)
|
||||||
|
|
|
||||||
|
|
@ -57,66 +57,22 @@ func _run() -> void:
|
||||||
"Net rear face did not follow the socket direction guide.",
|
"Net rear face did not follow the socket direction guide.",
|
||||||
)
|
)
|
||||||
|
|
||||||
var model := catching_net.get_node_or_null("ModelMount/NetModel") as Node3D
|
var handle := catching_net.get_node_or_null("Handle") as MeshInstance3D
|
||||||
_check(model != null, "Imported net model is missing.")
|
var hoop := catching_net.get_node_or_null("Hoop") as MeshInstance3D
|
||||||
if model == null:
|
var bag := catching_net.get_node_or_null("Bag") as MeshInstance3D
|
||||||
_finish(host_skeleton)
|
var impact_marker := (
|
||||||
return
|
catching_net.get_node_or_null("ImpactMarker") as Marker3D
|
||||||
var skeleton := model.find_child("Skeleton3D", true, false) as Skeleton3D
|
|
||||||
_check(skeleton != null, "Imported net Skeleton3D is missing.")
|
|
||||||
if skeleton == null:
|
|
||||||
_finish(host_skeleton)
|
|
||||||
return
|
|
||||||
_check(
|
|
||||||
skeleton.find_bone("net_root") >= 0,
|
|
||||||
"Imported net_root bone is missing.",
|
|
||||||
)
|
)
|
||||||
|
_check(handle != null and handle.mesh != null, "Placeholder handle is missing.")
|
||||||
|
_check(hoop != null and hoop.mesh != null, "Placeholder hoop is missing.")
|
||||||
|
_check(bag != null and bag.mesh != null, "Placeholder net bag is missing.")
|
||||||
|
_check(impact_marker != null, "Net impact marker is missing.")
|
||||||
|
if impact_marker != null:
|
||||||
_check(
|
_check(
|
||||||
skeleton.find_bone("net_rim") >= 0,
|
attachment.get_impact_world_position().is_equal_approx(
|
||||||
"Imported net_rim bone is missing.",
|
impact_marker.global_position
|
||||||
)
|
),
|
||||||
_check(
|
"Net impact position moved away from its marker.",
|
||||||
skeleton.find_bone("net_mid") >= 0,
|
|
||||||
"Imported net_mid bone is missing.",
|
|
||||||
)
|
|
||||||
_check(
|
|
||||||
skeleton.find_bone("net_tip") >= 0,
|
|
||||||
"Imported net_tip bone is missing.",
|
|
||||||
)
|
|
||||||
|
|
||||||
var spring := skeleton.get_node_or_null("NetSpring") as SpringBoneSimulator3D
|
|
||||||
_check(spring != null, "Net spring simulator was not created.")
|
|
||||||
if spring != null:
|
|
||||||
_check(spring.get_setting_count() == 1, "Net spring settings changed.")
|
|
||||||
_check(
|
|
||||||
spring.get_root_bone_name(0) == &"net_mid",
|
|
||||||
"Net spring root must remain net_mid.",
|
|
||||||
)
|
|
||||||
_check(
|
|
||||||
spring.get_end_bone_name(0) == &"net_tip",
|
|
||||||
"Net spring end must remain net_tip.",
|
|
||||||
)
|
|
||||||
_check(not spring.active, "Hidden net spring must be suspended.")
|
|
||||||
catching_net.visible = true
|
|
||||||
await process_frame
|
|
||||||
await process_frame
|
|
||||||
_check(spring.active, "Visible net spring must be active.")
|
|
||||||
_check(spring.get_joint_count(0) == 2, "Net spring chain is incomplete.")
|
|
||||||
catching_net.visible = false
|
|
||||||
await process_frame
|
|
||||||
_check(not spring.active, "Hidden net spring did not suspend.")
|
|
||||||
|
|
||||||
for child: Node in model.find_children("*", "MeshInstance3D", true, false):
|
|
||||||
var mesh_instance := child as MeshInstance3D
|
|
||||||
if mesh_instance.mesh == null:
|
|
||||||
continue
|
|
||||||
for surface_index: int in mesh_instance.mesh.get_surface_count():
|
|
||||||
var material := mesh_instance.mesh.surface_get_material(surface_index)
|
|
||||||
if material is BaseMaterial3D:
|
|
||||||
_check(
|
|
||||||
(material as BaseMaterial3D).texture_filter
|
|
||||||
== BaseMaterial3D.TEXTURE_FILTER_NEAREST,
|
|
||||||
"Net material does not use nearest texture sampling.",
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var rod_attachment := (
|
var rod_attachment := (
|
||||||
|
|
|
||||||
|
|
@ -149,12 +149,6 @@ func _run() -> void:
|
||||||
var chillnfill_credit := credits_page.get_node(
|
var chillnfill_credit := credits_page.get_node(
|
||||||
"Paper/Margin/Layout/Columns/CreativeCredits/ChillnfillCredit"
|
"Paper/Margin/Layout/Columns/CreativeCredits/ChillnfillCredit"
|
||||||
) as Label
|
) as Label
|
||||||
var adamantris_name := credits_page.get_node(
|
|
||||||
"Paper/Margin/Layout/Columns/CreativeCredits/AdamantrisName"
|
|
||||||
) as Label
|
|
||||||
var adamantris_credit := credits_page.get_node(
|
|
||||||
"Paper/Margin/Layout/Columns/CreativeCredits/AdamantrisCredit"
|
|
||||||
) as Label
|
|
||||||
var credits_paper := credits_page.get_node("Paper") as PanelContainer
|
var credits_paper := credits_page.get_node("Paper") as PanelContainer
|
||||||
var audio_credits := credits_page.get_node(
|
var audio_credits := credits_page.get_node(
|
||||||
"Paper/Margin/Layout/Columns/AdditionalCredits/AudioCredits"
|
"Paper/Margin/Layout/Columns/AdditionalCredits/AudioCredits"
|
||||||
|
|
@ -173,13 +167,12 @@ func _run() -> void:
|
||||||
"in-game credits describe the supplied model families",
|
"in-game credits describe the supplied model families",
|
||||||
)
|
)
|
||||||
_expect(
|
_expect(
|
||||||
adamantris_name.text == "adamantris",
|
"kat • animalese source recording" in audio_credits.text,
|
||||||
"in-game credits name adamantris",
|
"in-game credits name kat's animalese source contribution",
|
||||||
)
|
)
|
||||||
_expect(
|
_expect(
|
||||||
"hand-net model" in adamantris_credit.text.to_lower()
|
"kim • animalese source recording" in audio_credits.text,
|
||||||
and "texture artwork" in adamantris_credit.text.to_lower(),
|
"in-game credits name kim's animalese source contribution",
|
||||||
"in-game credits describe adamantris's hand-net contribution",
|
|
||||||
)
|
)
|
||||||
_expect(
|
_expect(
|
||||||
credits_paper.get_global_rect().encloses(
|
credits_paper.get_global_rect().encloses(
|
||||||
|
|
|
||||||
|
|
@ -114,19 +114,6 @@ theme_override_font_sizes/font_size = 15
|
||||||
text = "original 3d models for character bodies and arms, ears and tails, and multiple world props and decorative assets including trees and bridges"
|
text = "original 3d models for character bodies and arms, ears and tails, and multiple world props and decorative assets including trees and bridges"
|
||||||
autowrap_mode = 2
|
autowrap_mode = 2
|
||||||
|
|
||||||
[node name="AdamantrisName" type="Label" parent="Paper/Margin/Layout/Columns/CreativeCredits"]
|
|
||||||
layout_mode = 2
|
|
||||||
theme_override_colors/font_color = Color(0.902, 0.969, 0.969, 1)
|
|
||||||
theme_override_font_sizes/font_size = 18
|
|
||||||
text = "adamantris"
|
|
||||||
|
|
||||||
[node name="AdamantrisCredit" type="Label" parent="Paper/Margin/Layout/Columns/CreativeCredits"]
|
|
||||||
layout_mode = 2
|
|
||||||
theme_override_colors/font_color = Color(0.624, 0.812, 0.824, 1)
|
|
||||||
theme_override_font_sizes/font_size = 15
|
|
||||||
text = "original hand-net model and texture artwork"
|
|
||||||
autowrap_mode = 2
|
|
||||||
|
|
||||||
[node name="AdditionalCredits" type="VBoxContainer" parent="Paper/Margin/Layout/Columns"]
|
[node name="AdditionalCredits" type="VBoxContainer" parent="Paper/Margin/Layout/Columns"]
|
||||||
custom_minimum_size = Vector2(404, 0)
|
custom_minimum_size = Vector2(404, 0)
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
@ -143,7 +130,7 @@ text = "additional audio"
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_colors/font_color = Color(0.624, 0.812, 0.824, 1)
|
theme_override_colors/font_color = Color(0.624, 0.812, 0.824, 1)
|
||||||
theme_override_font_sizes/font_size = 15
|
theme_override_font_sizes/font_size = 15
|
||||||
text = "tosha73 • fishing reel sounds\nkkenny101 • ocean ambience\nqubodup • water impact\nAyton • rain ambience\nivolipa • dog bark\nChristyboy100 • cat meow"
|
text = "kat • animalese source recording\nkim • animalese source recording\ntosha73 • fishing reel sounds\nkkenny101 • ocean ambience\nqubodup • water impact\nAyton • rain ambience\nivolipa • dog bark\nChristyboy100 • cat meow"
|
||||||
|
|
||||||
[node name="TechnologySpacer" type="Control" parent="Paper/Margin/Layout/Columns/AdditionalCredits"]
|
[node name="TechnologySpacer" type="Control" parent="Paper/Margin/Layout/Columns/AdditionalCredits"]
|
||||||
custom_minimum_size = Vector2(0, 9)
|
custom_minimum_size = Vector2(0, 9)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue