Éclairage, le niveau de la console et graphique ARM - 5 choses que les développeurs ont besoin de savoir
Si vous avez déjà vu un film de fiction des années 1980 de la science, ou si vous avez déjà joué à un jeu des années 1980 de l'ordinateur, alors vous comprendrez quand je dis que l'infographie ont parcouru un long chemin au cours des dernières décennies. À l'aube de l'ère informatique graphique, il était tout au sujet des représentations filaires et mappage de texture simple. Maintenant, nous vivons dans le temps de rendu photoréaliste avec l'utilisation des shaders et des techniques avancées d'éclairage.
Le défi pour les fabricants de jeux 3D, et pour les concepteurs de GPU, est de trouver des façons de créer le rendu le plus réaliste d'une scène tout en utilisant la plus petite quantité de puissance de calcul. La raison en est que les jeux 3D, même ceux sur les appareils Android, fonctionner à des cadences élevées allant de 25 images par seconde (ips) jusqu'à 60 images par seconde. En d'autres termes, le GPU a moins de 1/60 de seconde pour mettre une énorme charge de données graphiques dans un rendu réaliste d'une scène.
Le plus vite les objets, les ombres, l'éclairage, et des réflexions peuvent être rendues, plus le fps. Et des cadences élevées signifient gameplay lisse. Rendre rapide fois signifie également que les concepteurs de jeux peuvent créer des scènes plus en plus complexes, ce qui ajoute encore au réalisme.
1. ARM est pas seulement un concepteur de CPU
La grande majorité des smartphones et tablettes utiliser des processeurs ARM conçu avec cœurs de processeurs, mais ARM ne se conçoit pas les cœurs de processeur, il conçoit également des GPU. En fait, plus de 50% de toutes les tablettes Android et plus de 35% des smartphones ont ARM conçu GPU. Commercialisé sous le nom de marque "Mali", le GPU trouve son chemin dans presque toutes les catégories de smartphones y compris les appareils haut de gamme. Le Galaxy S6 Samsung utilise un SoC Exynos 7420 avec quatre ARM conçu cœurs de processeurs, et le GPU ARM Mali-T760MP8.
Pendant GDC ARM démontré un prochain Unreal Engine 4 plug-in pour sa Mali Offline compilateur.
Pour les concepteurs de jeu la popularité du Mali GPU signifie qu'il est essentiel que les jeux sont testés et optimisés pour le GPU Mali. Comme on peut s'y attendre, ARM fournit un ensemble complet d'outils de développement pour les concepteurs de jeux. Parmi les outils dont vous trouverez le Mali Graphics Debugger, qui permet aux développeurs de tracer OpenGL ES et OpenCL appels API dans leur application, et comprendre trame par trame de l'effet sur la demande pour aider à identifier possible issues- l'OpenGL ES Emulator, qui aide au développement et l'essai de la prochaine génération de logiciels OpenGL ES 3.1 applications via PC emulation- et le Mali Offline compilateur, un outil de ligne de commande qui se traduit vertex, fragments et de calcul des shaders écrits en OpenGL ES Shading Language (ESSL) dans shaders binaires pour l'exécution sur le Mali GPU.Si vous voulez voir ce qui est possible avec des outils spécifiques de GPU ARM alors je vous recommande la lecture de profilage Epic Citadel via ARM DS-5 Development Studio, qui montre comment ces outils peuvent être utilisés pour l'analyse des performances et l'optimisation.
2. ARM va bientôt sortir un Unreal Engine 4 plug-in pour sa Mali Offline Compiler
Pendant GDC ARM démontré un prochain Unreal Engine 4 plug-in pour sa Mali Offline compilateur. Il vous permettra d'analyser les matériaux et d'obtenir des statistiques mobiles avancés lors de la prévisualisation du nombre de l'arithmétique, de la charge magasins et la texture des instructions dans votre code. Voici une démo du nouveau plugin:
La raison de ce type d'outil est important est parce qu'il donne les fabricants de jeux les outils nécessaires pour jeux portuaires de l'espace console / PC au mobile. Typiquement contenu sur le XBOX / PS3 est en 720p, mais les jeux Google Nexus 10 affiche à 2.5k. Le défi pour les fabricants de jeux est de maintenir un haut niveau d'expérience de jeu tout en optimisant pour le budget de puissance d'un appareil mobile.
3. ARM développe de nouvelles techniques de GPU
Les ingénieurs de chez ARM font plus que les GPU de conception, ils aident également à créer et développer certains des dernières techniques graphiques 3D. La société a récemment démontré une nouvelle technique de rendu pour créer des ombres douces dynamiques basées sur une cubemap locale. La nouvelle démo est appelée la grotte de glace et il est intéressant de regarder avant de lire plus loin.
Si vous n'êtes pas familier avec cubemaps ils sont une technique qui a été mis en œuvre dans les GPU depuis 1999. Il permet aux concepteurs 3D pour simuler la grande zone environnante qui englobe un objet sans forcer le GPU.
Si vous voulez placer un chandelier d'argent dans le milieu d'une pièce complexe, vous pouvez créer tous les objets qui composent la pièce (y compris les murs, les planchers, les meubles, les sources de lumière, etc) ainsi que le chandelier, puis de rendre pleinement la scène. Mais pour les jeux qui est lente, certainement trop lent pour 60 fps. Donc, si vous pouvez décharger une partie de ce rendu de sorte qu'il se produit au cours de la phase de conception du jeu, qui vous aideront à améliorer la vitesse. Et qui est ce un cubemap fait. Il est d'une scène pré-rendu des 6 surfaces qui forment une chambre (à savoir un cube) avec les quatre murs, le plafond et le plancher. Ce rendu peut alors être projetée sur les surfaces brillantes pour donner une bonne approximation des réflexions qui peuvent être visibles sur la surface du chandelier.
Il est également possible d'obtenir une expérience encore meilleure en combinant les ombres cubemap avec la technique traditionnelle de la carte d'ombre.
Depuis la cubemap pré-rendu comprend tous les points de vue de tous les angles possibles, alors il n'a pas d'importance où la caméra est dans la scène, le GPU peut simuler les réflexions. Cette approche est beaucoup plus rapide que de rendre l'ensemble de la scène. Cette approche a eu plusieurs développements majeurs au cours des dernières années et de la technique a été affiné de manière significative en 2004 et 2010.La Démo de glace montre une nouvelle technique de cubemap locale. Sylwester Bala et Roberto Lopez Mendez, d'ARM, a développé la technique quand ils ont réalisé que par l'ajout d'un canal alpha pour la cubemap il pourrait être utilisé pour générer des ombres. Fondamentalement, le canal alpha (le niveau de transparence) représente la quantité de lumière peut entrer dans la salle. Si vous voulez lire l'explication technique complète de la façon dont cette nouvelle technique fonctionne puis vérifier ce blog: dynamiques Soft Shadows Basé sur cubemap locale. Ci-dessous est un rendez-vous par le biais de la démo grotte de glace par Sylwester courte:
Il est également possible d'obtenir une expérience encore meilleure en combinant les ombres cubemap avec la technique traditionnelle de la carte d'ombre, que cette démo montre:
4. Geomerics est une société d'ARM
L'éclairage est un élément important de tout support visuel y compris la photographie, vidéographie et les jeux 3D. Les réalisateurs et concepteurs de jeux utilisent la lumière pour mettre l'ambiance, l'intensité et l'atmosphère d'une scène. À une extrémité de l'échelle de l'éclairage est un éclairage de science-fiction utopique, où tout est lumineux, propre et stérile. À l'autre extrémité du spectre (désolé, mauvais jeu de mots) est le monde sombre de l'horreur ou de suspense. Celui-ci a tendance à utiliser un éclairage faible et beaucoup d'ombres, ponctuée par des flaques de lumière pour attirer votre attention et vous attirer.
Il ya beaucoup de différents types de source de lumière disponible pour les concepteurs de jeux, y compris directionnelle, ambient, projecteurs et point lumineux. La lumière directionnelle est loin comme le soleil, et comme vous le savez la lumière du soleil jette un éclairage ambiant shadows- jette rayons mous également à chaque partie d'une scène sans direction précise, par conséquent, il ne jette pas de projecteurs shadows- émettent à partir d'une source unique dans une forme de cône, comme sur la scène dans un Theater- et lumières ponctuelles sont vos sources fondamentales de lumière du monde réel comme les ampoules ou des bougies - l'essentiel à propos de lumières ponctuelles est qu'ils émettent dans toutes les directions.
Simulation de l'éclairage tout cela dans les jeux 3D GPU peut être intensive. Mais comme cubemaps, il existe un moyen de court-circuiter le processus et de produire une scène qui est assez bon pour tromper l'oeil humain. Il ya plusieurs façons différentes de créer un éclairage réaliste sans tout le travail dur. Une façon consiste à utiliser une cuisson de lightmap. Créé en ligne, comme un cubemap, il donne l'illusion que la lumière est coulé sur un objet, mais la lumière ne sera pas cuit avoir aucun effet sur les objets en mouvement.
Une autre technique est «l'éclairage de rebond", ici les concepteurs de jeux ajoutent les sources de lumière à des endroits stratégiques afin de simuler l'illumination globale. En d'autres termes, une nouvelle source de lumière est ajouté au point où une lumière sera reflétée, cependant, il peut être difficile d'atteindre la justesse physique en utilisant cette méthode.
Enlighten prend l'approche lightmap pré-cuit un peu plus loin en utilisant une bibliothèque d'exécution unique et hautement optimisé qui génère lightmaps en temps réel.
Un troisième est d'utiliser Enlighten de Geomerics. Enlighten prend l'approche lightmap pré-cuit un peu plus loin en utilisant une bibliothèque d'exécution unique et hautement optimisé qui génère lightmaps en temps réel. Le lightmap est créé en utilisant le CPU pendant le gameplay, et est ensuite ajouté au reste de l'éclairage direct sur le GPU.Cela signifie que la technique maintenant lightmap peut être appliqué à des objets en mouvement. Lorsqu'il est combiné avec hors lightmaps seulement les lumières et les matières qui doivent être mis à jour lors de l'exécution utiliseront de temps CPU.
Le résultat est une technique qui ne vaut pas seulement pour les jeux mobiles, mais qui peut évoluer jusqu'à PC et consoles.
La démo de métro ci-dessous montre Enlighten dans l'action. Notez comment au cours de la partie «translucidité dynamique" de la démo certains murs sont détruits laissant passer la lumière où elle était auparavant partiellement bloqué, mais l'éclairage indirect reste cohérent. Cela arrive tout en temps réel et est pas quelque chose de pré-rendu juste pour créer la démo.
5. Enlighten 3 inclut un nouvel éditeur d'éclairage
Pour atteindre un tel éclairage génial, Geomerics a publié un nouvel éditeur d'éclairage appelé Forge. Il a été développé spécifiquement pour les besoins des artistes de jeux Android, et fournit une immédiate "out of the box" expérience. Il est également un outil important pour "ingénieurs d'intégration», comme Forge sert comme un exemple de modèle et de référence pratique pour l'intégration des caractéristiques clés de Enlighten dans un moteur et rédacteur en interne.
Une des fonctionnalités vraiment utiles de Forge est qu'elle offre la possibilité d'importer et d'exporter les configurations d'éclairage que vous avez mis en place pour vos scènes. Ceci est particulièrement utile pour définir certaines conditions d'éclairage ou des environnements et puis tout simplement les partager (via l'exportation) à travers vos autres niveaux / scènes.
Pour un tour rapide vérifier cette Introduction à la Forge article.