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:
Problema com compilação para Android na Unity 2019.4.35
RECRUTAMENTO WAR CORE FPS
Detectar quando o animation curve chega no final
Unity -TextMeshProUGUI- 1 das coisas q estão deixando a scene lenta p abrir
[RESOLVIDO] Unity - Scrollbar não funciona
[TUTORIAL] AI que cria scripts para você, inclusive scripts para Unity !!!!
[RESOLVIDO] Animando Image na Unity não funciona
Aplicativo para IOS
Hospedar um jogo multiplay na itch.io
Script para detetectar o movimento do player
Alguém ajuda com um erro por favor? PSDImporter.cs
[RESOLVIDO] - Unity - Rotação da Câmera - Mathf.Clamp não funciona
Alterar textura .unity3d
Comportamento do movimento do inimigo. Sair do caminho e Fugir
Procuro uma equipe
Ajuda Com Sala de Jogo Multiplayer
COMO FAZER A PORTA ABRIR SÓ EMPURRANDO ELA COM O PLAYER?
Visual Studio - Vend os Scripts na Aba "Modo de Exibição de Classe" soltos
app fica fechendo após mobile notification
[RESOLVIDO] Controlar dois player dentro de um jogo multiplay usando mirror
Unity - O Jogo fecha quando vai abrir a Scene
[TUTORIAL] Mudando material
Procuro programador Unity para jogo 2D
AJUDA REALISTIC CAR CONTROLLER
Chama para isqueiro
[RESOLVIDO] Ajuda para destruir objeto
Unity - Sistema de Giro da Tela - Ajuda pfv!
Unity - Touch na Tela do Celular
Dawn Of Hell - Horror Game BR (2022-2023)
Unity - Jogo online ou offline?
ANIMAÇÃO INIMIGO ESTÁ INDO PRA TUDO QUANTO É LADO
[RESOLVIDO] Erro de Script no Android
Bundle Assets, Resources, e Addressables
Jogo online (qual a melhor opção?)
Dúvida sobre como criar o inimigo IA!
Unity dando pause no jogo a cada 4 segundos
bom dia amigos eu sou meio lego nos scripts será que alguem pode me ajudar
JOGO "CHALLENGE" FINALIZADO E DISPONÍVEL PARA BAIXAR.
error CS0246
[TUTORIAL]Como Chamar Um Método Usando Uma String como Parametro
[TUTORIAL] Sistema de FPS com Corpo
NullReferenceException: Object reference not set to an instance
dúvida ao criar subscription no play console
Unity - Scene Demorando pra abrir
Erro Slider de Cor
Alguem sabe que tipo de antena é essa ?
Encontrando um ponto de colisão.
Preciso de vocess! Coisinha simples mais me embananei. Meu primeiro game.
[TUTORIAL] Como carregar uma cena em segundo plano?
push notification com firebase falha
PROCURO UMA EQUIPE - Pagamento VIA PIX
Testem Meu Novo Jogo WEBGL ANDROIDD
ajuste de tela automático de celular
como fazer um chat interativo offline?
Música grátis para Jogos Indies [Calma, Relaxante, Flauta e outras coisas]
PROCURO PROGRAMADOR EXPERIENTE PHOTON
problema com canvas ui button
Banco de dados em Unity v2021.3.4f1
Sistema de Yu-Gi-Oh! - LINK PARA DOWNLOAD 2023
Int de dinheiro fica com numeros negativos em vez de travar no "0"
UNITY - FORMAÇÃO DE EQUIPE
[TUTORIAL] Open World Project - Para Unity-
Tutorial + Kit Para Criar seu Game Multiplayer em 5 Minutos
Como fazer movimentação no estilo tunnel Rush
[RESOLVIDO] Ajuste de tela
Debugar erro ao fechar build do projeto
[RESOLVIDO] Como Suavizar transição de uma Animação pra outra
[RESOLVIDO] Fixar tamanho/resolução proporcional da janela da aplicação
Como faço pra chamar a funçao de um script em outro ?
[RESOLVIDO] Alterar variaveis de classes instanciadas no inspector
como fazer o objeto spawnar com uma cor aleatória dentre as que eu quero?
Blender-Cell Fracture - Juntar as Animações de Todos os Fragmentos em 1 só
Oque acham dessa pequena música?
Unity - Faz mal ou tem algum problema se usar mts Layers?
Drag and drop em um rect específico da UI
Inimigo mudar de animação
[RESOLVIDO] Texto aparecer tipo donkey kong
De 0 a 10, qual a chance de isso causar problemas legais ao vender o jogo?
Teaser do meu novo projeto, War land
SCRIPT QUE SALVA A CENA INTEIRA.
datebest.net - visit link to find love or quick sex !
[RESOLVIDO] Dropdown Salvar a Resolução da tela
[RESOLVIDO] Visual Studio - Como saber onde um método está sendo usado
Teste Chat Openai
Como alterar um GameObject dentro de uma array
Baixos Brasil - Jogo de Carro Brasileiro!
Erro il2cpp unity 2022
[RESOLVIDO] "Is Trigger" não funcionando
FORMAÇÃO DE EQUIPE UNITY 3D
Equipamento para usar no Cinemachine
[RESOLVIDO] Destruir objetos com o mesmo id
Salvar seleção do Toggle
Fiz uma música orquestral para uma batalha final contra um Boss
Como você foi Hackeado DENOVO!!!???
PROCURO UMA EQUIPE - Pagamento VIA Pix
PROCURO PROGRAMADOR EXPERIENTE EM MIRROR
Visual Studio - Como abrir um Script com determinada configuração?
Mover objeto no eixo y
EXPORTAR CENA EM FORMATO DE VIDEO?
Ontem à(s) 10:50 pm
Ontem à(s) 7:39 pm
Ontem à(s) 6:24 pm
Ontem à(s) 6:19 pm
Qui Mar 23, 2023 4:52 pm
Ter Mar 21, 2023 11:20 pm
Ter Mar 21, 2023 8:52 pm
Ter Mar 21, 2023 4:00 pm
Sáb Mar 18, 2023 8:41 pm
Sex Mar 17, 2023 3:12 pm
Sex Mar 17, 2023 1:24 pm
Seg Mar 13, 2023 10:45 pm
Seg Mar 13, 2023 9:48 pm
Seg Mar 13, 2023 8:24 pm
Seg Mar 13, 2023 7:17 pm
Dom Mar 12, 2023 10:27 pm
Dom Mar 12, 2023 7:22 pm
Sex Mar 10, 2023 8:26 pm
Sex Mar 10, 2023 8:00 pm
Qui Mar 09, 2023 9:05 am
Ter Mar 07, 2023 2:27 pm
Sex Mar 03, 2023 6:47 pm
Sex Mar 03, 2023 12:01 am
Qui Mar 02, 2023 4:00 pm
Qui Mar 02, 2023 1:35 pm
Qua Mar 01, 2023 5:47 pm
Qua Mar 01, 2023 2:11 am
Seg Fev 27, 2023 11:08 pm
Seg Fev 27, 2023 7:19 pm
Dom Fev 26, 2023 11:49 pm
Dom Fev 26, 2023 8:29 pm
Dom Fev 26, 2023 7:47 pm
Dom Fev 26, 2023 7:46 pm
Dom Fev 26, 2023 6:08 pm
Sáb Fev 25, 2023 8:16 pm
Seg Fev 13, 2023 7:02 pm
Seg Fev 13, 2023 2:44 am
Dom Fev 12, 2023 9:57 pm
Dom Fev 12, 2023 2:19 pm
Sáb Fev 11, 2023 1:01 pm
Sex Fev 10, 2023 11:14 pm
Sex Fev 10, 2023 8:18 pm
Sex Fev 10, 2023 7:46 pm
Qui Fev 09, 2023 11:29 pm
Qui Fev 09, 2023 11:01 pm
Qui Fev 09, 2023 5:42 pm
Qua Fev 08, 2023 2:20 pm
Ter Fev 07, 2023 11:47 pm
Seg Fev 06, 2023 8:24 pm
Seg Fev 06, 2023 5:40 pm
Dom Fev 05, 2023 12:53 am
Sáb Fev 04, 2023 3:42 pm
Sáb Fev 04, 2023 2:29 pm
Sáb Fev 04, 2023 12:07 am
Sex Fev 03, 2023 10:53 pm
Sex Fev 03, 2023 10:28 pm
Qui Fev 02, 2023 7:52 pm
Qui Fev 02, 2023 8:49 am
Qua Fev 01, 2023 5:56 pm
Ter Jan 31, 2023 1:00 am
Dom Jan 29, 2023 11:12 pm
Sáb Jan 28, 2023 6:50 pm
Sex Jan 27, 2023 8:52 pm
Sex Jan 27, 2023 4:53 am
Qui Jan 26, 2023 10:56 pm
Dom Jan 22, 2023 11:53 am
Dom Jan 22, 2023 3:33 am
Sáb Jan 21, 2023 3:27 pm
Sáb Jan 21, 2023 2:15 pm
Sex Jan 20, 2023 4:30 pm
Sex Jan 20, 2023 2:15 pm
Qua Jan 18, 2023 10:19 pm
Qua Jan 18, 2023 9:47 am
Ter Jan 17, 2023 10:52 pm
Ter Jan 17, 2023 4:08 pm
Ter Jan 17, 2023 2:45 pm
Seg Jan 16, 2023 7:20 pm
Seg Jan 16, 2023 12:18 pm
Dom Jan 15, 2023 3:02 pm
Sáb Jan 14, 2023 7:02 pm
Sex Jan 13, 2023 8:29 am
Qui Jan 12, 2023 5:15 am
Qui Jan 12, 2023 2:31 am
Qua Jan 11, 2023 1:33 pm
Ter Jan 10, 2023 11:55 am
Ter Jan 10, 2023 10:58 am
Ter Jan 10, 2023 3:04 am
Seg Jan 09, 2023 10:43 pm
Seg Jan 09, 2023 6:30 am
Seg Jan 09, 2023 3:18 am
Seg Jan 09, 2023 2:32 am
Sáb Jan 07, 2023 5:55 pm
Sáb Jan 07, 2023 4:01 pm
Sáb Jan 07, 2023 1:38 pm
Sex Jan 06, 2023 9:15 am
Sex Jan 06, 2023 6:33 am
Qui Jan 05, 2023 5:27 pm
Qui Jan 05, 2023 2:50 pm
Qua Jan 04, 2023 3:07 pm



































































































fumaça do pneu

2 participantes

Ir para baixo

DÚVIDA fumaça do pneu

Mensagem por edugamer69 Sáb Ago 28, 2021 2:10 am

Código:
public class Skidmarks : MonoBehaviour {
   
   public int maxMarks = 1024;         // Maximum number of marks total handled by one instance of the script.
   public float markWidth = 0.275f;      // The width of the skidmarks. Should match the width of the wheel that it is used for. In meters.
   public float groundOffset = 0.02f;   // The distance the skidmarks is places above the surface it is placed upon. In meters.
   public float minDistance = 0.1f;      // The minimum distance between two marks places next to each other.
   
   int indexShift;
   int numMarks = 0;
   
   // Variables for each mark created. Needed to generate the correct mesh.
   class MarkSection{
      public Vector3 pos = Vector3.zero;
      public Vector3 normal = Vector3.zero;
      public Vector4 tangent = Vector4.zero;
      public Vector3 posl = Vector3.zero;
      public Vector3 posr = Vector3.zero;
      public float intensity = 0.0f;
      public int lastIndex = 0;
   };
   
   private MarkSection[] skidmarks;
   
   private bool updated = false;
   
   void Awake(){
      InitSkidmarks();
   }
   
   // Initiallizes the array holding the skidmark sections.
   void InitSkidmarks()
   {
      skidmarks = new MarkSection[maxMarks];
      for (int i = 0; i < maxMarks; i++)
         skidmarks[i] = new MarkSection();
      if (((MeshFilter) GetComponent (typeof(MeshFilter))).mesh == null)
         ((MeshFilter) GetComponent (typeof(MeshFilter))).mesh = new Mesh();
   }
   
