Exemple #1
0
        public override IEnumerator RunTest()
        {
            LogConsole.RegisterForAllLogEvents(this);

            links = gameObject.GetLinkMap();
            var img = links.Get <Image>("Image1");

            img.type           = Image.Type.Simple;
            img.preserveAspect = true;
            links.Get <Button>("ButtonLoadImage1").SetOnClickAction(delegate {
                var t = Log.MethodEntered("ButtonLoadImage1");
                StartCoroutine(DownloadTexture2D(new Uri(GetUrl()), new Response <Texture2D>().WithResultCallback(texture2d => {
                    img.sprite = texture2d.ToSprite();
                    Log.MethodDone(t);
                })));
            });
            links.Get <Button>("ButtonLoadImage2").SetOnClickAction(delegate {
                var t = Log.MethodEntered("ButtonLoadImage2");
                StartCoroutine(DownloadBytes(new Uri(GetUrl()), new Response <byte[]>().WithResultCallback(async downloadedBytes => {
                    var texture2d = await ImageLoaderUnity.ToTexture2D(downloadedBytes);
                    img.sprite    = texture2d.ToSprite();
                    Log.MethodDone(t);
                })));
            });
            links.Get <Button>("ButtonLoadImage3").SetOnClickAction(async delegate {
                var t = Log.MethodEntered("ButtonLoadImage3");
                Texture2D loadedImage = await links.Get <Image>("Image2").LoadFromUrl(GetUrl());
                Log.MethodDone(t);
                Toast.Show($"The loaded texture has the size: {loadedImage.width}x{loadedImage.height} pixels");
            });

            yield return(null);
        }
        private void TestTexture2dVsRawByteLoadingSpeeds()
        {
            var img = links.Get <Image>("Image1");

            img.type           = Image.Type.Simple;
            img.preserveAspect = true;

            links.Get <Button>("ButtonLoadImage1").SetOnClickAction(delegate {
                var t = Log.MethodEntered("ButtonLoadImage1");
                StartCoroutine(DownloadTexture2D(new Uri(GetUrl()), new Response <Texture2D>().WithResultCallback(texture2d => {
                    img.sprite = texture2d.ToSprite();
                    Log.MethodDone(t);
                })));
            });

            links.Get <Button>("ButtonLoadImage2").SetOnClickAction(delegate {
                var t = Log.MethodEntered("ButtonLoadImage2");
                StartCoroutine(DownloadBytes(new Uri(GetUrl()), new Response <byte[]>().WithResultCallback(async downloadedBytes => {
                    Texture2D texture2d = await ImageLoaderUnity.ToTexture2D(downloadedBytes);
                    img.sprite          = texture2d.ToSprite();
                    Log.MethodDone(t);
                })));
            });
        }