Excel·lent joc Jugues a l'últim Call of Mario: Deathduty Battleyard al teu PC. Estàs mirant un bonic monitor de pantalla ultra ampla 4K, admirant els paisatges impressionants i els detalls intricats. Us heu preguntat mai com han arribat aquests gràfics? Us pregunteu què fa el vostre PC per fer-ho?

Benvingut al nostre 101 sobre creació de jocs 3D: una guia per a principiants sobre com fer un marc bàsic per a la bondat del joc.

Cada any es publiquen centenars de jocs nous a tot el món, alguns dissenyats per a telèfons mòbils, altres per a consoles i altres per a ordinadors. Els formats i gèneres tractats són tan extensos, però hi ha un gènere descobert pels desenvolupadors de jocs probablement més que qualsevol altre gènere: el 3D. La primera discussió de la primera i una ràpida exploració de les discussions Rècords Guinness la base de dades genera respostes diverses. Podríem haver escollit Knight Lore de Ultimate, que es va llançar el 1984, com un inici digne, però les imatges creades en aquest joc parlaven estrictament en 2D; cap part de la informació utilitzada és realment 3D.

Per tant, si entenem com el joc 3D d’avui fa les seves imatges, necessitem un exemple inicial diferent: Cursa guanyadora Fer qualsevol cosa en 3 dimensions des del principi va ser el primer d’aquest tipus, amb tècniques que potser no es troben a un milió de quilòmetres del que està passant ara. Per descomptat, qualsevol joc de més de 30 anys no serà el mateix que el F1 2018 del Codemaster, per exemple, però l’esquema bàsic per fer-los tots no és molt diferent.







En aquest article, examinarem el procés que segueix un joc en 3D per generar una imatge bàsica perquè es mostri un monitor o un televisor. Començarem per la conclusió i ens preguntarem: "Què miro?"

A partir d’aquí analitzarem tots els passos donats per obtenir la imatge que veiem. Al llarg del camí, cobrirem programari i instruccions com ara vèrtexs i píxels, textures i transicions, memòries intermèdies i ombres. També veurem on s’adapta la targeta gràfica a tots aquests i per què és necessària. Amb aquest 101, veureu els vostres jocs i PC amb una nova llum i aprecieu aquests gràfics amb una mica més d'admiració.




Dimensions del marc: píxels i colors

Comencem un joc en 3D, així que tenim alguna cosa per començar i probablement utilitzarem la versió 2007 de Crytek sense cap altra raó que el joc més valuós de tots els temps. crisi. A la imatge següent, busquem la imatge de la càmera del monitor que mostra el joc.




Aquesta imatge en general marcperò, què mirem exactament? Bé, fent servir una càmera amb objectius macro en lloc d’una captura de pantalla del joc, CSI: NOTÍCIES TECH i demana a algú que la millori!




Malauradament, l’enlluernament de la pantalla i la il·luminació de fons s’avancen al detall de la imatge, però si el millorem una mica més ...




Podem veure que el marc del monitor consta d’una quadrícula d’elements de colors individuals i, si ens fixem realment, els propis blocs consten de 3 bits petits. Un a cada tres píxels (abreviatura d’element d’imatge) i la majoria de monitors els pinten amb tres colors: vermell, verd i blau (també conegut com RGB). Per a cada nou marc que mostra el monitor, cal preparar una llista de milers, si no milions, de valors RGB i emmagatzemar-los en un espai de memòria accessible per al monitor. Es denomina aquest tipus de blocs de memòria tampons, naturalment, al monitor memòria intermèdia de marcs.

Aquest és en realitat l’últim punt amb el qual vam començar, de manera que ara hem d’anar al principi i seguir el procés per arribar-hi. Nom guix sovint s’utilitza per descriure-la, però la veritat és que es tracta d’una llarga llista d’etapes vinculades però diferents que són bastant diferents entre elles pel que fa al que són. Penseu en això com ser cuiner i fer un menjar digne d’un restaurant amb estrella Michelin: el resultat és un plat de menjar deliciós, però hi ha molt a fer abans d’entrar-hi. alguns ingredients bàsics.

