Nous continuons notre programme de recettes CryENGINE 3 Cookbook, et vous donnons la chance d’avoir un aperçu du contenu de ce livre étonnant. Vous trouverez ci-dessous le premier des trois chapitres de l’échantillon que nous publierons au cours de la semaine à venir. Si vous n'êtes pas encore inscrit pour courir la chance de gagner une copie, découvrez comment après le saut!
L’automne est enfin arrivé et nous commençons avec style en faisant équipe avec Packt Publishing pour vous permettre de gagner l’un des trois exemplaires de leur très attendu livre de recettes CryENGINE 3, écrit par Dan Tracy et Sean Tracy, de Crytek. Avec la récente sortie de CryENGINE 3, c’est le moment idéal pour commencer à travailler avec l’un des moteurs de jeu les plus puissants du marché..
La complexité générale de la création de jeux devenant extrêmement difficile et coûteuse avec chaque génération de console successive, de nombreux développeurs de jeux se sont tournés vers des moteurs middleware, tels que CryENGINE, qui offrent un pipeline complet pour le processus de développement de jeux. CryENGINE convient parfaitement à la plupart des développeurs, car il permet aux utilisateurs de créer leur contenu rapidement et facilement, permettant ainsi aux jeux de respecter et de dépasser les normes de qualité actuelles de la génération tout en restant créés par de moins en moins de personnes..
Dans cet article de Dan Tracy, auteur de CryENGINE 3 Cookbook, nous couvrirons les sujets suivants:
Avant de pouvoir faire quoi que ce soit avec le gameplay du projet que vous créez, nous avons tout d'abord besoin d'une base d'un nouveau niveau sur lequel le joueur pourra se tenir. Cette recette expliquera comment créer un nouveau niveau à partir de zéro.
Se préparer
Avant de commencer, vous devez avoir Sandbox 3 ouvert.
Comment faire?
À tout moment, avec Sandbox ouvert, vous pouvez créer un nouveau niveau en procédant comme suit:
1. Cliquez sur Fichier (trouvé en haut à gauche de la barre d'outils principale de la Sandbox).
2. Cliquez sur Nouveau.
De là, vous verrez un nouvel écran de dialogue qui vous demandera des informations sur la façon dont vous souhaitez configurer votre niveau. L'aspect le plus important d'un niveau est de le nommer, car vous ne pourrez pas créer de niveau sans une sorte de nom propre pour le répertoire du niveau et son nom. .cri fichier. Vous pouvez nommer votre niveau comme vous le souhaitez, mais pour la facilité de l’enseignement, nous ferons référence à ce niveau par Mon niveau:
1. Dans le Nom du niveau boîte de dialogue, tapez Mon niveau.
2. Pour le Terrain propriétés, utilisez les valeurs suivantes:
* Utilisation Taille du terrain personnalisé: Vrai
* Hauteur de la carte: 512x512
* Mètres Par Unité: 1
3. Cliquez sur D'accord.
Selon les spécifications de votre système, vous constaterez peut-être que la création d'un nouveau niveau peut prendre de quelques secondes à quelques minutes. Une fois terminé, la fenêtre devrait afficher un ciel bleu clair et la boîte de dialogue de votre console lira les trois lignes suivantes:
Pré-cache synchrone terminé des matrices de rendu pour 0 CGF
Position de la caméra pré-mise en cache terminée (1024,1024,100) en 0.0 s
Spawn Player pour le canal 1
Cela signifie que le nouveau niveau a été créé avec succès.
Examinons de plus près chacune des options utilisées lors de la création de ce nouveau niveau..
Utiliser l'option Terrain
Cette option permet au développeur de contrôler si un terrain du niveau doit être manipulé par un heightmap ou non. Parfois, le terrain peut coûter cher pour les niveaux et si l’un de vos futurs niveaux ne contient que des intérieurs ou que des objets sur lesquels le joueur doit naviguer, la définition de cette valeur sur false sera un bon choix pour vous et vous fera économiser une énorme quantité de mémoire et de mémoire. aide à la performance du niveau plus tard.
Heightmap résolution
Ce menu déroulant contrôle la résolution du heightmap et la taille de base de la zone de lecture définie. Les paramètres peuvent aller de la plus petite résolution (128 x 128) à la plus grande résolution prise en charge (8192 x 8192)..
Mètres par unité
Si la résolution de Heightmap est considérée en termes de taille de pixel, cette boîte de dialogue peut également être visualisée en tant que Mètres par pixel. Cela signifie que chaque pixel de la heightmap sera représenté par ces nombreux mètres. Par exemple, si la résolution d’un heightmap a 4 mètres par unité (ou pixel), ensuite, chaque pixel de la carte générée mesurera quatre mètres de long et de large au niveau.
Même si cela Mètres par unité peut être utilisé pour augmenter la taille de votre niveau, cela diminuera la fidélité du heightmap. Vous remarquerez que tenter de lisser le terrain peut être difficile, car la taille minimale du triangle définie pour cette valeur est plus large..
Taille du terrain
C'est la taille résultante du niveau avec l'équation de (Résolution de la carte de hauteur) x (Mètres par unité). Voici quelques exemples des résultats que vous verrez (m = mètres):
Si vous devez modifier la taille de votre unité après avoir créé la carte, vous pouvez la modifier en allant dans l’éditeur de terrain | Modifier | Définir la taille de l'unité. Cela vous permettra de modifier les mètres d'origine par unité à la taille souhaitée..
Cette recette traite de la génération procédurale d'un terrain. Bien qu’ils ne soient jamais suffisants pour un produit final, car vous voudrez ajuster le heightmap à vos spécifications, ces terrains générés sont un excellent point de départ pour ceux qui débutent dans la création de niveaux ou pour ceux qui ont besoin de configurer un niveau de test avec le bac à sable. Plusieurs graines de heightmap et quelques modifications à la hauteur du niveau et vous pouvez générer rapidement des chaînes de montagnes ou des îles de base immédiatement prêtes à être utilisées.
Se préparer
Avoir Mon niveau ouvert à l'intérieur de Sandbox.
Comment faire?
En haut au milieu de la barre d’outils principale de Sandbox, vous trouverez une sélection de menu appelée Terrain. À partir de là, vous devriez voir une liste d’options, mais pour l’instant, vous voudrez cliquer sur Modifier le terrain. Cela ouvre la Éditeur de terrain la fenêtre.
le Éditeur de terrain La fenêtre a une multitude d'options qui peuvent être utilisées pour manipuler le heightmap dans votre niveau. Mais nous voulons d’abord créer une carte de hauteur générée de base pour nous permettre de construire une carte simple avec.
Avant de générer quoi que ce soit, nous devons d’abord définir la hauteur maximale de la carte sur une valeur plus gérable. Suivez ces étapes:
1. Cliquez sur Modifier.
2. Puis cliquez sur Définir la hauteur maximale.
3. Définissez votre Hauteur maximale du terrain à 256 (ces unités sont en mètres).
Maintenant, nous pouvons être en mesure de générer le terrain:
1. Cliquez sur Outils.
2. Puis cliquez sur Générer du terrain.
3. Modifier le Variation (base aléatoire) à la valeur de 15.
4. Cliquez sur D'accord.
Après avoir généré, vous devriez pouvoir voir un heightmap similaire à la capture d'écran suivante:
le Hauteur maximale La valeur est importante car elle détermine la hauteur maximale à laquelle vous pouvez élever votre terrain. Cela ne signifie pas qu'il s'agit entièrement de la hauteur maximale de votre niveau, car vous pouvez toujours placer des objets bien au-dessus de cette valeur. Il est également important de noter que si vous importez une carte de niveaux de gris dans CryENGINE, cette valeur sera utilisée comme extrême supérieure de la carte de hauteur (255,255,255 blanc) et que l’extrémité inférieure sera toujours à 0 (0,0,0 noir). . Par conséquent, le heightmap sera généré à une hauteur maximale de 0 m et à la hauteur maximale..
Les problèmes suivants sont fréquents:
* Les pointes hautes sont partout sur la carte ou il y a des montagnes massives et des pentes abruptes:
Solution: réduire le Hauteur maximale à une valeur plus adaptée aux montagnes et aux pentes souhaitées
* La carte est très plate et n'a pas de collines ou quoi que ce soit de mon heightmap:
Solution: augmenter le Hauteur maximale à une valeur qui convient pour faire les collines que vous voulez
Voici quelques autres paramètres que vous pourriez choisir d'utiliser pour générer le terrain..
Paramètres de génération de terrain
Voici les paramètres pour générer un terrain procédural:
* Taille caractéristique: Cette valeur gère les manipulations générales de hauteur dans la graine et la taille de chaque monticule dans la graine. Étant donné que la taille de la fonction dépend fortement des nombres arrondis, il est facile de se retrouver avec une île parfaitement arrondie. Il est donc préférable de laisser cette valeur à 7,0..
* Bosses / bruit (fondu): Fondamentalement, ceci est un filtre de bruit pour le niveau. Plus la valeur est élevée, plus le bruit apparaîtra sur le heightmap.
* Détail (Passes): Cette valeur contrôle le niveau de détail des pentes. Par défaut, cette valeur est très élevée pour voir les bosses individuelles sur les pentes afin de donner une meilleure impression d'une surface plus rugueuse. Réduire cette valeur diminuera la quantité de détails / rugosité dans les pentes vues.
* Variation: Ceci contrôle le numéro de graine utilisé dans la génération globale de la carte de hauteur de terrain. Il y a un total de 33 graines allant de 0 à 32 au choix comme base de départ pour un heightmap de base.
* Flou (passe flou): Ceci est un filtre de flou. Plus le montant est élevé, plus les pentes seront lisses sur votre carte d'altitude..
* Définir le niveau d'eau: Du Éditeur de terrain fenêtre, vous pouvez régler le niveau d’eau de Modifier | Définir le niveau d'eau. Cette valeur modifie la hauteur de base du niveau de l'océan (en mètres).
* Make Isle: Cet outil vous permet de prendre la carte de hauteur de votre niveau et réduit automatiquement les zones de bordure autour de la carte pour créer une île. Du Éditeur de terrain fenêtre, sélectionnez Modifier | Faire l'île.
La capacité de naviguer intuitivement entre les niveaux est une compétence de base que tous les développeurs devraient connaître. Heureusement, cette interface est assez intuitive pour quiconque est déjà familiarisé avec le système de contrôle WASD populaire dans la plupart des jeux de tir à la première personne développés sur PC..
Vous devez déjà avoir ouvert un niveau du contenu du kit de développement logiciel CryENGINE 3 et avoir vu une fenêtre de perspective affichant le niveau..
La fenêtre dans laquelle vous pouvez voir le niveau s'appelle la fenêtre Perspective Viewport. Il est utilisé comme fenêtre principale pour afficher et naviguer dans votre niveau. C’est à cet endroit qu’une grande majorité de votre niveau sera créé et que des tâches courantes, telles que le placement d’objets, l’édition du terrain et les tests de jeu dans l’éditeur seront effectuées..
Comment faire?
La première étape pour interagir avec le niveau chargé consiste à s'exercer à déplacer la fenêtre de la perspective..
Le bac à sable est conçu pour être ergonomique pour les droitiers et les gauchers. Dans cet exemple, nous utilisons le schéma de contrôle WASD, mais les touches fléchées sont également prises en charge pour le mouvement de la caméra..
1. Appuyez sur W avancer.
2. Puis appuyez sur S reculer.
3. UNE est pressé pour bouger ou à gauche.
4. enfin, ré est pressé pour bouger ou droit.
5. Maintenant que vous avez appris à déplacer la caméra sur ses axes principaux, il est temps de régler la rotation de la caméra..
6. Lorsque la fenêtre d'affichage est la fenêtre active, maintenez le bouton droit de la souris enfoncé et déplacez le pointeur de la souris pour activer l'affichage..
7. Vous pouvez également maintenir le bouton central de la souris enfoncé et déplacer le pointeur de la souris pour effectuer un panoramique de la vue..
8. Faites tourner la molette de la souris du milieu pour déplacer la vue vers l’avant ou vers l’arrière..
9. Enfin, vous pouvez maintenir la touche Maj enfoncée pour doubler la vitesse des mouvements de la fenêtre..
La fenêtre d'affichage offre une grande diversité de vues et de dispositions pour que vous puissiez voir votre niveau; la vue en perspective n'est qu'un exemple parmi d'autres. La vue en perspective est couramment utilisée car elle affiche la sortie du moteur de rendu. Il vous présente également une vue de votre niveau à l'aide de la perspective standard de la caméra, montrant tous les niveaux, géométrie, éclairage et effets..
Pour expérimenter davantage avec la fenêtre d'affichage, notez qu'elle peut également générer le rendu des sous-systèmes et de leurs outils, tels que le graphe de flux ou l'éditeur de caractères..
Vous voudrez probablement ajuster la vitesse de déplacement et comment personnaliser la fenêtre d'affichage en fonction de votre utilisation individuelle. Vous pouvez également diviser la fenêtre d'affichage en plusieurs vues différentes, qui sont abordées plus loin..
Contrôle de la vitesse de déplacement de la fenêtre
le La vitesse L'entrée est utilisée pour augmenter ou diminuer la vitesse de déplacement de tous les mouvements que vous effectuez dans la fenêtre de perspective principale..
Les trois boutons à droite de la La vitesse: les entrées sont des liens rapides vers la .1, 1, et dix les vitesses.
Sous Vues, vous pouvez ajuster la fenêtre pour afficher différents aspects de votre niveau.
Les vues de dessus, de face et de gauche montrent leurs aspects respectifs de votre niveau, à savoir des cadres de sélection et des aides basées sur les lignes. Il convient de noter que la géométrie n'est pas dessinée.
La carte affiche une carte de votre niveau avec des informations d'assistance, de terrain et de texture relatives à votre niveau..
Division de la fenêtre principale en plusieurs sous-rapports
Les utilisateurs individuels peuvent personnaliser la mise en page et définir les options d'affichage spécifiques à leurs besoins à l'aide du menu Fenêtre accessible en cliquant avec le bouton droit de la souris sur l'en-tête de la fenêtre..
La fenêtre Layout Configuration peut être ouverte à partir de l’en-tête de la fenêtre sous Configurer la mise en page. Une fois sélectionné, vous pourrez sélectionner l'une des configurations prédéfinies pour organiser les fenêtres de l'éditeur Sandbox en plusieurs configurations de fenêtres. Il convient de reconnaître que, dans plusieurs configurations de fenêtres, certains effets de rendu peuvent être désactivés ou les performances réduites..
Dans cette section, nous aborderons les bases de la peinture à la main de votre heightmap. Cette recette vous apprendra comment aplatir, relever, abaisser et lisser le heightmap à la main, en peignant à la fois Éditeur de terrain fenêtre ainsi que Vue de perspective.
En utilisant le Brosse de terrain du Éditeur de terrain est bon pour un niveau général élevé au-dessus de votre niveau; il est décent que de commencer à un nouveau niveau. Pour des travaux plus détaillés, de nombreux concepteurs utilisent la Brosse de terrain de l'intérieur Fenêtre de perspective pour voir leurs résultats instantanément. Nous couvrirons les deux méthodes.
1. Avoir My_Level ouvert à l'intérieur de Sandbox.
2. Passez en revue le Générer un terrain procédural recette pour en apprendre davantage sur le Éditeur de terrain.
3. Passez en revue le Naviguer à un niveau avec la caméra Sandbox recette pour se familiariser avec le Vue de perspective.
4. Avoir le Barre d'appui disponible dans votre mise en page Sandbox et prêt.
Sur le côté droit de cette fenêtre, vous verrez un menu déroulant qui se lit comme suit: Brosse de terrain. Ce menu est le point central de cette recette et a les mêmes fonctions dans les méthodes de l'éditeur de terrain et de la vue en perspective..
1. Pour commencer, nous allons aplatir une section du niveau. Changer la Type du pinceau (menu déroulant à Aplatir) et définissez les paramètres suivants:
* Rayon extérieur = 50
* Rayon intérieur = 50
* Dureté = 1
* Hauteur = 30
2. Peignez maintenant le coin nord-ouest de la carte et aplatissez tout ce quart de la carte..
3. Changer le Type de brosse à Lisse et définissez les paramètres suivants:
* Rayon extérieur = 50
* Dureté = 0.7
4. Entre la zone aplatie et le reste de la carte d'hauteur générée, peignez sur cette zone, afin de lisser la pente entre la zone aplatie la plus basse et les emplacements les plus en haut..
5. Changer le Type de brosse à Relever / Abaisser et définissez les paramètres suivants:
* Rayon extérieur = 30
* Rayon intérieur = 25
* Dureté = 0.4
* Hauteur = 1
6. Dans le Aplati zone, peignez au même endroit pour voir la heightmap monter.
7. Sculptez le terrain dans le vue de perspective. La méthode de la vue en perspective a les mêmes pinceaux que ceux présentés précédemment, sauf que vous pouvez trouver où les changer dans le menu déroulant. Barre d'appui sous le Terrain onglet | Modifier bouton.
Même si chacune des fonctions du pinceau est explicite en fonction de son nom, elles partagent bon nombre des mêmes propriétés. Ces propriétés sont Rayon extérieur, Rayon intérieur, Dureté, et la taille (à l'exception de Smooth). Voici ce que chacune de ces propriétés fait:
* Rayon extérieur: Le bord extérieur de la brosse qui ressentira le moins d'impact des autres paramètres de la brosse.
* Rayon intérieur: La zone intérieure qui ressentira le plus d'impact. Cela dépend de Dureté et la taille, il y a une chute entre le Rayon intérieur et Rayon extérieur.
Pour créer des monticules, des collines ou des montagnes plus escarpés, définissez le rayon intérieur et le rayon extérieur de manière à ce qu'ils soient proches l'un de l'autre. Pour obtenir des collines plus profondes et plus lisses, définissez un rayon intérieur et extérieur plus éloigné.
* Dureté: Quelle doit être la dureté du pinceau lors de la peinture? Fondamentalement, si le Dureté est réglé sur 1, alors en un clic, vous aurez la hauteur désirée. Si réglé à 0,01, 100 clics seront alors nécessaires pour obtenir le même résultat. (Pour smooth, cela contrôle la difficulté avec laquelle il essaiera de normaliser les triangles du heightmap).
* La taille: Ceci contrôle la hauteur désirée que vous souhaitez le Aplatir outil pour régler le terrain sur, ou contrôler la taille de pas (mètres) du Relever / Abaisser outil.
Voici quelques autres paramètres supplémentaires que vous pouvez utiliser pour sculpter un terrain..
Paramètres de bruit
Permettant Bruit ne fonctionne qu'avec le Aplatir et Relever / Abaisser des pinceaux. Ce paramètre ajoute un peu de variation aléatoire à la carte de hauteur lorsque vous peignez avec ces pinceaux..
* Échelle (%): Comment haut / bas la modification de bruit sera
* La fréquence (%): Combien de fois le bruit variera-t-il en hauteur sur la surface du terrain?
Repositionner les objets et la végétation
Activer l'une ou l'autre de ces cases à cocher repositionnera l'objet / la végétation après la hauteur sous laquelle l'objet / la végétation a changé (cela ne fonctionne pas si l'objet se trouve sous le terrain)..
Toute la végétation affectée est sous la Terrain | Végétation onglet dans le Barre d'appui.
Tous les objets affectés sont sous la Objets onglet dans le Barre d'appui.
Dans cette recette, nous allons vous apprendre à créer une nouvelle texture de terrain ressemblant à de l'herbe, que vous pourrez peindre sur le terrain..
Se préparer
1. avoir Mon niveau ouvert à l'intérieur de Sandbox.
2. Passez en revue le Générer un terrain procédural recette pour en apprendre davantage sur le Éditeur de terrain.
3. Passez en revue le Naviguer à un niveau avec la caméra Sandbox recette pour se familiariser avec le Vue de perspective.
4. Passez en revue le Sculpture de terrain recette.
5. ont le Barre d'appui ouvert et prêt.
Comment faire?
1. Ouvrez d'abord le Couches de texture de terrain fenêtre, trouvée dans la partie principale Sandbox Toolbar | Terrain | Texture.
2. Dans cette fenêtre, créez un nouveau calque-Ajouter une couche.
3. Renommez votre Nouvelle Couche à Herbe (double-cliquez Nouvelle Couche le renommer).
4. Puis changez la texture du calque: Changer la texture de la couche | Dossier Terrain | ground_mud_grey.dds.
5. Modifiez maintenant la texture de détail. cliquez sur le chemin du matériau pour cette couche, Materials / material_terrain_default | Dossier Terrain | grass_7. Revenir à Couches de texture de terrain fenêtre | Attribuer un matériau.
6. Configurez votre calque pour qu'il ait une couleur verdâtre-RollupBar | Terrain onglet | Peintre de couches | sélectionner Herbe. Définissez la couleur dans la zone de couleur sur Rouge: 191, vert: 215, bleu: 138.
7. Enregistrez la couleur dans votre calque et cliquez sur le bouton Couche bouton au-dessus de la case de couleur.
8. Peindre sur votre terrain.
le Texture de couche et Texture de détail Travaillez ensemble de manière superposée pour donner vie à la texture du terrain appliquée sur le terrain. Tandis que le Texture de couche fonctionne mieux comme un randomiseur de luminosité globale (vu avec le ground_mud_grey texture) pour casser le carrelage lointain, le Texture de détail est la texture principale que l'on voit au plus près de la vue du joueur.
Il est important de noter que le Texture de détail devrait fournir uniquement les détails et non pas tant la couleur (la couleur est traitée dans le Texture de couche). Les textures grisâtres dans le matériau de détail n’interfèrent pas avec les couleurs du Texture de couche. Chacune de ces textures diffuses doit être filtrée par passe-haut..
Voici quelques paramètres supplémentaires qui peuvent être utilisés.
Rayon et Dureté: Tout comme Sculpting Terrain, vous pouvez modifier la taille et la dureté du pinceau dans Layer Painter en une zone large couvrant votre texture de terrain ou simplement pour obtenir les détails les plus précis là où vous en avez besoin..
Altitude et pente: Ces paramètres peuvent être définis par couche, ce qui vous permet de ne peindre que cette couche dans les seuils Altitude (mètres) ou Pente (degrés). Ceci est particulièrement utile pour les couches ressemblant à des falaises (par exemple, 55 à 90).
Filtre (Luminosité): Le curseur de filtre est un passage de luminosité supplémentaire sur la couleur que vous avez déjà définie. Sans avoir besoin de changer la couleur encore et encore, vous pouvez changer la luminosité rapidement avec ce curseur.
Résolution de tuile: La résolution de tuile affecte le nombre de tuiles de terrain dans chaque secteur de terrain. Plus la résolution est élevée, plus le nombre de mosaïques utilisées est élevé (meilleur mélange de couches et transitions plus douces dans la texture de la couche)..
Avec une résolution allant de 64x64 à 2048x2048, cette résolution de mosaïque est un facteur important pour l'optimisation ainsi que pour un terrain de haute qualité. Il est recommandé d'utiliser une valeur plus élevée pour les zones de lecture de votre carte et des valeurs faibles pour les secteurs de terrain sur lesquels le joueur ne sera pas..
Génération de textures de surface: Il est important, après avoir travaillé avec les textures de terrain sur votre carte, de générer une texture de surface pour que vos textures soient cuites sur votre terrain. Cela crée une version compressée de votre travail de texture de terrain peint en un .fichier pak appelé terraintexture.pak. Les informations stockées dans ce fichier .pak réduisent la taille de la texture de terrain totale de la carte à 1/6 de sa taille originale, ainsi que la quantité d'appels de tirage au niveau..
Pour générer des textures de surface, allez à Fichier | Générer une texture de surface | Choisissez la résolution (plus élevé = meilleure qualité, moins performant) | (Optionnel) Haute qualité (effectue un passage supplémentaire sur les textures pour une cuisson plus détaillée tout en conservant la même empreinte mémoire) | D'accord.
Dans cet article, nous avons examiné la sculpture de terrain.
A propos de l'auteur :
Dan Tracy est le concepteur de niveau technique de Crytek pour les sociétés primées CryENGINE et Crysis 2. Il est responsable de la création et de la maintenance de nombreuses fonctionnalités techniques et applications externes utilisées pour la télémétrie et l'optimisation. Considéré comme plus qu'un concepteur de niveaux, Dan est fier de repousser les limites lorsqu'il s'agit d'améliorer des conceptions techniques et liées au jeu dans plusieurs disciplines de production. Dan a été recruté par Crytek en 2009 après avoir travaillé l'année précédente comme technicien en assurance qualité pour BioWare. Il a été recruté en raison de son rôle pivot dans la co-fondation et le développement du projet de conversion totale primé 'MechWarrior: Living Legends'. Depuis lors, il a figuré dans de nombreux magazines de jeu et a été interviewé par plusieurs médias. Dan est un joueur passionné, mais un modeur et un concepteur de jeux encore plus passionné, possédant de vastes connaissances et une vaste expérience dans le domaine des moteurs et des titres, notamment "Aurora", le moteur de Battlefield, "Frostbite", Unreal 3 et CryENGINE.
Note de l'éditeur: Cet article a été sponsorisé par Packt Publishing.