   // Function called by the wheels that is skidding. Gathers all the information needed to
   // create the mesh later. Sets the intensity of the skidmark section b setting the alpha
   // of the vertex color.
   public int AddSkidMark(Vector3 pos, Vector3  normal, float intensity, int lastIndex)
   {
      if (skidmarks==null) InitSkidmarks();
      
      if(intensity > 1)
         intensity = 1.0f;
      if(intensity <= 0)
         return -1;
      MarkSection curr = skidmarks[numMarks % maxMarks];
      curr.pos = pos + normal * groundOffset;
      curr.normal = normal;
      curr.intensity = intensity;
      curr.lastIndex = lastIndex;
   
      if(lastIndex != -1)
      {
         MarkSection last = skidmarks[lastIndex % maxMarks];
         Vector3 dir  = (curr.pos - last.pos);
         Vector3 xDir = Vector3.Cross(dir,normal).normalized;
         
         curr.posl = curr.pos + xDir * markWidth * 0.5f;
         curr.posr = curr.pos - xDir * markWidth * 0.5f;
         curr.tangent = new Vector4(xDir.x, xDir.y, xDir.z, 1);
         
         if(last.lastIndex == -1)
         {
            last.tangent = curr.tangent;
            last.posl = curr.pos + xDir * markWidth * 0.5f;
            last.posr = curr.pos - xDir * markWidth * 0.5f;
         }
      }
      numMarks++;
      updated = true;
      return numMarks -1;
   }
   
   // If the mesh needs to be updated, i.e. a new section has been added,
   // the current mesh is removed, and a new mesh for the skidmarks is generated.
   void LateUpdate()
   {
      if(!updated)
      {
         return;
      }
      updated = false;
      
      Mesh mesh = ((MeshFilter) GetComponent (typeof(MeshFilter))).mesh;
      mesh.Clear();
      int segmentCount = 0;
      for(int j = 0; j < numMarks && j < maxMarks; j++)
         if(skidmarks[j].lastIndex != -1 && skidmarks[j].lastIndex > numMarks - maxMarks)
            segmentCount++;
      
      Vector3[] vertices = new Vector3[segmentCount * 4];
      Vector3[] normals = new Vector3[segmentCount * 4];
      Vector4[] tangents = new Vector4[segmentCount * 4];
      Color[] colors = new Color[segmentCount * 4];
      Vector2[] uvs = new Vector2[segmentCount * 4];
      int[] triangles = new int[segmentCount * 6];
      segmentCount = 0;
      for(int i = 0; i < numMarks && i < maxMarks; i++)
         if(skidmarks[i].lastIndex != -1 && skidmarks[i].lastIndex > numMarks - maxMarks)
         {
            MarkSection curr = skidmarks[i];
            MarkSection last = skidmarks[curr.lastIndex % maxMarks];
            vertices[segmentCount * 4 + 0] = last.posl;
            vertices[segmentCount * 4 + 1] = last.posr;
            vertices[segmentCount * 4 + 2] = curr.posl;
            vertices[segmentCount * 4 + 3] = curr.posr;
            
            normals[segmentCount * 4 + 0] = last.normal;
            normals[segmentCount * 4 + 1] = last.normal;
            normals[segmentCount * 4 + 2] = curr.normal;
            normals[segmentCount * 4 + 3] = curr.normal;
   
            tangents[segmentCount * 4 + 0] = last.tangent;
            tangents[segmentCount * 4 + 1] = last.tangent;
            tangents[segmentCount * 4 + 2] = curr.tangent;
            tangents[segmentCount * 4 + 3] = curr.tangent;
            
            colors[segmentCount * 4 + 0]=new Color(0, 0, 0, last.intensity);
            colors[segmentCount * 4 + 1]=new Color(0, 0, 0, last.intensity);
            colors[segmentCount * 4 + 2]=new Color(0, 0, 0, curr.intensity);
            colors[segmentCount * 4 + 3]=new Color(0, 0, 0, curr.intensity);
   
            uvs[segmentCount * 4 + 0] = new Vector2(0, 0);
            uvs[segmentCount * 4 + 1] = new Vector2(1, 0);
            uvs[segmentCount * 4 + 2] = new Vector2(0, 1);
            uvs[segmentCount * 4 + 3] = new Vector2(1, 1);
            
            triangles[segmentCount * 6 + 0] = segmentCount * 4 + 0;
            triangles[segmentCount * 6 + 2] = segmentCount * 4 + 1;
            triangles[segmentCount * 6 + 1] = segmentCount * 4 + 2;
            
            triangles[segmentCount * 6 + 3] = segmentCount * 4 + 2;
            triangles[segmentCount * 6 + 5] = segmentCount * 4 + 1;
            triangles[segmentCount * 6 + 4] = segmentCount * 4 + 3;
            segmentCount++;         
         }
      mesh.vertices=vertices;
      mesh.normals=normals;
      mesh.tangents=tangents;
      mesh.triangles=triangles;
      mesh.colors=colors;
      mesh.uv=uvs;
   }

}
tem esse script de um projeto antigo e quando passei para a unity 2020 nao consigo fazer o particlesystem funcionar. eu consigo colocar uma linha dentro desse script falando q quando começar a marca do pneu emita particulas de fumaça ? ou é mais facil fazer um script so pra fumaça ?

