Проблема заключается в сопоставлении штрих-кодов с соответствующими 3D-моделями, так что при сканировании конкретного штрих-кода соответствующая ему 3D-модель накладывается на объект до тех пор, пока штрих-код больше не перестанет быть видимым, а также плавно переключается между связанными 3D-моделями на основе при сканировании соответствующих штрих-кодов.
Я попробовал простой подход: я создал сериализованный словарь, который сопоставлял идентификатор штрих-кода с соответствующими 3D-моделями, и использовал vuforia для сканирования штрих-кода (прикрепил простой сценарий сканирования штрих-кода) и изменил сценарий, в котором он загружал модель при сканировании соответствующего штрих-кода.
public class SimpleBarcodeScanner : MonoBehaviour
{
public TMPro.TextMeshProUGUI barcodeAsText;
BarcodeBehaviour mBarcodeBehaviour;
public DictionarySerializer dictionarySerializer;
private GameObject prevModel;
void Start()
{
mBarcodeBehaviour = GetComponent();
prevModel = null;
}
// Update is called once per frame
void Update()
{
if (mBarcodeBehaviour != null && mBarcodeBehaviour.InstanceData != null)
{
string barcodeText = mBarcodeBehaviour.InstanceData.Text;
barcodeAsText.text = barcodeText;
Debug.Log("Scanned Barcode ID: " + barcodeText);
if (dictionarySerializer.GetObjectsDictionary() != null && dictionarySerializer.GetObjectsDictionary().ContainsKey(barcodeText))
{
// Get the corresponding GameObject from the dictionary
GameObject model = dictionarySerializer.GetObjectsDictionary()[barcodeText];
Debug.Log("Loading Model: " + model.name);
// Activate the model
model.SetActive(true);
prevModel = model;
}
}
else if(mBarcodeBehaviour.InstanceData == null)
{
Debug.Log("Barcode not found ");
if (prevModel != null)
{
prevModel.SetActive(false);
prevModel = null;
}
}
}
это загрузило модель при сканировании ее штрих-кода, но она все равно остается на экране, даже когда я удаляю штрих-код.
как мне реализовать это правильно?
Проблема заключается в сопоставлении штрих-кодов с соответствующими 3D-моделями, так что при сканировании конкретного штрих-кода соответствующая ему 3D-модель накладывается на объект до тех пор, пока штрих-код больше не перестанет быть видимым, а также плавно переключается между связанными 3D-моделями на основе при сканировании соответствующих штрих-кодов. Я попробовал простой подход: я создал сериализованный словарь, который сопоставлял идентификатор штрих-кода с соответствующими 3D-моделями, и использовал vuforia для сканирования штрих-кода (прикрепил простой сценарий сканирования штрих-кода) и изменил сценарий, в котором он загружал модель при сканировании соответствующего штрих-кода. [code]public class SimpleBarcodeScanner : MonoBehaviour { public TMPro.TextMeshProUGUI barcodeAsText; BarcodeBehaviour mBarcodeBehaviour; public DictionarySerializer dictionarySerializer; private GameObject prevModel;
// Update is called once per frame void Update() {
if (mBarcodeBehaviour != null && mBarcodeBehaviour.InstanceData != null) { string barcodeText = mBarcodeBehaviour.InstanceData.Text; barcodeAsText.text = barcodeText; Debug.Log("Scanned Barcode ID: " + barcodeText); if (dictionarySerializer.GetObjectsDictionary() != null && dictionarySerializer.GetObjectsDictionary().ContainsKey(barcodeText)) { // Get the corresponding GameObject from the dictionary GameObject model = dictionarySerializer.GetObjectsDictionary()[barcodeText]; Debug.Log("Loading Model: " + model.name); // Activate the model model.SetActive(true);
prevModel = model; }
} else if(mBarcodeBehaviour.InstanceData == null) { Debug.Log("Barcode not found "); if (prevModel != null) { prevModel.SetActive(false); prevModel = null; } } } [/code] [list] [*]это загрузило модель при сканировании ее штрих-кода, но она все равно остается на экране, даже когда я удаляю штрих-код. как мне реализовать это правильно? [/list]