Conectar-se
Quem está conectado
17 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 17 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 09/12/2011
Número de Mensagens : 55
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

[dúvida] como posso optimizar a taxa de FPS no GM?

em Dom 30 Jun 2013, 15:11
Bem pessoal, eu não estou tendo nenhum problema assim, porém acho que vou ter futuramente.
então gostaria de saber se tem algo que eu possa fazer para melhorar o desempenho de fps do game maker em uma máquina? Que não inclua: Retirar efeitos e certos objetos do jogo. desativar objetos fora da view(pois isto já estou fazendo).
Existe alguma dll ou algo do tipo que eu posso usar?(já tentei a clean mem, mas parece que ela melhora apenas o uso da memória RAM do game maker no pc. e só um pouco..., porém eu ainda não usei a função "get mem".)

eu também gostaria de saber se é verdade, que não importa configuração do pc, o fps não melhora em nada? (ex: eu tenho um pc com uma intel 4 chipset family, e 2gb de ram, e outro com 4 gb de ram e uma intel hd graphics 3000(placa melhor), a taxa de FPS entre ambos PCs seria a mesma?

obrigado pela atenção.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

em Dom 30 Jun 2013, 16:57
@rhaian escreveu:Bem pessoal, eu não estou tendo nenhum problema assim, porém acho que vou ter futuramente.
Muito bom ver você se preocupando com o uso da memória muito antes disso ser um problema. O que você pode fazer é exatamente isso: se preocupar. Criou recurso (sprite, path, timeline)? Apague quando acabar. Tem objeto quase inúteis? Verifique se é possível fazer o mesmo jogo sem eles. O código está muito extenso pra fazer pouca coisa? Provavelmente tem um jeito mais inteligente de escrever a mesma coisa.
Você já está no caminho certo. Mas tem mais uma coisa.
Sempre que alguém disser que faz isso ou aquilo porque "é boa prática", APRENDA o que essa pessoa está fazendo. Boas práticas te treinam a otimizar sua programação.
@rhaian escreveu:eu também gostaria de saber se é verdade, que não importa configuração do pc, o fps não melhora em nada? (ex: eu tenho um pc com uma intel 4 chipset family, e 2gb de ram, e outro com 4 gb de ram e uma intel hd graphics 3000(placa melhor), a taxa de FPS entre ambos PCs seria a mesma?
Sim e não. No game maker, a room_speed é definida ao criar o jogo. ela não vai ficar maior que a definida, não importa em que foguete você coloque o jogo. Mas pode ficar menor.
Se você define a room_speed pra, sei lá, 200 FPS, um foguete pode dar conta disso. Mas uma carroça, provavelmente, vai abrir o bico.
Os 30 FPS default rodam num monte de carroças. Desde que você adote as boas práticas.
avatar
Data de inscrição : 12/03/2013
Número de Mensagens : 19
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 5
Ver perfil do usuário

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

em Dom 30 Jun 2013, 17:44
Não importa a placa usada, o game maker só realmente usa a GPU quando você usa surfaces, partículas pesadas (como os da Game Cave Effects Engine) e blend modes. Do contrário, ele só pede para desenhar os sprites, que usa no máximo 10% da GPU...o resto vai pra CPU. E o game maker é igual ao port lixosos pra pc do Assassin's Creed 3: Não há suporte total a várias CPUS.

1500 objetos: Cpu 0 a 70%, Cpu1 não usada, 60 fps, GPU a 10%
2000 objetos: Cpu 0 a 100%, Cpu1 a 40%, 40 fps, GPU a 15%.

Ah e não se esqueça: GML é interpreda. Enquanto em C++ você pode fazer 1 bilhão de cálculos em 3 segundos, no GM você pode fazer 10 milhões de cálculos em 3 segundos.

Então o ÚNICO jeito de fazer o framerate melhorar é desativar os objetos fora da view. Os jogos 3d em open world fazem quase a mesma coisa: quando longe da câmera, muda para uma textura de baixa resolução. Quando ainda mais longe, o objeto é desativado. Quando perto, objeto em alta resolução. Isso se chama LOD: Level o Detail.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 28/06/2012
Número de Mensagens : 253
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 14

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

em Dom 30 Jun 2013, 18:24
Tem alguns macetinhos...

- Criar "loops" de alarm ao invés de colocar tudo em um step.
- Trocar os if-else-if por switches
- Usar tiles ao invés de objetos, quando possível
- Usar tiles maiores (tiles ainda gastam memória)
- Mesclar objetos "controladores" (aqueles que são invisíveis e controlam variáveis do jogo)
- Não usar backgrounds enormes

E por aí vai...
Espero ter ajudado
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 09/12/2011
Número de Mensagens : 55
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

em Dom 30 Jun 2013, 18:36
@supersonic822 escreveu:Não importa a placa usada, o game maker só realmente usa a GPU quando você usa surfaces, partículas pesadas (como os da Game Cave Effects Engine) e blend modes.
Cara eu não uso mais partículas do game maker,XD são meio inúteis pra mim, os efeitos de partículas da game cave são ruins na minha opinião.

@supersonic822 escreveu:
Então o ÚNICO jeito de fazer o framerate melhorar é desativar os objetos fora da view. Os jogos 3d em open world fazem quase a mesma coisa: quando longe da câmera, muda para uma textura de baixa resolução. Quando ainda mais longe, o objeto é desativado. Quando perto, objeto em alta resolução. Isso se chama LOD: Level o Detail.
@rhaian escreveu:
Que não inclua: desativar objetos fora da view(pois isto já estou fazendo).

@saim obrigado pelas colocações, você meio que misturou um pouco e não chegou exatamente onde eu queria, mas ajudou bastante. obrigado

@brother obrigado pelas dicas, mas já conheço e uso todas. Happy
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

em Seg 01 Jul 2013, 00:38
Veja o tutorial a seguir:

http://gmbr.forumeiros.com/t19480-melhorando-o-desempenho-dos-jogos

E lembre-se: se você quiser diminuir o processamento, aumente a memória usada; se quiser diminuir a memória usada, aumente o processamento.
Conteúdo patrocinado

Re: [dúvida] como posso optimizar a taxa de FPS no GM?

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum