diff --git a/Assets/Plugins/UnityEditorDarkMode.meta b/Assets/Plugins/UnityEditorDarkMode.meta new file mode 100644 index 0000000..07a1fe8 --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3e722869deff58e4cae41190ceee880a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/UnityEditorDarkMode/README.txt b/Assets/Plugins/UnityEditorDarkMode/README.txt new file mode 100644 index 0000000..11e3627 --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode/README.txt @@ -0,0 +1,40 @@ +DarkMode Mod for Unity Editor on Windows +---------------------------------------------------------------------------- +v1.1 04/08/2024 +---------------------------------------------------------------------------- + +A fully working runtime dark mode mod for Unity Editor on Windows with: + + - Dark title bar + - Dark menu bar + - Dark context menu + - And more... + +> This runtime mod works on Windows 11 and Windows 10 1903+. + Tested on Unity 2019, 2020, 2021, 2022, 2023 and Unity 6. + +Source code is available at: https://github.com/0x7c13/UnityEditor-DarkMode + +---------------------------------------------------------------------------- + +MIT License + +Copyright (c) 2024 Jiaqi (0x7c13) Liu + +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. \ No newline at end of file diff --git a/Assets/Plugins/UnityEditorDarkMode/README.txt.meta b/Assets/Plugins/UnityEditorDarkMode/README.txt.meta new file mode 100644 index 0000000..f6ed178 --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode/README.txt.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 33d8f76296a183145ae27b820db1e4b4 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 281842 + packageName: DarkMode for Unity Editor on Windows + packageVersion: 1.1 + assetPath: Assets/Plugins/UnityEditorDarkMode/README.txt + uploadId: 656109 diff --git a/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll new file mode 100644 index 0000000..4a7f1e3 Binary files /dev/null and b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll differ diff --git a/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini new file mode 100644 index 0000000..6bbb3c5 --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini @@ -0,0 +1,6 @@ +menubar_textcolor = 200,200,200 +menubar_textcolor_disabled = 160,160,160 +menubar_bgcolor = 48,48,48 +menubaritem_bgcolor = 48,48,48 +menubaritem_bgcolor_hot = 62,62,62 +menubaritem_bgcolor_selected = 62,62,62 diff --git a/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini.meta b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini.meta new file mode 100644 index 0000000..cf3b4b2 --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 6c50fe9ef05bb7b49bf69b0c596fd1ed +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 281842 + packageName: DarkMode for Unity Editor on Windows + packageVersion: 1.1 + assetPath: Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.ini + uploadId: 656109 diff --git a/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.meta b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.meta new file mode 100644 index 0000000..57023cb --- /dev/null +++ b/Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll.meta @@ -0,0 +1,70 @@ +fileFormatVersion: 2 +guid: c8116b2fba7c75047b30e087741eb77b +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 1 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Editor: 0 + Exclude Linux64: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: None + userData: + assetBundleName: + assetBundleVariant: +AssetOrigin: + serializedVersion: 1 + productId: 281842 + packageName: DarkMode for Unity Editor on Windows + packageVersion: 1.1 + assetPath: Assets/Plugins/UnityEditorDarkMode/UnityEditorDarkMode.dll + uploadId: 656109 diff --git a/Assets/RebootKit b/Assets/RebootKit index f8fbe10..76b2c8c 160000 --- a/Assets/RebootKit +++ b/Assets/RebootKit @@ -1 +1 @@ -Subproject commit f8fbe10c562ae69ac91f37b76570cf0bd7a5ebe2 +Subproject commit 76b2c8c1bfda0a4b9ba1d1ac56433c0bebc460e8 diff --git a/Assets/jelycho/Code/Player/CameraSpring.cs b/Assets/jelycho/Code/Player/CameraSpring.cs index fe4f7c3..23a8761 100644 --- a/Assets/jelycho/Code/Player/CameraSpring.cs +++ b/Assets/jelycho/Code/Player/CameraSpring.cs @@ -8,7 +8,6 @@ namespace RealityReboot.jelycho.Player { [SerializeField] float m_ForwardAngularDisplacement = 1.0f; [SerializeField] float m_SidewaysAngularDisplacement = 1.0f; [SerializeField] float m_HeightAngularDisplacement = 2.0f; - [SerializeField] float m_LinearDisplacement = 0.05f; Vector3 m_SpringPosition; Vector3 m_SpringVelocity; diff --git a/Assets/jelycho/Code/Player/FPPCamera.cs b/Assets/jelycho/Code/Player/FPPCamera.cs index 3177562..4494db6 100644 --- a/Assets/jelycho/Code/Player/FPPCamera.cs +++ b/Assets/jelycho/Code/Player/FPPCamera.cs @@ -1,7 +1,10 @@ -using RebootKit.Engine.Foundation; +using System; +using RebootKit.Engine.Foundation; using RebootKit.Engine.Services.Simulation.Sensors; using Unity.Cinemachine; using UnityEngine; +using UnityEngine.Assertions; +using UnityEngine.Serialization; namespace RealityReboot.jelycho.Player { [AddComponentMenu(GameConsts.k_AddComponentMenu + "Player/First Person Camera")] @@ -9,34 +12,47 @@ namespace RealityReboot.jelycho.Player { [ConfigVar("fpp.camera.fov", 60.0f, "Field of view for the first person camera.")] static ConfigVar s_cameraFOV; - [SerializeField] float _pickDistance = 5.0f; - - [SerializeField] LayerMask _pickLayer; - + [Header("Base")] [field: SerializeField] public float Sensitivity { get; set; } - [SerializeField] float _pitchMin = -80f; - - [SerializeField] float _pitchMax = 80f; - + [SerializeField] float m_PitchMin = -80f; + [SerializeField] float m_PitchMax = 80f; + [field: SerializeField] public CinemachineCamera Camera { get; private set; } - readonly RaycastSensor _raycastSensor = new(); + CinemachineBasicMultiChannelPerlin m_BobbingNoiseComponent; + + [SerializeField] float m_BobbingFrequency = 0.5f; + [SerializeField] float m_BobbingAmplitude = 0.75f; + + [Header("Picking")] + [SerializeField] float m_PickDistance = 5.0f; + [SerializeField] LayerMask m_PickLayer; + + readonly RaycastSensor m_RaycastSensor = new(); public float Pitch { get; private set; } public float Yaw { get; private set; } public ISensor Sensor { get { - _raycastSensor.ray = new Ray(Camera.transform.position, Camera.transform.forward); - _raycastSensor.maxDistance = _pickDistance; - _raycastSensor.layerMask = _pickLayer; - return _raycastSensor; + m_RaycastSensor.ray = new Ray(Camera.transform.position, Camera.transform.forward); + m_RaycastSensor.maxDistance = m_PickDistance; + m_RaycastSensor.layerMask = m_PickLayer; + return m_RaycastSensor; } } + void Awake() { + m_BobbingNoiseComponent = + Camera.GetCinemachineComponent(CinemachineCore.Stage.Noise) as CinemachineBasicMultiChannelPerlin; + Assert.IsNotNull(m_BobbingNoiseComponent); + + SetBobbing(0.0f); + } + public void Tick() { Camera.Lens.FieldOfView = s_cameraFOV.FloatValue; Camera.transform.localRotation = Quaternion.Euler(Pitch, 0f, 0f); @@ -46,7 +62,7 @@ namespace RealityReboot.jelycho.Player { float sens = Sensitivity; Pitch -= y * sens; - Pitch = Mathf.Clamp(Pitch, _pitchMin, _pitchMax); + Pitch = Mathf.Clamp(Pitch, m_PitchMin, m_PitchMax); Yaw += x * sens; } @@ -55,5 +71,10 @@ namespace RealityReboot.jelycho.Player { Pitch = Mathf.Asin(-forward.y) * Mathf.Rad2Deg; Yaw = Mathf.Atan2(forward.x, forward.z) * Mathf.Rad2Deg; } + + public void SetBobbing(float t) { + m_BobbingNoiseComponent.AmplitudeGain = m_BobbingAmplitude * t; + m_BobbingNoiseComponent.FrequencyGain = m_BobbingFrequency * t; + } } } \ No newline at end of file diff --git a/Assets/jelycho/Code/Player/PlayerActor.cs b/Assets/jelycho/Code/Player/PlayerActor.cs index 3df038f..6e1a508 100755 --- a/Assets/jelycho/Code/Player/PlayerActor.cs +++ b/Assets/jelycho/Code/Player/PlayerActor.cs @@ -18,6 +18,17 @@ namespace RealityReboot.jelycho.Player { [SerializeField] FPPCamera m_Camera; [SerializeField] CameraSpring m_CameraSpring; + [SerializeField, Range(0.0f, 1.0f), Tooltip("Percentage of run speed")] + float m_EnableCameraBobbingPercentThreshold = 0.5f; + + [SerializeField] float m_SprintCameraBobbing = 1.0f; + [SerializeField] float m_RunCameraBobbing = 0.5f; + [SerializeField] float m_IdleCameraBobbing = 0.0f; + [SerializeField] float m_CameraBobbingTransitionSpeed = 5.0f; + + float m_TargetCameraBobbing = 0.0f; + float m_CurrentCameraBobbing = 0.0f; + [Header("Dragging")] [SerializeField] Transform m_DragGutStartPosition; [SerializeField] PhysicsObjectDragger m_PhysicsDragger; @@ -29,10 +40,29 @@ namespace RealityReboot.jelycho.Player { } public override void OnTick() { - m_Locomotion.YawRotation = m_Camera.Yaw; m_Camera.Tick(); - m_PhysicsDragger.TargetWorldPosition = m_Camera.Camera.transform.position + m_Camera.Camera.transform.forward * 2.0f; + m_Locomotion.YawRotation = m_Camera.Yaw; + + // Camera bobbing + if (m_Locomotion.IsGrounded && + m_Locomotion.SpeedXZ >= m_Locomotion.runSpeed * m_EnableCameraBobbingPercentThreshold) { + if (m_Locomotion.IsSprinting) { + m_TargetCameraBobbing = m_SprintCameraBobbing; + } else { + m_TargetCameraBobbing = m_RunCameraBobbing; + } + } else { + m_TargetCameraBobbing = m_IdleCameraBobbing; + } + + m_CurrentCameraBobbing = Mathf.MoveTowards(m_CurrentCameraBobbing, + m_TargetCameraBobbing, + m_CameraBobbingTransitionSpeed * Time.deltaTime); + m_Camera.SetBobbing(m_CurrentCameraBobbing); + + m_PhysicsDragger.TargetWorldPosition = m_Camera.Camera.transform.position + + m_Camera.Camera.transform.forward * 2.0f; if (m_PhysicsDragger.Current.OrNull() is not null) { m_LineRenderer.enabled = true; diff --git a/Assets/jelycho/Code/Player/PlayerFPPLocomotion.cs b/Assets/jelycho/Code/Player/PlayerFPPLocomotion.cs index 2f0670f..f625ca8 100755 --- a/Assets/jelycho/Code/Player/PlayerFPPLocomotion.cs +++ b/Assets/jelycho/Code/Player/PlayerFPPLocomotion.cs @@ -1,6 +1,8 @@ using System; using System.Runtime.CompilerServices; using KinematicCharacterController; +using RebootKit.Engine.Extensions; +using RebootKit.Engine.Foundation; using Unity.Mathematics; using UnityEngine; using Logger = RebootKit.Engine.Foundation.Logger; @@ -8,17 +10,18 @@ using Logger = RebootKit.Engine.Foundation.Logger; namespace RealityReboot.jelycho.Player { public class PlayerFPPLocomotion : MonoBehaviour, ICharacterController { static readonly Logger s_logger = new(nameof(PlayerFPPLocomotion)); + + [ConfigVar("fpp.show_debug", 1)] + static ConfigVar s_showDebug; [SerializeField] KinematicCharacterMotor m_Motor; public float runSpeed = 10.0f; public float sprintSpeed = 20.0f; - public float groundAcceleration = 10.0f; + public float acceleration = 8.0f; public float groundFriction = 10.0f; - public float airFriction = 1.0f; - public float jumpHeight = 2.0f; public float jumpInputDuration = 0.2f; public float coyoteDuration = 0.2f; @@ -29,14 +32,31 @@ namespace RealityReboot.jelycho.Player { public float YawRotation { get; set; } Vector3 m_WishDir; - bool m_IsSprinting; + + public bool IsSprinting { + [MethodImpl(MethodImplOptions.AggressiveInlining)] get; + [MethodImpl(MethodImplOptions.AggressiveInlining)] private set; + } + bool m_IsJumpRequested; float m_JumpRequestedTime; float m_LastGroundedTime; Vector3 m_LastVelocity; - public bool IsGrounded => m_Motor.GroundingStatus.IsStableOnGround; + public bool IsGrounded { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + get { + return m_Motor.GroundingStatus.IsStableOnGround; + } + } + + public float SpeedXZ { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + get { + return m_Motor.Velocity.With(y: 0.0f).magnitude; + } + } void Awake() { m_Motor.CharacterController = this; @@ -47,20 +67,36 @@ namespace RealityReboot.jelycho.Player { Gizmos.DrawLine(transform.position, transform.position + m_WishDir * 2.0f); } + + static GUIStyle s_debugLabelStyle; void OnGUI() { + if (s_showDebug.IndexValue == 0) { + return; + } + + if (s_debugLabelStyle == null) { + s_debugLabelStyle = new GUIStyle(GUI.skin.label) { + fontSize = 20, + normal = { textColor = Color.white }, + alignment = TextAnchor.LowerLeft + }; + } + GUI.Label(new Rect(0, 0, Screen.width, Screen.height), $"Wish Direction: {m_WishDir}\n" + $"Is Grounded: {m_Motor.GroundingStatus.IsStableOnGround}\n" + $"Is Jump Requested: {m_IsJumpRequested}\n" + $"Motor Velocity: {m_Motor.Velocity}, magnitude: {m_Motor.Velocity.magnitude}\n" + $"Motor Base Velocity: {m_Motor.BaseVelocity}, magnitude: {m_Motor.BaseVelocity.magnitude}\n" + - $"Last Velocity: {m_LastVelocity}, magnitude: {math.length(m_LastVelocity)}\n"); + $"Last Velocity: {m_LastVelocity}, magnitude: {math.length(m_LastVelocity)}\n" + + $"XZ Last Velocity: {m_LastVelocity.With(y: 0.0f).magnitude}", + s_debugLabelStyle); } [MethodImpl(MethodImplOptions.AggressiveInlining)] public void SetWishDirection(Vector3 dir) { - m_WishDir = dir; + m_WishDir = dir.normalized; } [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -71,7 +107,7 @@ namespace RealityReboot.jelycho.Player { [MethodImpl(MethodImplOptions.AggressiveInlining)] public void SetSprint(bool isSprinting) { - m_IsSprinting = isSprinting; + IsSprinting = isSprinting; } [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -88,38 +124,65 @@ namespace RealityReboot.jelycho.Player { float control, float deltaTime) { float currentSpeed = Vector3.Dot(currentVelocity, m_WishDir); - + float addSpeed = wishSpeed - currentSpeed; if (addSpeed <= 0.0f) { return; } - float accelSpeed = groundAcceleration * deltaTime * wishSpeed; + float accelSpeed = acceleration * deltaTime * wishSpeed; + if (accelSpeed > addSpeed) { + accelSpeed = addSpeed; + } + + currentVelocity += accelSpeed * control * m_WishDir; + } + + void AirAccelerate(ref Vector3 currentVelocity, + float deltaTime) { + float wishSpeed = currentVelocity.magnitude; + if (wishSpeed >= runSpeed) { + wishSpeed = runSpeed; + } + + float currentSpeed = Vector3.Dot(currentVelocity, m_WishDir); + float addSpeed = wishSpeed - currentSpeed; + if (addSpeed <= 0.0f) { + return; + } + + float accelSpeed = deltaTime * wishSpeed; if (accelSpeed > addSpeed) { accelSpeed = addSpeed; } - currentVelocity += accelSpeed * control * m_WishDir; + currentVelocity += accelSpeed * m_WishDir; } void ApplyFriction(ref Vector3 currentVelocity, float friction, float deltaTime) { - float speed = currentVelocity.magnitude; + float speed = currentVelocity.With(y: 0.0f).magnitude; if (speed <= 0.0f) { return; } - float drop = speed * friction * deltaTime; - if (drop < speed) { - currentVelocity *= (speed - drop) / speed; - } else { - currentVelocity = Vector3.zero; + float stopSpeed = 12.0f; + float control = speed < stopSpeed ? stopSpeed : speed; + float newSpeed = speed - friction * control * deltaTime; + + if (newSpeed <= 0.0f) { + newSpeed = 0.0f; } + newSpeed /= speed; + + currentVelocity.x *= newSpeed; + currentVelocity.z *= newSpeed; } void GroundMovement(ref Vector3 currentVelocity, float deltaTime) { - float wishSpeed = m_IsSprinting ? sprintSpeed : runSpeed; - Accelerate(ref currentVelocity, wishSpeed, 1.0f, deltaTime); + float wishSpeed = IsSprinting ? sprintSpeed : runSpeed; + ApplyFriction(ref currentVelocity, groundFriction, deltaTime); + Accelerate(ref currentVelocity, wishSpeed, 1.0f, deltaTime); } void ApplyGravity(ref Vector3 currentVelocity, float deltaTime) { @@ -149,9 +212,7 @@ namespace RealityReboot.jelycho.Player { if (m_Motor.GroundingStatus.IsStableOnGround) { GroundMovement(ref currentVelocity, deltaTime); } else { - Accelerate(ref currentVelocity, runSpeed, airControl, deltaTime); - ApplyFriction(ref currentVelocity, airFriction, deltaTime); - + AirAccelerate(ref currentVelocity, deltaTime); ApplyGravity(ref currentVelocity, deltaTime); } diff --git a/Assets/jelycho/Code/Rope.cs b/Assets/jelycho/Code/Rope.cs index 2f08fd7..697ea35 100755 --- a/Assets/jelycho/Code/Rope.cs +++ b/Assets/jelycho/Code/Rope.cs @@ -18,7 +18,7 @@ namespace RealityReboot.jelycho { void Start() { Clear(); - for (int i = 0; i < 2; i++) { + for (int i = 0; i < 4; i++) { AddSegment(); } } diff --git a/Assets/jelycho/Input/controls_jelycho.inputactions b/Assets/jelycho/Input/controls_jelycho.inputactions index 1f3aaee..71438a7 100644 --- a/Assets/jelycho/Input/controls_jelycho.inputactions +++ b/Assets/jelycho/Input/controls_jelycho.inputactions @@ -1,5 +1,306 @@ { "name": "controls_jelycho", - "maps": [], + "maps": [ + { + "name": "FPP", + "id": "b0bcb628-1df3-4a2c-b682-23bb146d08d6", + "actions": [ + { + "name": "Move", + "type": "Value", + "id": "3c626577-80b8-479c-9f89-3de5215ff88e", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "Look", + "type": "Value", + "id": "248f8f05-7290-4f55-aee3-cc25577f9bf8", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "Jump", + "type": "Button", + "id": "8de4d981-bcae-4100-af76-05d381d961a6", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Drag", + "type": "Button", + "id": "bf3d1155-8050-482a-ae55-fa8d47c95e94", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Primary", + "type": "Button", + "id": "b00af1dd-1084-4763-8751-fdde9810b2eb", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Secondary", + "type": "Button", + "id": "982c57c9-6862-436b-9e85-41fcbd047312", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Use", + "type": "Button", + "id": "3284ff03-949a-4f12-913b-1b74b99a599e", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Sprint", + "type": "Button", + "id": "df786de7-aff8-496e-9c10-9699e37e542e", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + } + ], + "bindings": [ + { + "name": "", + "id": "7856b569-f241-4d9d-86ef-3f2f43c93730", + "path": "/delta", + "interactions": "", + "processors": "", + "groups": "", + "action": "Look", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "d67d0677-bbce-4d3c-b135-27accc98bfb1", + "path": "/rightStick", + "interactions": "", + "processors": "ScaleVector2(x=4)", + "groups": "", + "action": "Look", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "dd672a14-64ba-4cf6-a7b6-dbd4ac779d9f", + "path": "/space", + "interactions": "", + "processors": "", + "groups": "", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "c7899bc3-40a6-4c5f-b4be-aa35b744a98b", + "path": "/buttonSouth", + "interactions": "", + "processors": "", + "groups": "", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "095c0e94-6900-442e-8bad-a61430bfead1", + "path": "/f", + "interactions": "", + "processors": "", + "groups": "", + "action": "Drag", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "c22525c4-fa19-4f56-b9ae-63cd056dae70", + "path": "/rightStickPress", + "interactions": "", + "processors": "", + "groups": "", + "action": "Drag", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "d01e2a9b-4e4a-439f-892d-db8521ed0028", + "path": "/leftButton", + "interactions": "", + "processors": "", + "groups": "", + "action": "Primary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "28cdb072-0969-47ee-a2b5-c1e30b05cfc8", + "path": "/buttonWest", + "interactions": "", + "processors": "", + "groups": "", + "action": "Primary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "0f8ae92e-c66e-4807-b95d-2fab59bd4e81", + "path": "/rightButton", + "interactions": "", + "processors": "", + "groups": "", + "action": "Secondary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "46615209-739a-447c-9313-5befdf6b885e", + "path": "/buttonEast", + "interactions": "", + "processors": "", + "groups": "", + "action": "Secondary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "WASD", + "id": "3151504d-248f-47a2-b1c6-c62f5582beea", + "path": "2DVector", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "7bb02b96-4858-48c7-b3f9-52975278ccfa", + "path": "/w", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "e2eda81d-db6a-4785-b6ea-adf41d23f1f4", + "path": "/s", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "784f8cb3-6b5c-4234-8fdd-d439d0a4353e", + "path": "/a", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "8c6bd391-705d-471d-a2d9-de82963f0c63", + "path": "/d", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "e3c4c724-efa2-49c3-8ee9-32f68f7310f4", + "path": "/leftStick", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "358c81fe-cbfe-455a-8828-a6d166426430", + "path": "/e", + "interactions": "", + "processors": "", + "groups": "", + "action": "Use", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "037bde49-96a0-4b33-a67e-881fd33c6f38", + "path": "/buttonNorth", + "interactions": "", + "processors": "", + "groups": "", + "action": "Use", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "8f8321d3-e7e9-4c01-9b59-d1d7ed8afb3b", + "path": "/leftShift", + "interactions": "", + "processors": "", + "groups": "", + "action": "Sprint", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "c5f00aad-2919-4619-8a77-22625f9bf7cd", + "path": "/leftStickPress", + "interactions": "", + "processors": "", + "groups": "", + "action": "Sprint", + "isComposite": false, + "isPartOfComposite": false + } + ] + } + ], "controlSchemes": [] } \ No newline at end of file diff --git a/Assets/jelycho/Input/controls_jelycho.inputactions.meta b/Assets/jelycho/Input/controls_jelycho.inputactions.meta index 563e8e5..8839229 100644 --- a/Assets/jelycho/Input/controls_jelycho.inputactions.meta +++ b/Assets/jelycho/Input/controls_jelycho.inputactions.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: bf6c2a363dbaef244afe38b9ff9fecc5 +guid: f991e9abd9a53ee4b94b329a5ce96cb2 ScriptedImporter: internalIDToNameTable: [] externalObjects: {} diff --git a/Assets/jelycho/Materials/m_gut_segment_test.mat b/Assets/jelycho/Materials/m_gut_segment_test.mat new file mode 100644 index 0000000..93055c4 --- /dev/null +++ b/Assets/jelycho/Materials/m_gut_segment_test.mat @@ -0,0 +1,136 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &-6013205232748957701 +MonoBehaviour: + m_ObjectHideFlags: 11 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} + m_Name: + m_EditorClassIdentifier: + version: 9 +--- !u!21 &2100000 +Material: + serializedVersion: 8 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: m_gut_segment_test + m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 + m_ValidKeywords: [] + m_InvalidKeywords: [] + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: + RenderType: Opaque + disabledShaderPasses: + - MOTIONVECTORS + m_LockedProperties: + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BaseMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _SpecGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Ints: [] + m_Floats: + - _AddPrecomputedVelocity: 0 + - _AlphaClip: 0 + - _AlphaToMask: 0 + - _Blend: 0 + - _BlendModePreserveSpecular: 1 + - _BumpScale: 1 + - _ClearCoatMask: 0 + - _ClearCoatSmoothness: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailAlbedoMapScale: 1 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _DstBlendAlpha: 0 + - _EnvironmentReflections: 1 + - _GlossMapScale: 0 + - _Glossiness: 0 + - _GlossyReflections: 0 + - _Metallic: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.005 + - _QueueOffset: 0 + - _ReceiveShadows: 1 + - _Smoothness: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _SrcBlendAlpha: 1 + - _Surface: 0 + - _WorkflowMode: 1 + - _ZWrite: 1 + m_Colors: + - _BaseColor: {r: 1, g: 0.7830166, b: 0.5990566, a: 1} + - _Color: {r: 1, g: 0.7830166, b: 0.5990566, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1} + m_BuildTextureStacks: [] + m_AllowLocking: 1 diff --git a/Assets/jelycho/Materials/m_gut_segment_test.mat.meta b/Assets/jelycho/Materials/m_gut_segment_test.mat.meta new file mode 100644 index 0000000..1947472 --- /dev/null +++ b/Assets/jelycho/Materials/m_gut_segment_test.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a77c9b1e1d7c3904a9e12b803d004477 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/jelycho/Prefabs/RopeSegment.prefab b/Assets/jelycho/Prefabs/RopeSegment.prefab index 119f600..530cbe5 100755 --- a/Assets/jelycho/Prefabs/RopeSegment.prefab +++ b/Assets/jelycho/Prefabs/RopeSegment.prefab @@ -31,7 +31,8 @@ Transform: m_LocalPosition: {x: 5, y: 4.5, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 5452900940449103625} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!54 &4464667053523743839 @@ -184,3 +185,89 @@ SphereCollider: serializedVersion: 3 m_Radius: 0.1 m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &1040602021727741658 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5452900940449103625} + - component: {fileID: 3969270039518206556} + - component: {fileID: 924001250292102233} + m_Layer: 0 + m_Name: Sphere + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5452900940449103625 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1040602021727741658} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.2, y: 0.2, z: 0.2} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 8811143122788091904} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3969270039518206556 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1040602021727741658} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &924001250292102233 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1040602021727741658} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a77c9b1e1d7c3904a9e12b803d004477, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} diff --git a/Assets/jelycho/Worlds/dev/scn_map_dev.unity b/Assets/jelycho/Worlds/dev/scn_map_dev.unity index 82f9bff..425eb61 100644 --- a/Assets/jelycho/Worlds/dev/scn_map_dev.unity +++ b/Assets/jelycho/Worlds/dev/scn_map_dev.unity @@ -1113,6 +1113,114 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &641531628 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 641531629} + - component: {fileID: 641531632} + - component: {fileID: 641531631} + - component: {fileID: 641531630} + m_Layer: 0 + m_Name: Cube (12) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &641531629 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 641531628} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -33.6, y: 0.902, z: -22.32} + m_LocalScale: {x: 2, y: 1, z: 4} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1042858358} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &641531630 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 641531628} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &641531631 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 641531628} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a1e17f3aaa1b87645ace00876ad676c8, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &641531632 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 641531628} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &729232292 GameObject: m_ObjectHideFlags: 0 @@ -1408,8 +1516,8 @@ Transform: m_GameObject: {fileID: 837027564} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -31, y: 4, z: -26.017} - m_LocalScale: {x: 2, y: 1, z: 4} + m_LocalPosition: {x: -31.47, y: 2.83, z: -26.017} + m_LocalScale: {x: 2, y: 0.63012, z: 4} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1042858358} @@ -1739,6 +1847,10 @@ Transform: - {fileID: 953613262} - {fileID: 2142333104} - {fileID: 837027565} + - {fileID: 1972428159} + - {fileID: 1443285067} + - {fileID: 641531629} + - {fileID: 1706463577} - {fileID: 1545139735} - {fileID: 158723780} - {fileID: 1913099149} @@ -1919,6 +2031,114 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1443285066 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1443285067} + - component: {fileID: 1443285070} + - component: {fileID: 1443285069} + - component: {fileID: 1443285068} + m_Layer: 0 + m_Name: Cube (15) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1443285067 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1443285066} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -27.55, y: 4.1, z: -26.017} + m_LocalScale: {x: 2, y: 0.63012, z: 4} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1042858358} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1443285068 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1443285066} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1443285069 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1443285066} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a1e17f3aaa1b87645ace00876ad676c8, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1443285070 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1443285066} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1545139734 GameObject: m_ObjectHideFlags: 0 @@ -1947,7 +2167,7 @@ Transform: m_GameObject: {fileID: 1545139734} serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -22, y: 6, z: -26.017} + m_LocalPosition: {x: -22, y: 3.24, z: -26.017} m_LocalScale: {x: 2, y: 1, z: 4} m_ConstrainProportionsScale: 0 m_Children: [] @@ -2135,6 +2355,114 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1601196691} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1706463576 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1706463577} + - component: {fileID: 1706463580} + - component: {fileID: 1706463579} + - component: {fileID: 1706463578} + m_Layer: 0 + m_Name: Cube (13) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1706463577 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1706463576} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -35.667, y: 1.589, z: -22.32} + m_LocalScale: {x: 2, y: 0.49595, z: 4} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1042858358} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1706463578 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1706463576} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1706463579 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1706463576} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a1e17f3aaa1b87645ace00876ad676c8, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1706463580 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1706463576} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &1790104247 GameObject: m_ObjectHideFlags: 0 @@ -2299,6 +2627,114 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1913099148} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1972428158 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1972428159} + - component: {fileID: 1972428162} + - component: {fileID: 1972428161} + - component: {fileID: 1972428160} + m_Layer: 0 + m_Name: Cube (14) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1972428159 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1972428158} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -29.54, y: 3.48, z: -26.017} + m_LocalScale: {x: 2, y: 0.63012, z: 4} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1042858358} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &1972428160 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1972428158} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1972428161 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1972428158} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RayTracingAccelStructBuildFlagsOverride: 0 + m_RayTracingAccelStructBuildFlags: 1 + m_SmallMeshCulling: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a1e17f3aaa1b87645ace00876ad676c8, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1972428162 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1972428158} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &2047055848 GameObject: m_ObjectHideFlags: 0 @@ -2326,7 +2762,7 @@ Transform: m_GameObject: {fileID: 2047055848} serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 2.858, y: 4.047, z: 4.051} + m_LocalPosition: {x: 5.508, y: 5.954, z: 4.051} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] @@ -2359,7 +2795,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2047055848} - m_Enabled: 1 + m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 231035b95a324754ade9f4d54d28240d, type: 3} m_Name: diff --git a/Assets/jelycho/actors/player/a_player.prefab b/Assets/jelycho/actors/player/a_player.prefab index 57ace8e..f6d4a28 100755 --- a/Assets/jelycho/actors/player/a_player.prefab +++ b/Assets/jelycho/actors/player/a_player.prefab @@ -189,7 +189,6 @@ MonoBehaviour: m_ForwardAngularDisplacement: 3 m_SidewaysAngularDisplacement: 2 m_HeightAngularDisplacement: 4 - m_LinearDisplacement: 0.1 --- !u!1 &6086846679135428685 GameObject: m_ObjectHideFlags: 0 @@ -270,14 +269,16 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b82691de261d95842bde9bca81db0893, type: 3} m_Name: m_EditorClassIdentifier: - _pickDistance: 5 - _pickLayer: - serializedVersion: 2 - m_Bits: 4294967295 k__BackingField: 0.5 - _pitchMin: -80 - _pitchMax: 80 + m_PitchMin: -80 + m_PitchMax: 80 k__BackingField: {fileID: 8557190970217331903} + m_BobbingFrequency: 1 + m_BobbingAmplitude: 1 + m_PickDistance: 5 + m_PickLayer: + serializedVersion: 2 + m_Bits: 0 --- !u!114 &2402344678768307677 MonoBehaviour: m_ObjectHideFlags: 0 @@ -334,11 +335,10 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Motor: {fileID: 7994225944200444124} - runSpeed: 10 - sprintSpeed: 20 - groundAcceleration: 8 - groundFriction: 9.91 - airFriction: 1.5 + runSpeed: 8 + sprintSpeed: 14 + acceleration: 20 + groundFriction: 10 jumpHeight: 2 jumpInputDuration: 0.2 coyoteDuration: 0.2 @@ -419,6 +419,7 @@ GameObject: m_Component: - component: {fileID: 3547307509376589031} - component: {fileID: 8557190970217331903} + - component: {fileID: 1387897054540036977} m_Layer: 0 m_Name: cc_fpp m_TagString: Untagged @@ -484,6 +485,23 @@ MonoBehaviour: BarrelClipping: 0.25 Anamorphism: 0 BlendHint: 0 +--- !u!114 &1387897054540036977 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7887986861182861129} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 68bb026fafb42b14791938953eaace77, type: 3} + m_Name: + m_EditorClassIdentifier: + NoiseProfile: {fileID: 11400000, guid: 8c717fcbc095df94da5c56dc723a9e04, type: 2} + PivotOffset: {x: 0, y: 0, z: 0} + AmplitudeGain: 1 + FrequencyGain: 1 + m_NoiseOffsets: {x: 0, y: 0, z: 0} --- !u!1001 &8469368785544680877 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset b/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset new file mode 100644 index 0000000..0e2e985 --- /dev/null +++ b/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset @@ -0,0 +1,40 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: cc_fpp Noise Profile + m_EditorClassIdentifier: + PositionNoise: + - X: + Frequency: 0.1 + Amplitude: 0.4 + Constant: 1 + Y: + Frequency: 1 + Amplitude: 0.2 + Constant: 1 + Z: + Frequency: 1 + Amplitude: 0 + Constant: 1 + OrientationNoise: + - X: + Frequency: 0 + Amplitude: 0 + Constant: 0 + Y: + Frequency: 0 + Amplitude: 0 + Constant: 0 + Z: + Frequency: 0.8 + Amplitude: 1.7 + Constant: 1 diff --git a/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset.meta b/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset.meta new file mode 100644 index 0000000..348698c --- /dev/null +++ b/Assets/jelycho/actors/player/cc_fpp Noise Profile.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8c717fcbc095df94da5c56dc723a9e04 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: