сделать снимок, сохранив и используя его в качестве материала во время выполнения - PullRequest
0 голосов
/ 12 октября 2019

Я хочу сделать фотографию с помощью веб-камеры, а затем использовать фотографию в качестве материала. Я сделал снимок и сохранил его в папке на моем компьютере - и после запуска обновления изображения. Проблема в том, что для того, чтобы увидеть новое изображение, мне нужно остановить запуск, чего не хватает, чтобы увидеть обновленное изображение в реальном времени.

Я также хочу, чтобы изображение работало на менячто нужно добавить в мой код в веб-GL, а не только при запуске с моего локального ПК?

    public class ExampleClass : MonoBehaviour
{
    public string deviceName;
    WebCamTexture wct;
    private Texture2D texture = null;
    public static string path;  
    public Texture2D heightmap;
    public Vector3 size = new Vector3(100, 10, 100);

    void Start()
    {
        WebCamDevice[] devices = WebCamTexture.devices;
        deviceName = devices[0].name;
        wct = new WebCamTexture(deviceName, 400, 300, 12);
        Renderer renderer = GetComponent<Renderer>();
        renderer.material.mainTexture = wct;
        wct.Play();
    }

    void OnGUI()
    {
        if (GUI.Button(new Rect(10, 70, 50, 30), "Click"))
        {
            //take a picture
            TakeSnapshot();
            wct.Stop();

        }
    }

    // For saving to the _savepath
    private string _SavePath = "D:/Assets/Resources/"; 
    int _CaptureCounter = 0;

    void TakeSnapshot()
    {
        Texture2D snap = new Texture2D(wct.width, wct.height);
        snap.SetPixels(wct.GetPixels());
        snap.Apply();
        System.IO.File.WriteAllBytes(_SavePath + _CaptureCounter.ToString() + ".png", snap.EncodeToPNG());
    }

    public void LoadPNG()
    {
        // 0 - the name of picture
        Resources.Load<Texture2D>("0.png");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...