Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
+2
Dants
artplayer
6 participantes
Página 1 de 1
Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Salve pessoal!
Estou desenvolvendo um projeto digamos que ambicioso, e notei que conforme o jogo ia crescendo o FPS estava morrendo aos poucos assim como o consumo de GPU e CPU iam aumentando. Consegui uma melhora de desempenho de 36% utilizando algumas técnicas:
Atualmente estou pegando todos os meus modelos e diminuindo os vétices no blender para um valor e aparência "aceitáveis". Ainda não peguei na questão de Lod Groups mas pretendo depois que o jogo estiver terminado.
A questão é:
Gostaria de saber quais técnicas vocês utilizam para melhorar o desempenho sem afetar muito a aparência do game. Acredito que ter um bom desempenho é tão importante quanto ter um jogo bem feito.
Abraços e sucesso a todos!
Estou desenvolvendo um projeto digamos que ambicioso, e notei que conforme o jogo ia crescendo o FPS estava morrendo aos poucos assim como o consumo de GPU e CPU iam aumentando. Consegui uma melhora de desempenho de 36% utilizando algumas técnicas:
- Defini todos os objetos do jogo que não se movem para estáticos;
- Occlusion Culling para objetos estáticos;
- Troquei os Mesh Colliders por Box/Sphere Colliders e afins;
- Conveti TODAS as texturas para advanced ativando mipmaps e compactação;
Atualmente estou pegando todos os meus modelos e diminuindo os vétices no blender para um valor e aparência "aceitáveis". Ainda não peguei na questão de Lod Groups mas pretendo depois que o jogo estiver terminado.
A questão é:
Gostaria de saber quais técnicas vocês utilizam para melhorar o desempenho sem afetar muito a aparência do game. Acredito que ter um bom desempenho é tão importante quanto ter um jogo bem feito.
Abraços e sucesso a todos!
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Tu tem ai uma imagem ou vídeo do teu jogo ?artplayer escreveu:Salve pessoal!
Estou desenvolvendo um projeto digamos que ambicioso, e notei que conforme o jogo ia crescendo o FPS estava morrendo aos poucos assim como o consumo de GPU e CPU iam aumentando. Consegui uma melhora de desempenho de 36% utilizando algumas técnicas:
- Defini todos os objetos do jogo que não se movem para estáticos;
- Occlusion Culling para objetos estáticos;
- Troquei os Mesh Colliders por Box/Sphere Colliders e afins;
- Conveti TODAS as texturas para advanced ativando mipmaps e compactação;
Atualmente estou pegando todos os meus modelos e diminuindo os vétices no blender para um valor e aparência "aceitáveis". Ainda não peguei na questão de Lod Groups mas pretendo depois que o jogo estiver terminado.
A questão é:
Gostaria de saber quais técnicas vocês utilizam para melhorar o desempenho sem afetar muito a aparência do game. Acredito que ter um bom desempenho é tão importante quanto ter um jogo bem feito.
Abraços e sucesso a todos!
Posta ai para eu ver esse projeto ambicioso rsrsrs
Dants- Avançado
- PONTOS : 3115
REPUTAÇÃO : 10
Respeito as regras :
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Tem uma Ferramenta No Blender Q Deixa Os Objetos Mais Leves
Diminuindo As Surfaces Fica Bem Otimizado
E Ela Também Serve Para Fazer Sistema De Load Com Distancia
Diminuindo As Surfaces Fica Bem Otimizado
E Ela Também Serve Para Fazer Sistema De Load Com Distancia
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Decimate né? eu também uso.NOME-ALEATORIO escreveu:Tem uma Ferramenta No Blender Q Deixa Os Objetos Mais Leves
Diminuindo As Surfaces Fica Bem Otimizado
E Ela Também Serve Para Fazer Sistema De Load Com Distancia
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
É uma espécie de MMo de mundo aberto com servidor autoritário e um console pra administração via ssh e web. Vou tirar umas prints e edito o post. Ainda tô na parte da criação do mundo, mas o sistema de inventário, usuários e servidor eu já tenho prontos. As animações foram quase todas capturadas com um kinnect. É ambicioso na questão do conceito.Dants escreveu:
Tu tem ai uma imagem ou vídeo do teu jogo ?
Posta ai para eu ver esse projeto ambicioso rsrsrs
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Normalmente luzes podem pesar bastante, então seria mais leve usar luzes marcadas como Baked inves de Realtime, algumas vez pode ate mesmo usar lightmaps.
Sempre que possivel tentar usar shader mais simples/leves.
Tentar reduzir o numero de drawcalls:
° Usar atlas de texturas(varias texturas juntas em um unico arquivo)
° Combinar objetos proximos(estaticos)
Scripts:
° Usar o minimo possivel de operaçoes matematicas como raiz quadrada, Seno, divisoes ..
° Tentar Usar o minimo possivel de métodos como Update e FixedUpdate, mesmo se nao tiver nenhum codigo dentro dele ele ainda é executado se for declarado.
° Guarda em cache referencias que sao usadas constantemente.
° Por padrao a fisica roda numa velocidade de 50 fps, dependendo do seu projeto pode reduzir a velocidade da fisica alterando o valor de Fixed Timestep na aba Project Settings/Time, o valor padrao é 0.02 que significa 1/0.02 = 50 vezes por segundo, entao se voce quiser que ele roda apenas 25 vezes mude o valor para 0.04 pq 1/0.04 = 25, diminuindo a velocidade da fisica ira aumentar a performance porem se reduzir demais pode dar problema nas interações fisicas.
Analisar o jogo com o Profiler pode dar ideias de onde esta o problema de performance.
Paginas uteis da Unity:
https://docs.unity3d.com/Manual/OptimizingGraphicsPerformance.html
https://docs.unity3d.com/Manual/MobileOptimizationPracticalScriptingOptimizations.html
Sempre que possivel tentar usar shader mais simples/leves.
Tentar reduzir o numero de drawcalls:
° Usar atlas de texturas(varias texturas juntas em um unico arquivo)
° Combinar objetos proximos(estaticos)
Scripts:
° Usar o minimo possivel de operaçoes matematicas como raiz quadrada, Seno, divisoes ..
° Tentar Usar o minimo possivel de métodos como Update e FixedUpdate, mesmo se nao tiver nenhum codigo dentro dele ele ainda é executado se for declarado.
° Guarda em cache referencias que sao usadas constantemente.
° Por padrao a fisica roda numa velocidade de 50 fps, dependendo do seu projeto pode reduzir a velocidade da fisica alterando o valor de Fixed Timestep na aba Project Settings/Time, o valor padrao é 0.02 que significa 1/0.02 = 50 vezes por segundo, entao se voce quiser que ele roda apenas 25 vezes mude o valor para 0.04 pq 1/0.04 = 25, diminuindo a velocidade da fisica ira aumentar a performance porem se reduzir demais pode dar problema nas interações fisicas.
Analisar o jogo com o Profiler pode dar ideias de onde esta o problema de performance.
Paginas uteis da Unity:
https://docs.unity3d.com/Manual/OptimizingGraphicsPerformance.html
https://docs.unity3d.com/Manual/MobileOptimizationPracticalScriptingOptimizations.html
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Nossa...e eu ainda vou começar a estudar o C#...Deve dar muito trabalho para fazer tudo isso..artplayer escreveu:É uma espécie de MMo de mundo aberto com servidor autoritário e um console pra administração via ssh e web. Vou tirar umas prints e edito o post. Ainda tô na parte da criação do mundo, mas o sistema de inventário, usuários e servidor eu já tenho prontos. As animações foram quase todas capturadas com um kinnect. É ambicioso na questão do conceito.Dants escreveu:
Tu tem ai uma imagem ou vídeo do teu jogo ?
Posta ai para eu ver esse projeto ambicioso rsrsrs
Bem na parte de design..eu tento sempre usar menos polígonos..faço o sculpt do personagem por exemplo.. e depois a topologia..
As imagens eu converto para Targa..
Para mobile, eu não curto muito normal map..então eu faço uma pintura mais realista..
Dants- Avançado
- PONTOS : 3115
REPUTAÇÃO : 10
Respeito as regras :
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Manawydan escreveu:Normalmente luzes podem pesar bastante, então seria mais leve usar luzes marcadas como Baked inves de Realtime, algumas vez pode ate mesmo usar lightmaps.
Sempre que possivel tentar usar shader mais simples/leves.
Tentar reduzir o numero de drawcalls:
° Usar atlas de texturas(varias texturas juntas em um unico arquivo)
° Combinar objetos proximos(estaticos)
Scripts:
° Usar o minimo possivel de operaçoes matematicas como raiz quadrada, Seno, divisoes ..
° Tentar Usar o minimo possivel de métodos como Update e FixedUpdate, mesmo se nao tiver nenhum codigo dentro dele ele ainda é executado se for declarado.
° Guarda em cache referencias que sao usadas constantemente.
° Por padrao a fisica roda numa velocidade de 50 fps, dependendo do seu projeto pode reduzir a velocidade da fisica alterando o valor de Fixed Timestep na aba Project Settings/Time, o valor padrao é 0.02 que significa 1/0.02 = 50 vezes por segundo, entao se voce quiser que ele roda apenas 25 vezes mude o valor para 0.04 pq 1/0.04 = 25, diminuindo a velocidade da fisica ira aumentar a performance porem se reduzir demais pode dar problema nas interações fisicas.
Analisar o jogo com o Profiler pode dar ideias de onde esta o problema de performance.
Paginas uteis da Unity:
https://docs.unity3d.com/Manual/OptimizingGraphicsPerformance.html
https://docs.unity3d.com/Manual/MobileOptimizationPracticalScriptingOptimizations.html
Os posts eu já conhecia, mas confesso que nunca prestei atenção na questão das luzes.
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Eu já tinha visto esses vídeos Marcão, aliás são ótimos!
É que sempre tem aquele algo a mais que a galera usa e esse tipo de discussão sempre é boa pra gente aprender mais.
Meu problema aqui é que no PC de produção tudo funciona lindo leve e solto! Já em um PC com uma placa de vídeo mais modesta, a coisa fica intragável, principalmente quando a câmera renderiza árvores e plantas, até mesmo com uma qualidade baixíssima e sem luzes.
Definitivamente eu tenho que aprender a depurar melhor!
É que sempre tem aquele algo a mais que a galera usa e esse tipo de discussão sempre é boa pra gente aprender mais.
Meu problema aqui é que no PC de produção tudo funciona lindo leve e solto! Já em um PC com uma placa de vídeo mais modesta, a coisa fica intragável, principalmente quando a câmera renderiza árvores e plantas, até mesmo com uma qualidade baixíssima e sem luzes.
Definitivamente eu tenho que aprender a depurar melhor!
Re: Quais práticas vocês utilizam para melhorar o desempenho de seus jogos?
Tem que cuidar para não instanciar e destruir muitos objetos durante o tempo de execução, que sobrecarrega o garbage collector. Se for os caso, como projéteis e tal, use pool de objetos, instanciando apenas uma vez e reutilizando eles, ao invés de instanciar e destruir repetidas vezes.
wischutz- Membro
- PONTOS : 3573
REPUTAÇÃO : 15
Respeito as regras :
Tópicos semelhantes
» Como melhorar desempenho de animações
» Dicas para melhorar o desempenho?
» Criação de Update para Seus jogos?
» COMO CRIAR UMA EMPRESA DE JOGOS ??? QUAIS OS PRIMEIROS PASSOS ???
» Melhorar o desempenho do URP no Android
» Dicas para melhorar o desempenho?
» Criação de Update para Seus jogos?
» COMO CRIAR UMA EMPRESA DE JOGOS ??? QUAIS OS PRIMEIROS PASSOS ???
» Melhorar o desempenho do URP no Android
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos