[Resolvido] Como colocar um sprite em inteface UI
3 participantes
Página 1 de 1
[Resolvido] Como colocar um sprite em inteface UI
Estou tentando colocar um sprite numa canvas, mas ele só aparece atrás dos elementos, mesmo que eu mude ele de ordem, já tentei: atrás e na frente da canvas, atrás e na frente dentro da canvas. Inclusive, já tentei também, mudar o eixo Z, e também não resolve. Pesquisei bastante também, e não encontrei muita coisa.
Alguém poderia me ajudar com isso?
Alguém poderia me ajudar com isso?
Re: [Resolvido] Como colocar um sprite em inteface UI
Você precisa renderizar um sprite? Não pode ser um Image? Eu não entendi muito bem.. O que esses scripts fazem?
Re: [Resolvido] Como colocar um sprite em inteface UI
Fazer isto é quase* impossível. Tente utilizar o Image mesmo.
(*: Você pode usar o Canvas para renderizar no Mundo Global. Veja nas opções dentro do Canvas.)
(*: Você pode usar o Canvas para renderizar no Mundo Global. Veja nas opções dentro do Canvas.)
NKKF- ProgramadorMaster
- PONTOS : 4817
REPUTAÇÃO : 574
Idade : 20
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras :
Re: [Resolvido] Como colocar um sprite em inteface UI
Então gente, aí que tá o problema, porque eu preciso usar sprite, pra esse script funcionar...
Re: [Resolvido] Como colocar um sprite em inteface UI
Você tambem pode renderizar o sprite no mundo mesmo, e aí colocar uma camera de frente pra ele. Essa camera vai transmitir tudo pra uma Render Texture. Você adiciona o componente Raw Image na sua UI, em seguida coloca a Render Texture dentro da Raw Image e pronto. Tudo que acontecer no seu mundo será transmitido pra UI em tempo real. Se tiver alguma dúvida só falar kkkkk
Re: [Resolvido] Como colocar um sprite em inteface UI
marcos4503 escreveu:Você tambem pode renderizar o sprite no mundo mesmo, e aí colocar uma camera de frente pra ele. Essa camera vai transmitir tudo pra uma Render Texture. Você adiciona o componente Raw Image na sua UI, em seguida coloca a Render Texture dentro da Raw Image e pronto. Tudo que acontecer no seu mundo será transmitido pra UI em tempo real. Se tiver alguma dúvida só falar kkkkk
Uma dúvida? kkkk
Eu tenho umas 15 dúvidas.
Sério, eu entendi uns 10% dessa resposta... ;=;
Re: [Resolvido] Como colocar um sprite em inteface UI
Tudo bem, eu vou explicar melhor, desculpe kkkkk.
Bom. Coloque o seu sprite renderer normalmente no mundo, com o script dele e tal, tudo do jeito que você quer. Provavelmente você verá que esta funcionando tudo belezinha, exceto pelo fato de que ele não ta sendo renderizado na UI.
Ok, agora coloque uma camera de frente a ele. Vá até seus assets (Onde fica suas pastas e arquivos do projeto). Clique em "Create" e em seguida "Render Texture" (Ensinarei a configura-la mais abaixo.), dê um nome a ela e pronto.
Agora, vá até a sua camera que você colocou de frente pro Sprite Renderer no mundo. Nele tem um campo chamado "Target Texture". Ele está vazio por padrão, é nele que você coloca Render Textures. Arraste a Render Texture que você criou anteriormente pra esse campo. Beleza. Você vai ver que tudo que esta camera renderiza não mais aparecera na tela e sim na Render Texture.
Agora vá até sua UI e crie um Raw Image. Só clicar com o botão direito dentro do Canvas > UI > Raw Image. Então dentro do componente Raw Image você verá um campo chamado Texture. Arraste a Render Texture que criou para esse campo. Pronto! Tudo que a camera renderizar vai ser renderizado para este Raw Image. Raw Image é igual o componente Image da Unity. Assim você vai poder alterar a ordem dela e tal.
Bom, agora vamos as configurações.
Para renderizar SOMENTE o sprite, faça o seguinte. Clique com o botão direito no objeto que contem o sprite renderer e vá até layers, lá em cima no inspector. Clique em Add Layer... Então você vai ver alguns campos com layers padrões da Unity. Vá até o ultimo campo e dê um nome pra ele. Algo como "Sprite Renderizavel", então volte até seu Sprite Renderer e altere a layer dele pra essa layer que acabou de criar. Vá até a sua camera e clique na Dropbox chamda "Culling Mask" e desmarque todas as layers, deixe marcado apenas a layer que acabou de criar. Se você fez isso corretamente você verá que a única coisa que aparecerá na UI é o sprite.
Bom, agora vamos a configuração do Render Texture. Você pode apenas alterar a resolução dessa Render Texture até que fique bem encaixado na sua UI e manter as outras configurações. Mais se quiser um pouco a mais de desempenho, desative a opção de anti alliasing e altere a dropbox "32 Bits with stencial" para "16 bits no stencil"
Acho que agora ficou melhor pra entender kkkkk
Bom. Coloque o seu sprite renderer normalmente no mundo, com o script dele e tal, tudo do jeito que você quer. Provavelmente você verá que esta funcionando tudo belezinha, exceto pelo fato de que ele não ta sendo renderizado na UI.
Ok, agora coloque uma camera de frente a ele. Vá até seus assets (Onde fica suas pastas e arquivos do projeto). Clique em "Create" e em seguida "Render Texture" (Ensinarei a configura-la mais abaixo.), dê um nome a ela e pronto.
Agora, vá até a sua camera que você colocou de frente pro Sprite Renderer no mundo. Nele tem um campo chamado "Target Texture". Ele está vazio por padrão, é nele que você coloca Render Textures. Arraste a Render Texture que você criou anteriormente pra esse campo. Beleza. Você vai ver que tudo que esta camera renderiza não mais aparecera na tela e sim na Render Texture.
Agora vá até sua UI e crie um Raw Image. Só clicar com o botão direito dentro do Canvas > UI > Raw Image. Então dentro do componente Raw Image você verá um campo chamado Texture. Arraste a Render Texture que criou para esse campo. Pronto! Tudo que a camera renderizar vai ser renderizado para este Raw Image. Raw Image é igual o componente Image da Unity. Assim você vai poder alterar a ordem dela e tal.
Bom, agora vamos as configurações.
Para renderizar SOMENTE o sprite, faça o seguinte. Clique com o botão direito no objeto que contem o sprite renderer e vá até layers, lá em cima no inspector. Clique em Add Layer... Então você vai ver alguns campos com layers padrões da Unity. Vá até o ultimo campo e dê um nome pra ele. Algo como "Sprite Renderizavel", então volte até seu Sprite Renderer e altere a layer dele pra essa layer que acabou de criar. Vá até a sua camera e clique na Dropbox chamda "Culling Mask" e desmarque todas as layers, deixe marcado apenas a layer que acabou de criar. Se você fez isso corretamente você verá que a única coisa que aparecerá na UI é o sprite.
Bom, agora vamos a configuração do Render Texture. Você pode apenas alterar a resolução dessa Render Texture até que fique bem encaixado na sua UI e manter as outras configurações. Mais se quiser um pouco a mais de desempenho, desative a opção de anti alliasing e altere a dropbox "32 Bits with stencial" para "16 bits no stencil"
Acho que agora ficou melhor pra entender kkkkk
Re: [Resolvido] Como colocar um sprite em inteface UI
marcos4503 escreveu:Tudo bem, eu vou explicar melhor, desculpe kkkkk.
Bom. Coloque o seu sprite renderer normalmente no mundo, com o script dele e tal, tudo do jeito que você quer. Provavelmente você verá que esta funcionando tudo belezinha, exceto pelo fato de que ele não ta sendo renderizado na UI.
Ok, agora coloque uma camera de frente a ele. Vá até seus assets (Onde fica suas pastas e arquivos do projeto). Clique em "Create" e em seguida "Render Texture" (Ensinarei a configura-la mais abaixo.), dê um nome a ela e pronto.
Agora, vá até a sua camera que você colocou de frente pro Sprite Renderer no mundo. Nele tem um campo chamado "Target Texture". Ele está vazio por padrão, é nele que você coloca Render Textures. Arraste a Render Texture que você criou anteriormente pra esse campo. Beleza. Você vai ver que tudo que esta camera renderiza não mais aparecera na tela e sim na Render Texture.
Agora vá até sua UI e crie um Raw Image. Só clicar com o botão direito dentro do Canvas > UI > Raw Image. Então dentro do componente Raw Image você verá um campo chamado Texture. Arraste a Render Texture que criou para esse campo. Pronto! Tudo que a camera renderizar vai ser renderizado para este Raw Image. Raw Image é igual o componente Image da Unity. Assim você vai poder alterar a ordem dela e tal.
Bom, agora vamos as configurações.
Para renderizar SOMENTE o sprite, faça o seguinte. Clique com o botão direito no objeto que contem o sprite renderer e vá até layers, lá em cima no inspector. Clique em Add Layer... Então você vai ver alguns campos com layers padrões da Unity. Vá até o ultimo campo e dê um nome pra ele. Algo como "Sprite Renderizavel", então volte até seu Sprite Renderer e altere a layer dele pra essa layer que acabou de criar. Vá até a sua camera e clique na Dropbox chamda "Culling Mask" e desmarque todas as layers, deixe marcado apenas a layer que acabou de criar. Se você fez isso corretamente você verá que a única coisa que aparecerá na UI é o sprite.
Bom, agora vamos a configuração do Render Texture. Você pode apenas alterar a resolução dessa Render Texture até que fique bem encaixado na sua UI e manter as outras configurações. Mais se quiser um pouco a mais de desempenho, desative a opção de anti alliasing e altere a dropbox "32 Bits with stencial" para "16 bits no stencil"
Acho que agora ficou melhor pra entender kkkkk
Mano, cê não tem ideia do berro que eu dei cara.
Deu certinhooooooooooooo, aff, to muito feliz.
Obrigado mesmo pelo tutorial, super bem explicado.
:D :D :D :D :D :D
Re: [Resolvido] Como colocar um sprite em inteface UI
De nada parceiro! Qualquer coisa estamos aí!
Vou fechar o tópico e marcar como resolvido!
Vou fechar o tópico e marcar como resolvido!
Tópicos semelhantes
» [RESOLVIDO] Galera, onde pede (sprite) no unity qual formato de imagen devo colocar
» [RESOLVIDO] Como mudar o scale de um sprite renderer????
» [RESOLVIDO]TEM COMO COLOCAR UM OBJETO 3D NO CANVAS?
» [RESOLVIDO]COMO COLOCAR SOM EM DETERMINADA AREA?
» [RESOLVIDO] Como colocar som na arma quando eu disparo?
» [RESOLVIDO] Como mudar o scale de um sprite renderer????
» [RESOLVIDO]TEM COMO COLOCAR UM OBJETO 3D NO CANVAS?
» [RESOLVIDO]COMO COLOCAR SOM EM DETERMINADA AREA?
» [RESOLVIDO] Como colocar som na arma quando eu disparo?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos