Couches de crasse en temps réel : le système technique de PowerWash Simulator

26 May 2026 Publié | Traduit de l'espagnol

PowerWash Simulator, développé avec Unity, présente un défi technique unique : simuler le nettoyage de surfaces de manière convaincante. Loin d'un simple changement de couleur, le jeu utilise un système de couches de saleté dynamiques qui sont éliminées progressivement grâce à des masques de texture en temps réel, s'appuyant sur un flux de travail PBR (Physically Based Rendering) pour maintenir le réalisme visuel.

PowerWash Simulator nettoyage de saleté dynamique en temps réel avec Unity et Substance Painter

Flux des assets : de Maya à Unity avec Substance Painter 🎨

Le processus commence dans Autodesk Maya, où les véhicules et les bâtiments sont modélisés avec une géométrie propre et optimisée pour le temps réel. Chaque asset est exporté vers Substance Painter, où les textures de base PBR (albedo, normale, rugosité, métallique) sont créées. La clé technique réside dans la génération de canaux de masque supplémentaires. Dans Substance Painter, des couches de crasse et de rouille sont peintes sous forme de textures indépendantes ou dans les canaux alpha des cartes existantes. Lors de l'intégration dans Unity, le shader personnalisé lit ces masques et, via un algorithme d'érosion contrôlé par l'interaction du joueur (le jet d'eau), estompe progressivement l'opacité de la saleté. Cela révèle progressivement la texture PBR propre sous-jacente, créant l'illusion d'un nettoyage physique sans avoir à modifier la géométrie.

L'illusion du nettoyage comme moteur de jeu 🧼

Cette approche démontre comment une solution de texturation intelligente peut définir une mécanique de jeu complète. Au lieu de simulations de particules complexes, PowerWash Simulator utilise la puissance des shaders d'Unity et la texturation multicouche de Substance Painter pour offrir une expérience satisfaisante et visuellement cohérente. C'est un exemple brillant de la façon dont la compréhension des capacités du pipeline PBR permet aux développeurs de créer des interactions novatrices sans sacrifier les performances.

En tant que développeur sur Unity, quel système de couches et de shaders avez-vous utilisé pour gérer l'accumulation et l'élimination procédurale de la crasse en temps réel sans compromettre les performances ?

(PS : les shaders, c'est comme la mayonnaise : si ça tranche, on recommence tout)