[TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
+7
Weslley
darkdrezinho
Manawydan
diogo leite 123
Animdude
gustavo Games Indie
MarcosSchultz
11 participantes
Página 1 de 1
[TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Fala galera, fiz este tutorial explicando como fazer uma camera de visão noturna :D
Em Window>Lighting, aconselho deixar:
"Ambiente Source" em Color
"Color" em (1, 1, 1, 255)
"Ambient Intensity" em 8
"Reflection Intensity" em 0.02
E lembre-se de fazer a exportação do shader "Unlit/Texture" conforme o vídeo mostra. Senão dará erros ao exportar o projeto
Script do tutorial:
Em Window>Lighting, aconselho deixar:
"Ambiente Source" em Color
"Color" em (1, 1, 1, 255)
"Ambient Intensity" em 8
"Reflection Intensity" em 0.02
E lembre-se de fazer a exportação do shader "Unlit/Texture" conforme o vídeo mostra. Senão dará erros ao exportar o projeto
Script do tutorial:
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityStandardAssets.ImageEffects;
[RequireComponent(typeof(Camera))]
[RequireComponent(typeof(ScreenOverlay))]
[RequireComponent(typeof(EdgeDetection))]
[RequireComponent(typeof(NoiseAndScratches))]
[RequireComponent(typeof(SphereCollider))]
[RequireComponent(typeof(Rigidbody))]
public class VisNot : MonoBehaviour {
//LEMBRAR DE EXPORTAR OS SHADERS
[Range(15,100)]
public int claridade = 50;
[Range(0,0.1f)]
public float intensidadeCor = 0.02f;
public Color cor = Color.green;
[Range(0,1)]
public float intensidadeChuvisco = 0.03f;
public GameObject TelaCamera;
public Image nivelBateria;
public Text textoBaterias;
[Range(0,300)]
public int duracaoBateria = 120;
[Range(0,10)]
public int quantInicBaterias = 5;
[Range(0,10)]
public int quantTotBaterias = 10;
public string tagBaterias = "BATERIA";
private Texture2D texturaDesligado;
private RenderTexture renderTexture;
private Camera cameraTextura;
private ScreenOverlay clareador;
private EdgeDetection colorador;
private NoiseAndScratches chuviscador;
private float tempBateria;
private int quantBaterias;
private bool camLigada = false,noturnLigada = false;
private bool perto;
private GameObject bateriaTemporaria;
void Awake () {
//SETAR COMPONENTES
cameraTextura = GetComponent<Camera>();
clareador = GetComponent<ScreenOverlay>();
colorador = GetComponent<EdgeDetection>();
chuviscador = GetComponent<NoiseAndScratches>();
//criar nova textura
texturaDesligado = new Texture2D (1, 1);
texturaDesligado.SetPixel (1, 1, Color.black);
//tela da camera
renderTexture = new RenderTexture(256, 256, 16, RenderTextureFormat.ARGB32);
renderTexture.Create();
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Unlit/Texture");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", renderTexture);
//Camera
GetComponent<SphereCollider> ().radius = 0.005f;
GetComponent<SphereCollider> ().isTrigger = false;
GetComponent<Rigidbody> ().isKinematic = true;
cameraTextura.nearClipPlane = 0.01f;
cameraTextura.targetTexture = renderTexture;
//ScreenOverlay
clareador.blendMode = ScreenOverlay.OverlayBlendMode.Multiply;
clareador.intensity = claridade;
//EdgeDetection
colorador.mode = EdgeDetection.EdgeDetectMode.TriangleLuminance;
colorador.lumThreshold = 0;
colorador.sampleDist = 0;
colorador.edgesOnly = intensidadeCor;
colorador.edgesOnlyBgColor = cor;
//NoiseAndScratches
chuviscador.grainIntensityMin = intensidadeChuvisco;
chuviscador.grainIntensityMax = intensidadeChuvisco;
chuviscador.scratchIntensityMin = 0;
chuviscador.scratchIntensityMax = 0;
}
void Start (){
SetarVariaveis ();
clareador.enabled = colorador.enabled = noturnLigada;
tempBateria = duracaoBateria;
quantBaterias = quantInicBaterias;
}
void Update () {
if (Input.GetMouseButtonDown(1) && tempBateria > 0) {
camLigada = !camLigada;
SetarVariaveis ();
}
if (Input.GetKeyDown ("n")) {
noturnLigada = !noturnLigada;
clareador.enabled = colorador.enabled = noturnLigada;
}
if (camLigada == true) {
if(noturnLigada == true){
tempBateria -= Time.deltaTime*2;
}else{
tempBateria -= Time.deltaTime;
}
}
if (tempBateria <= 0) {
camLigada = false;
SetarVariaveis ();
}
if (Input.GetKeyDown ("r") && quantBaterias > 0) {
quantBaterias--;
tempBateria = duracaoBateria;
}
nivelBateria.fillAmount = (tempBateria / duracaoBateria);
textoBaterias.text = "" + quantBaterias;
//PEGAR BATERIAS
if (Input.GetKeyDown("e") && perto == true) {
if(quantBaterias < quantTotBaterias){
perto = false;
Destroy(bateriaTemporaria.gameObject);
quantBaterias++;
}
}
}
void SetarVariaveis (){
if (camLigada == true) {
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Unlit/Texture");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", renderTexture);
nivelBateria.enabled = true;
textoBaterias.enabled = true;
} else {
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Standard");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", texturaDesligado);
TelaCamera.GetComponent<Renderer> ().material.SetColor ("_Color",new Color32(60,60,60,255));//diminuir a claridade do preto
nivelBateria.enabled = false;
textoBaterias.enabled = false;
}
}
void OnTriggerEnter (Collider colisor){
if (colisor.gameObject.CompareTag (tagBaterias)) {
perto = true;
bateriaTemporaria = colisor.gameObject;
}
}
void OnTriggerExit (Collider colisor){
if (colisor.gameObject.CompareTag (tagBaterias)) {
perto = false;
bateriaTemporaria = null;
}
}
}
Última edição por MarcosSchultz em Sáb Set 17, 2016 12:41 am, editado 2 vez(es)
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
cara to criando um game de guerra e queria saber como faço para enves de uma camera que gravasse queria aquele oculos de night vision como que qu faria um script pra fazer isso?
Um oculos de night vision que nao usase bateria cara me ajuda pfv todo dia to postando aqui no forum e digulgando para meus amigos.
Um oculos de night vision que nao usase bateria cara me ajuda pfv todo dia to postando aqui no forum e digulgando para meus amigos.
gustavo Games Indie- Avançado
- PONTOS : 3219
REPUTAÇÃO : 18
Idade : 28
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Basta utilizar os efeitos que eu citei no tutorial...
São scripts dos assets padrões da Unity
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
marcos como adicionar uma animação de o carinha tirando a camera
Animdude- Membro
- PONTOS : 3127
REPUTAÇÃO : 1
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Dê uma olhada neste tutorial, veja se ajuda...
Más você teria que alterar bastante coisa no sistema
Más você teria que alterar bastante coisa no sistema
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
marcos esta dando erro no script Assets/Plugins/OUTROS SCRIPTS S-CHARP/VisNot.cs(11,43): error CS1519: Unexpected symbol `:' in class, struct, or interface member declaration
diogo leite 123- Iniciante
- PONTOS : 2816
REPUTAÇÃO : 0
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
so delete o:
https://www.schultzgames.com
da linha 11
https://www.schultzgames.com
da linha 11
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
ja fiz isso ... o erro que estou percebendo agora é esse
[RequireComponent(typeof(NoiseAndScratches))] linha 8
private NoiseAndScratches chuviscador; linha 36
chuviscador = GetComponent<NoiseAndScratches>(); linha 49
chuviscador.grainIntensityMin = intensidadeChuvisco;
chuviscador.grainIntensityMax = intensidadeChuvisco;
chuviscador.scratchIntensityMin = 0;
chuviscador.scratchIntensityMax = 0;
linhas 74 ao 77
obrigado por responder
[RequireComponent(typeof(NoiseAndScratches))] linha 8
private NoiseAndScratches chuviscador; linha 36
chuviscador = GetComponent<NoiseAndScratches>(); linha 49
chuviscador.grainIntensityMin = intensidadeChuvisco;
chuviscador.grainIntensityMax = intensidadeChuvisco;
chuviscador.scratchIntensityMin = 0;
chuviscador.scratchIntensityMax = 0;
linhas 74 ao 77
obrigado por responder
diogo leite 123- Iniciante
- PONTOS : 2816
REPUTAÇÃO : 0
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
diogo leite 123 escreveu:ja fiz isso ... o erro que estou percebendo agora é esse
[RequireComponent(typeof(NoiseAndScratches))] linha 8
private NoiseAndScratches chuviscador; linha 36
chuviscador = GetComponent<NoiseAndScratches>(); linha 49
chuviscador.grainIntensityMin = intensidadeChuvisco;
chuviscador.grainIntensityMax = intensidadeChuvisco;
chuviscador.scratchIntensityMin = 0;
chuviscador.scratchIntensityMax = 0;
linhas 74 ao 77
obrigado por responder
Você importou todos os efeitos conforme o vídeo?
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
sim marcos importei todos como no video e ainda continua esse erro
fiz um projeto novo pra ver se era erro no meu projeto mas ainda continua a mesma coisa
se puder ver agradeço
fiz um projeto novo pra ver se era erro no meu projeto mas ainda continua a mesma coisa
se puder ver agradeço
diogo leite 123- Iniciante
- PONTOS : 2816
REPUTAÇÃO : 0
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Assistiu o tutorial passo a passo? Linkou tudo que o script pede?
Tenho a Unity 5.4.1 aqui, remontei o sistema nela e funcionou 100% O.o
Tenho a Unity 5.4.1 aqui, remontei o sistema nela e funcionou 100% O.o
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
tem como vc fazer a parte de quarta baterrias pra lanterna?
darkdrezinho- Iniciante
- PONTOS : 2700
REPUTAÇÃO : 0
Respeito as regras :
Weslley- Moderador
- PONTOS : 5477
REPUTAÇÃO : 742
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Minha câmera esta rosa!Alguem pode me ajudar ???
Dayzr- Iniciante
- PONTOS : 2768
REPUTAÇÃO : 11
Idade : 20
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Dayzr escreveu:Minha câmera esta rosa!Alguem pode me ajudar ???
Mande print das suas configurações se puder, pode ter algo a ver com shaders
JohnRambo- Moderador
- PONTOS : 4927
REPUTAÇÃO : 661
Idade : 23
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Dayzr escreveu:Minha câmera esta rosa!Alguem pode me ajudar ???
Está rosa na engine ou no jogo compilado?
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Na engine!MarcosSchultz escreveu:Dayzr escreveu:Minha câmera esta rosa!Alguem pode me ajudar ???
Está rosa na engine ou no jogo compilado?
Dayzr- Iniciante
- PONTOS : 2768
REPUTAÇÃO : 11
Idade : 20
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Vex, ai estamos mal.
O script adiciona vários componentes automaticamente na camera... Tente criar uma camera nova e adicionar os componentes um a um nesta camera nova, e ver qual está deixando a imagem rosa.
O script adiciona vários componentes automaticamente na camera... Tente criar uma camera nova e adicionar os componentes um a um nesta camera nova, e ver qual está deixando a imagem rosa.
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Após compilar o jogo a câmera também ficou rosa...Na ensine toca normal...sabes o motivo Marcos?
tom ramber- Avançado
- PONTOS : 2892
REPUTAÇÃO : 12
Idade : 36
Áreas de atuação : Blender, Unity
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
tom ramber escreveu:Após compilar o jogo a câmera também ficou rosa...Na engine toca normal...sabes o motivo Marcos?
tom ramber- Avançado
- PONTOS : 2892
REPUTAÇÃO : 12
Idade : 36
Áreas de atuação : Blender, Unity
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Por que a Unity não exporta automaticamente o shader 'Unlit/Texture' a princípio.
Vá em Edit > Project Settings > Graphics e adicione o shader "Unlit/Texture" na lista always. Talvez isto resolva.
Vá em Edit > Project Settings > Graphics e adicione o shader "Unlit/Texture" na lista always. Talvez isto resolva.
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Deu certo...Realmente era apenas o shader...[img][/img]usei o sistema na mina da minha pistola...
tom ramber- Avançado
- PONTOS : 2892
REPUTAÇÃO : 12
Idade : 36
Áreas de atuação : Blender, Unity
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
MarcosSchultz escreveu:Fala galera, fiz este tutorial explicando como fazer uma camera de visão noturna :D
Em Window>Lighting, aconselho deixar:
"Ambiente Source" em Color
"Color" em (1, 1, 1, 255)
"Ambient Intensity" em 8
"Reflection Intensity" em 0.02
E lembre-se de fazer a exportação do shader "Unlit/Texture" conforme o vídeo mostra. Senão dará erros ao exportar o projeto
Script do tutorial:
- Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityStandardAssets.ImageEffects;
[RequireComponent(typeof(Camera))]
[RequireComponent(typeof(ScreenOverlay))]
[RequireComponent(typeof(EdgeDetection))]
[RequireComponent(typeof(NoiseAndScratches))]
[RequireComponent(typeof(SphereCollider))]
[RequireComponent(typeof(Rigidbody))]
public class VisNot : MonoBehaviour {
//LEMBRAR DE EXPORTAR OS SHADERS
[Range(15,100)]
public int claridade = 50;
[Range(0,0.1f)]
public float intensidadeCor = 0.02f;
public Color cor = Color.green;
[Range(0,1)]
public float intensidadeChuvisco = 0.03f;
public GameObject TelaCamera;
public Image nivelBateria;
public Text textoBaterias;
[Range(0,300)]
public int duracaoBateria = 120;
[Range(0,10)]
public int quantInicBaterias = 5;
[Range(0,10)]
public int quantTotBaterias = 10;
public string tagBaterias = "BATERIA";
private Texture2D texturaDesligado;
private RenderTexture renderTexture;
private Camera cameraTextura;
private ScreenOverlay clareador;
private EdgeDetection colorador;
private NoiseAndScratches chuviscador;
private float tempBateria;
private int quantBaterias;
private bool camLigada = false,noturnLigada = false;
private bool perto;
private GameObject bateriaTemporaria;
void Awake () {
//SETAR COMPONENTES
cameraTextura = GetComponent<Camera>();
clareador = GetComponent<ScreenOverlay>();
colorador = GetComponent<EdgeDetection>();
chuviscador = GetComponent<NoiseAndScratches>();
//criar nova textura
texturaDesligado = new Texture2D (1, 1);
texturaDesligado.SetPixel (1, 1, Color.black);
//tela da camera
renderTexture = new RenderTexture(256, 256, 16, RenderTextureFormat.ARGB32);
renderTexture.Create();
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Unlit/Texture");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", renderTexture);
//Camera
GetComponent<SphereCollider> ().radius = 0.005f;
GetComponent<SphereCollider> ().isTrigger = false;
GetComponent<Rigidbody> ().isKinematic = true;
cameraTextura.nearClipPlane = 0.01f;
cameraTextura.targetTexture = renderTexture;
//ScreenOverlay
clareador.blendMode = ScreenOverlay.OverlayBlendMode.Multiply;
clareador.intensity = claridade;
//EdgeDetection
colorador.mode = EdgeDetection.EdgeDetectMode.TriangleLuminance;
colorador.lumThreshold = 0;
colorador.sampleDist = 0;
colorador.edgesOnly = intensidadeCor;
colorador.edgesOnlyBgColor = cor;
//NoiseAndScratches
chuviscador.grainIntensityMin = intensidadeChuvisco;
chuviscador.grainIntensityMax = intensidadeChuvisco;
chuviscador.scratchIntensityMin = 0;
chuviscador.scratchIntensityMax = 0;
}
void Start (){
SetarVariaveis ();
clareador.enabled = colorador.enabled = noturnLigada;
tempBateria = duracaoBateria;
quantBaterias = quantInicBaterias;
}
void Update () {
if (Input.GetMouseButtonDown(1) && tempBateria > 0) {
camLigada = !camLigada;
SetarVariaveis ();
}
if (Input.GetKeyDown ("n")) {
noturnLigada = !noturnLigada;
clareador.enabled = colorador.enabled = noturnLigada;
}
if (camLigada == true) {
if(noturnLigada == true){
tempBateria -= Time.deltaTime*2;
}else{
tempBateria -= Time.deltaTime;
}
}
if (tempBateria <= 0) {
camLigada = false;
SetarVariaveis ();
}
if (Input.GetKeyDown ("r") && quantBaterias > 0) {
quantBaterias--;
tempBateria = duracaoBateria;
}
nivelBateria.fillAmount = (tempBateria / duracaoBateria);
textoBaterias.text = "" + quantBaterias;
//PEGAR BATERIAS
if (Input.GetKeyDown("e") && perto == true) {
if(quantBaterias < quantTotBaterias){
perto = false;
Destroy(bateriaTemporaria.gameObject);
quantBaterias++;
}
}
}
void SetarVariaveis (){
if (camLigada == true) {
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Unlit/Texture");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", renderTexture);
nivelBateria.enabled = true;
textoBaterias.enabled = true;
} else {
TelaCamera.GetComponent<Renderer>().material.shader = Shader.Find("Standard");
TelaCamera.GetComponent<Renderer> ().material.SetTexture ("_MainTex", texturaDesligado);
TelaCamera.GetComponent<Renderer> ().material.SetColor ("_Color",new Color32(60,60,60,255));//diminuir a claridade do preto
nivelBateria.enabled = false;
textoBaterias.enabled = false;
}
}
void OnTriggerEnter (Collider colisor){
if (colisor.gameObject.CompareTag (tagBaterias)) {
perto = true;
bateriaTemporaria = colisor.gameObject;
}
}
void OnTriggerExit (Collider colisor){
if (colisor.gameObject.CompareTag (tagBaterias)) {
perto = false;
bateriaTemporaria = null;
}
}
}
o meu deu um monte de erro no script
1- o nome "EdgeDetection" não existe no contesto atual
2- o nome "ScreenOverlay" não existe no contesto atual
3 O nome de tipo ou namespace "ImageEffects" não existe no namespace "UnityStandardAssets" (você esta sem uma referência de assembly?)
4-O nome do tipo ou do namespace "EdgeDetection" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
5- O nome do tipo ou do namespace "EdgeDetection" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
6- O nome do tipo ou do namespace "EdgeDetection" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
7- O nome do tipo ou do namespace "NoiseAndScratches" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
8-O nome do tipo ou do namespace "NoiseAndScratches" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
9- O nome do tipo ou do namespace "NoiseAndScratches" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
10- O nome do tipo ou do namespace "ScreenOverlay" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
11- O nome do tipo ou do namespace "ScreenOverlay" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
12- O nome do tipo ou do namespace "ScreenOverlay" não pode ser encontrado (está faltando uma diretiva using ou uma referência de assembly?)
se conseguir me ajudar ficaria agradecido
Icaroryan1- Iniciante
- PONTOS : 1020
REPUTAÇÃO : 0
Respeito as regras :
Re: [TUTORIAL] Camera de visão noturna (Night vision) na Unity 5
Vix, este tutorial infelizmente não funciona mais, porque a Unity é mó chata e tirou os ImgeEffects...
Mas você pode tentar seguir o tuturial utilizando este BackUp que eu tenho dos Legacy Image effects :D
https://drive.google.com/file/d/1hSIMHli3L2DjsCu2RQd_bB7b81ib4fEE/view?usp=sharing
Mas você pode tentar seguir o tuturial utilizando este BackUp que eu tenho dos Legacy Image effects :D
https://drive.google.com/file/d/1hSIMHli3L2DjsCu2RQd_bB7b81ib4fEE/view?usp=sharing
Tópicos semelhantes
» [TUTORIAL] Camera de visão noturna estilo OUTLAST
» Camera Visão noturna
» Camera De Visão Noturna Avançada
» Visão Noturna da Câmera não funciona corretamente
» [TUTORIAL] Travar o movimento da Camera na UNITY 5
» Camera Visão noturna
» Camera De Visão Noturna Avançada
» Visão Noturna da Câmera não funciona corretamente
» [TUTORIAL] Travar o movimento da Camera na UNITY 5
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos