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:
TROCAR DE CENA QUANDO O DEBUGLOG APARECER
Queria saber como destruir objetos que tenham uma tag especifica.
[TUTORIAL] Tirar Print da Tela do Jogo
Script de pegar um item/coletável pressionando a tecla ''E''
Cidade 3D,Pedido
Dúvida sobre a licença Personal Unity
é possivel criar uma animação para multiplos objetos?
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Builds unitywebgl estão causando o erro Exception memory out of bounds IOS
[RESOLVIDO] Quero usar um WaitForSeconds porem não consigo.
Erro na Unity Manager
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
O QUE FAZER PARA O PERSONAGEM DETECTAR O TERRAIN ?
Calcular força do impacto recebido pelo objeto
[____SUGESTÕES PARA O FÓRUM____]
fiz um jogo na unity mas nao consigo entrar no executavel
linha do canvas e as ancoras não aparecem no unity
[RESOLVIDO] Sistema de vida (corações)
Unity3D - Meu boneco fica girando no eixo Y sem parar, parece o sonic
como desativar objeto aleatório de uma array
Como Fazer para uma partícula aparecer por um período de tempo e sumir?
Como fazer os jogos terem relevância?
Randomizar um sprite!
[DUVIDA]alguém que entende de marketing pode ajudar?
Como fazer o persogem após bater ele impulsione na posição oposta
DOTS - ECS + JOBS + Burst!
The freddy krueger's pie (Game)
Por que a rotação do Box Collider não está certa?
Como fazer o onTriggerEnter carregar uma cena?
[RESOLVIDO] Erro de carregamento no Android
botoes e texturas
Como fazer o inimigo atirar projétil na direção do jogador? por favor
Materiais e texturas em otimização
[TUTORIAL] Unity 3D - NavMesh
visual code dando erro
Como resolver problema com lag por conta de sprites Instanciados? Mesmo destruindo em 2f
Usar o mouse?
Objeto em movimento bate no box collider e fica tremendo até bugar a cena?
Facebook SDK "launcher:checkReleaseDuplicateClasses"
Como abrir portas/gavetas com click do mouse, usando raycast!
Alguém sabe o nome desse efeito?
Ajuda - Como crio um botão touch usando o Bolt visual Scripting
as luzes diminuem mt o fps no android, alguma dica de como melhorar isso?
click mouse
RigidBody Agarrando no BoxCollider [Mobile 3D]
Como alterar informações de objeto UI
Desconectar jogador após acabar o tempo de jogo utilizando a rede - Bolt
quero adicionar mais colisores a esse script de movimentação
SEM CURSOR EM JOGO.
Conexão entre app Android e internet.
CURSOR DO MOUSE NÃO DESAPARECE AO CLICAR EM "JOGAR" NO MENU
Script não funcionando
Destruir um objeto ao colidir com o componente dele.
RigidBodyFPSController não carrega o script, é do pacote standard assets
Preciso saber matemática para programar?
[RESOLVIDO] Prefab com altura diferente na Scene
Problema com os FPS do jogo
pq da erro ao tentar mover arquivo para unity
[RESOLVIDO] Como saber se um Transform está se movendo?
Problema com animaç]ao de fechar porta ao clicar com mouse raycast
Fala Pessoal! saiu um trailer da sequência do meu jogo Project Lazarus parte 2
Exportação do SketchUp para Unity
[RESOLVIDO] Como fazer com que os valores do bool sejam iguais ao da lista?
[RESOLVIDO] Trocar valor de variável apos X segundos que ativar o triggercollider
PEGADAS DO PLAYER QUE APARECEM APÓS ANDAR SOBRE UMA ÁREA "ÚMIDA". UNITY 2D
[RESOLVIDO] Erro com Facebook SDK
Como deixar touch apenas 50% da tela (código que estou usando)
terreno plano pesa muito em mobile?
Dúvida sobre o script de Mover Objetos
Duvida sobre um sistema de Lap Timer junto com o box collider!
Como passar cena sem perder o que conseguiu em outra?
[RESOLVIDO] OverlapBox detectar colisão
APK trava com Admob
[Lançado] TapNav: Vaporwave Edition já está disponível!
[RESOLVIDO] Tentando implementar sons no Character Controller
como posso criar um filtro de cor igual post processing?
[RESOLVIDO] Problema com movimentação do Joystick
[RESOLVIDO] Inimigo aparecer depois de certa ação
Como redirecionar o usuário pelo app do Facebook?
[TUTORIAL] Codificar e Decodificar Numeros
Como fazer esse mesmo código usando ScriptableObject?
[RESOLVIDO] Pontuação na Unity 3D!
[RESOLVIDO] Unity 2018.2.17 Problemas com o Package Manager
BARRA DE ENERGIA NÃO RESETA QUANDO O PLAYER RENASCE.
[RESOLVIDO] Erro no pacote do Unity Ads
Fazer o personagem apontar na direção do movimento
QUE ? Porque não funcionou ? :(
Personagem da AS, animações do mixamo dão erro ao usar avatar do personagem.
[RESOLVIDO] Meus personagens não iniciam animação no jogo compilado, o que pode ser ?
Como deixar touch apenas 50% da tela
Sistema de tiro teleguiado
[TUTORIAL] Script para jogo FPS Mobile
[RESOLVIDO] Como faço para o personagem entrar e sair do carro?
[RESOLVIDO] Como salvar itens da fase?
Oque é API?
Salvar dados unity
NavMesh em uma esfera
[TUTORIAL] Dicas Para Otimização de Código
Hoje à(s) 12:07 pm
Hoje à(s) 12:04 pm
Hoje à(s) 11:24 am
Hoje à(s) 12:27 am
Hoje à(s) 12:24 am
Ontem à(s) 10:38 pm
Ontem à(s) 11:58 am
Ontem à(s) 10:44 am
Ontem à(s) 9:24 am
Seg Set 28, 2020 10:07 pm
Seg Set 28, 2020 8:46 pm
Seg Set 28, 2020 8:15 pm
Seg Set 28, 2020 10:35 am
Dom Set 27, 2020 11:22 pm
Dom Set 27, 2020 11:00 pm
Dom Set 27, 2020 10:50 pm
Dom Set 27, 2020 10:55 am
Sab Set 26, 2020 5:03 pm
Sab Set 26, 2020 4:16 pm
Sab Set 26, 2020 2:26 pm
Sab Set 26, 2020 11:12 am
Sab Set 26, 2020 10:18 am
Sab Set 26, 2020 8:11 am
Qui Set 24, 2020 9:16 pm
Qui Set 24, 2020 1:14 pm
Qui Set 24, 2020 12:10 pm
Qui Set 24, 2020 10:13 am
Qui Set 24, 2020 6:10 am
Qua Set 23, 2020 11:56 pm
Qua Set 23, 2020 9:12 pm
Qua Set 23, 2020 8:53 pm
Qua Set 23, 2020 3:11 pm
Qua Set 23, 2020 8:23 am
Qua Set 23, 2020 1:44 am
Ter Set 22, 2020 9:12 pm
Ter Set 22, 2020 11:37 am
Seg Set 21, 2020 10:54 pm
Seg Set 21, 2020 9:07 pm
Seg Set 21, 2020 4:47 pm
Dom Set 20, 2020 9:37 pm
Dom Set 20, 2020 12:59 am
Sab Set 19, 2020 6:30 pm
Sab Set 19, 2020 6:04 pm
Sab Set 19, 2020 4:51 pm
Sab Set 19, 2020 10:24 am
Sab Set 19, 2020 10:21 am
Sab Set 19, 2020 10:03 am
Sab Set 19, 2020 2:30 am
Sex Set 18, 2020 10:13 pm
Sex Set 18, 2020 8:14 am
Sex Set 18, 2020 8:09 am
Qui Set 17, 2020 2:36 pm
Qui Set 17, 2020 10:07 am
Qua Set 16, 2020 11:22 pm
Qua Set 16, 2020 5:31 pm
Qua Set 16, 2020 12:10 pm
Qua Set 16, 2020 12:02 am
Ter Set 15, 2020 11:33 pm
Ter Set 15, 2020 11:32 pm
Ter Set 15, 2020 5:28 pm
Ter Set 15, 2020 11:52 am
Ter Set 15, 2020 6:13 am
Seg Set 14, 2020 3:51 pm
Seg Set 14, 2020 3:41 pm
Seg Set 14, 2020 11:06 am
Seg Set 14, 2020 10:12 am
Seg Set 14, 2020 9:14 am
Seg Set 14, 2020 3:21 am
Seg Set 14, 2020 3:11 am
Dom Set 13, 2020 1:07 am
Sab Set 12, 2020 8:01 pm
Sab Set 12, 2020 6:34 pm
Sab Set 12, 2020 6:32 pm
Sab Set 12, 2020 2:28 pm
Sab Set 12, 2020 2:15 pm
Sab Set 12, 2020 1:20 pm
Sab Set 12, 2020 12:28 pm
Sab Set 12, 2020 1:37 am
Sex Set 11, 2020 7:08 pm
Sex Set 11, 2020 4:30 pm
Sex Set 11, 2020 4:26 pm
Sex Set 11, 2020 1:59 pm
Sex Set 11, 2020 1:40 pm
Qui Set 10, 2020 8:39 pm
Qui Set 10, 2020 6:26 pm
Qui Set 10, 2020 1:01 pm
Qui Set 10, 2020 2:19 am
Qui Set 10, 2020 2:08 am
Qui Set 10, 2020 1:51 am
Qua Set 09, 2020 10:03 pm
Qua Set 09, 2020 5:43 pm
Qua Set 09, 2020 6:21 am
Ter Set 08, 2020 10:47 pm
Ter Set 08, 2020 8:47 pm
Ter Set 08, 2020 12:59 pm
Ter Set 08, 2020 9:55 am
Seg Set 07, 2020 10:41 pm
Seg Set 07, 2020 9:32 pm
Seg Set 07, 2020 9:11 pm
cafezinho71
cafezinho71
Magnatah
JohnRambo
JohnRambo
gersoneson
JulioWinchester
cafezinho71
be2244
BatataBugada54321
FelipeSouza11
ViniciusTKH
Gabriel M
Gabriel M
Antônio T
Dhryeel
NKKF
BatataBugada54321
Shidote
Giwn
JulioWinchester
Th2y
thales.ulisses
AndryelBlanco
LúcioHenrique098
brizaloka
Magnatah
Callyde Jr
glauco
Th2y
Fagner
Th2y
speedluk
Fagner
MarcosSchultz
mitonoo
Wily
Magnatah
marcio21
TioUV
MarcosSchultz
diegopds
Lohmz
JulioWinchester
Magnatah
Magnatah
Magnatah
ProBrStalker
BatataBugada54321
NKKF
NKKF
FelipeSouza11
Magnatah
bruno700mb
darkrj
Magnatah
Ricardito
Magnatah
Magnatah
fantastic137
SamonBR
Callyde Jr
Fagner
Th2y
Shidote
ViniciusTKH
TioUV
MarcosSchultz
MarcosSchultz
MarcosSchultz
mateusschw
MayLeone
KurotamaXIII
Ploleo
RodriGO3477
PacienteZERO
Fagner
BlesseD
zhentox
MarcosSchultz
MarcosSchultz
Fagner
SauloeArthur
ProBrStalker
Callyde Jr
tautologias357
MarcosSchultz
MarcosSchultz
MarcosSchultz
Callyde Jr
bruno700mb
Callyde Jr
JulioWinchester
FlavinGiroflex
merike11
TioUV
Weslley
GattiMene
Magnatah

[TUTORIAL] Dicas Para Otimização de Código

Ir em baixo

TUTORIAL [TUTORIAL] Dicas Para Otimização de Código

Mensagem por Magnatah em Dom Set 06, 2020 9:18 pm

Espero Que Gostem.   Laughing


> ARRAY é mais rápido que o LIST
Uma lista genérica armazena os dados no formato Object. Quando fazemos o armazenamento de inteiros eles são convertidos para um valor de referência para serem armazenados e isso tem um custo.


> FOR é mais rápido que o FOREACH
O laço Foreach fornece um enumerator sobrecarregando o método IEnumerable.GetEnumerator. Isso faz com que ambos administrem a pilha e a função virtual em tipos simples causando um overhead. Mesmo usando coleções o laço FOR é mais rápido.


> "StringBuilder" é Muito Mais rápido que Concatenar strings do jeito normal.
EXEMPLO DE USO:
Código:
using System.Diagnostics;
using System.Text;
StringBuilder sb = new StringBuilder("AEIOU");
for (int i = 0; i < 500; i++)
{
     sb.Append("AEIOU");
}
O objeto String é imutável e cada vez que você usa um dos métodos da classe System.String você cria um novo objeto string na memória que requer uma nova alocação de espaço para o novo objeto.


> SEALED
As classes que não precisam ser herdadas podem ser marcadas como sealed.  As classes sealed removem as características das classes e permitem ao .NET Framework realizar várias otimizações em tempo de execução.
Quando aplicado a uma classe, o modificador sealed impede que outras classes herdem a partir desta classe. Ou seja uma classe sealed não pode ser herdada.
No exemplo a seguir, de classe B herda da classe A, mas nenhuma classe pode herdar da classe B.

class A { }
sealed class B : A { }
class c :B { }

Ao tentarmos declarar a classe C herdando da classe B teremos um erro em tempo de compilação indicando : Sealed.C': cannot derive from sealed type 'Sealed.B.



> Comparando Strings Non-Case-Sensitive
Muitas vezes temos que comparar duas variáveis strings, sem considerar o case sensitive. O recurso mais usado é converter ambas as strings para caixa baixa (minúsculas) ou caixa alta (maiúsculas) e então comparar as duas strings da seguinte forma:

str1.ToLower() == str2.ToLower()
Porém usar repetidamente a função ToLower() afeta o desempenho.

Uma escolha melhor é usar a função string.Compare() .
Assim podemos fazer:

string.Compare(str1, str2, true) == 0

A função string.Compare() retorna um inteiro que é igual a 0 quando as duas strings forem iguais.


> Utilize String.Empty ao invés de ""
A sugestão em usar string.Empty não é tanto pelo fator desempenho mas para facilitar a leitura e entendimento do seu código.

Ao invés de usar:
if (str1 == "")

prefira usar:
if (str1 == string.Empty)

É uma boa prática de programação e não causa um impacto negativo no desempenho da aplicação.
Magnatah
Magnatah
Instrutor

Masculino PONTOS : 1748
REPUTAÇÃO : 133
Idade : 25
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras : [TUTORIAL] Dicas Para Otimização de Código Aad8pUi

https://www.instagram.com/ampercygames/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Dicas Para Otimização de Código

Mensagem por MarcosSchultz em Seg Set 07, 2020 2:56 am

Amo demais esse tipo de tutorial... Tem várias coisas inclusive que eu já uso.

A questão que trago para este tópico agora é: É possível modificar string sem gerar garbage? Me lembro de tentar modificar strings a uns 2 anos atrás, utilizando StringBuilder, e eu vi que gerava mais garbage do que concatenar strings na mão mesmo... Ai surge a dúvida. Será que é possível juntar strings sem alocar memória?
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 63101
REPUTAÇÃO : 2494
Idade : 24
Áreas de atuação : Administrador do fórum
Respeito as regras : [TUTORIAL] Dicas Para Otimização de Código Aad8pUi

https://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Dicas Para Otimização de Código

Mensagem por Magnatah em Seg Set 07, 2020 9:11 pm

@MarcosSchultz escreveu:Amo demais esse tipo de tutorial... Tem várias coisas inclusive que eu já uso.

A questão que trago para este tópico agora é: É possível modificar string sem gerar garbage? Me lembro de tentar modificar strings a uns 2 anos atrás, utilizando StringBuilder, e eu vi que gerava mais garbage do que concatenar strings na mão mesmo... Ai surge a dúvida. Será que é possível juntar strings sem alocar memória?


Eu Pesquisei Bastante Sobre Isso Há Um Tempo Atrás e Tambem Fiz uns Testes mas Sem Resultados.   Sad
Magnatah
Magnatah
Instrutor

Masculino PONTOS : 1748
REPUTAÇÃO : 133
Idade : 25
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras : [TUTORIAL] Dicas Para Otimização de Código Aad8pUi

https://www.instagram.com/ampercygames/

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