[gd_scene load_steps=15 format=2] [ext_resource path="res://tenniscourts/shaders/tennis_bounce.gdshader" type="Shader" id=1] [ext_resource path="res://tenniscourts/shaders/depth_map.gdshader" type="Shader" id=2] [ext_resource path="res://tenniscourts/meshes/tennis_launcher.mesh" type="ArrayMesh" id=3] [ext_resource path="res://tenniscourts/TennisRamp.gd" type="Script" id=4] [sub_resource type="ViewportTexture" id=44] viewport_path = NodePath("TennisParticles/DepthMap") [sub_resource type="ShaderMaterial" id=45] resource_local_to_scene = true shader = ExtResource( 1 ) shader_param/direction = Vector3( 0, -1, 0 ) shader_param/spread = 5.0 shader_param/flatness = 0.0 shader_param/initial_linear_velocity = 20.0 shader_param/initial_angle = 0.0 shader_param/angular_velocity = 0.0 shader_param/orbit_velocity = 0.0 shader_param/linear_accel = 0.0 shader_param/radial_accel = 0.0 shader_param/tangent_accel = 0.0 shader_param/damping = 0.0 shader_param/scale = 1.0 shader_param/hue_variation = 0.0 shader_param/anim_speed = 0.0 shader_param/anim_offset = 0.0 shader_param/initial_linear_velocity_random = 0.2 shader_param/initial_angle_random = 0.0 shader_param/angular_velocity_random = 0.0 shader_param/orbit_velocity_random = 0.0 shader_param/linear_accel_random = 0.0 shader_param/radial_accel_random = 0.0 shader_param/tangent_accel_random = 0.0 shader_param/damping_random = 0.0 shader_param/scale_random = 0.0 shader_param/hue_variation_random = 0.0 shader_param/anim_speed_random = 0.0 shader_param/anim_offset_random = 0.0 shader_param/lifetime_randomness = 0.0 shader_param/emission_box_extents = Vector3( 8, 0, 8 ) shader_param/color_value = Color( 1, 1, 1, 1 ) shader_param/trail_divisor = 1 shader_param/gravity = Vector3( 0, -9.8, 0 ) shader_param/occlusion_margin = 0.04 shader_param/depth_cam_size = 16.0 shader_param/example_normal = Vector3( -0.342, 0.94, 0 ) shader_param/depth_map = SubResource( 44 ) [sub_resource type="SpatialMaterial" id=37] albedo_color = Color( 0.615686, 1, 0, 1 ) metallic_specular = 1.0 [sub_resource type="SphereMesh" id=46] material = SubResource( 37 ) radius = 0.065 height = 0.13 radial_segments = 8 rings = 4 [sub_resource type="ShaderMaterial" id=42] resource_local_to_scene = true shader = ExtResource( 2 ) [sub_resource type="PlaneMesh" id=47] resource_local_to_scene = true material = SubResource( 42 ) size = Vector2( 16, 16 ) [sub_resource type="ConvexPolygonShape" id=50] points = PoolVector3Array( 30.1523, 1.28426, 7.57614, -30.1523, -1.15228, -7.65228, -30.1523, -1.15228, 7.57614, -30.1523, 1.28426, -7.65228, 30.1523, -1.15228, -7.65228, -30.1523, 1.28426, 7.57614, 30.1523, -1.15228, 7.57614, 30.1523, 1.28426, -7.65228 ) [sub_resource type="NoiseTexture" id=48] [sub_resource type="SpatialMaterial" id=39] roughness = 0.0 clearcoat_enabled = true clearcoat = 1.0 clearcoat_gloss = 1.0 clearcoat_texture = SubResource( 48 ) [sub_resource type="CubeMesh" id=49] material = SubResource( 39 ) size = Vector3( 60, 2, 15 ) [node name="Tennis" type="Spatial"] [node name="TennisParticles" type="Particles" parent="."] transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, -20, 3, 11.9878 ) amount = 64 lifetime = 12.0 visibility_aabb = AABB( -25.0795, -42.2433, -10.4403, 32.4784, 42.5881, 20.8805 ) local_coords = false process_material = SubResource( 45 ) draw_pass_1 = SubResource( 46 ) [node name="RemoteTransform" type="RemoteTransform" parent="TennisParticles"] transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0 ) remote_path = NodePath("../DepthMap/Camera") [node name="DepthMap" type="Viewport" parent="TennisParticles"] size = Vector2( 256, 256 ) keep_3d_linear = true render_target_v_flip = true render_target_update_mode = 3 [node name="Camera" type="Camera" parent="TennisParticles/DepthMap"] transform = Transform( -4.37114e-08, 4.37114e-08, -1, 1, 1.91069e-15, -4.37114e-08, 0, -1, -4.37114e-08, -20, 3, 11.9878 ) cull_mask = 2 projection = 1 current = true size = 16.0 [node name="Texture" type="MeshInstance" parent="TennisParticles/DepthMap/Camera"] transform = Transform( 1, -1.27992e-16, 5.59471e-24, 0, -4.37114e-08, -1, 1.27992e-16, 1, -4.37114e-08, 4.76837e-07, -2.84217e-14, -0.1 ) layers = 2 mesh = SubResource( 47 ) skeleton = NodePath("../..") [node name="TennisLauncher" type="MeshInstance" parent="TennisParticles"] transform = Transform( 1.91069e-15, 1, -4.37114e-08, 4.37114e-08, -4.37114e-08, -1, -1, 0, -4.37114e-08, 0, 2, 0 ) layers = 3 mesh = ExtResource( 3 ) skeleton = NodePath("../..") [node name="StaticBody" type="StaticBody" parent="TennisParticles"] transform = Transform( 0.34202, 0.939693, 0, -0.939693, 0.34202, 0, 0, 0, 1, 4, -40, 0 ) [node name="CollisionShape" type="CollisionShape" parent="TennisParticles/StaticBody"] shape = SubResource( 50 ) [node name="TennisRamp" type="MeshInstance" parent="TennisParticles/StaticBody"] layers = 3 mesh = SubResource( 49 ) skeleton = NodePath("../../..") script = ExtResource( 4 ) audible_range_max = 50.0