problema para acessar arquivos da pasta StreamingAssets
3 participantes
Página 1 de 1
problema para acessar arquivos da pasta StreamingAssets
Bom dia galera
Então... estou com um problema sério com um sistema de upload de imagem que estou fazendo.
a ideia é fazer o usuário subir uma logo(img) para anexar em umas roupa(modelo 3d).
ele é para WebGL, então, para subir a imagem eu fiz um botão "upload" que quando clicado abre uma pagina php, que tem um sistema de upload, onde manda a imagem que o usuário selecionar para a pasta ""StreamingAssets/uploads". ( se alguém tiver uma ideia melhor, será muito bem vinda)
mas meu problema é quando vou acessar a imagens que estão na pasta. Eu criei um sistema em que verifica quantos arquivos tem na pasta "StreamingAssets/uploads" e para cada arquivo eu instancio um "plane" que recebe a imagem como textura , se o numero de imagens mudar, ele deleta os "planes" e faz a leitura de novo.
até ai tudo bem, está funcionando numa boa no projeto, mas quando eu exporto o projeto para WeGL (ou qualquer outro), ele não consegue reconhecer as imagens.
apresenta esse erro:
e quando ele roda no projeto, ele cria tudo certinho
e aqui esta o script que estou usando, é so colocá-lo em algum gameobject que ele pega as imagens que estão no diretório "StreamingAssets/uploads" e cria um plane para cada imagem
Então... estou com um problema sério com um sistema de upload de imagem que estou fazendo.
a ideia é fazer o usuário subir uma logo(img) para anexar em umas roupa(modelo 3d).
ele é para WebGL, então, para subir a imagem eu fiz um botão "upload" que quando clicado abre uma pagina php, que tem um sistema de upload, onde manda a imagem que o usuário selecionar para a pasta ""StreamingAssets/uploads". ( se alguém tiver uma ideia melhor, será muito bem vinda)
mas meu problema é quando vou acessar a imagens que estão na pasta. Eu criei um sistema em que verifica quantos arquivos tem na pasta "StreamingAssets/uploads" e para cada arquivo eu instancio um "plane" que recebe a imagem como textura , se o numero de imagens mudar, ele deleta os "planes" e faz a leitura de novo.
até ai tudo bem, está funcionando numa boa no projeto, mas quando eu exporto o projeto para WeGL (ou qualquer outro), ele não consegue reconhecer as imagens.
apresenta esse erro:
e quando ele roda no projeto, ele cria tudo certinho
e aqui esta o script que estou usando, é so colocá-lo em algum gameobject que ele pega as imagens que estão no diretório "StreamingAssets/uploads" e cria um plane para cada imagem
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
public class up : MonoBehaviour {
string _caminho;
string[] urls;
float x;
float y;
int quantidadeURLs;
Texture[] texturas;
//Texture2D[] texturas;
int qntArquivos;
GameObject[] destroii;
void Start()
{
x = -5;
y = 4;
// caminho da pasta my file na pasta streamingassets
_caminho = Application.streamingAssetsPath + "/uploads";// Path.Combine();
// recebe a url de todo o conteudo de dentro da pasta MyFlie
urls = Directory.GetFiles(_caminho, "*.*");
qntArquivos = urls.Length;
quantidadeURLs = qntArquivos;
// texturas = new Texture[30];
instanciarPaineis();
//DirectoryNotFoundException Directory
}
private void OnGUI()
{
GUI.Label(new Rect(Screen.width / 2 - 200, Screen.height / 2, 400, 110), _caminho);
}
private void Update()
{ // recebe a url de todo o conteudo de dentro da pasta MyFlie
urls = Directory.GetFiles(_caminho, "*.*");
qntArquivos = urls.Length;
if (qntArquivos!=quantidadeURLs)
{
instanciarPaineis();
quantidadeURLs = qntArquivos;
}
}
IEnumerator createPlane(int id, float x, float y, string Url) {
//cria o plane
GameObject plane = GameObject.CreatePrimitive(PrimitiveType.Plane);
plane.transform.position = new Vector3(x, y, 0);
plane.transform.eulerAngles = new Vector3(90, 180, 0);
plane.transform.localScale = new Vector3(0.2f, 1, 0.2f);
plane.tag = "plane";
string novoUrl = "file:///" + Url;
// Start a download of the given URL
WWW www = new WWW(novoUrl);
// Wait for download to complete
yield return www;
// insere imagem correspondente no plane
Texture textura = www.texture;
plane.GetComponent<Renderer>().material.mainTexture = textura;
}
void instanciarPaineis() {
destroii = GameObject.FindGameObjectsWithTag("plane");
if (destroii.Length > 0)
{
x = -5;
y = 4;
foreach (GameObject destroi in destroii) {
Destroy(destroi);
}
}
for (int i = 0; i < qntArquivos; i += 2)
{
StartCoroutine(createPlane(i, x, y, urls[i]));
Debug.Log(urls[0]);
x += 2;
if (x > 5)
{
y -= 2;
x = -5;
}
}
}
}
erick.q.faria- Iniciante
- PONTOS : 3528
REPUTAÇÃO : 1
Respeito as regras :
Re: problema para acessar arquivos da pasta StreamingAssets
alguém ??
aqui um link com a IMAGENS, caso não estejam funcionando
aqui um link com a IMAGENS, caso não estejam funcionando
erick.q.faria- Iniciante
- PONTOS : 3528
REPUTAÇÃO : 1
Respeito as regras :
Re: problema para acessar arquivos da pasta StreamingAssets
erick.q.faria escreveu:alguém ??
aqui um link com as IMAGENS, caso não estejam funcionando
erick.q.faria- Iniciante
- PONTOS : 3528
REPUTAÇÃO : 1
Respeito as regras :
Re: problema para acessar arquivos da pasta StreamingAssets
provavelmente essa pasta deixo de existir, acredito que isso também aconteça em WebGL então tente usar a pasta Resources não tenho certeza se irar funcionar mais tente ai!
https://docs.unity3d.com/ScriptReference/Resources.html
https://docs.unity3d.com/ScriptReference/Resources.html
Weslley- Moderador
- PONTOS : 5727
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: problema para acessar arquivos da pasta StreamingAssets
então, eu já usei a pasta Resources, mas não consegui fazer o upload da imagem sem a "streamingassets" ??
erick.q.faria- Iniciante
- PONTOS : 3528
REPUTAÇÃO : 1
Respeito as regras :
Re: problema para acessar arquivos da pasta StreamingAssets
A pricipio, basta usar Resources.Load
https://docs.unity3d.com/ScriptReference/Resources.Load.html
https://docs.unity3d.com/ScriptReference/Resources.Load.html
Tópicos semelhantes
» [TUTORIAL] Acessar nomes de arquivos diretamente da pasta
» A pasta editor não esta na pasta Assets no unity 2018
» Não consigo importar arquivos .FBX para o blender !!! Help please
» Como carregar imagens da pasta ( Arquivos e não Sprites ) via script.
» Como acessar arquivos do armazenamento?
» A pasta editor não esta na pasta Assets no unity 2018
» Não consigo importar arquivos .FBX para o blender !!! Help please
» Como carregar imagens da pasta ( Arquivos e não Sprites ) via script.
» Como acessar arquivos do armazenamento?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos