Wind interactions working

This commit is contained in:
Nicklas 2024-02-27 16:57:02 +01:00
parent 02c72ae340
commit a9051be936
23 changed files with 9791 additions and 143 deletions

8
Assets/1OurHandPose.meta Normal file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c937e1cc0ee634f1b98ead8116a1e83a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,52 @@
%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: 4cfe1df7ed391a24fbe2a2d275e81b06, type: 3}
m_Name: Index
m_EditorClassIdentifier:
_shapeName: Index
_thumbFeatureConfigs:
_value:
- _mode: 1
_feature: 0
_state: 0
- _mode: 1
_feature: 1
_state: 3
_indexFeatureConfigs:
_value:
- _mode: 0
_feature: 0
_state: 0
_middleFeatureConfigs:
_value:
- _mode: 1
_feature: 0
_state: 0
- _mode: 1
_feature: 1
_state: 3
_ringFeatureConfigs:
_value:
- _mode: 1
_feature: 0
_state: 0
- _mode: 1
_feature: 1
_state: 3
_pinkyFeatureConfigs:
_value:
- _mode: 1
_feature: 0
_state: 0
- _mode: 1
_feature: 1
_state: 3

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 428f7d5a3e9304c07801ecf6eaca766b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

8
Assets/1OurScripts.meta Normal file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ee91db95707b74782a43632cbfea11d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,141 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AirElementEffects : MonoBehaviour
{ /*
public ParticleSystem masterEmitter; // Assign in inspector
public ParticleSystem slaveEmitter; // Assign in inspector
public Animator handAnimator; // Assign in inspector
private float defaultLifetime = 1.0f; // Default start lifetime, adjust as needed
void Start()
{
// Optionally, initialize defaultLifetime with the current value from the particle system
defaultLifetime = masterEmitter.main.startLifetime.constant;
}
void Update()
{
// Check if the hand gesture animation is playing by checking the Animator's boolean parameter
if (IsHandGestureDetected())
{
AdjustParticleSpeed(2.0f); // Increase speed for the duration of the gesture
StartCoroutine(ResetParticleSpeedAfterGesture(2.0f)); // Assuming gesture lasts for 2 seconds
}
}
void AdjustParticleSpeed(float newLifetime)
{
var masterMain = masterEmitter.main;
masterMain.startLifetime = newLifetime; // Adjust master emitter lifetime
var slaveMain = slaveEmitter.main;
slaveMain.duration = newLifetime; // Adjust slave emitter duration to match
// Restart the particle systems to apply the changes immediately
masterEmitter.Stop();
masterEmitter.Play();
slaveEmitter.Stop();
slaveEmitter.Play();
}
}*/
public ParticleSystem masterEmitter; // Assign in the inspector
public ParticleSystem slaveEmitter; // Assign in the inspector
public GameObject moreSpirals;
private float defaultLifetime = 0.5f; // Default start lifetime, adjust as needed
public float fasterLifetime = 2.0f; // Example faster lifetime, adjust as needed
public bool isWindActive = false;
void Start()
{
// Optionally, initialize defaultLifetime with the current value from the particle system
defaultLifetime = masterEmitter.main.startLifetime.constant;
}
public void AdjustParticleSpeed()
{
if (!isWindActive)
{
var masterMain = masterEmitter.main;
masterMain.startLifetime = fasterLifetime; // Adjust master emitter lifetime
var slaveMain = slaveEmitter.main;
slaveMain.duration = fasterLifetime; // Adjust slave emitter duration to match
// Restart the particle systems to apply the changes immediately
masterEmitter.Stop();
masterEmitter.Play();
slaveEmitter.Stop();
slaveEmitter.Play();
moreSpirals.SetActive(true);
isWindActive = true;
StartCoroutine(ResetParticleSpeed(5.0f)); // Assuming gesture lasts for * seconds
}
}
IEnumerator ResetParticleSpeed(float delay)
{
yield return new WaitForSeconds(delay);
// Reset particle system speed to default
AdjustParticleSpeedReset();
}
public void AdjustParticleSpeedReset()
{
var masterMain = masterEmitter.main;
masterMain.startLifetime = defaultLifetime; // Adjust master emitter lifetime
var slaveMain = slaveEmitter.main;
slaveMain.duration = defaultLifetime; // Adjust slave emitter duration to match
// Restart the particle systems to apply the changes immediately
masterEmitter.Stop();
masterEmitter.Play();
slaveEmitter.Stop();
slaveEmitter.Play();
moreSpirals.SetActive(false);
isWindActive = false;
}
}

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 58b38b40da00849fbad8dfe983cc19d6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a5ae95388ff4a4a168fd392beeb32031
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e1c62967f845a47d9a53772b7c9827dd
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 164290a8aa4ab41b59ec02cdacd890c0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4d995a45867a84625854b88201599c20
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 00f71d97dd7fb4369bec73b5139d48ba
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,78 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-6183999280126684706
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HandAnimation2
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 164290a8aa4ab41b59ec02cdacd890c0, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: LeftHand
serializedVersion: 5
m_AnimatorParameters:
- m_Name: IsGestureActive
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 7823202788120208153}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &7823202788120208153
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -6183999280126684706}
m_Position: {x: 260, y: 120, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -6183999280126684706}

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d4dd08241c7874e55b9dde117621f913
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,101 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-8539970708901969303
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HandAnimation2
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 164290a8aa4ab41b59ec02cdacd890c0, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2722965506505682962
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HandAnimation2 0
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 164290a8aa4ab41b59ec02cdacd890c0, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: OVRLeftHandVisual
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 1875558946847524212}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &1875558946847524212
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -8539970708901969303}
m_Position: {x: 200, y: 0, z: 0}
- serializedVersion: 1
m_State: {fileID: -2722965506505682962}
m_Position: {x: 235, y: 65, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -8539970708901969303}

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b8c16dccf47424160a709dcac6b328ba
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

@ -0,0 +1,15 @@
%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: f3fe6e38ac2d4c22b04340d6eda2a47e, type: 3}
m_Name: MetaXRAudioSettings
m_EditorClassIdentifier:
voiceLimit: 64

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 168d30ede0e10457eb851a6940c85b08
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

@ -10,6 +10,7 @@ Library: /Users/nicklasbourelius/Unity Learn /NNMDETGroupProject/Temp/BurstOutpu
--target-framework=NetFramework
--float-mode=Fast
--assembly-defines=Assembly-CSharp;
--assembly-defines=Meta.XR.Audio;
--assembly-defines=Meta.XR.BuildingBlocks;
--assembly-defines=meta.xr.mrutilitykit;
--assembly-defines=Mono.Security;
@ -55,6 +56,7 @@ Library: /Users/nicklasbourelius/Unity Learn /NNMDETGroupProject/Temp/BurstOutpu
--float-precision=Standard
--target-framework=NetFramework
--assembly-defines=Assembly-CSharp;
--assembly-defines=Meta.XR.Audio;
--assembly-defines=Meta.XR.BuildingBlocks;
--assembly-defines=meta.xr.mrutilitykit;
--assembly-defines=Mono.Security;