Изменить цвет дополненного объекта (AR Core) во время выполнения - PullRequest
0 голосов
/ 27 сентября 2019

Я использую пример определения цели изображения из AR Core SDK.Я хочу изменить цвет объекта во время выполнения через скрипт.К этому объекту прикреплен материал.

// Create an anchor to ensure that ARCore keeps tracking this augmented image.
Anchor anchor = image.CreateAnchor(image.CenterPose);
visualizer = (AugmentedImageVisualizer)Instantiate(
AugmentedImageVisualizerPrefab, anchor.transform);
visualizer.Image = image;
m_Visualizers.Add(image.DatabaseIndex, visualizer);
Renderer rend = visualizer.GetComponent<Renderer>();
rend.sharedMaterial.shader = Shader.Find("BaseColor");
Color red = new Color(255,0,0);
rend.sharedMaterial.SetColor("_Color", red);

Это мой текущий код, который я пытался реализовать после получения подсказок из разных ответов, но, похоже, ничего не работает.

1 Ответ

0 голосов
/ 27 сентября 2019

Я могу сделать это, создав Материал соответствующего цвета и присвоив объекту AR компонент этого типа (очевидно, вам необходимо присвоить ссылки на renderer и colorMaterial в инспекторе):

using UnityEngine;

public class ARObjectController : MonoBehaviour
{
    public Renderer renderer;
    public Material colorMaterial;

    public SetMaterial()
    {
        renderer.material = colorMaterial;
    }
}
...