Necessaris elements bàsics: models i textures

Els components bàsics de qualsevol joc en 3D són els recursos visuals que ompliran el món que es crearà. Pel·lícules, programes de televisió, produccions teatrals i similars necessiten actors, vestuari, accessoris, fons, llums; la llista és força gran. Els jocs en 3D no són diferents i qualsevol cosa que es vegi en un marc creat serà dissenyada per artistes i modelistes. Per ajudar-nos a visualitzar-ho, anem a la vella escola i fem un cop d'ull a un model de la identitat Quake II de Software:

Llançat fa 20 anys, Quake II era una potència tecnològica de la gira, com qualsevol joc en 3D de vint anys, tot i que és just dir que els models semblaven una mica bloquejats. Tanmateix, això facilita veure per què es va crear aquesta entitat.

A la primera imatge, podem veure que el gruixut amic forma triangles connectats, cadascun dels quals s’anomena vèrtex. cantonada o el pic per a un d’aquests. Cada vèrtex actua com a punt de l’espai, de manera que té almenys 3 nombres per descriure’l, és a dir. coordenades x, y, z. Tanmateix, un joc en 3D necessita més que això, i cada vèrtex tindrà algun valor addicional, com ara el color del vèrtex, la direcció a la qual s’enfronta (sí, els punts no poden mirar enlloc ... només cal rodar-hi!), Què brillant i translúcid? sigui o no, etc.

Un determinat conjunt de valors que sempre tenen els vèrtexs, mapes de textures. Aquestes són una imatge de la "roba" que hauria de portar el model, però, com que és una imatge senzilla, el mapa hauria d'incloure una vista per a totes les direccions possibles en què puguem mirar el model. En el nostre exemple de Quake II, podem veure que es tracta d’un enfocament bastant senzill: frontal, posterior i laterals (braços). Un modern joc 3D tindrà en realitat diversos mapes de textures per a models, cadascun ple de detalls; Alguns dels mapes no semblen materials ni característiques, sinó que proporcionen informació sobre com la llum rebotarà de la superfície. Cada vèrtex contindrà un conjunt de coordenades al mapa de textures associats del model perquè es pugui "unir" al vèrtex; això significa que si es mou el vèrtex, la textura es mou amb ell.

Així doncs, en un món renderitzat en 3D, tot el que es veu començarà com a punts de cantonada i una col·lecció de mapes de textures. Es classifiquen en memòries intermèdies lligades entre si: a para-xocs de cantonada conté informació sobre racons; un memòria intermèdia de directoris ens mostra com es connecten les cantonades per formar formes; un amortidor de soldadura conté teixits de memòria i porcions reservades per a un ús posterior en el procés de renderització; un memòria intermèdia d'ordres Llista d’instruccions sobre què fer amb tots ells.

Això crea el marc necessari que s’utilitzarà per crear la quadrícula final de píxels de colors. És possible que hi hagi grans quantitats de dades per a alguns jocs, ja que seria molt lent reconstruir els buffers de cada nou marc. Els jocs emmagatzemen tota la informació necessària per crear tot el món potencialment visible, emmagatzemar-la en memòria intermèdia o per cobrir una àmplia varietat de visualitzacions i actualitzar-la segons sigui necessari. Per exemple, un joc de carreres com la F1 2018 tindrà de tot en una gran col·lecció de para-xocs, mentre que un joc de món obert com Skyrim de Bethesda mourà dades dins i fora dels para-xocs a mesura que la càmera es mogui pel món.

Edició de l'escena: etapa màxima

Amb tota la informació visual disponible, un joc començarà a processar-se per a la visualització visual. Per començar, l’escena comença en una posició predeterminada, tots els models bàsicament posicionats, llums, etc. Aquest serà el quadrat "zero": és el punt de partida dels gràfics i no se sol mostrar, sinó simplement representar-lo per mantenir les coses. Per ajudar a mostrar què passa a la fase inicial del procés de compilació, Lloc web de renderització en temps real. Obrim-lo amb un "joc" molt bàsic: un cuboide a terra.

Aquesta forma en particular conté vuit vèrtexs, explicats cadascun mitjançant una llista de nombres, i formen un patró amb 12 triangles entremig. Fins i tot un triangle o tot un objecte primitiu. A mesura que es mouen, giren i escalen aquestes primitives, els números passen per una sèrie d'operacions matemàtiques i s'actualitzen en conseqüència.

Tingueu en compte que els números puntuals del model no canvien, només els valors que indiquen on es troba el món. La inclusió de matemàtiques rellevants està fora de l’abast d’aquest 101, però la part important d’aquest procés és que tot arribi al lloc on hauria d’estar primer. Llavors és hora de pintar.

Utilitzem un model diferent amb més de 10 vegades el nombre de cantonades que tenia el cuboide anterior. El tipus més bàsic de representació del color pren el color de cada vèrtex i calcula com canvia la superfície superficial entre ells; es coneix com interpolasyon.

Tenir més racons en un model no només té una presència més realista, sinó que també proporciona millors resultats amb la interpolació del color.

En aquesta etapa de la seqüència de representació, es pot investigar amb detall l’efecte de les llums a l’escena; Per exemple, es pot introduir com els materials del model reflecteixen la llum. Aquests càlculs han de tenir en compte la posició i la direcció de la càmera que mira el món, així com la posició i la direcció de les llums.

Hi ha una sèrie de tècniques matemàtiques diferents que es poden utilitzar aquí; n’hi ha de simples, n’hi ha de molt complexes. A la imatge superior podem veure que el procés de la dreta dóna uns resultats més agradables i realistes, però no és d’estranyar que trigui més a funcionar.

En aquest punt, val la pena assenyalar que estem veient objectes amb pocs punts en cantonada en comparació amb el darrer joc en 3D. Torneu una mica enrere en aquest article i mireu atentament la imatge de Crysis: només en aquesta escena hi ha més d’un milió de triangles. Podem entendre visualment quants triangles s’empenyen en un joc modern. Comparació d'Unigine's Valley (descarregar).

Cada objecte d’aquesta imatge està modelat per vèrtexs connectats, de manera que formen primitives formades per triangles. La comparació ens permet executar un mode wireframe que permet al programa representar les vores de cada triangle amb una línia blanca brillant.

Arbres, plantes, roques, terra, muntanyes: tots estan formats per triangles, cadascun calculat per la seva ubicació, direcció i color, tenint en compte la posició de la font de llum i la posició i direcció de la càmera. Qualsevol canvi que es faci a les cantonades ha de tornar a introduir-se en el joc perquè sàpiga on es troba tot per crear el següent fotograma; això es fa actualitzant la memòria intermèdia del vèrtex.

Sorprenentment, aquesta no és la part més difícil del procés de construcció i, amb el maquinari adequat, tot acaba en només una mil·lèsima de segon. A la següent etapa.

Perdre una dimensió: la rasterització

Un cop s’hagin treballat tots els racons i s’hagi acabat la nostra escena 3D on tot hauria d’estar, la representació passa a una etapa crucial. Fins ara, el joc ha estat realment tridimensional, però no el marc final; això vol dir que s’han de fer diversos canvis per transformar el món mostrat des d’un espai 3D que conté milers de punts connectats en un llenç 2D de píxels de colors individuals. . Per a la majoria de jocs, aquest procés implica almenys dos passos: projecció d’àrea de pantalla ve pixelació.

Utilitzant de nou l’eina de representació web, podem obligar-lo a mostrar com el volum del món es transforma inicialment en una imatge plana. La ubicació de la càmera que mira l'escena 3D es troba a l'extrem esquerre; línies que s’estenen més enllà d’aquest punt, frustum (com una mena de piràmide) i tot el que hi ha a frustum podria aparèixer en el marc final. Una petita carretera cap a Frustum Veure, - Això és el que mostrarà el monitor, i s'utilitza tota una pila de matemàtiques per projectar tot el que hi ha al tros al camp visual des de la perspectiva de la càmera.

Tot i que els gràfics de la finestra gràfica apareixen en 2D, les dades de l’interior continuen sent 3D, i aquesta informació s’utilitza per determinar quines primitives seran visibles o superposades. Pot ser sorprenentment difícil fer-ho perquè un primitiu pot projectar una ombra visible al joc encara que no pugui ser primitiu. Es denomina abolició dels primitius assassinat i pot fer una diferència significativa en la rapidesa amb què es representa tot el marc. Després de fer tot això: ordenar primitius visibles i invisibles, unir triangles fora del meu tronc, etc. - L'etapa final del 3D es tanca i el marc es torna completament 2D mitjançant la rasterització.

La imatge superior mostra un exemple molt senzill de marc que conté una primitiva. La quadrícula de píxels del marc es compara amb les vores de la forma inferior i, on es superposen, es marca un píxel per representar-lo. El resultat de l’exemple mostrat no és molt similar al triangle original, però no estem utilitzant prou píxels. Això va donar lloc al següent número: superposició, tot i que hi ha moltes maneres de fer-hi front. Aixo es perqué solució Té un gran impacte en l’aspecte d’un joc (el nombre total de píxels que s’utilitzen al marc): els píxels no només representen millor la forma de les primitives, sinó que també redueixen l’efecte de l’àlies no desitjat.

Quan aquesta part de la seqüència de representació s'hagi completat, depèn de la gran: el color final de tots els píxels del marc.

Porta les llums: escenari de píxels

Ara arribem al més difícil de tots els passos de la cadena de renderització. Fa anys, no era res més que la roba del model (també coneguda com a textures) envoltada d’objectes del món mitjançant informació en píxels (inicialment de les cantonades). El problema aquí és que, tot i que les textures i el marc són 2D, el món al qual estan units es dobla, es mou i es remodela a la fase superior. No obstant això, s’utilitzen més matemàtiques per explicar-ho, tot i que els resultats poden crear problemes estranys.

En aquesta imatge, s’aplica un simple mapa de textures de tauler d’escacs a una superfície plana que s’estén fins a la distància. El resultat és un embolic discordant amb el sobrenom que fa créixer el seu lleig cap. La solució inclou versions més petites de mapes de textures ( Coincidència), ús repetit de dades d’aquests teixits ( filtració), i fins i tot Més matemàtiques, ajuntant-ho tot. L'efecte d'això és força evident:

Aquesta solia ser una tasca realment difícil per a qualsevol joc, però ja no ho és perquè l’ús liberal d’altres efectes visuals com ara reflexes i ombres significa que la representació de textures esdevé una part relativament petita del píxel. fase de processament. Jugar a resolucions més altes crea una càrrega de treball més alta en les fases de rasterització i píxels del procés de renderització, però té un impacte relativament baix durant la fase màxima. Tot i que la coloració inicial es fa a la fase màxima a causa de les llums, també es poden utilitzar efectes de llum més brillants.

A la imatge superior, ja no podem veure fàcilment els canvis de color entre els triangles, donant-nos la impressió que es tracta d’un objecte suau i sense fissures. En aquest exemple concret, l’esfera consisteix realment en el mateix nombre de triangles que veiem. globus verd abans tanmateix, la rutina de coloració de píxels dóna la impressió que té molts més triangles.

En molts jocs, l'etapa de píxels s'ha d'executar diverses vegades. Per exemple, un mirall o una superfície de llac que reflecteixi la terra, tal com es veu des de la càmera, ha d’haver estat mecanitzada perquè comenci la terra. Nom de cada transició passar i un fotograma pot contenir fàcilment 4 o més transicions per produir la imatge final.

De vegades, també s’ha de tornar a dibuixar l’etapa del turó per redibuixar el món des d’una perspectiva diferent i utilitzar aquesta vista com a part de l’escena que mostra el jugador. Per això fixar objectius - memòries intermèdies que actuen com a dipòsit final del marc però que es poden utilitzar com a textura en una altra passada.

Seguiu llegint per comprendre millor la complexitat potencial de l’etapa de píxels Anàlisi de marcs per Adrian Courrèges i en aquest joc us sorprendrà els increïbles passos necessaris per fer un sol quadre.

Tot aquest treball al quadre s’ha de desar en un búfer com a resultat final o com a emmagatzematge temporal i, en general, un joc tindrà com a mínim dos búfers en moviment per a la visualització final: un “funcionarà” i l’altre espera que el monitor accedeixi a la pantalla o en la fase de visualització. Sempre hi ha d’haver un buffer de fotogrames per crear, de manera que, quan estiguin tots plens, s’ha de fer una acció per moure les coses i iniciar un buffer nou. La darrera part en signar un marc és una ordre senzilla (per exemple, disponible), però, es canvien els darrers buffers de fotogrames, el monitor rep l'últim fotograma renderitzat i es pot iniciar el fotograma següent.

En aquesta imatge, d’Ubisoft Assassin's Creed Odysseyestem veient el contingut d’una memòria intermèdia acabada. Penseu-hi com un full de càlcul amb files i columnes que no contenen res més que números. Aquests valors s’envien al monitor o al televisor com a senyal elèctric i el color dels píxels de la pantalla es canvia als valors requerits. CSI: NOTÍCIES TÈCNIQUES Com que no ho podem fer amb els nostres ulls, veiem una imatge plana i contínua, però el nostre cervell profunditat - així que 3D. És un marc de bondat del joc, però, amb tantes coses que passen entre bastidors (perdó, joc de paraules), val la pena fer una ullada a com ho fan els programadors.

Gestió del procés: API i instruccions

Entendre com un joc realitzarà i gestionarà tots aquests exercicis (matemàtiques, cantonades, textures, llums, para-xocs, anomeneu-lo ...) és una tasca enorme. Afortunadament, hi ha ajuda en forma de què cal dir Interfície de programació d'aplicacions o API en breu.

Les API de compilació redueixen la complexitat general proporcionant biblioteques d’estructures, regles i codi que permeten als programadors utilitzar instruccions simplificades independentment de qualsevol maquinari implicat. Trieu qualsevol joc en 3D llançat en els darrers 3 anys per a PC i es crearà mitjançant una de les tres API famoses: Direct3D, OpenGL o Vulkan. N’hi ha d’altres, sobretot a l’escena del mòbil, però ens en quedarem amb les d’aquest article.

Tot i que hi ha diferències en termes d’instruccions i instruccions d’operacions (per exemple, un bloc de codi per manipular píxels a DirectX, ombra de píxels; Volcà part ombrejat), el resultat final del marc creat no ha de ser diferent ni més diferent.

Hi haurà una diferència en què es redueix tot el maquinari utilitzat per fer la representació. Això es deu al fet que cal traduir les instruccions que s’ofereixen mitjançant l’API per dur a terme el maquinari; això és gestionat pels controladors del dispositiu i els fabricants de maquinari han de dedicar molts recursos i temps per garantir que els controladors facin la conversió de la forma més ràpida i precisa possible. possible.

Utilitzem una versió beta anterior del joc del 2014 de Croteam Principi de Talos Per il·lustrar-ho, ja que admet les 3 API que hem esmentat. Per maximitzar les diferències que de vegades poden produir la combinació de controladors i interfícies, hem executat el punt de referència integrat estàndard a una resolució de 1080p amb una configuració visual màxima. L’ordinador utilitzat s’executava en hores predeterminades i tenia un Intel Core i7-9700K, Nvidia Titan X (Pascal) i 32 GB de RAM DDR4.

  • DirectX 9 = mitjana de 188,4 fps
  • DirectX 11 = mitjana de 202,3 fps
  • OpenGL = mitjana de 87,9 fps
  • Vulkan = mitjana de 189,4 fps

L’anàlisi completa de les inferències que hi ha darrere d’aquestes xifres no és dins de l’abast d’aquest article i, certament, no vol dir que una API sigui "millor" que una altra (recordeu-ne una versió beta), de manera que la "programació per a diferents API presenta diversos reptes apunta que sempre hi haurà algun canvi en el rendiment. En general, els desenvolupadors de jocs triaran l'API amb la qual treballen més i optimitzaran el seu codi sobre aquesta base. De vegades la paraula motor S'utilitza per descriure el codi de representació, però tècnicament un motor és el paquet complet que gestiona tots els aspectes d'un joc, no només els seus gràfics.

Crear un programa complet des de zero per crear jocs en 3D no és una cosa senzilla, de manera que molts jocs actuals tenen llicència de sistemes complets d’altres desenvolupadors (per exemple. Unreal Engine); Podeu fer-vos una idea de l’escala visualitzant el motor de codi obert de. id Terratrèmol de programari i navegar pel fitxer gl_draw.c: aquest element únic conté instruccions sobre les diverses versions realitzades al joc i només representa una petita part de tot el motor. El terratrèmol té més de 20 anys i tot el joc (inclosos tots els elements, sons, música, etc.) té una mida de 55 MB; a diferència d’Ubisoft Far Cry 5 import només shaders utilitzats pel joc en un fitxer de 62 MB.

El temps ho és tot: fer servir el maquinari adequat

Tot el que hem descrit fins ara pot ser calculat i processat per la CPU de qualsevol sistema informàtic; els processadors moderns x86-64 admeten fàcilment totes les matemàtiques necessàries i hi ha parts dedicades per a aquestes coses. No obstant això, fer aquest treball per construir un marc requereix molts càlculs repetitius i requereix una quantitat important de processament paral·lel. Les CPU no estan dissenyades per a això perquè són massa genèriques pel disseny requerit. Per descomptat, es diuen xips especials per a aquest tipus de treballs GPU'lar (unitats de processament de gràfics) i matemàtiques com DirectX, OpenGL i Vulkan estan construïdes per fer les matemàtiques necessàries d’una manera molt ràpida i en gran part paral·lela.

Una manera de demostrar-ho és fer servir un punt de referència que ens permeti crear un marc mitjançant una CPU i després utilitzar maquinari personalitzat. Utilitzarem V-beam ADVANCED by Chaos Group; Aquesta eina realitza el traçat de raigs en lloc de la representació que estem veient en aquest article, però la majoria dels encallaments necessiten aspectes de maquinari similars.

Per entendre la diferència entre el que pot fer una CPU i el que pot fer el maquinari adequat i especialment dissenyat, hem realitzat la comparació de la GPU de raigs V en 3 modes: només CPU, només GPU i després CPU + GPU. Els resultats són força diferents:

  • Només prova de CPU = 53 matemàtiques
  • Només prova de GPU = 251 matemàtiques
  • CPU + GPU testi = 299 mpath

Com que una diferència de sortida de 5 vegades no és trivial, podem ignorar les unitats de mesura en aquesta comparació. Però aquesta no és una prova molt semblant al joc, així que provem una altra cosa i anem a alguna vella escola. 3DMark03 de Futuremark. Aplicant la prova simple Wings of Fury, podem obligar a fer tots els shaders de cantonades (és a dir, totes les rutines per moure i fer triangles de color) mitjançant la CPU.

El resultat no hauria de ser una sorpresa, però encara és molt més pronunciat que el que vam veure a la prova de raigs V:

  • Ombres màximes de la CPU = 77 fps de mitjana
  • Ombres de cantonada de la GPU = mitjana de 1580 fps

Mentre la CPU realitzava tots els càlculs del vèrtex, va trigar una mitjana de 13 mil·lisegons a mostrar i mostrar cada fotograma; En empènyer aquestes matemàtiques a la GPU, aquest temps es redueix a 0,6 milisegons. En altres paraules, va ser 20 vegades més ràpid.

Si provem la prova més complexa en comparació, la Mare Natura, la diferència és encara més acusada. Amb els shaders màxims representats per la CPU, el resultat mitjà va ser de 3,1 fps. Porteu la GPU i la freqüència de fotogrames mitjana puja a 1388 fps: unes 450 vegades més ràpidament. Tingueu en compte que ara 3DMark03 té 16 anys i la prova només tracta les cantonades de la CPU: la rasterització i la fase de píxels encara es fan a través de la GPU. I si fos modern i tot es fes amb programari?

Intentem-ho Unigine Valley eina de comparació de nou: relativament nova, que fa gràfics molt similars als que es veuen en jocs com Far Cry 5 d’Ubisoft; A més del bus estàndard de la GPU DirectX 11, també proporciona un renderitzador complet basat en programari. Els resultats no requereixen gaire anàlisi, però executar la versió de qualitat més baixa de la prova DirectX 11 a la GPU va fer una mitjana de 196 fotogrames per segon. Versió de programari? Alguns bloquejos a part, el potent ordinador de prova dibuixa una mitjana de 0,1 fotogrames per segon, gairebé dos mil vegades més lenta.

La raó d'aquesta diferència rau en la forma d'utilitzar matemàtiques i dades de renderització 3D. En una CPU, unitats de coma flotant (FPU) fan els càlculs dins de cada nucli; El model i7-9700K del PC de prova té 8 nuclis amb dos FPU cadascun. Tot i que les unitats de Titan X tenen un disseny diferent, totes dues poden fer les mateixes matemàtiques bàsiques en el mateix format de dades. Aquesta GPU en particular té més de 3500 unitats per fer un càlcul comparable i, tot i que el rellotge no es mostra a prop de la mateixa ubicació que la CPU (1,5 GHz vs 4,7 GHz), la GPU supera el processador central pel nombre d’unitats transparents.

Tot i que la Titan X no és una targeta gràfica genèrica, fins i tot un model econòmic supera a qualsevol CPU, de manera que tots els jocs i API 3D estan dissenyats per a maquinari dedicat i dedicat. No dubteu a descarregar-vos V-ray, 3DMark o qualsevol altre punt de referència Unigine i proveu el vostre propi sistema: publiqueu els resultats al fòrum perquè pugueu veure com de bones són les GPU per representar gràfics als jocs.

Algunes últimes paraules a la nostra pàgina 101

Aquest va ser un breu estudi de com es representa un quadrat en un joc en 3D, des de punts en l'espai fins a un píxel de color en un monitor.

En el seu nivell més bàsic, tot el procés no és més que treballar amb números, perquè tots els ordinadors ho fan igualment. Tanmateix, aquest article deixa molt per centrar-se en els conceptes bàsics (probablement continuarem amb immersions més profundes sobre com es realitzen els gràfics per ordinador més endavant). No hem inclòs cap de les matemàtiques reals utilitzades com l'àlgebra lineal euclidiana, la trigonometria i el càlcul diferencial realitzats pels ombres de les arrels i dels píxels; Vam explicar com es processen les textures mitjançant un mostreig estadístic i deixem de banda efectes visuals excel·lents, com ara l’oclusió ambiental de l’espai de la pantalla, la reducció del soroll de la traça de raigs, la visualització d’alt rang dinàmic o l’antialiasing temporal.

Però quan llanceu la propera Call of Mario: Deathduty Battleyard, no només veureu els gràfics amb un nou sentit de la meravella, sinó que tindreu picor en saber-ne més.