O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Parallax vale a pena?

Iniciado por Myzhuk, 26/06/2021 às 00:11

Bem pessoal, aprendi a fazer mapas usando o método de Parallax. Posso dizer que curti demais, e gostaria de utiliza-lo. Atualmente uso o RPG Maker MZ, com o plugin de layers do Galv. Minha dúvida principal é se o Parallax Mapping vai pesar grotescamente o projeto depois de terminado. Eu fiz um mapa simples, de casa, chuto que cada uma das duas layers deu em torno de 75kbs de tamanho. Essa utilização pode fazer o jogo pesar vários gigas né? Dependendo da quantidade de mapas e talz.  :sera:

Pode sim, dependendo do seu projeto. Mas sendo sincera, nunca vi um projeto de RPG Maker bem construído passar dos 2GB. E considerando que muitos jogos hoje facilmente extrapolam essa marca, não vejo problema.
Existem formas de você deixar as imagens menos pesadas, como fazendo mapas menores ou reduzindo levemente a qualidade das layers que não precisam de transparência.
Outra forma de você compensar por esse peso dos mapas é reduzindo o peso dos outros componentes do seu projeto, como músicas. Além disso, muitos efeitos construídos usando imagem podem ser feitos por script, o que reduz consideravelmente o peso de um mapa.

O que eu acho: Se isso vai deixar o seu jogo mais imersivo e vai te ajudar a contar a sua história, vale a pena sim.

Citação de: Opalablue online 26/06/2021 às 10:51
Pode sim, dependendo do seu projeto. Mas sendo sincera, nunca vi um projeto de RPG Maker bem construído passar dos 2GB. E considerando que muitos jogos hoje facilmente extrapolam essa marca, não vejo problema.
Existem formas de você deixar as imagens menos pesadas, como fazendo mapas menores ou reduzindo levemente a qualidade das layers que não precisam de transparência.
Outra forma de você compensar por esse peso dos mapas é reduzindo o peso dos outros componentes do seu projeto, como músicas. Além disso, muitos efeitos construídos usando imagem podem ser feitos por script, o que reduz consideravelmente o peso de um mapa.

O que eu acho: Se isso vai deixar o seu jogo mais imersivo e vai te ajudar a contar a sua história, vale a pena sim.

Entendi! Bem, os efeitos de luz por exemplo eu vou usar plugins, então já é algo a menos para pesar. Acredito que vai valer a pena então, pois não será um super Parallax como os que a Celianna faz que pesam 2MB cada. Obrigado pela resposta!

26/06/2021 às 13:24 #3 Última edição: 26/06/2021 às 13:26 por Syureri
Devo dizer que tenho uma antiga experiência nesse assunto (já estou sentindo os puxões de orelha). O problema nem chega a ser o peso, mas a carga de trabalho que aumenta bastante. Se você estiver disposto a criar vários mapas usando a técnica sem se cansar, então vá em frente.

Agora de um ponto de vista técnico, parallax chega a ser um desperdício de memória, tanto física quanto virtual. Não importa o tamanho do png na pasta, quando o jogo carrega a imagem, ele precisa decodificar todos os pixels, sendo assim, uma imagem 640x480 RGBA na memória sempre pesa 1.228.800 bytes de RAM. O problema é que o RPG Maker guarda todas as imagens no Cache, e a menos que você faça de maneira explícita, ele nunca limpa o Cache. Todos os mapas que você carrega acumulam na memória mesmo quando você não precisa, eventualmente o consumo de RAM aumenta bastante e o jogo fica mais pesado do que deveria. Você pode achar que não será um problema manter todas essas imagens na memória, visto que o jogo não vai precisar carregar nada novamente, e isso de fato não seria um problema em consoles sem sistema operacional como o PS2. No entanto, vale lembrar que seu jogo não é o único processo a ser executado na máquina do usuário, e certamente não é o único que precisa de RAM.

O que torna tilesets performáticos, nesse caso, é que ele usa apenas pedaços de uma única textura (ou texture atlas) para criar inúmeros mapas "on-the-fly". No mais, fica a seu critério qual técnica usar. É válido notar que vários scripters tentam desenvolver editores de mapas customizados, que te permitem colocar tiles "fora da grade" especialmente para tentar lidar com esse problema.

Citação de: Syureri online 26/06/2021 às 13:24
Devo dizer que tenho uma antiga experiência nesse assunto (já estou sentindo os puxões de orelha). O problema nem chega a ser o peso, mas a carga de trabalho que aumenta bastante. Se você estiver disposto a criar vários mapas usando a técnica sem se cansar, então vá em frente.

Agora de um ponto de vista técnico, parallax chega a ser um desperdício de memória, tanto física quanto virtual. Não importa o tamanho do png na pasta, quando o jogo carrega a imagem, ele precisa decodificar todos os pixels, sendo assim, uma imagem 640x480 RGBA na memória sempre pesa 1.228.800 bytes de RAM. O problema é que o RPG Maker guarda todas as imagens no Cache, e a menos que você faça de maneira explícita, ele nunca limpa o Cache. Todos os mapas que você carrega acumulam na memória mesmo quando você não precisa, eventualmente o consumo de RAM aumenta bastante e o jogo fica mais pesado do que deveria. Você pode achar que não será um problema manter todas essas imagens na memória, visto que o jogo não vai precisar carregar nada novamente, e isso de fato não seria um problema em consoles sem sistema operacional como o PS2. No entanto, vale lembrar que seu jogo não é o único processo a ser executado na máquina do usuário, e certamente não é o único que precisa de RAM.

O que torna tilesets performáticos, nesse caso, é que ele usa apenas pedaços de uma única textura (ou texture atlas) para criar inúmeros mapas "on-the-fly". No mais, fica a seu critério qual técnica usar. É válido notar que vários scripters tentam desenvolver editores de mapas customizados, que te permitem colocar tiles "fora da grade" especialmente para tentar lidar com esse problema.

Eu lembro dessa experiência hahaha!!!

Entendi, então o uso de RAM aumenta continuamente. Vou conferir se o plugin do Galv limpa o cache, se ele fizer isso vai ser ótimo. O peso de trabalho realmente é maior, mas como vou usar Parallax mais simplório talvez não tome tanto tempo. Obrigado pela resposta!!!

Vou ver se encontro essas outras formas de colocar tiles fora da grade!

26/06/2021 às 14:25 #5 Última edição: 26/06/2021 às 14:28 por Corvo
É de tópicos como este que a sociedade precisa.


Syureri já explicou a parte técnica. Para colocar tiles fora da grade, pense no visual do jogo. Planeje-o de forma que facilite. Por exemplo, tiles simples que não requeiram passabilidade complexa podem ser dividos em dois, três ou quatro quadros, por aí vai. Basta colocar a imagem centralizada na divisa deles, como alguns objetos maiores do próprio RTP fazem.

Citação de: Opalablue online 26/06/2021 às 10:51
[...] nunca vi um projeto de RPG Maker bem construído passar dos 2GB. E considerando que muitos jogos hoje facilmente extrapolam essa marca [...]

Aproveitando este trecho pra lembrar: não é porque você tem memória disponível que você pode usá-la. Não alugue a máquina do jogador pro seu projeto, você não sabe o que mais ele estará utilizando ao mesmo tempo. E mesmo que soubesse, é uma boa prática usar o mínimo de espaço e processamento possível. O pessoal tem ficado preguiçoso, o que nos leva a empresas "AAA" lançando patches de N Gigas só pra corrigir bug.

2GB de armazenamento é espaço suficiente para:

- Todas as versões do RPG Maker do 95 ao Ace juntas, descompactadas e com RTP. Vai sobrar espaço.
- Todas as bibliotecas de jogos do Nes, SNES, Mega Drive, GameBoy juntas. (Note que jogos de RPG Maker são bem semelhantes à estes)
- Quatro ou cinco discos de PS1. Isso falando de jogos relativamente grandes pra época: Final Fantasy, Resident Evil, etc. Um disco eram mais ou menos 400MB.
- Algumas .isos de sistemas operacionais inteiros. Fedora, por exemplo, tem 1.9GB. Um sistema inteiro, atual.

Um bom desenvolvedor é aquele que, se precisar trabalhar quarenta horas pra deixar o projeto 0.00000001% mais eficiente, não pensará duas vezes antes de começar o serviço.

26/06/2021 às 17:00 #6 Última edição: 26/06/2021 às 17:37 por Myzhuk
Citação de: Corvo online 26/06/2021 às 14:25
É de tópicos como este que a sociedade precisa.


Syureri já explicou a parte técnica. Para colocar tiles fora da grade, pense no visual do jogo. Planeje-o de forma que facilite. Por exemplo, tiles simples que não requeiram passabilidade complexa podem ser dividos em dois, três ou quatro quadros, por aí vai. Basta colocar a imagem centralizada na divisa deles, como alguns objetos maiores do próprio RTP fazem.

Aproveitando este trecho pra lembrar: não é porque você tem memória disponível que você pode usá-la. Não alugue a máquina do jogador pro seu projeto, você não sabe o que mais ele estará utilizando ao mesmo tempo. E mesmo que soubesse, é uma boa prática usar o mínimo de espaço e processamento possível. O pessoal tem ficado preguiçoso, o que nos leva a empresas "AAA" lançando patches de N Gigas só pra corrigir bug.

2GB de armazenamento é espaço suficiente para:

- Todas as versões do RPG Maker do 95 ao Ace juntas, descompactadas e com RTP. Vai sobrar espaço.
- Todas as bibliotecas de jogos do Nes, SNES, Mega Drive, GameBoy juntas. (Note que jogos de RPG Maker são bem semelhantes à estes)
- Quatro ou cinco discos de PS1. Isso falando de jogos relativamente grandes pra época: Final Fantasy, Resident Evil, etc. Um disco eram mais ou menos 400MB.
- Algumas .isos de sistemas operacionais inteiros. Fedora, por exemplo, tem 1.9GB. Um sistema inteiro, atual.

Um bom desenvolvedor é aquele que, se precisar trabalhar quarenta horas pra deixar o projeto 0.00000001% mais eficiente, não pensará duas vezes antes de começar o serviço.

Organizar os tilesets dentro das grades é uma prática que eu utilizava antes. Então é bem melhor do que usar mapas em layers? Na questão de processamento/tamanho.

Ambos Corvo e Syureri levantaram pontos muito importantes que eu esqueci de levar em consideração, admito. Em questão de peso em memória e processamento, é bem provável que parallax cause problemas de desempenho. Principalmente nas versões mais novas do RPG Maker.
No geral, usar tilesets é bem melhor pra máquina e torna o processo de level design muito menos custoso e cansativo. Além de que muitos dos efeitos "incríveis" do parallax podem ser criados sem muitos problemas usando tilesets, scripts e um pouco de paciência.

Como artista, eu não posso negar que o resultado final dos mapas em parallax quase sempre são de tirar o fôlego. Mas será que é realmente necessário sacrificar uma porção significativa de desempenho por isso? Na maioria das vezes não. Mas se você refletir e ainda assim acreditar que esse método vai tornar seus mapas melhores pro seu jogo, então pesquise muito bem e se prepare pra por uma quantia bem generosa de tempo pra desenvolver e otimizar cada mapa.