SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
int Random.Range(int min, int max) para geração procedural ?
Várias faixas de música
Como fazer o som funcionar de acordo com a velocidade do objeto
Alto falante Vibrar
Personagem sofre dando e continua de onde parou com condição.
Luz no interior
[TUTORIAL] Como Fazer com que as Luzes Iluminem apenas o que você deseja
Traduções e Dublagens de games
Cono mudar a Tag por script?
Qualidade do sprite - Compression
[TUTORIAL] Como carregar uma cena em segundo plano?
[TUTORIAL] Unity 3D - AnimationCurve
Rotação de um gameobject sem que os gameobjects filhos se alterem?
Colocar video no unity
[RESOLVIDO] Partículas com imagem
[RESOLVIDO] DUVIDA SOBRE ATIVAR UM GAMEOBJECT ATRAVÉS DE UMA CONDIÇÃO
NavMesh não consegue reproduzir sprits de um jogador
NavMesh não faz animação do jogador
Bom dia amigos compro assets do meu interesse!
Criar Ranking Online
ScrollView rapida e facil de fazer
colocar imagem no fórum
Unity ou Game Maker Studio
[TUTORIAL] Tocar audios de uma lista em uma sequência que se repete
Error CS0246, não sei o que fazer
Como faço pra um colisor não reconhecer outro colisor sem usar IsTrigger
[RESOLVIDO] Alteração de nomes e rastreamento das mudanças
Som unity
CHAVE DE ASSINATURA
[TUTORIAL]identificar se está no controle ou teclado
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Não estou conseguindo ativar o evento do onClick após instanciar o botão
Exportar Modelo 3D da Unity
Duvida sobre Spawn
Dúvida sobre volatile
[UE4] Por favor me digam como me livrar do motion blur!
[RESOLVIDO] Float to transform
[RESOLVIDO] mudar a cor quando a personagem passa
Como ativar um 'Panel'
Como faço pra desligar e ligar outro text?
Como Faço Para Ativar/Desativar Material Por Script ?
como modificar o script para receber e registar o dano no personagem
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Meu personagem está tomando repulsão da parede
Problemas com IEnumerator
Meu personagem ta tremendo quando toca em alguma coisa
[TUTORIAL] Como criar tiro no Unity usando Raycast
Scripts travados
Como faço para mudar a posição de um objeto para perto de outro.
Alteração de personagens durante o jogo // parte 2
Como se faz uma grid, apenas e somente uma grid em 3D?
meu primeiro jogo pronto
quero corverter uma int em string
Como mudar a posição de um objeto constantemente sem estar na void Update
Como conseguir fazer para minha moto dar grau
[RESOLVIDO] Alteração de personagens durante o jogo
Como fazer um retrovisor leve para android?
Preciso de um script para andar de moto alguem consegue me ajudar
Como consigo fazer esse efeito de escurecer o ambiente ao atacar?
Como fazer pra selecionar um inimigo pra atacar de varios unity 2d
Setparent Photon
duvida em sistema de Horror de como pegar e solta objeto
[UE4] Como fazer cutscene com o próprio personagem?
Plataforma Flutuante
OS Tycoon (DEVLOG) - Crie seu próprio sistema operacional
[RESOLVIDO] Grande X vermelho
Como desativo o vsync em projeto para celular?
Como fazer uma compra aleatoria em uma cena
Sistema de propagação de fogo
[TUTORIAL] Como utilizar a função " Instantiate "
Inteligencia Artificial
Como faço pra deixar as luzes mais leves em um jogo 2d
[TUTORIAL] Unity 2019.4 ou superior - PRESETS
colocar Produtos na Playstore, procuro freelancer.
Tem como fazer o jogo forçar o hardware do celular para rodar melhor?
Como fazer efeito de digitação em um texto
[TUTORIAL] Texto suave (UI)
Box, Whell e outros Collider Esta vindo 10x maior que o Objeto
Objetos não respeitam script
[RESOLVIDO] Duvidas sobre dar restart na cena com Scene Management
Game Jam - GAME JAAJ 5 (prêmio 1.800 reais)
Ativar e desativar botão UI
[RESOLVIDO] Duvidas sobre o Canvas, preFabs e o collisor na Unity
Como fazer formas em ligths
Como usar e programar shaders no unity?
Como manipular o deslizamento do Player?
Problemas com UnityAds
[RESOLVIDO] Como fazer para meu Player andar por um terreno irregular?
[RESOLVIDO] Quero saber se tem na unity alguma funçao  que seja um trigger?
Trailer oficial do jogo Project Lazarus parte 2
[RESOLVIDO] PQ A UNITY LIMITA OS FPS QUANDO FAZ O BUILD?
[RESOLVIDO] Como faço uma seta na direção do inimigo?
Problema com shape key(blend shape) em humanoid rigg
[TUTORIAL] Joystick virtual para mobile
Como fazer para um objeto não colidir com um "collider" e o outro objeto si
Botão de DOAÇÃO
[RESOLVIDO] Como Posso Fazer Um Giroflex ??
(Unity2D) Como fazer o personagem cair mais rápido depois do pulo
Script de movimentação
Hoje à(s) 10:17 pm
Hoje à(s) 6:40 pm
Hoje à(s) 6:28 pm
Hoje à(s) 2:07 pm
Hoje à(s) 12:50 pm
Hoje à(s) 12:21 pm
Hoje à(s) 11:19 am
Hoje à(s) 11:17 am
Hoje à(s) 11:15 am
Hoje à(s) 1:44 am
Hoje à(s) 1:06 am
Ontem à(s) 6:40 pm
Ontem à(s) 3:39 pm
Ontem à(s) 2:35 pm
Ontem à(s) 11:43 am
Ontem à(s) 11:12 am
Sex Jan 15, 2021 8:20 pm
Sex Jan 15, 2021 1:39 am
Qui Jan 14, 2021 9:53 pm
Qui Jan 14, 2021 7:44 pm
Qui Jan 14, 2021 5:35 pm
Qui Jan 14, 2021 3:55 pm
Qui Jan 14, 2021 2:07 pm
Qui Jan 14, 2021 1:51 pm
Qui Jan 14, 2021 12:56 pm
Qua Jan 13, 2021 6:57 pm
Qua Jan 13, 2021 2:45 pm
Ter Jan 12, 2021 11:14 pm
Ter Jan 12, 2021 8:14 pm
Ter Jan 12, 2021 3:16 pm
Seg Jan 11, 2021 6:26 pm
Seg Jan 11, 2021 5:55 pm
Seg Jan 11, 2021 10:51 am
Dom Jan 10, 2021 7:18 pm
Dom Jan 10, 2021 6:21 pm
Dom Jan 10, 2021 3:24 pm
Dom Jan 10, 2021 2:31 pm
Dom Jan 10, 2021 2:29 pm
Dom Jan 10, 2021 10:44 am
Sab Jan 09, 2021 9:30 pm
Sex Jan 08, 2021 9:14 am
Sex Jan 08, 2021 7:07 am
Sex Jan 08, 2021 1:02 am
Sex Jan 08, 2021 12:33 am
Qui Jan 07, 2021 7:31 pm
Qui Jan 07, 2021 5:31 pm
Qui Jan 07, 2021 3:51 pm
Qui Jan 07, 2021 3:49 pm
Qui Jan 07, 2021 12:12 am
Qua Jan 06, 2021 7:40 pm
Qua Jan 06, 2021 4:57 pm
Qua Jan 06, 2021 7:36 am
Ter Jan 05, 2021 5:29 pm
Ter Jan 05, 2021 1:58 pm
Ter Jan 05, 2021 10:35 am
Ter Jan 05, 2021 5:22 am
Ter Jan 05, 2021 1:00 am
Ter Jan 05, 2021 12:02 am
Seg Jan 04, 2021 4:33 pm
Seg Jan 04, 2021 3:24 pm
Seg Jan 04, 2021 3:15 pm
Seg Jan 04, 2021 2:23 pm
Seg Jan 04, 2021 2:06 pm
Seg Jan 04, 2021 8:56 am
Dom Jan 03, 2021 8:18 pm
Dom Jan 03, 2021 9:48 am
Dom Jan 03, 2021 4:14 am
Sab Jan 02, 2021 10:11 pm
Sab Jan 02, 2021 8:36 pm
Sab Jan 02, 2021 8:34 pm
Sab Jan 02, 2021 3:36 pm
Sab Jan 02, 2021 11:45 am
Sab Jan 02, 2021 5:50 am
Sab Jan 02, 2021 2:37 am
Sex Jan 01, 2021 7:09 pm
Sex Jan 01, 2021 4:50 pm
Qui Dez 31, 2020 4:47 pm
Qui Dez 31, 2020 3:42 pm
Qui Dez 31, 2020 3:38 pm
Qui Dez 31, 2020 3:38 pm
Qui Dez 31, 2020 3:34 pm
Qui Dez 31, 2020 2:42 pm
Qui Dez 31, 2020 11:25 am
Qui Dez 31, 2020 10:08 am
Qui Dez 31, 2020 9:36 am
Qui Dez 31, 2020 12:14 am
Qua Dez 30, 2020 11:47 pm
Qua Dez 30, 2020 6:50 pm
Qua Dez 30, 2020 3:08 pm
Qua Dez 30, 2020 2:59 pm
Qua Dez 30, 2020 2:10 pm
Qua Dez 30, 2020 12:39 am
Ter Dez 29, 2020 6:41 pm
Ter Dez 29, 2020 12:23 pm
Seg Dez 28, 2020 8:02 pm
Seg Dez 28, 2020 6:45 am
Sab Dez 26, 2020 12:41 pm
Sex Dez 25, 2020 7:16 pm
Sex Dez 25, 2020 2:28 pm
dutrabr100
Pokedlg
Pokedlg
savtoi
dutrabr100
dragongirl
dutrabr100
Rangel Oblivion
dutrabr100
JoelMJunior
lesgoy
MarcosSchultz
Fagner
SauloeArthur
dragongirl
dutrabr100
Ren Allen
Ren Allen
LucasGamerFx
SauloeArthur
NKKF
dutrabr100
SauloeArthur
Pokedlg
SauloeArthur
dutrabr100
Alexandre Santos
Pokedlg
starfreddybou69
diegopds
Super
dutrabr100
TIKO
dutrabr100
SauloeArthur
lesgoy
Fagner
Pokedlg
dutrabr100
Pokedlg
SauloeArthur
redPRO
glauco
Op3000
Pokedlg
JulioWinchester
SauloeArthur
SauloeArthur
Leozitu
Ren Allen
speedluk
SauloeArthur
BatataBugada54321
Pokedlg
Pokedlg
Ren Allen
Fagner
123
Pokedlg
macinhadeborracha
MRX
giowde
lesgoy
TIKO
Micco
Leonardo André
lesgoy
Moskeiro
Fagner
mama2401
Fagner
BRGC
fabricadegame
NyanHeavyBR
rafaelPortugal
dutrabr100
acefogo
MarcosSchultz
MarcosSchultz
acefogo
MarcosSchultz
BatataBugada54321
acefogo
brizaloka
Pokedlg
Neyuriki
Magnatah
Portela
LipoGames
Patrick
cristiano732
speedluk
Fagner
jorge silva
Fagner
JoelMJunior
EricknhYT
Fagner
dutrabr100

[TUTORIAL] Instanciar coisas no Terreno

Ir em baixo

TUTORIAL [TUTORIAL] Instanciar coisas no Terreno

Mensagem por Dom3000 em Qua Mar 14, 2018 10:45 am

óla trago aqui um tuto, de um script que desenvolvi ele instancia coisas no terreno 

segue o script:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;


[ExecuteInEditMode]
public class InstanciarObj : MonoBehaviour {

 [Tooltip("A ordem de se começar o instanciamento")]
 public bool Instanciar;
    [Tooltip("isto evita que ocorra um loop infinito caso não consiga instanciar os obj")]
    public int Tentativas;
 [Space(20)]
    [Tooltip("Deleta as arvores instanciadas")]
    public bool DeletarArvores;
    [Tooltip("Deleta as Obj instanciadas")]
    public bool DeletarObj;




 [Space(20)]
 [Tooltip("A quantidade de maxima de obj a ser instanciado")]
 public int MaximoObj=100;


 [Space(5)]
 [Tooltip("a distancia que há entre um obj e o outro")]
 public float DistanciaEntre=2;
 [Space(5)]
 public int Contia;

 [Space(20)]
 [Tooltip("Se sera Intanciado arvores ou obj")]
 public bool InstanciarArvore;
 public bool InstanciarObjs;





 [Space(30)]
 [Tooltip("O area base que começa a Intanciar e termina  instanciamento ")]
 public Vector3 AreaInstanciarInicial=new Vector3 (10, 1000, 10);
 [Space(5)]
 public Vector3 AreaInstanciarFinal=new Vector3 (2400, 1000, 2400);


 [Space(30)]
 [Tooltip("O tamanho minimo do obj a instanciar")]
 public Vector3 TamanhoMinimo = new Vector3 (1, 1, 1);
 [Space(5)]
 [Tooltip("O tamanho maximo do obj a instanciar")]
 public Vector3 TamanhoMaximo=new Vector3 (2, 2, 2);



 [Space(20)]
 [Tooltip("os obj queseram instanciados")]
 public GameObject ArvorePrfab;
 [Space(20)]
 [Tooltip("Os Prefabs dos objs que seram instanciados na cena")]
 public List<GameObject> ObjsCena;
 [Space(5)]
 [Tooltip("da os valoes maximos de obj a serem inatanciados")]
 public List<int> QuantiasObjsCena;










 void Start () {
 
 }
 
 [ExecuteInEditMode]
 void Update () {

 if (Instanciar) {
 
 if (InstanciarArvore) {
 
 InstanciarTree ();
 }


 if (InstanciarObjs) {
 
 InstanciarOBJs ();
 }

 

 if (NaoPossivel) {

 Contia = contiaAnt;

 NaoPossivel = false;
 Tentativas = 0;
 contiasObj = 0;
 }
 
 Instanciar = false;
 
 }








 if (DeletarArvores) {


 for (int d = 0; d < ArvoresInstanciadas.Count; d++) {

 DestroyImmediate (ArvoresInstanciadas[d]);


 }


 ArvoresInstanciadas.RemoveAll (ArvoresInstanciadas.Contains);
 PontosInstanciados.RemoveAll (PontosInstanciados.Contains);
 Contia = 0;



 //DeletarArvores = false;
 }



 if (DeletarObj) {


 for (int d = 0; d < ObjInstanciados.Count; d++) {

 DestroyImmediate (ObjInstanciados[d]);


 }


 ObjInstanciados.RemoveAll (ObjInstanciados.Contains);
 PontosInstanciados.RemoveAll (PontosInstanciados.Contains);
 contiasObj = 0;



 //DeletarArvores = false;
 }





 }

 [Space(50)]
 public List <Vector3> PontosInstanciados;

 bool NaoPossivel;
 int contiaAnt;
 [Space(50)]
 public List<GameObject> ObjInstanciados;
 [Space(10)]
 public List<GameObject> ArvoresInstanciadas;
 [ExecuteInEditMode]
 void InstanciarTree(){
 

 while (Contia < MaximoObj) {



 int Inix = (int)(  Random.Range (AreaInstanciarInicial.x, AreaInstanciarFinal.x));
 int IniZ =   (int)( Random.Range (AreaInstanciarInicial.z, AreaInstanciarFinal.z));





 Vector3 PosiRandom = new Vector3 (Inix, 3000, IniZ);
 
  
 //Debug.Log (PosiRandom.ToString ());


 Vector3 ScaleRandom = new Vector3 ((
 
 Random.Range (TamanhoMinimo.x, TamanhoMaximo.x)),
 Random.Range (TamanhoMinimo.y, TamanhoMaximo.y),
 Random.Range (TamanhoMinimo.z, TamanhoMaximo.z));







 RaycastHit Hit;

 Vector3 PosiRay = new Vector3 (PosiRandom.x, -2000, PosiRandom.z);

 Vector3 PontoDist = new Vector3 (DistanciaEntre, 2000, DistanciaEntre);

 Debug.DrawLine (PosiRandom, PosiRay, new Color (0, 1, 0));

 Tentativas += 1;


 if (Tentativas > 1000) {

 Contia = MaximoObj;
 Debug.Log ("NÃO FOI POSSIVEL CUMPRIR A ORDEM:  Verifique a caixa da cena");
 NaoPossivel = true;
 }

 if (PontosInstanciados.Count == 0) {

 PontosInstanciados.Add (AreaInstanciarInicial);


 }




 for( int p = 0; p < PontosInstanciados.Count; p++){
 

 Vector3 PosiVer = (PontosInstanciados [p] + PontoDist);


 if(PosiRandom.x > PosiVer.x && PosiRandom.z > PosiVer.z){



 if (Physics.Linecast (PosiRandom, PosiRay, out Hit)) {


 Debug.DrawLine (PosiRandom, PosiRay, new Color (1, 0, 0));

 if (Hit.collider.gameObject.GetComponent<SistemaDoChao> ()) {

 //Debug.Log("Aqui");
 GameObject Chao = Hit.collider.gameObject.GetComponent<Terrain>().gameObject;//aqui se verifica o terreno e pega o ponto em que o raycast bate no terreno
 

 if (Chao) { // se chao foi detectado o obj é instanciado

 
 Vector3 Posichao = Hit.point;



 // Intancia arvores
 if (InstanciarArvore) {


 float NRot=Random.Range (0, 360);

 Vector3 Rot = new Vector3 (0, NRot, 0);

 
 GameObject TreeInst = Instantiate (ArvorePrfab, Posichao, Quaternion.Euler (Rot))as GameObject;

 TreeInst.transform.localScale = (ScaleRandom);

 TreeInst.transform.parent = Chao.transform;

 Contia += 1;

 contiaAnt = Contia;

 PontosInstanciados.Add (TreeInst.transform.position);

 ArvoresInstanciadas.Add (TreeInst);

 TreeInst.name = "Arvore " + Contia.ToString();


 Debug.Log ("Arvores Instanciados com Sucesso");

 Tentativas = 0;

 }
 


 // Intancia objs



 }
 }


 }
 }
 }
 }







}





 public int contiasObj;
 bool Proceguir;
 void InstanciarOBJs(){
 

 for(int Obj=0; Obj < ObjsCena.Count; Obj++){

 contiasObj = 0;


 while (contiasObj < QuantiasObjsCena [Obj]) {



 int Inix = (int)(Random.Range (AreaInstanciarInicial.x, AreaInstanciarFinal.x));
 int IniZ = (int)(Random.Range (AreaInstanciarInicial.z, AreaInstanciarFinal.z));





 Vector3 PosiRandom = new Vector3 (Inix, 3000, IniZ);


 //Debug.Log (PosiRandom.ToString ());


 Vector3 ScaleRandom = new Vector3 ((

                         Random.Range (TamanhoMinimo.x, TamanhoMaximo.x)),
                     Random.Range (TamanhoMinimo.y, TamanhoMaximo.y),
                     Random.Range (TamanhoMinimo.z, TamanhoMaximo.z));






 RaycastHit Hit;

 Vector3 PosiRay = new Vector3 (PosiRandom.x, -2000, PosiRandom.z);

 Vector3 PontoDist = new Vector3 (DistanciaEntre, 2000, DistanciaEntre);

 Debug.DrawLine (PosiRandom, PosiRay, new Color (0, 1, 0));

 Tentativas += 1;


 if (Tentativas > 1000) {

 contiasObj = QuantiasObjsCena [Obj];

 Debug.Log ("NÃO FOI POSSIVEL CUMPRIR A ORDEM:  Verifique a caixa da cena");
 NaoPossivel = true;

 }


 if (PontosInstanciados.Count == 0) {

 PontosInstanciados.Add (AreaInstanciarInicial);


 }


 if (!PontosInstanciados.Contains (PosiRandom)) {
 


 for (int p = 0; p < PontosInstanciados.Count; p++) {


 Vector3 PosiVer = (PontosInstanciados [p] + PontoDist);


 if (PosiRandom.x > PosiVer.x && PosiRandom.z > PosiVer.z) {




 if (Physics.Linecast (PosiRandom, PosiRay, out Hit)) {


 Debug.DrawLine (PosiRandom, PosiRay, new Color (1, 0, 0));

 if (Hit.collider.gameObject.GetComponent<SistemaDoChao> ()) {

 //Debug.Log("Aqui");
 GameObject Chao = Hit.collider.gameObject.GetComponent<SistemaDoChao> ().gameObject;


 if (Chao) { // se chao foi detectado o obj é instanciado


 Vector3 Posichao = Hit.point;



 // Intancia obj
 

 float NRotx = Random.Range (0, 360);
 float NRoty = Random.Range (0, 360);
 float NRotz = Random.Range (0, 360);



 Vector3 Rot = new Vector3 (NRotx, NRoty, NRotz);


 GameObject Objinst = Instantiate (ObjsCena [0], Posichao, Quaternion.Euler (Rot))as GameObject;

 Objinst.transform.localScale = (ScaleRandom);

 Objinst.transform.parent = Chao.transform;

 contiasObj += 1;

 PontosInstanciados.Add (Objinst.transform.position);

 ObjInstanciados.Add (Objinst);

 Objinst.name = "Obj " + Obj.ToString () + "/" + contiasObj.ToString ();


 Debug.Log ("Objs Instanciados com Sucesso");

 Tentativas = 0;

 }


 }
 // Intancia objs



 }

 }
 }
 }
 }
 }
 }












}

o script ta bem comentado qualquer duvida só dizer
Dom3000
Dom3000
Programador

Masculino PONTOS : 3168
REPUTAÇÃO : 232
Idade : 25
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/

Respeito as regras : [TUTORIAL] Instanciar coisas no Terreno WvDYdlf

https://www.instagram.com/battlesofworlds/?hl=pt-br

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Instanciar coisas no Terreno

Mensagem por NKKF em Qua Mar 14, 2018 1:40 pm

Não entendi o porquê de você ter usado o ExecuteInEditMode várias vezes, não era necessário somente um?
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 3278
REPUTAÇÃO : 524
Idade : 16
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras : [TUTORIAL] Instanciar coisas no Terreno Aad8pUi

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Instanciar coisas no Terreno

Mensagem por Dom3000 em Qua Mar 14, 2018 4:49 pm

é que nao tava fungando ai meti o executi em tudo kkkk
Dom3000
Dom3000
Programador

Masculino PONTOS : 3168
REPUTAÇÃO : 232
Idade : 25
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/

Respeito as regras : [TUTORIAL] Instanciar coisas no Terreno WvDYdlf

https://www.instagram.com/battlesofworlds/?hl=pt-br

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum