Skip to content

Commit

Permalink
start working through more of the bugs
Browse files Browse the repository at this point in the history
  • Loading branch information
dooly123 committed Feb 22, 2025
1 parent fb4b7bb commit db2c3e8
Show file tree
Hide file tree
Showing 14 changed files with 1,324 additions and 74 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,18 @@ MonoBehaviour:
- rid: 2858994164428701718
- rid: 6147443510823354495
m_RuntimeSettings:
m_List: []
m_List:
- rid: 2858994164428701698
- rid: 2858994164428701699
- rid: 2858994164428701700
- rid: 2858994164428701702
- rid: 2858994164428701703
- rid: 2858994164428701706
- rid: 2858994164428701708
- rid: 6147443362521677920
- rid: 2858994164428701716
- rid: 2858994164428701717
- rid: 2858994164428701718
m_AssetVersion: 8
m_ObsoleteDefaultVolumeProfile: {fileID: 0}
m_RenderingLayerNames:
Expand Down
12 changes: 6 additions & 6 deletions Basis/Packages/com.basis.framework/Avatar/BasisAvatarFactory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ public static class BasisAvatarFactory
{
BasisBundleDescription = new BasisBundleDescription()
{
AssetBundleDescription = "LoadingAvatar",
AssetBundleName = "LoadingAvatar"
AssetBundleDescription = BasisLocalPlayer.DefaultAvatar,
AssetBundleName = BasisLocalPlayer.DefaultAvatar
},
HasError = false,
BasisBundleGenerated = new BasisBundleGenerated()
Expand All @@ -34,14 +34,14 @@ public static class BasisAvatarFactory
UnlockPassword = "N/A",
BasisRemoteBundleEncrypted = new BasisRemoteEncyptedBundle()
{
BundleURL = "LoadingAvatar",
BundleURL = BasisLocalPlayer.DefaultAvatar,
IsLocal = true,
MetaURL = "LoadingAvatar",
MetaURL = BasisLocalPlayer.DefaultAvatar,
},
BasisLocalEncryptedBundle = new BasisStoredEncyptedBundle()
{
LocalBundleFile = "LoadingAvatar",
LocalMetaFile = "LoadingAvatar",
LocalBundleFile = BasisLocalPlayer.DefaultAvatar,
LocalMetaFile = BasisLocalPlayer.DefaultAvatar,
},
};
public static async Task LoadAvatarLocal(BasisLocalPlayer Player,byte Mode, BasisLoadableBundle BasisLoadableBundle)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using Basis.Scripts.BasisSdk.Players;
using System;
using System.IO;
using System.Threading;
Expand Down Expand Up @@ -201,7 +202,10 @@ public static async Task DownloadAndSaveMetaFile(BasisTrackedBundleWrapper Basis
{
if (!File.Exists(BasisTrackedBundleWrapper.LoadableBundle.BasisRemoteBundleEncrypted.MetaURL))
{
BasisDebug.LogError($"Local meta file not found: {metaUrl}");
if (metaUrl != BasisLocalPlayer.DefaultAvatar)
{
BasisDebug.LogError($"Local meta file not found: {metaUrl}");
}
return;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,14 +167,23 @@ public void InitalizeTracking(string uniqueID, string unUniqueDeviceID, string s
BasisDebug.Log("Overriding Tracker " + BasisDeviceMatchSettings.DeviceID, BasisDebug.LogTag.Input);
AssignRoleAndTracker(BasisDeviceMatchSettings.TrackedRole);
}

AvatarRotationOffset = BasisDeviceMatchSettings.AvatarRotationOffset;
AvatarPositionOffset = BasisDeviceMatchSettings.AvatarPositionOffset;
HasRaycastSupport = BasisDeviceMatchSettings.HasRayCastSupport;
HasInteractVisual = BasisDeviceMatchSettings.HasInteractVisual;
if (HasRaycastSupport)
if (hasRoleAssigned)
{
AvatarRotationOffset = BasisDeviceMatchSettings.AvatarRotationOffset;
AvatarPositionOffset = BasisDeviceMatchSettings.AvatarPositionOffset;
HasRaycastSupport = BasisDeviceMatchSettings.HasRayCastSupport;
HasInteractVisual = BasisDeviceMatchSettings.HasInteractVisual;
if (HasRaycastSupport)
{
CreateRayCaster(this);
}
}
else
{
CreateRayCaster(this);
HasRaycastSupport = false;
HasInteractVisual = false;
AvatarPositionOffset = Vector3.zero;
AvatarRotationOffset = Vector3.zero;
}

if (HasEvents == false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,18 +35,20 @@ public class BasisLocalPlayer : BasisPlayer
/// use the bool to
/// </summary>
public Action OnPlayersHeightChanged;

public BasisLocalBoneDriver LocalBoneDriver;
public BasisLocalAvatarDriver AvatarDriver;
// public BasisFootPlacementDriver FootPlacementDriver;
public BasisAudioAndVisemeDriver VisemeDriver;
public BasisLocalCameraDriver CameraDriver;

[SerializeField]
public LayerMask GroundMask;
public static string LoadFileNameAndExtension = "LastUsedAvatar.BAS";
public bool HasEvents = false;
public MicrophoneRecorder MicrophoneRecorder;
public bool SpawnPlayerOnSceneLoad = true;
public const string DefaultAvatar = "LoadingAvatar";
public BasisLocalCameraDriver Driver;
public async Task LocalInitialize()
{
if (BasisHelpers.CheckInstance(Instance))
Expand All @@ -59,7 +61,7 @@ public async Task LocalInitialize()
IsLocal = true;
LocalBoneDriver.CreateInitialArrays(LocalBoneDriver.transform, true);
BasisDeviceManagement.Instance.InputActions.Initialize(this);
Driver.gameObject.SetActive(true);
CameraDriver.gameObject.SetActive(true);
// FootPlacementDriver = BasisHelpers.GetOrAddComponent<BasisFootPlacementDriver>(this.gameObject);
// FootPlacementDriver.Initialize();
Move.Initialize();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,4 +144,4 @@ public void SetUIPositionAndRotation()
}
#endregion
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,10 @@ private async Task Initialize()
{
if (!BasisLoadHandler.IsMetaDataOnDisc(activeKeys[Index].Url, out var info))
{
BasisDebug.LogError("Missing File on Disc For " + activeKeys[Index].Url);
if (activeKeys[Index].Url != BasisLocalPlayer.DefaultAvatar)
{
BasisDebug.LogError("Missing File on Disc For " + activeKeys[Index].Url);
}
await BasisDataStoreAvatarKeys.RemoveKey(activeKeys[Index]);
continue;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
using Basis.Scripts.BasisSdk.Players;
using Basis.Scripts.Drivers;
using Basis.Scripts.TransformBinders.BoneControl;
using System.Collections;
using UnityEngine;

namespace Basis.Scripts.UI.UI_Panels
Expand All @@ -10,8 +12,10 @@ public class BasisUIMovementDriver : MonoBehaviour
public bool hasLocalCreationEvent = false;
public Vector3 Position;
public Quaternion Rotation;
private Vector3 InitalScale;
public void OnEnable()
{
InitalScale = transform.localScale;
if (BasisLocalPlayer.Instance != null)
{
LocalPlayerGenerated();
Expand Down Expand Up @@ -41,27 +45,42 @@ public void OnDisable()
}
public void StartWaitAndSetUILocation()
{
BasisDebug.Log("StartWaitAndSetUILocation");
StartCoroutine(DelaySetUI());
}
private IEnumerator DelaySetUI() // Waits until end of frame to set position, to ensure all other data has been updated
{
yield return null;
SetUILocation();
}
public void SetUILocation()
{
// Get the current position and rotation from the BasisLocalCameraDriver
BasisLocalCameraDriver.GetPositionAndRotation(out Position, out Rotation);

if(BasisLocalPlayer.Instance == null)
{
return;
}
if (BasisLocalPlayer.Instance.CameraDriver == null)
{
return;
}
// Log the current scale for debugging purposes
BasisDebug.Log("Scale was " + BasisLocalPlayer.Instance.EyeRatioPlayerToDefaultScale);

// Extract the yaw (rotation around the vertical axis) and ignore pitch and roll
Vector3 eulerRotation = Rotation.eulerAngles;
// eulerRotation.x = 0f; // Remove pitch
eulerRotation.z = 0f; // Remove roll

// Create a new quaternion with the adjusted rotation
Quaternion horizontalRotation = Quaternion.Euler(eulerRotation);

Vector3 adjustedOffset = new Vector3(WorldOffset.x, 0, WorldOffset.z) * BasisLocalPlayer.Instance.EyeRatioPlayerToDefaultScale;
Vector3 targetPosition = Position + (horizontalRotation * adjustedOffset);

// Set the position and the adjusted horizontal rotation
transform.SetPositionAndRotation(Position + (horizontalRotation * (WorldOffset * BasisLocalPlayer.Instance.EyeRatioPlayerToDefaultScale)), horizontalRotation);
transform.SetPositionAndRotation(targetPosition, horizontalRotation);
transform.localScale = InitalScale * BasisLocalPlayer.Instance.EyeRatioPlayerToDefaultScale;
}

}
}
}
Loading

0 comments on commit db2c3e8

Please sign in to comment.