7cf3c028e2f206a26d81f6e042897c69



์™ผ์ชฝ ํŠธ๋ฆฌ๊ฑฐ ๋‹น๊ธฐ๋ฉด ๊ณต์ด ์ œ์ž๋ฆฌ ์œ„์น˜๋กœ ์˜ฎ๊ฒจ๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค๊ณ  ์‹ถ์€๋ฐ, ์™ผ์ชฝ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ResetManager ์ € ํ•„๋“œ์— ์•ˆ๋“ค์–ด๊ฐ.

๋ญ๊ฐ€ ๋ฌธ์ œ์ธ๊ฐ€์š”...


using UnityEngine;

using UnityEngine.XR;

using UnityEngine.XR.Interaction.Toolkit;


public class ResetManager : MonoBehaviour

{

public XRController leftController;


private ResettableObject[] resettableObjects;


void Start()

{

// ๋ชจ๋“  ResettableObject๋ฅผ ์ฐพ์Œ

resettableObjects = FindObjectsOfType<ResettableObject>();

}


void Update()

{

if (leftController != null)

{

// ์™ผ์ชฝ ํŠธ๋ฆฌ๊ฑฐ ์ž…๋ ฅ ๊ฐ์ง€

InputDevice device = leftController.inputDevice;

bool triggerValue;

if (device.TryGetFeatureValue(CommonUsages.triggerButton, out triggerValue) && triggerValue)

{

ResetAllObjects();

}

}

}


// ๋ชจ๋“  ResettableObject๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋Š” ๋ฉ”์„œ๋“œ

private void ResetAllObjects()

{

foreach (var obj in resettableObjects)

{

obj.ResetPosition();

}

}

}