push iniziale del progetto
This commit is contained in:
37
Assets/Scripts/AvatarController.cs
Normal file
37
Assets/Scripts/AvatarController.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Unity.VisualScripting;
|
||||
using UnityEngine;
|
||||
|
||||
[System.Serializable]
|
||||
public class MapTransforms {
|
||||
public Transform vrTarget;
|
||||
public Transform ikTarget;
|
||||
public Vector3 trackingPositionOffset;
|
||||
public Vector3 trackingRotationOffset;
|
||||
|
||||
public void VRMapping() {
|
||||
ikTarget.position = vrTarget.TransformPoint(trackingPositionOffset);
|
||||
ikTarget.rotation = vrTarget.rotation * Quaternion.Euler(trackingRotationOffset);
|
||||
}
|
||||
}
|
||||
|
||||
public class AvatarController : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private MapTransforms testa;
|
||||
[SerializeField] private MapTransforms manoSinistra;
|
||||
[SerializeField] private MapTransforms manoDestra;
|
||||
[SerializeField] private float turnSmoothness;
|
||||
[SerializeField] Transform ikHead;
|
||||
[SerializeField] Vector3 headBodyOffset;
|
||||
|
||||
void LateUpdate() {
|
||||
transform.position = ikHead.position + headBodyOffset;
|
||||
transform.forward = Vector3.Lerp(transform.forward, Vector3.ProjectOnPlane(ikHead.forward, Vector3.up).normalized, Time.deltaTime * turnSmoothness);
|
||||
|
||||
testa.VRMapping();
|
||||
manoSinistra.VRMapping();
|
||||
manoDestra.VRMapping();
|
||||
}
|
||||
|
||||
}
|
||||
11
Assets/Scripts/AvatarController.cs.meta
Normal file
11
Assets/Scripts/AvatarController.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dd554ef4c8aef4fe99f52ac668a93dc5
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user