01. La technologie sous-jacente favorise le développement rapide du jeu
** Les progrès de l'industrie du jeu évoluent constamment avec l'amélioration de la technologie. ** Des changements dans les graphismes et les effets sonores aux changements dans la conception du jeu et les méthodes d'interaction, tous sont à l'origine du développement du jeu. Reconnu comme le premier jeu vidéo à succès commercial, Pong, le premier jeu développé par Atari, est devenu viral et a lancé la tendance du jeu vidéo. Les années 1970 ont été une période de développement rapide des circuits intégrés. En 1975, Motorola a lancé le processeur 6502, qui a jeté les bases de la gloire ultérieure des ordinateurs domestiques. Le pionnier de l'informatique domestique le plus célèbre, l'Atari 2600, est né de là, et Pac-Man est depuis devenu un nom bien connu.
Le jeu moderne est à la fois un art complet et une technologie complexe. Les premiers jeux étaient relativement simples, depuis la logique du code jusqu'à l'interaction de l'interface, et les développeurs étaient plus habitués à les faire passer de 0 à 1. Cependant, à mesure que les fonctions s'amélioraient, le jeu devenait de plus en plus diversifié et la technologie devenait de plus en plus complexe. semblait être un processus lent et compliqué et peu efficace. Dans les années 1990, l'émergence des CD-ROM et des cartes accélératrices graphiques 3D a propulsé le contenu des jeux et les performances à l'écran vers de nouveaux sommets, entraînant une forte augmentation de la quantité de code nécessaire au développement d'un jeu. Dans ce contexte, le concept de moteur de jeu est apparu comme les temps l'exigent. Les développeurs de jeux standardisent certaines technologies sous-jacentes et les intègrent dans un ensemble d'outils efficaces pour raccourcir le cycle de développement, réduire la complexité du développement et prendre en charge la sortie des jeux sur différentes plates-formes et appareils. On peut dire que l’émergence des moteurs de jeux a apporté une grande commodité aux développeurs. Ces fonctions modulaires, universelles et standardisées permettent aux développeurs de se concentrer davantage sur le contenu du jeu et la conception du gameplay. Aujourd'hui, un moteur de jeu mature peut inclure des graphismes, de la physique, des scènes et d'autres systèmes.
En 1993, Id Software utilise le moteur DOOM (Id Tech 1) pour produire le jeu « Doom », qui connaît un grand succès, avec des ventes atteignant 3,5 millions d'exemplaires cette année-là. Le succès de « Doom » tient en grande partie à la conception de son architecture logicielle. Son architecture logicielle de jeu est divisée en composants logiciels de base, ressources artistiques, monde du jeu et règles du jeu. Cette division architecturale claire permet à différents développeurs d'utiliser le même moteur pour créer de toutes nouvelles œuvres de jeu en créant de nouveaux graphismes, niveaux, personnages, mondes de jeu et règles de jeu. Le fork réussi du moteur DOOM a suscité l'intérêt de la communauté pour la création de mods, tout en devenant également le premier moteur de jeu commercial. Dans les dix années qui suivent, les moteurs de jeux deviennent populaires, de l'Unreal Engine d'Epic Games à CryEngine de CryTech, en passant par Unity qui brille du côté d'IOS. En plus des moteurs commerciaux, de nombreux fabricants ont également créé leurs propres moteurs, tels que le moteur Source de Valve, le moteur IW d'Infinity Ward et le moteur Anvil d'Ubisoft.
02. Architecture ECS du moteur de jeu Web3
Actuellement, les deux moteurs de jeu full-chain les plus connus, MUD et DOJO, utilisent tous deux l'architecture ECS. ECS signifie Entity-Component-System (Entity-Component-), qui est un modèle architectural couramment utilisé dans le développement de jeux Web2 pour gérer les objets de jeu (entités) et leurs propriétés (composants) et comportements (systèmes). Les avantages de ce modèle architectural sont :
Optimisation des performances : l'architecture ECS permet aux développeurs de jeux de mieux gérer la disposition de la mémoire et les modèles d'accès aux données, améliorant ainsi les performances du jeu. La disposition étroite des entités et des composants permet de réduire les échecs de cache et d’améliorer l’efficacité de l’accès aux données.
Évolutivité : en raison du découplage des entités et des composants, les nouvelles fonctions n'ont besoin que d'ajouter les composants et les systèmes correspondants sans modifier les codes existants. Cela facilite l'extension des fonctionnalités et du contenu du jeu.
Réutilisabilité : en divisant les attributs en composants indépendants, ces composants peuvent être plus facilement réutilisés pour créer différents types d'entités, réduisant ainsi le code redondant.
MUD V1 est une architecture ECS typique. Dans le framework V1, les entités sont également les unités de base du jeu. Il peut s'agir de divers objets, accessoires ou adresses de portefeuille. Elles sont identifiées par des identifiants uniques. Le composant Composants est la partie données de l'entité, qui est utilisée pour décrire les différents attributs de l'entité, tels que la position de l'objet, les attributs du rôle, etc. En attachant différents composants aux entités, une grande variété d’objets de jeu peut être créée. Le système gère la logique des composants et implémente diverses règles et comportements du jeu. Ils existent sur la chaîne sous la forme de contrats intelligents. Les entités, composants et systèmes sont tous inclus dans un contrat de Mondes, et chaque Monde équivaut à un environnement de jeu indépendant.
Comment cette architecture reflète-t-elle l’évolutivité ? Supposons que nous devions mettre à niveau une certaine fonction dans le jeu ou que la communauté souhaite ajouter du nouveau contenu, nous devons d'abord autoriser la nouvelle fonction/logique (système) du jeu à obtenir l'autorisation d'écriture des composants concernés, puis créer une version mise à niveau. , autres contenus du jeu. Laissez-le simplement inchangé. Si vous n'accordez pas l'autorisation d'écriture, vous pouvez également envisager de créer de nouveaux composants et de nouveaux systèmes contenant de nouvelles fonctions. Les joueurs peuvent choisir différentes versions à jouer tout en interagissant avec les données des mêmes composants principaux. Parce que du point de vue du monde, n'importe qui peut créer des composants et des systèmes, tout comme n'importe qui peut créer de nouveaux jetons ERC-20 et les « attacher » à des adresses.
03. L'importance du moteur de jeu Web3 pour le développement des jeux en chaîne
Bien que la technologie blockchain n’ait pas encore été pleinement mise en œuvre dans les applications quotidiennes, ses caractéristiques uniques telles que la transparence dans la confirmation des droits apporteront forcément des changements importants dans le domaine des jeux de hasard. Les gens ont particulièrement vu l’énorme magie apportée par DeFi. Que se passera-t-il si le jeu est entièrement téléchargé sur la blockchain ? Depuis DeFi, il ne nous est pas difficile d'introduire les changements que la blockchain apportera au jeu :
Système économique ouvert : la blockchain peut donner aux actifs virtuels du jeu une propriété réelle et une rareté. Cela signifie que les joueurs peuvent vérifier la rareté et le taux de production des objets, évitant ainsi le contrôle et la gestion des actifs par des sociétés de jeux centralisées.
Composabilité : placer les jeux dans l'environnement ouvert de la blockchain permet à différents jeux et projets de se compléter. Les progrès des joueurs dans un jeu peuvent se refléter dans d'autres jeux, et même partager des actifs, créant ainsi un écosystème de jeu plus ouvert et interopérable.
Contenu généré par l'utilisateur : les utilisateurs peuvent créer du contenu ou des actifs de jeu de manière totalement indépendante et être propriétaires des actifs dans un environnement open source. Cela facilite les boucles de jeu générées par l'utilisateur, augmentant ainsi la jouabilité et la distribution du jeu. Par exemple, les utilisateurs peuvent charger du contenu de mod vérifié dans le contrat de jeu, enrichissant ainsi le gameplay et peut-être en récoltant certains avantages en même temps.
Les jeux blockchain ont toujours été très attendus, surtout après l'explosion des deux domaines d'application blockchain que sont DeFi et NFT. Cependant, il existe encore de nombreux obstacles à leur mise en œuvre :
Le premier est la limitation de l'infrastructure technique, l'EVM est lent, le coût du gaz est élevé et le langage Solidity est presque incompétent pour gérer une logique de jeu complexe, ce qui limite considérablement la complexité et l'interactivité du jeu.
Dans la conception d'un modèle économique, comme nous le savons tous, le système économique des jeux en chaîne est la priorité absolue, et des incitations efficaces et une financiarisation doivent trouver un équilibre.
Degré de liberté et de gouvernance, les jeux en chaîne disposent d'un degré de liberté ou d'ouverture considérable. Il devrait permettre à n'importe quel joueur de créer et de déployer différents contenus de jeu. Cependant, ces contenus rendront inévitablement le monde du jeu plus complexe et produiront même des impacts économiques inattendus, ce qui nécessite des mécanismes de gouvernance efficaces pour coordonner et gérer.
Ce qui précède ne sont que quelques difficultés prévisibles à l'heure actuelle, et c'est aussi la raison pour laquelle presque tous les jeux en chaîne complète se concentrent sur SLG à ce stade - le mécanisme de jeu est simple, ne nécessite pas de TPS élevé et les informations incomplètes requises. peut simplement être perfectionné par l’application des technologies existantes. Si nous attendons avec impatience un MMORPG, ce sera sans aucun doute un véritable défi. En s'appuyant sur les changements apportés par les moteurs de jeu aux jeux Web2, si les jeux en chaîne adoptent également l'architecture ECS, il pourrait être possible de résoudre :
Organisation et gestion des données : il existe également une grande quantité de données de jeu qui doivent être traitées dans les jeux de la chaîne, notamment les attributs des personnages, les objets, les informations cartographiques, etc. L'architecture ECS peut aider à organiser les données en composants réutilisables et à gérer efficacement la modification et l'accès aux données.
Flexibilité et évolutivité : en séparant les entités de jeu (Entités) et les composants (Composants), les développeurs peuvent facilement créer de nouveaux objets et fonctions de jeu sans affecter la logique existante. Cette flexibilité et cette évolutivité sont particulièrement importantes dans les jeux en chaîne, où des mécanismes de jeu complexes peuvent nécessiter des mises à niveau et des extensions fréquentes.
Contrats intelligents et mises à jour des données : l'architecture ECS peut gérer plus efficacement les mises à jour des données dans les contrats intelligents. Chaque composant peut être mis à jour indépendamment sans avoir à mettre à jour l'entité entière. Cela peut réduire le coût d’exécution des contrats intelligents et améliorer l’efficacité des interactions.
Composabilité : l'un des avantages d'ECS est la composabilité de ses composants et systèmes, qui correspond au concept de composabilité dans les jeux en chaîne. Peut-être que les joueurs pourront créer du nouveau contenu qui mènera à une expérience plus riche.
04. Perspective de jeu en chaîne complète Web3
Il existe encore de nombreuses difficultés dans les jeux en chaîne complète, et le moteur de jeu ne peut résoudre qu'une petite partie des problèmes. Cependant, les défis et les opportunités coexistent. L'application complexe des jeux en chaîne complète peut devenir un tremplin pour la mise en œuvre réelle de technologie blockchain.
À l'heure actuelle, le moteur de jeu complet en est encore à ses débuts. Comme mentionné précédemment, nous avons vu des prototypes d'applications complexes, mais il y a un manque d'outils pour la mise en œuvre. À l'heure actuelle, MUD V2 et Dojo se développent plus rapidement. Par rapport à la V1, MUD V2 améliore l'architecture ECS, mais la V2 est encore en développement. Dojo est actuellement le seul moteur de jeu vérifiable construit par la communauté Starknet. Grâce au langage Cairo, il peut implémenter nativement le brouillard de guerre. Dojo adopte également l'architecture ECS et prévoit de développer L3 pour des jeux exclusifs sur Starknet afin d'améliorer encore l'évolutivité.
De plus, l’infrastructure sur laquelle s’appuient les jeux blockchain évolue également. L2 a été suffisamment tassé pour pouvoir libérer la chaîne en un seul clic. Peut-être qu'un certain jeu populaire peut gagner la différence de prix en construisant son propre Rollup pour maintenir la structure de dissipation et éviter la spirale de la mort. Utilisant la technologie d'abstraction de compte ERC-4337, le jeu en chaîne complète permet aux joueurs d'effectuer des transactions de jeu, de créer des personnages, etc. dans un seul compte, ce qui contribue à simplifier l'expérience utilisateur. Il est également possible de regrouper différents mécanismes de jeu dans un compte contractuel évolutif, permettant aux développeurs de mettre à jour ou d'optimiser facilement les règles du jeu, le contenu, etc.
Passez en revue l'historique de développement du moteur de jeu Web2 et explorez le futur chemin de développement des jeux en chaîne complète
01. La technologie sous-jacente favorise le développement rapide du jeu
** Les progrès de l'industrie du jeu évoluent constamment avec l'amélioration de la technologie. ** Des changements dans les graphismes et les effets sonores aux changements dans la conception du jeu et les méthodes d'interaction, tous sont à l'origine du développement du jeu. Reconnu comme le premier jeu vidéo à succès commercial, Pong, le premier jeu développé par Atari, est devenu viral et a lancé la tendance du jeu vidéo. Les années 1970 ont été une période de développement rapide des circuits intégrés. En 1975, Motorola a lancé le processeur 6502, qui a jeté les bases de la gloire ultérieure des ordinateurs domestiques. Le pionnier de l'informatique domestique le plus célèbre, l'Atari 2600, est né de là, et Pac-Man est depuis devenu un nom bien connu.
Le jeu moderne est à la fois un art complet et une technologie complexe. Les premiers jeux étaient relativement simples, depuis la logique du code jusqu'à l'interaction de l'interface, et les développeurs étaient plus habitués à les faire passer de 0 à 1. Cependant, à mesure que les fonctions s'amélioraient, le jeu devenait de plus en plus diversifié et la technologie devenait de plus en plus complexe. semblait être un processus lent et compliqué et peu efficace. Dans les années 1990, l'émergence des CD-ROM et des cartes accélératrices graphiques 3D a propulsé le contenu des jeux et les performances à l'écran vers de nouveaux sommets, entraînant une forte augmentation de la quantité de code nécessaire au développement d'un jeu. Dans ce contexte, le concept de moteur de jeu est apparu comme les temps l'exigent. Les développeurs de jeux standardisent certaines technologies sous-jacentes et les intègrent dans un ensemble d'outils efficaces pour raccourcir le cycle de développement, réduire la complexité du développement et prendre en charge la sortie des jeux sur différentes plates-formes et appareils. On peut dire que l’émergence des moteurs de jeux a apporté une grande commodité aux développeurs. Ces fonctions modulaires, universelles et standardisées permettent aux développeurs de se concentrer davantage sur le contenu du jeu et la conception du gameplay. Aujourd'hui, un moteur de jeu mature peut inclure des graphismes, de la physique, des scènes et d'autres systèmes.
En 1993, Id Software utilise le moteur DOOM (Id Tech 1) pour produire le jeu « Doom », qui connaît un grand succès, avec des ventes atteignant 3,5 millions d'exemplaires cette année-là. Le succès de « Doom » tient en grande partie à la conception de son architecture logicielle. Son architecture logicielle de jeu est divisée en composants logiciels de base, ressources artistiques, monde du jeu et règles du jeu. Cette division architecturale claire permet à différents développeurs d'utiliser le même moteur pour créer de toutes nouvelles œuvres de jeu en créant de nouveaux graphismes, niveaux, personnages, mondes de jeu et règles de jeu. Le fork réussi du moteur DOOM a suscité l'intérêt de la communauté pour la création de mods, tout en devenant également le premier moteur de jeu commercial. Dans les dix années qui suivent, les moteurs de jeux deviennent populaires, de l'Unreal Engine d'Epic Games à CryEngine de CryTech, en passant par Unity qui brille du côté d'IOS. En plus des moteurs commerciaux, de nombreux fabricants ont également créé leurs propres moteurs, tels que le moteur Source de Valve, le moteur IW d'Infinity Ward et le moteur Anvil d'Ubisoft.
02. Architecture ECS du moteur de jeu Web3
Actuellement, les deux moteurs de jeu full-chain les plus connus, MUD et DOJO, utilisent tous deux l'architecture ECS. ECS signifie Entity-Component-System (Entity-Component-), qui est un modèle architectural couramment utilisé dans le développement de jeux Web2 pour gérer les objets de jeu (entités) et leurs propriétés (composants) et comportements (systèmes). Les avantages de ce modèle architectural sont :
MUD V1 est une architecture ECS typique. Dans le framework V1, les entités sont également les unités de base du jeu. Il peut s'agir de divers objets, accessoires ou adresses de portefeuille. Elles sont identifiées par des identifiants uniques. Le composant Composants est la partie données de l'entité, qui est utilisée pour décrire les différents attributs de l'entité, tels que la position de l'objet, les attributs du rôle, etc. En attachant différents composants aux entités, une grande variété d’objets de jeu peut être créée. Le système gère la logique des composants et implémente diverses règles et comportements du jeu. Ils existent sur la chaîne sous la forme de contrats intelligents. Les entités, composants et systèmes sont tous inclus dans un contrat de Mondes, et chaque Monde équivaut à un environnement de jeu indépendant.
Comment cette architecture reflète-t-elle l’évolutivité ? Supposons que nous devions mettre à niveau une certaine fonction dans le jeu ou que la communauté souhaite ajouter du nouveau contenu, nous devons d'abord autoriser la nouvelle fonction/logique (système) du jeu à obtenir l'autorisation d'écriture des composants concernés, puis créer une version mise à niveau. , autres contenus du jeu. Laissez-le simplement inchangé. Si vous n'accordez pas l'autorisation d'écriture, vous pouvez également envisager de créer de nouveaux composants et de nouveaux systèmes contenant de nouvelles fonctions. Les joueurs peuvent choisir différentes versions à jouer tout en interagissant avec les données des mêmes composants principaux. Parce que du point de vue du monde, n'importe qui peut créer des composants et des systèmes, tout comme n'importe qui peut créer de nouveaux jetons ERC-20 et les « attacher » à des adresses.
03. L'importance du moteur de jeu Web3 pour le développement des jeux en chaîne
Bien que la technologie blockchain n’ait pas encore été pleinement mise en œuvre dans les applications quotidiennes, ses caractéristiques uniques telles que la transparence dans la confirmation des droits apporteront forcément des changements importants dans le domaine des jeux de hasard. Les gens ont particulièrement vu l’énorme magie apportée par DeFi. Que se passera-t-il si le jeu est entièrement téléchargé sur la blockchain ? Depuis DeFi, il ne nous est pas difficile d'introduire les changements que la blockchain apportera au jeu :
Les jeux blockchain ont toujours été très attendus, surtout après l'explosion des deux domaines d'application blockchain que sont DeFi et NFT. Cependant, il existe encore de nombreux obstacles à leur mise en œuvre :
Ce qui précède ne sont que quelques difficultés prévisibles à l'heure actuelle, et c'est aussi la raison pour laquelle presque tous les jeux en chaîne complète se concentrent sur SLG à ce stade - le mécanisme de jeu est simple, ne nécessite pas de TPS élevé et les informations incomplètes requises. peut simplement être perfectionné par l’application des technologies existantes. Si nous attendons avec impatience un MMORPG, ce sera sans aucun doute un véritable défi. En s'appuyant sur les changements apportés par les moteurs de jeu aux jeux Web2, si les jeux en chaîne adoptent également l'architecture ECS, il pourrait être possible de résoudre :
04. Perspective de jeu en chaîne complète Web3
Il existe encore de nombreuses difficultés dans les jeux en chaîne complète, et le moteur de jeu ne peut résoudre qu'une petite partie des problèmes. Cependant, les défis et les opportunités coexistent. L'application complexe des jeux en chaîne complète peut devenir un tremplin pour la mise en œuvre réelle de technologie blockchain.
À l'heure actuelle, le moteur de jeu complet en est encore à ses débuts. Comme mentionné précédemment, nous avons vu des prototypes d'applications complexes, mais il y a un manque d'outils pour la mise en œuvre. À l'heure actuelle, MUD V2 et Dojo se développent plus rapidement. Par rapport à la V1, MUD V2 améliore l'architecture ECS, mais la V2 est encore en développement. Dojo est actuellement le seul moteur de jeu vérifiable construit par la communauté Starknet. Grâce au langage Cairo, il peut implémenter nativement le brouillard de guerre. Dojo adopte également l'architecture ECS et prévoit de développer L3 pour des jeux exclusifs sur Starknet afin d'améliorer encore l'évolutivité.
De plus, l’infrastructure sur laquelle s’appuient les jeux blockchain évolue également. L2 a été suffisamment tassé pour pouvoir libérer la chaîne en un seul clic. Peut-être qu'un certain jeu populaire peut gagner la différence de prix en construisant son propre Rollup pour maintenir la structure de dissipation et éviter la spirale de la mort. Utilisant la technologie d'abstraction de compte ERC-4337, le jeu en chaîne complète permet aux joueurs d'effectuer des transactions de jeu, de créer des personnages, etc. dans un seul compte, ce qui contribue à simplifier l'expérience utilisateur. Il est également possible de regrouper différents mécanismes de jeu dans un compte contractuel évolutif, permettant aux développeurs de mettre à jour ou d'optimiser facilement les règles du jeu, le contenu, etc.