예제 #1
0
    public IEnumerator uploadEntityImage(Namable.Namable nam, Texture2D tex)
    {
        byte[] pngBytes = tex.EncodeToPNG();

        WWWForm form = new WWWForm();

        form.AddBinaryData("picture", pngBytes, "picture.png", "image/png");

        UnityWebRequest request = UnityWebRequest.Post(ip + "/upload", form);

        request.SetRequestHeader("Authorization", token);
        request.SetRequestHeader("EntityID", nam.uniqueID);
        form.headers.Add("Authorization", token);
        form.headers.Add("EntityID", nam.uniqueID);
        request.uploadHandler.contentType = "multipart/form-data";

        yield return(request.SendWebRequest());

        if (request.isNetworkError)
        {
            Debug.Log(request.error);
        }
        else
        {
            Debug.Log(request.downloadHandler.text);
            nam.imagePath = request.downloadHandler.text;
        }
    }
예제 #2
0
    private static void ShowEntity(EntityEventInfo entityEventInfo)
    {
        LocationSystem.HideNamePanel();
        if (entityEventInfo.entity.Texture == null)
        {
            currentEntity = entityEventInfo.entity;
            APIHandler.getAPIHandler().FetchImage(entityEventInfo.entity.imagePath, FetchImageCallback);
        }
        else
        {
            entityImage.sprite = Sprite.Create(
                entityEventInfo.entity.Texture,
                new Rect(0, 0, entityEventInfo.entity.Texture.width, entityEventInfo.entity.Texture.height),
                new Vector2(0.5f, 0.5f));

            entityImage.SetMaterialDirty();
            UIHelperClass.ShowPanel(entityImageObject, true);
        }
    }
예제 #3
0
 private static void SendAPIUploadImageRequest(Namable.Namable nam, Texture2D tex)
 {
     APIHandler.getAPIHandler().UploadEntityImage(nam, tex);
 }
예제 #4
0
 public void UploadEntityImage(Namable.Namable nam, Texture2D tex)
 {
     StartCoroutine(uploadEntityImage(nam, tex));
 }