Fala Galera!
Estou fazendo um jogo que envolve armas de tinta,
gostaria de saber qual a melhor forma para deixar o cenário “pintado” porém sem pesar no jogo
e como faço para deixar o personagem sujo de tinta conforme ele for sendo atingido?
alguém tem alguma sugestão da melhor forma para se fazer isso?
Obrigado!
Olá!
Bom a forma mais simples de se fazer isso é, obviamente, usando Decals.
Agora em relação ao peso, você pode gerenciar isso através de uma classe ( ou Blueprint) manager, que utiliza um array para armazenar cara decal na cena e remove alguns para liberar mais memória e permitir mais decals serem inicializados.
DECAL
Decal é um sistema na tecnologia Unreal que envolve basicamente um material especial (marcado como material decal) e você pode colocar esse material que ele vai se adaptar a superfície em que foi colocado, seja um static mesh ou um skeletal mesh, ou mesmo um simples bsp. Você pode colocá-los em modo edição, no editor e ver o resultado instantaneamente ou pode também fazer com que sejam colocados através de um ator, como a sua arma de tinta.
Segue o link da documentação oficial sobre Decals no Unreal 4
Espero ter ajudado, boa sorte!
Gustavo Bolanho
Demais Bolanho! vou me informar sobre Decals! Obrigado!
Além da dica do Bolanho, eu sugiro que você também faça uma textura para o personagem onde ele está sujo de tinta e use uma interpolação linear (Lerp) no shader dele para a textura da tinta ir aparecendo conforme ele vai ficando mais sujo.
Bem lembrado, DanZaidan, você pode usar um sistema de texturas procedurais pra sujar os personagens, ou sujar de forma artística que fique de acordo com o contexto do personagem, como é feito no Mortal Kombat 9, onde as texturas vão se revelando conforme o personagem apanha, e cada personagem tem sua própria versão com sangue e machucados!
O primeiro jogo que eu lembro ter jogado onde isso acontecia foi God of War III. Quanto mais monstros você matava, mais sujo de sangue você ficava
Rendeu boas risadas… hahaha