Я создал дополненную реальность с помощью пользовательской цели (пример ядра Vuforia).
Дополненная реальность работает нормально, но я не могу скрыть и показать
3d-объект в единстве. Я использовал код setActive (false) для объекта, но не работает в приложении для Android. Я хочу реализовать это в Android.
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
using System.Net;
using System.IO;
using System.Text;
using System.Xml.Linq;
using UnityEngine.SceneManagement;
public class first : MonoBehaviour {
public UnityEngine.UI.Text responseText;
public GameObject silo1;
public GameObject silo2;
public GameObject silo3;
public GameObject silo4;
public GameObject silo5;
public Color colorStart = Color.red;
public Color colorEnd = Color.green;
public float duration = 1.0F;
private float xS = 0;
private float yS = 0;
private float zS = 0;
private float xO = 0;
private float yO = 0;
private float zO = 0;
public void Request()
{
try
{
silo1.SetActive(true);
silo2.SetActive(false);
silo3.SetActive(false);
silo4.SetActive(false);
silo5.SetActive(false);
/////////////////////////////////////////////////////////////////////////////////
string url = "http://dev-lafargeholcim.online.indeff.com/Thingworx/Things/UnityApplicationThing/Services/displayThingWorxData";
var request = UnityWebRequest.Post(url, "");
request.SetRequestHeader("Content-Type", "application/json");
request.SetRequestHeader("Accept", "text/csv");
request.SetRequestHeader("appKey", "d0b8e896-8690-416c-95d5-965165986234");
StartCoroutine(onResponse(request));
//////////////////////////////////////////////////////////////Post request//////////////////////////
//Naming to the game object
//silo.name = "silo";
// Debug.Log("Mesh Length:"+ silo.GetComponent<Renderer>().material.mainTexture.width);
// Destroy(silo);
float lerp = Mathf.PingPong(Time.time, duration) / duration;
silo1.GetComponent<Renderer>().material.color = Color.Lerp(colorStart, colorEnd, lerp);
if (yS >= 3) { return; }
else
{
duration = duration + 1;
xS = silo1.transform.localScale.x;
yS = silo1.transform.localScale.y;
zS = silo1.transform.localScale.z;
xO = silo1.transform.position.x;
yO = silo1.transform.position.y;
zO = silo1.transform.position.z;
transform.position = silo1.transform.position - Vector3.down * -10f;
yS = yS + Convert.ToSingle(0.3);
xS = xS;
zS = zS;
yO = yO;
xO = xO;
zO = zO + Convert.ToSingle(0.03);
silo1.transform.localScale = new Vector3(xS, yS, zS);
silo1.transform.position = new Vector3(xO, yO, zO);
Debug.Log("Silo Transformation\t" + silo1.transform.localScale + "\nTrasform Position\t" + silo1.transform.position);
}
}
catch (Exception e) { Debug.Log("ERROR : " + e.Message); }
}
private IEnumerator onResponse(UnityWebRequest req)
{
Debug.Log("Response function get called");
yield return req.SendWebRequest();
if (req.isNetworkError)
Debug.Log("Network error has occured: " + req.GetResponseHeader(""));
else
Debug.Log("Success " + req.downloadHandler.text);
responseText.text = req.downloadHandler.text;
byte[] results = req.downloadHandler.data;
Debug.Log("Second Success\t" + responseText.text);
}
}