edugamer69
Avançado
Avançado

Masculino PONTOS : 3058
REPUTAÇÃO : 16
Idade : 26
Respeito as regras : fumaça do pneu WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: fumaça do pneu

Mensagem por classicandsimple Sáb Ago 28, 2021 10:21 am

Por acaso aparece algum erro (log) sobre o mal funcionamento do script? Caso possas pôr uma foto aqui sobre o como ele trabalha, deve tornar mais fácil de resolvê-lo assim, isso sobre o primeiro problema.

Pôr partículas de fumaça deve ser algo bem fácil (eu alego isto pois não tenho o conhecimento sobre o uso de partículas, há de acontecer), porém difícil seria como manipulá-la para quando, onde e de que forma se comportar.

Infelizmente, não posso oferecer muita ajuda, todavia hão boas referências de conteúdo na internet, veja aqui um tutorial do canal da própria Unity sobre: Making Particles in Unity 2018.4! (Beginner Friendly Tutorial)

Esse vídeo pega um projeto pré-pronto (template de um jogo de corrida) e usa-o para uma simples didática rápida sobre Particles. Há também este outro vídeo que achei interessante, porém, bem mais direto sobre o sistema: Unity Tutorial - Drift Smoke (Particle System)
Ambos os vídeos não são brasileiros, mas, legenda neles!

Espero ter ajudado.


Última edição por classicandsimple em Sáb Ago 28, 2021 9:46 pm, editado 4 vez(es) (Motivo da edição : Adição de links.)
classicandsimple
classicandsimple
ProgramadorMaster

Outro / Não divulgar PONTOS : 661
REPUTAÇÃO : 26
Áreas de atuação : Desenvolvimento de software (iniciante com linguagem C).
Respeito as regras : fumaça do pneu Aad8pUi

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos