Anonim

Hinaharap ito: DirectX 11 at OpenGL ay nakakakuha ng kaunti. Ang DirectX 11 ay ipinakilala sa Windows 7 noong 2009, at ang OpenGL 4.0 ay sumunod sa isang taon mamaya. Sa mga taon ng software ang mga teknolohiyang ito ay sinaunang ngayon, at ang kasalukuyang pag-crop ng hardware na kanilang pinapatakbo ay hindi man sa pagguhit ng board kapag ang mga graphic API na ito ay pinakawalan. Dahil sa halatang pagkakakonekta nito, ano ang ginagawa ng industriya upang makamit ang mga oras? Sa gayon, titingnan natin ang malapit na hinaharap at tingnan, ngunit upang simulan muna natin ipaliwanag kung ano ang isang API at kung ano ang function na ito para sa gaming.

Ano ang isang API?

Ang isang interface ng API o interface ng application ay isang hanay ng mga protocol at tool na ginamit upang makabuo ng software. Ang Graphics API's ay talagang isang dalubhasang API na binuo upang gawing mas madali ang pagbuo ng 3D graphics. Ginagawa ng Mga Graphics API na gawing mas madali ang pagbuo ng mga imahe ng 3D, ngunit pinapayagan ka rin nilang sabihin sa API na gumawa ng isang bagay (hal. Gumuhit ng isang parihaba) at sa turn ay makikipag-usap sa API sa kung paano makakapunta sa pagkumpleto ng gawaing ito. Ito ang pangunahing dahilan kung bakit napakaraming iba't ibang mga GPU na may dalubhasang hardware ay maaaring tumakbo ang parehong mga laro. Kung walang pagkakaroon ng isang API, ang parehong laro ay kailangang isulat sa iba't ibang mga paraan upang makipag-usap sa bawat tiyak na hanay ng hardware. Malubhang malimitahan nito ang mga paninda ng hardware at lubos na madaragdagan ang gastos ng mga laro ng gusali, isang gastos na sa huli ay ipapasa sa dulo ng mamimili.

Upang gawin ang paliwanag sa itaas ng isang maliit na mas madaling maintindihan Gumagamit ako ng isang pagkakatulad: Mag-isip ng isang API bilang tagapamahala ng site ng konstruksiyon. Ang kanyang trabaho ay upang kunin ang ideya ng arkitekto at masira ito, mag-iskedyul ng kung ano ang kailangan ng mga tauhan kung saan at kailan, at tiyakin na ang lahat ay nasa parehong pahina sa kung ano ang kailangang magawa.

Larawan 1: Graphical Representation ng kung paano gumagana ang isang API

Kasalukuyang Ginamit na Graphics API's

Ngayon na nauunawaan namin ang trabaho ng isang graphic API, nagbibigay-daan sa isang mas malapit na pagtingin sa kasalukuyang pag-lineup. Ang pangunahing manlalaro sa merkado ngayon ay ang DirectX ng Microsoft, na ipinakilala sa lahat ng paraan pabalik noong 1995. Na-update ito nang maraming beses mula nang ilabas ito, at kasama sa Windows operating system ng Microsoft. DirectX ay ang isang graphic API na halos lahat ng laro na inilabas para sa PC ay susuportahan. Sa katunayan, ito ay pangkaraniwan na ito talaga ang pamantayan para sa paglalaro sa PC ngayon. Ang DirectX ay eksklusibo sa mga produktong Windows at Microsoft na sa kasamaang palad ay ginagawa itong isang saradong sistema. Susunod sa linya ay ang OpenGL, ang tanging pangunahing open source graphics API. Ang OpenGL ay pinakawalan noong 1992 at multi-platform, nangangahulugang gumagana ito sa maraming mga operating system kasama ang Windows, Linux, at Mac OS. Sa wakas, mayroon kaming pinakabagong mga API ng graphics, Mantle. Ang Mantle ay binuo noong 2013 sa pamamagitan ng isang pakikipagtulungan sa pagitan ng AMD at Dice. Magagamit ang Mantle sa Windows, at para lamang sa AMD GPU's.

Larawan 2: Paghahambing ng DirectX 12 kumpara sa DirectX 11
Pinagmulan ng Imahe; Mga Larawan ng Credit: Intel

DirectX 12

Ang DirectX 12 ay dapat na mailabas sa Windows 10 sa taglagas na ito at maraming mga bagong pagpapabuti ang na-tout. Ang isa sa malaking pagpapabuti ay mas mahusay na suporta sa multi-threading. Karamihan sa mga trabaho ay kumakalat sa maraming mga cores sa CPU na nagpapahintulot para sa mas mahusay at mas mahusay na paggamit ng CPU. Maraming mga beses ang DirectX 11 ay magkakaroon lamang ng isang core ng CPU na ganap na maxed out habang ang iba pang mga cores ay nakaupo malapit sa walang ginagawa. Nangangako ang DirectX 12 na maikalat ang gawaing ito sa mga core ng CPU nang pantay-pantay na nagbibigay ng mga laro ng higit pang kapangyarihan ng CPU upang gumana. Ang susunod na malaking pagpapabuti na ipinangako ng DirectX 12 ay ang kakayahang pangasiwaan ang maraming mga tawag sa draw. Ang isang tawag sa draw ay nangyayari anumang oras na nais ng engine ng laro na gumuhit ng isang bagay sa screen. Ang pangangailangan ng maraming mga tawag sa draw ay karaniwang napaka pagbubuwis sa CPU. Ang DirectX 12 ay dapat na hawakan hanggang sa 600, 000 mga tawag sa draw. Upang mailagay ito sa pananaw, ang DirectX 9 ay maaaring hawakan lamang ang 6, 000 mga tawag sa draw o 1/100 ng kung ano ang magagawa ng DirectX 12.

Para sa mga taon na ngayong nagpapatakbo ng maramihang GPU's sa SLI / Crossfire mode ay posible. Gayunpaman ang isa sa mga malalaking limitasyon ay ang VRAM na binuo sa mga kard ay hindi magkasama upang makagawa ng isang malaking, tuloy-tuloy na pool. Halimbawa, kung mayroon kang dalawang GPU bawat isa na may 2GB ng VRAM ay mabisa ka pa rin ng 2GB ng VRAM dahil ang bawat kard ay kailangang magkaroon ng parehong impormasyon na nakaimbak dito. Inaasahan ng DirectX 12 na malutas ang problemang ito sa pamamagitan ng paggamit ng AFR o kahaliling pag-render ng frame. Sa halip na bawat bahagi ng pag-render ng GPU ng bawat frame, ang GPU's ay sa halip ay mag-render ng isang buong frame bawat isa. Papayagan nito ang VRAM sa bawat kard na magamit nang nakapag-iisa, at inaasahan na pahintulutan ang mga kard na may mas maliit na halaga ng VRAM na maging mahusay para sa paglalaro nang mas matagal. Mayroong dapat na maraming iba pang mga bagong tampok na kasama sa DirectX 12 upang itulak ang mga graphics sa paglalaro nang higit pa kaysa dati. Gayunpaman, ang Microsoft ay pa rin medyo hush hush tungkol sa kung ano ang mga bagong tampok na ito. Inaasahan naming higit na malaman ang tungkol sa kanila sa lalong madaling panahon ng paglabas ng API.

Larawan 3: DirectX 12 API Overhead ay nabawasan kapag gumagamit ng multi-core na CPU.
Pinagmulan ng Imahe; Credit Credit: nVidia GeForce

Vulkan

Hindi gaanong nalalaman ang tungkol sa Vulkan tulad ng tungkol sa DirectX 12, tulad ng inihayag lamang sa GDC 2015. Ang nalalaman natin ay ang mga gumagawa ng OpenGL, Khronos Group, ay bumaba sa pangalan na glNext sa pabor ng Vulkan. Ang Vulkan ay tila nagmula sa Mantle, na binanggit ko kanina sa artikulo. Bukod dito, mukhang ang AMD ay nagdadala ng pinakamahusay na mga bahagi ng Mantle sa talahanayan para sa Vulkan sa isang pakikipagtulungan sa Khronos Group. Ang Vulkan ay dapat na magkaroon ng marami sa parehong mga pakinabang ng DirectX 12, ngunit hindi ito nakatali sa isang solong platform tulad ng Windows. Sa halip ito ay magagamit sa maraming iba't ibang mga platform, kabilang ang Linux at kahit na mga mobile device. Ang mga driver ng Vulkan para sa parehong Windows at Linux ay magiging ganap na bukas na mapagkukunan hindi katulad ng DirectX. Mapapabuti ng Vulkan ang multi-threading, at samakatuwid ay ginawang mas mahusay ang paggamit ng lakas ng CPU na magagamit ngayon sa pamamagitan ng pagkalat ng workload sa maraming mga CPU core. Tulad ng nabanggit dati, ang pagbabawas ng pag-load sa CPU ay magpapahintulot sa GPU na hindi mai-bottlenecked nang madali sa ngayon. Ito ay dapat magbigay ng isang medyo malaking framerate boost sa paglalaro. Ang Source 2, na kamakailan ay inihayag ng Valve, ay ang unang bagong engine ng laro na ganap na suportahan ang Vulkan, bagaman sigurado ako na marami pa ang ihayag sa malapit na hinaharap. Ang Dota 2, isang laro na kilala para sa pagiging masinsinan sa CPU, ay ipinapakita na tumatakbo sa Source 2 kasama ang bagong Vulkan API gamit ang integrated graphics ng Intel sa CPU. Ito ay isang bagay na tiyak na hindi kanais-nais sa ilalim ng DirectX 11, ngunit sa Vulkan ang laro ay tila mapanatili ang isang makatwirang rate ng frame sa buong. Si Dan Baker, na isang developer para sa mga larong Oxide, kahit na sinabi na "hanggang sa ang mga tagagawa ng GPU ay magkakasamang kumilos at gawin ang mga GPU na sampung beses nang mas mabilis kaysa sa mayroon tayo ngayon, hindi namin mai-maximize ang CPU". Ito ay mabuting balita para sa mga taong nagpapatakbo ng mas mabagal na CPU o na mayroong maraming GPU horsepower na kasalukuyang dahil nangangahulugan ito na mas mahusay na pagganap ay maaabot sa parehong hanay ng hardware.

Larawan 4: Diagram Ipinapakita ang mga pakinabang ng Vulkan (nabawasan ang bottleneck sa GPU).
Pinagmulan ng Imahe; Credit Credit: Khronos

Ano ang ibig sabihin nito para sa hinaharap ng paglalaro?

Well, para sa isang magandang haba habang ngayon GPU kapangyarihan ay tumataas sa isang mas mabilis na rate kaysa sa CPU kapangyarihan. Limang taon na ang nakalilipas kahit na sinabi ng Intel na ang ilang mga GPU's ay 14 beses nang mas mabilis kaysa sa kanilang sariling mga CPU. Ang mga pagsubok na ito ay ginawa gamit ang isang nVidia GTX 280 kumpara sa isang i7 960 Intel CPU - ngayon ay itinuturing na medyo lipas na ng hardware. Ang puwang sa pagitan ng isang nVidia GTX Titan X (o kahit na isang nVidia GTX 980) at ang kasalukuyang mainstream na CPU powerhouse - ang Intel i7-4790k CPU - ay dapat na mas malaki. Ang punto na sinusubukan kong gawin ay nagsisimula kaming makita ang higit pa at maraming mga laro na tumama sa isang pader sa pagganap dahil sa CPU. Tanungin ang sinumang may isang mataas na rate ng pag-refresh ng monitor kung gaano kahirap mapanatili ang 100 + fps na may kasalukuyang CPU sa ilang mga laro. Tuwing nagsasalita, makakakuha lamang ito ng mas mahirap na wala ang mga bagong API, at ang kanilang kakayahang magamit ang lakas ng CPU nang mas mahusay. Ang pagpapakilala ng mga bagong API na ito ay maaaring nangangahulugang isang malaking hakbang sa pagganap para sa karamihan sa mga tao. Bukod dito, papayagan din nito na bumuo ng higit pang mga masinsinang mga laro ng CPU kaysa sa mayroon tayo ngayon. Halimbawa, isipin ang isang laro tulad ng Assasins Creed na mayroong libu-libong mga NPC sa screen sa isang pagkakataon, ang lahat ay nakikipag-ugnay sa bawat isa at sa iyong karakter habang ikaw ay naglibot sa isang lungsod. O mga laro tulad ng Star Citizen, kung saan kailangan mo ng isang napakalakas na CPU upang makakuha ng anumang uri ng matatag at katanggap-tanggap na rate ng frame, maaaring sa malapit na hinaharap ay nangangailangan ng isang average na CPU sa pinakamahusay at isang malakas na GPU upang mapanatili ang isang magandang solidong 60fps.

Sa huli, ito ay isang napaka-kapana-panabik na oras upang maging isang gamer. Kapag pinakawalan ang mga bagong graphic API na ito ay maaari lamang nating makita ang pinakamalaking pagtalon sa teknolohiya ng paglalaro sa mahabang panahon. Umaasa lang tayo na ang mga API na ito ay maaaring mabuhay hanggang sa hype na kanilang naitaguyod para sa kanilang sarili.

Bagong mga graphic api at ang hinaharap ng gaming pc