Siri za Android: Misimbo ya Uhandisi na Hali ya Wasanidi Programu. Msanidi wa Google huondoa hadithi potofu kuhusu "kuongeza kasi ya maunzi" katika Sandwichi ya Ice Cream

Utangulizi

Sambamba na Kutolewa kwa Windows 7 miezi kadhaa iliyopita, wazalishaji wa kadi za video walianzisha mifano mingi na GPU mpya, baada ya hapo walianza kuboresha madereva kwa bidhaa zao. Inaonekana kwetu kwamba wakati wa kutosha umepita leo kwa wao kuweza kushughulikia shida kubwa zaidi chini ya mfumo wa hivi karibuni wa kufanya kazi (ambao, kusema ukweli, haukuwa muhimu kama ilivyokuwa kwa Vista), na vipimo vya lengo vinapaswa kuonyesha hali ya teknolojia mpya.

Bila shaka, tunaelewa kuwa lengo la leo ni juu ya teknolojia za 3D, lakini tuliamua kurudi kwenye sehemu ya graphics ambayo inachukuliwa kuwa ya kawaida leo - graphics za 2D. Na usifikirie kuwa tumeamua tu kuongeza majaribio kadhaa kwa yetu kifurushi cha mtihani, kuibua matatizo ambayo yalitatuliwa katika siku ambazo utendakazi wa RAMDAC ulifanya tofauti kubwa. Lakini tutazungumza zaidi kuhusu hili baadaye kidogo.

Ingawa watumiaji wengi watavutiwa na kasi ya kuonyesha ya Windows' GUI (ambayo Windows 7 imepata sifa nyingi ikilinganishwa na Vista), tuligundua kuwa "sasisho la picha" la Windows 7 sio safi kama inavyoonekana. Ikilinganishwa na Windows XP (na hata Vista), watengenezaji wa GPU bado hawajaboresha kikamilifu picha za 2D za Windows 7, angalau kulingana na utafiti. utekelezaji mpya GDI (Graphics Device Interface) simu za API. Sote tunajua kwamba picha za 2D sio tu kuhusu paji za kufurahisha, athari za mpito za macho, na menyu zilizohuishwa zilizo na vivuli; watengenezaji wanahitaji kuharakisha utoaji wa saizi nzuri za zamani, mistari, mikunjo, mistatili, poligoni na kila aina ya picha za asili, kama zinavyoitwa mara nyingi.

Ujumbe Muhimu wa Awali

Hatukutaka kutoa makala yoyote ya kihisia, ingawa wafuasi wa kambi "nyekundu" au "kijani" watasugua macho yao wakati wa kusoma nyenzo. Kwa kuwa sisi wenyewe hatukuamini katika matokeo ya mtihani, tulitumia Muda wa ziada kuandaa makala ili, kwa maslahi ya pande zote, matokeo yawe yenye malengo na yanayoweza kurudiwa. Pia tulifanya kazi ili kuunda msingi wa lengo zaidi wa kulinganisha kadi za video na kila mmoja. Hatukutaka kuashiria kidole kwa mwelekeo wa mtengenezaji mmoja au mwingine: ni muhimu kuelewa kwamba makala hii inalenga kuwasaidia watumiaji hao ambao hutumia kompyuta zao si kwa ajili ya michezo tu, bali pia kufanya kazi halisi kwenye PC zao.

Katika suala hili, ni muhimu kuelewa kwamba leo inaweza kuwa vigumu sana kufanya kazi kwa tija na graphics 2D chini ya Windows 7. Kwa mfano, tulipokuwa tunatumia Radeon HD 5870 na. madereva wa hivi karibuni, basi kwa ugumu mkubwa waliweza kutoa michoro rahisi ya vekta, miundo rahisi au ngumu ya CAD, au hata kucheza michezo ya 2D na ubora wa juu michoro. Huu sio ukosoaji sana kwani ni jaribio la kufafanua mipaka ya shida ambayo tumejaribu kuichambua na kuelewa shida kwa undani iwezekanavyo.

Nadharia na mazoezi

Kwa kuwa watumiaji wengi hawana uwezekano wa kujua kuhusu vipengele vilivyojengwa ndani na tabia ya kuongeza kasi ya 2D chini ya Windows XP au Windows 7, tuliamua kugawanya makala yetu ya kina sana katika sehemu mbili. Katika sehemu ya kwanza tutaangalia maelezo ya kiufundi kuhusu graphics za 2D ili wasomaji wetu waweze kujiandaa kwa sehemu ya pili. Sio tu kwamba utaweza kuelewa majaribio yetu, lakini pia utaweza kutafsiri vyema zaidi. Ili kuwezesha majaribio yetu, hata tulitengeneza programu yetu ndogo ya majaribio (na kuifanya ipatikane ili watumiaji wote wanaovutiwa waweze kupakua na kutumia programu wenyewe - katika sehemu ya pili ya kifungu). Lengo letu lilikuwa kufanya sehemu zote mbili za makala ziwe za kuelimisha, kufikiwa na kamilifu iwezekanavyo.

Katika sehemu inayofuata, tutaangalia misingi ya graphics za 2D. Wakati huo huo, tunaamini pia kwamba baadhi ya mambo ya msingi katika eneo hili hayataumiza mtu yeyote, yanaweza kuwa ya manufaa kwa kuelewa mada nyingine, si tu majaribio yetu.

Windows: jinsi yote yalianza

Wacha turudi 1985. Mwaka huu, Mikhail Gorbachev alikua katibu wa Kamati Kuu ya CPSU, "Amadeus" alipokea Oscar kwa filamu bora, na Ronald Reagan alichaguliwa kwa muhula wa pili kama Rais wa 40 wa Marekani. Watu wachache waliona, lakini ilikuwa mwaka wa 1985 kwamba mfumo wa uendeshaji ulitolewa Microsoft Windows 1.0.


Windows yenye idadi ndogo ya madirisha - hata bila kuingiliana maeneo tofauti. Bofya kwenye picha ili kupanua.

Wazo la kuweka kiolesura cha picha halisi juu ya mfumo wa uendeshaji wa hali ya maandishi halikuwa la kimapinduzi hata mwaka wa 1985. Kwa kweli, hii ilikuwa mbinu ambayo makampuni mbalimbali, ikiwa ni pamoja na Microsoft na Utafiti wa Digital, walichukua wakati huo kupanua uwepo wao wa soko na kufanya teknolojia ya PC kupatikana zaidi kwa sehemu kubwa ya wanunuzi na watumiaji. Wazo lilikuwa kwamba programu-tumizi zingekuwa rahisi kwa watumiaji kiasi kwamba hata wataalamu wasio wa IT wangeweza kuzitumia bila kujifunza mengi kuhusu kompyuta kwanza. Inafurahisha, tofauti na Windows 1.0, Mfumo wa Uendeshaji wa Dijiti wa GEM wa watumiaji wengi uliungwa mkono na dirisha tayari wakati huo.



Ilikuwa tu na Toleo la 2 ambapo Windows ilianza kuishi kulingana na jina lake. Bofya kwenye picha ili kupanua.

Ikiwa mfumo wa uendeshaji wa Windows 2.0 haujaanzishwa mwaka wa 1987, ambao tayari ulikuwa na msaada kwa madirisha mengi yanayoingiliana, basi inawezekana kabisa kwamba hakuna mtu anayejua kuhusu Microsoft Windows leo. Kwa kweli, Windows inadaiwa kusalimika kwake zaidi ya miaka miwili ya kwanza baada ya tangazo lake la kwanza kwa mtu ambaye bado ana ushawishi mkubwa katika Microsoft leo: Steve Ballmer. Utangazaji wake wa Windows 1.0 bado ni mgumu kusahau leo, kwani aliweka bei ya Windows 1.0 isiyo ya kawaida kwa $99 ya kuvutia (kiasi kikubwa mnamo 1985), licha ya ukosefu wa usaidizi wa madirisha halisi. Steve Ballmer anaweza kuvutia mtazamaji - anaweza kuitwa gwiji wa uuzaji. Jionee mwenyewe.

Steve Ballmer anauza Windows.

Tangu kutolewa kwa toleo la 2.0, Windows imeweza kutoa (angalau) mabadiliko, ikiwa sio mapinduzi, mabadiliko katika matoleo yake yafuatayo. Kwa kweli, mabadiliko ya mapinduzi yanageuka kuwa masuala ambayo tungependa kushughulikia katika Windows 7, toleo la hivi karibuni la kampuni.

Toleo la hivi punde liligeuka kuwa hasa ambalo linazua maswali mazito ambayo yalitulazimisha kugeukia Windows ya juu. Sababu za hii ni rahisi na dhahiri. Kupitia ulinganisho wetu wa mbinu za kuweka madirisha, tulijifunza kuwa kuna pande mbili za Windows GUI: kiolesura cha picha cha mtumiaji au GUI(hatukuzingatia ubinafsishaji kwa upande wa mtumiaji, lakini tulizingatia desktop ya msingi na kufanya kazi nayo), pamoja na kufanya kazi na windows, na vile vile. kazi rahisi za graphics, ambayo hutumiwa kuunda mazingira ya eneo-kazi. Kwa kweli, kuonyesha yaliyomo ya madirisha na kufanya kazi nao ni maeneo mawili tofauti, ingawa yanahusiana, ya Windows OS. Mwonekano na mwonekano wa kiolesura cha Windows umeendelea kubadilika na kubadilika, lakini utendakazi rahisi wa mchoro wa 2D umesalia kuwa thabiti kwa muda mrefu.

Wasomaji wenye ujuzi pengine watafahamu kuwa violesura vya watumiaji vilivyo na madirisha havitegemei tena michoro safi ya 2D. Hii ndio sababu tutaelezea hapa chini kile kilichopo seti ndogo graphics amri 2D, ambayo inapaswa kuzingatiwa kwa kuzingatia kuonekana kwao kwenye maonyesho ya kimwili, kwa fomu zaidi au chini ya tatu-dimensional.

Mapungufu ya 2D: Nafasi Moja yenye Windows Nyingi


Unachohitaji ni urefu na upana.

Ikiwa unatazama maonyesho katika dirisha lolote, unahitaji tu kuratibu mbili: X na Y, yaani, upana na urefu. Ni nini kinakosekana? Taarifa yoyote kuhusu kina.

Kwenye Windows, michoro ya 2D huonyeshwa kupitia GDI (Kiolesura cha Kifaa cha Picha). Kiolesura hiki inasaidia lugha zote za programu ngazi ya juu na ina kazi zote muhimu za michoro zinazohitajika ili kutoa vipengee vya michoro ya 2D. Maboresho ya baadaye kama vile GDI+ na Direct2D sio muhimu sana kwa vile GDI ilikuwa (na inasalia) kuwa zana muhimu zaidi ya utoaji wa picha za 2D katika programu. Kazi muhimu za kuonyesha saizi, mistari, mikunjo, poligoni, mistatili, duaradufu, na kadhalika - zote zilihesabiwa hapo awali kwenye CPU. Shukrani kwa maendeleo ya kadi za video, kizazi cha hivi karibuni cha vifaa hutoa mahesabu ya haraka ya 2D na utoaji. Aina hii ya mapema ya kuongeza kasi ya 2D bado ni muhimu hata leo, lakini kuongeza kasi ya 2D sio lengo kuu tena. Ili kupata zaidi kutoka kwa utendakazi wa michoro, tunahitaji uratibu wa tatu.

Njia ya asili ya utoaji wa 2D, ambayo imefichwa chini ya uwekaji wa madirisha kwenye skrini ya kuonyesha, ni rahisi na ya moja kwa moja. Tunahitaji kujua vigezo viwili: ya kwanza ni eneo kwenye skrini ndani ya kila dirisha ambalo litabadilika (kwa hiyo inahitaji kuchorwa upya). Ya pili ni mpangilio ambao madirisha au vitu vinaingiliana (kitu kitaonekana kikamilifu au kidogo, au kitafichwa na dirisha lingine). Aina hii habari inahitaji kinachojulikana mwelekeo wa 2.5-dimensional au utumiaji wa tabaka za picha, wakati uratibu wa tatu unachukua thamani 0 (iliyofichwa) au 1 (inayoonekana), ambayo ni, hufanya kama aina ya mwelekeo msaidizi. Ni kwa sababu hii kwamba wataalam wengi katika Maeneo ya Windows Kuna mazungumzo mengi kuhusu picha za 2.5D.


Thamani ya Z inaonyesha jinsi madirisha yamewekwa juu au kupangwa.

Mara tu mpangilio au mwonekano wa madirisha utakapoamuliwa, yaliyomo kwenye madirisha yanayoonekana yanaweza kuonyeshwa kwa kutumia sura mbili safi. kazi za picha. Kwa hali yoyote, ni muhimu si tu kuhesabu yaliyomo ya madirisha ya kuonyesha kabisa, lakini pia kudhibiti aina mbalimbali habari na yaliyomo kwenye dirisha. Nini kinatokea, kwa mfano, ikiwa dirisha linahamishwa? Wakati dirisha lingine lina eneo ambalo limefunguliwa kikamilifu au kiasi kutokana na kitendo hiki, kitendakazi cha michoro ya mfumo WM_PAINT lazima kiitwe na taarifa sahihi kuhusu ni eneo gani la mstatili linafaa kuchorwa upya. Utekelezaji ulioboreshwa wa chaguo za kukokotoa utaunda upya au kuchora upya eneo hili. Kwa bahati mbaya, utekelezaji mwingi badala yake huchora upya dirisha lote, licha ya kuweza kupata maagizo sahihi zaidi ikiwa yaliyomo kwenye dirisha yanahitaji kutolewa kwa ujumla au kwa sehemu. Hii, kwa upande wake, inathiri utendaji wa graphics. Kikwazo kingine kinachojulikana ni kutia ukungu au kurudia wakati dirisha linaburutwa haraka kwenye skrini kwenye mfumo ambao hauna uongezaji kasi wa maunzi wa 2D.

Lakini wacha nifanye muhtasari wa kile tulichoshughulikia wakati huu. Skrini ina madirisha tofauti ambayo maudhui ya 2D lazima yatolewe kwenye skrini ili yaonekane. Dirisha hizi zinaweza kuhamishwa kama unavyotaka, na zinaweza kuingiliana na kufunikwa kwa sehemu au kabisa na madirisha mengine. Maudhui yanayoonekana ya madirisha haya yote yanahitaji kudhibitiwa na kuonyeshwa kwa utulivu mdogo. Tunajua pia kwamba CPU yenyewe, hata ikiwa ni sana processor ya haraka, inaweza kuwa na mkazo sana wakati wa kufanya kazi hizo ngumu. Je, kuna suluhu gani zaidi ya kuhamisha mzigo huu kwenye kadi ya video? Hii inahitaji nini? Na kwa nini kila kitu kinasikika rahisi katika nadharia kuliko ilivyo katika mazoezi? Tutaangalia haya yote hapa chini.

2.5D: Hadithi za Kuongeza Kasi ya Maunzi ya 2D

Mara ya kwanza, kadi za video za kipekee zilihitajika tu kwa kazi ya 2D. Sio siri kuwa kadi za kisasa za michoro hutoa utendaji bora linapokuja suala la kazi ngumu za utoaji wa picha. Walakini, kadi za video za zamani tayari ni polepole sana kwa kazi ya kila siku, haswa wakati zinapaswa kuonyesha ngumu athari za picha utoaji uliopo katika mwisho Matoleo ya Windows. Kwa upande mwingine, hii ni kwa sababu ya ugumu wa picha wa miingiliano ya kisasa ya watumiaji wa Windows, na kwa upande mwingine, kwa utendaji mdogo wa picha. Lakini hebu tuelewe vipengele hivi, moja baada ya nyingine.

Katika sehemu hii tutaangalia graphics kuongeza kasi 2D inayohusiana na utoaji wa michoro asili, kutoka GDI hadi kadi ya video yenyewe. Hii ni pamoja na vitu rahisi vya kijiometri kama vile pikseli, mistari, mikunjo, poligoni, mistatili na duaradufu kwa upande mmoja, na shughuli zao za kuongeza, kutoa au kupinga uwekaji utani wa fonti (kama vile TrueType au OpenType) kwa upande mwingine.

Usaidizi wa muda mrefu wa kuongeza kasi ya vifaa vya kinachojulikana kama "primitives 2D" katika kadi za video umetoweka, na haukuwepo kwa bidhaa za kiwango cha watumiaji kwa muda. Leo, kuongeza kasi ya kazi za graphics za 2D inatekelezwa kama analog ya kuongeza kasi ya 3D, lakini inashughulikiwa pekee na kabisa na dereva wa picha za programu, na si kwa vifaa vilivyojengwa kwenye bodi.

Katika sehemu ya pili ya mfululizo wetu, tutatanguliza na kueleza kigezo ambacho tumetengeneza mahususi kwa ajili ya michoro ya 2D ambayo hujaribu kwa kina vipengele muhimu na vya msingi vya michoro ya 2D. Aidha, mtihani huu unaonyesha kwamba kiendesha programu inaweza kuwa na athari mbaya na isiyotabirika kwenye picha za 2D. Pia tutawasilisha vigezo tisa vya kawaida vya mtihani.


Onyesha maandishi.


Mistatili.


Mikunjo.

Kubadilisha vitendaji vya uwasilishaji ni sehemu tu ya kuongeza kasi ya 2D. Uharakishaji mkubwa na mzuri sana hutolewa na kadi za kisasa za video za 3D, ambazo zinaweza kutoa, kudhibiti na kuonyesha maelezo ya graphics ya 2.5D katika vifaa.


Kila kitu kinaonyeshwa mara moja.

Yote hufanyaje kazi? Kama ilivyo kwa picha za 3D, maeneo yanayoonekana na yaliyofichwa ya madirisha yanahesabiwa, ambayo yanahifadhiwa kabisa katika mfumo wa maeneo ya mstatili wa kawaida, na yaliyomo kwenye madirisha yote ya kazi yanaonyeshwa ndani yao kwa wakati halisi. Kwa hiyo, hakuna kitu kinachohitaji kuhesabiwa upya wakati unapohamisha au kubadilisha dirisha; maeneo yale tu ambayo yalikuwa yamefichwa na sasa yanaonekana yanahitaji kuchorwa upya pamoja na kila kitu ambacho kimebadilika tangu wakati huo sasisho la mwisho. Kadi ya video daima inajua ukubwa na eneo la mistatili pepe inayojulikana kama madirisha. Kwa kutumia bafa ya kina (z-bafa), kadi ya video hufuatilia mpangilio na kipaumbele cha madirisha au vitu kwenye skrini (pia hujulikana kama Z-order). Kwa hiyo, kadi ya video inaweza yenyewe kuamua ni vitu gani vinavyoonekana, yaani, ni nini kinachohitajika kuonyeshwa moja kwa moja kwenye skrini yenyewe.

Acha nifanye muhtasari wa maana hii yote.

Kuongeza kasi ya vifaa vya kisasa vya 2D ni pamoja na utekelezaji wote kazi muhimu Utoaji wa 2D na utekelezaji wa teknolojia za kuweka tabaka za 2.5D kwa madirisha na kiolesura cha mtumiaji.

Walakini, itakuwa ngumu sana kutafiti kila toleo la Windows iliyotolewa ili kupata maelezo zaidi. Kwa sababu masuala tuliyotambua yaliathiri tu utendakazi wa majaribio chini ya Windows 7, tuliweka mipaka yetu Mtihani wa Windows XP, Vista na, kwa kawaida kabisa, Windows 7.

Windows XP: " shule ya zamani" Vikomo vya 2D na WM_PAINT

Unaweza kusema unachofikiria kuhusu Windows XP, lakini kuongeza kasi ya vifaa vya GDI hufanya kazi kikamilifu hadi leo na inatosha kwa aina nyingi za programu. Hata hivyo, kile XP haiwezi kufanya ni kuhamisha mbinu ya kufanya kazi na tabaka za 2.5D kwenye kadi za kisasa za video za 3D. Kama tulivyoelezea hapo juu, utoaji wa yaliyomo kwenye dirisha hufanywa na programu zenyewe.



Programu ya kawaida ya 2D ambayo hawana uwezekano wa kununua kadi ya video ya gharama kubwa. Bofya kwenye picha ili kupanua.

Kizuizi hiki hakiwezekani kuwasumbua watumiaji wanaozingatia juhudi zao kwenye dirisha lolote programu ya desktop. Utumizi wa kawaida wa teknolojia hii unaweza kuonekana katika mazingira ya SDI (kiolesura cha kifaa kimoja). Lakini mambo huwa magumu zaidi unapokuwa na madirisha mengi yaliyofunguliwa na kuonekana kwenye eneo-kazi lako. Nani hatajali kuchukua fursa ya teknolojia iliyoboreshwa ya kuweka tabaka inayoauni menyu, inafanya kazi vyema kwenye maunzi ya kisasa, na kurahisisha kufanya kazi na madirisha mengi kwenye vichunguzi vingi? Je! ni nani ambaye hangependa kufanya ukungu wa dirisha na njia za dirisha kuwa jambo la zamani huku akifurahia utendakazi bora wa picha za 2D?



Windows ni kama staha ya kadi: athari ya kunakili madirisha chini ya XP wakati wa kukokota. Bofya kwenye picha ili kupanua.

Ingawa utendaji safi wa 2D kwenye vekta programu za graphics, kama vile Chora ya Corel au programu za CAD ni za juu kabisa, kwa kuwa kazi za GDI zinaungwa mkono ipasavyo ndani yao, tunafikia vikwazo vya WM_PAINT. Wakati XP GUI imejaa uhuishaji, vivuli laini, madirisha ya uwazi na vipengele vingine vya picha, inakuja karibu na mipaka ya picha za 2D.



Wakati mfumo uko chini ya mzigo mzito, kitendakazi cha WM_Paint hutegemea au kusasishwa mara kwa mara. Rejesha matukio lazima kusubiri zamu yao kutekelezwa. Bofya kwenye picha ili kupanua.

Watumiaji wengi wamegundua kuwa ni bora kuonyesha madirisha tu kama fremu wakati wa kuwahamisha, na kuzima menyu za uhuishaji kabisa. Kwa ujumla, kuokoa rasilimali za mchoro hugeuka kuwa njia ya kawaida kabisa wakati wa kufanya kazi kwenye desktop ya XP. Kwa bahati mbaya, wengi ni wazuri mandhari za picha iliishia kwenye takataka baada ya furaha ya awali ya kuzindua mfumo mpya wa uendeshaji, kwani OS ilipoteza uwezo wa kutoa picha zote bila makosa au lags.

Microsoft iligundua haraka kuwa suluhisho lake la picha za 2D, ambalo lilikuwepo katika matoleo yote ya Windows kabla yake, pamoja na XP, lilihitaji kubadilishwa. Na kuongezeka kwa upatikanaji wa vichapuzi vya kasi zaidi vya 3D, pamoja na kushuka kwa bei za GPU za kipekee, kulionyesha wazi kuwa nyakati (na mifumo ya uendeshaji) ilikuwa ikibadilika.


Mfano wa kawaida wa kadi ya video ya 3D mwaka 2005: Radeon X1800.

Katika hatua hii, ni muhimu kutambua kwamba kuongeza kasi ya vifaa katika XP awali haikufanya kazi na ATI 780G jumuishi graphics katika maazimio ya asili wakati wote. Kwa hivyo, madirisha yametolewa polepole, na kuathiri hata utendakazi wa msingi wa kivinjari. Masasisho ya viendeshi yaliyofuata yalisaidia kutatua masuala haya. Lakini hata leo, msingi wa graphics wa 780G hauwezi kufanya kazi kikamilifu, ambayo ni tofauti kabisa na 740G. Lakini leo, wakati XP tayari ni jambo la zamani, hukumu hii inaweza pia kushiriki hatima kama hiyo ...

Kisha ikaingia sokoni Windows Vista, ambayo labda ni OS yenye utata zaidi ya Microsoft (pamoja na Windows ME). Kwa vyovyote vile, bila kujali upendo wako au chuki yako kwa Vista, kampuni haikuweza kuahirisha baadhi ya maboresho ya kiufundi tena.

Muhtasari mfupi wa XP ni huu.

  • Uongezaji kasi wa maunzi ya 2D ulifanya kazi bila dosari kwa amri za GDI.
  • Hakukuwa na kuongeza kasi ya maunzi kwa tabaka za 2.5D, na kusababisha kiolesura cha polepole cha mtumiaji.
  • Kuchora upya au kubadilisha yaliyomo kwenye dirisha mara kwa mara kulichukua muda na pia kuathiri utendaji.

Windows Vista: maendeleo na kuachwa kwa zamani

Tuliposakinisha Windows Vista kwa mara ya kwanza, hatukuweza kujizuia. Kuvutia, changamoto na kuboreshwa, Vista aliahidi mengi.



Mwangaza mwingi na vivuli, lakini hakuna kuongeza kasi ya maunzi ya 2D. Bofya kwenye picha ili kupanua.

Lakini kile kilichoonekana kuwa cha mapinduzi mwanzoni kilitoa njia ya kukatishwa tamaa wakati wa kuzindua programu hii au ile, na wakati mwingine iliongoza tu hofu. Hebu tuangalie zaidi vipengele muhimu kwa undani.

Utekelezaji wa vifaa vya tabaka za 2.5D

Teknolojia hii ilitekelezwa kwanza katika Windows Vista. Ilichukua mengi kuiondoa kwa muda mrefu, lakini mwaka 2006 teknolojia hatimaye ilionekana. Walakini, kizuizi kimoja kidogo kilibaki: kilifanya kazi tu ikiwa kiolesura cha Aero kiliamilishwa. Zaidi ya hayo, ili kutumia safu za 2.5D, ulihitaji kadi ya michoro yenye uwezo wa 3D, hata kama hukupanga kuendesha programu au michezo ya 3D. Ikiwa ulikuwa unatumia mandhari ya Vista Basic, ulilazimika kuvumilia athari zile zile za kutia ukungu na mzuka wakati wa kusonga madirisha ambayo yalifahamika kwa watumiaji wa XP, kwani usaidizi wa tabaka za 2.5D ulizimwa kiotomatiki - hata kama mfumo ulikuwa na kadi ya video ya 3D. imewekwa. Ni aibu.

Hatua ya kusaidia tabaka za 2.5D pia ililazimisha Microsoft kushughulikia masuala kadhaa. Vista ilionekana kuwa mfumo wa uendeshaji polepole, lakini kwa sehemu kubwa ni thabiti. Lakini nini kilitokea? Tayari tumetaja kuwa GDI ilikuwa kiolesura muhimu kwa programu ya graphics. Baada ya kuanzishwa kwa (kwa bahati mbaya) ugani wa polepole sana wa C++-msingi wa GDI+, ambao haujawahi kufanya mafanikio ya kiteknolojia katika suala la utendaji wake, hatukuweza tena kukataa kuwepo kwa aina ya "machafuko ya interface". Kwa kweli, ilikuwa haiwezekani sana kwamba GDI, GDI+, DirectDraw na Direct3D zinaweza kuharakishwa kwa vifaa kwa wakati mmoja.

Mbali na kielelezo kipya cha kiendeshi cha kifaa, Windows ilianzisha kielelezo cha DWW kwa ajili ya kudhibiti vifaa vya kuonyesha. Wazo la jumla halikuwa rahisi sana, aliongeza kiwango cha programu(na ongezeko linalolingana la ugumu) kati ya windows na kutoa amri kwa upande mmoja, na kati ya viendeshi na vifaa kwa upande mwingine. Mwingiliano wa moja kwa moja ulisimamishwa kwa sababu ya kuibuka kwa DW. Katika jaribio la kupata udhibiti wa kila kitu, kielelezo cha Dwatu kilihakikisha uratibu wa violesura vyote vya picha. Mpito huu uliacha kando mbaya sana kipengele cha picha, ambayo tayari tumetaja - yaani kuongeza kasi ya vifaa vya kazi za maonyesho ya GDI. Ni vigumu kuelewa, lakini ndivyo ilivyotokea.

Kumbukumbu nyingi za ziada ambazo Vista hutumia kawaida huhusishwa na teknolojia ya SuperFetch. Kwa bahati mbaya, hii inaelezea kwa sehemu tu hali hiyo katika hali halisi. Ukosefu wa kuongeza kasi ya maunzi ya 2D inamaanisha kuwa mzigo mzima wa simu za GDI kuonyesha yaliyomo kwenye dirisha unaangukia kwenye CPU. Haya yote husababisha buffer kubwa ndani ya DW. Maonyesho kamili ya dirisha lazima yahamishwe kwa kadi ya video. Lakini hii haraka iliunda kizuizi kikubwa, kwani dirisha moja tu kwa wakati linaweza kutuma amri za GDI kwa DW. Kazi za Asynchronous hazijatatuliwa, na hivyo kusababisha mlolongo mrefu wa maombi ya huduma yanayosubiri. Haya yote hayahitaji tu muda muhimu wa CPU kutekeleza, lakini pia hutumia kiasi kikubwa cha kumbukumbu, kwani madirisha yote ya kazi yanapatikana ndani ya bafa ya DW. Dirisha za kibinafsi zinaweza kuchukua MB 100, kwa hivyo inaeleweka kuwa matumizi ya kumbukumbu yataongezeka. Katika hali mbaya zaidi, Vista inaweza kufungia tu, kama vile programu hasidi inapofungua dirisha moja baada ya lingine kwa kitanzi kisicho na mwisho. Kwa kweli, kitanzi kama hicho hakiwezi kuendelea kwa muda usiojulikana, kwa hivyo itabidi ufanye kulazimishwa kuzima kompyuta ili kurejesha udhibiti wa mfumo.



Kuongeza utumiaji wa kumbukumbu yako hakuongezei starehe yako mara mbili (chanzo: Microsoft). Bofya kwenye picha ili kupanua.

Wacha tufanye muhtasari wa Vista.

  • Vista hutumia kuongeza kasi ya maunzi kwa mara ya kwanza kwa muundo wa safu ya 2.5D.
  • Chora upya polepole ukitumia teknolojia inayotumika ya Aero Windows madirisha inabaki katika siku za nyuma.
  • Microsoft inaondokana na kuongeza kasi ya maunzi ya vipengele vya utoaji vya 2D vya GDI.
  • DW haiwezi kufanya kazi na madirisha katika hali ya asynchronous, ambayo inathiri vibaya utendaji wa graphics.
  • Foleni ya amri ya GDI ndani ya DW inaweza kutumia kiasi kikubwa cha kumbukumbu.

Windows 7: Kurudi kwa Mwana Mpotevu


Nembo ya Windows 7, ambayo imevutia watumiaji wengi.

Watumiaji wengi waliona Vista kama OS isiyofanikiwa - ilionekana kama monster ambayo kwa kweli "iligonga" kumbukumbu. Kwa hali yoyote, mfumo huu wa uendeshaji ulihitaji kutazamwa tena, kwa kuzingatia Kutolewa kwa Windows 7. Pamoja na mabadiliko ya kimsingi katika mfumo wenyewe, Michoro ya Windows 7 ilitoa kile Vista alichochukua - kuongeza kasi ya picha za 2D bila kikomo katika maeneo yote, ikiwa ni pamoja na utendaji wa utoaji wa GDI.

Shukrani kwa mpito kwa WDDM 1.1, Windows 7 ilizuia utumiaji wa kumbukumbu mbili (mara ya kwanza kwa buffers za kibinafsi, mara ya pili kwa kila moja. dirisha amilifu katika DWM). Hii ilifanya iwezekane kufanya mfumo kuwa rahisi, na mahitaji ya kawaida zaidi ya rasilimali. Katika Windows Vista, utumiaji wa kumbukumbu mara mbili kwa windows unaweza kuelezea kwa nini kumbukumbu ya mfumo ilikuwa ikitumiwa bila huruma.


Katika kesi ya Vista, OS "hula" kumbukumbu yote inaweza kupata ... (chanzo: Microsoft).



...lakini kwa upande wa Windows 7 mahitaji ni ya kawaida zaidi (chanzo: Microsoft).

Ili kukamilisha GDI chini ya Windows 7, Direct2D pia ilitangazwa. Kiolesura hiki hutumia tafsiri ya amri sawa na Direct3D ili kutekeleza uongezaji kasi wa maunzi na kusaidia seti changamano zaidi ya vitendakazi vya michoro. Direct2D inatoa faida ya kasi ya GDI pamoja na uwezo wa hali ya juu wa GDI+, ambao haukufanya kazi kwa njia hiyo. Hata hivyo, bado hatujaona kama Direct2D itaweza kupata usaidizi kutoka kwa wasanidi programu.

Hata leo, idadi kubwa ya programu bado hutumia API ya GDI kutoa na kuendesha vipengele vya picha za 2D. Tulipenda kwamba Windows 7 ilirejesha kasi ya vifaa kwa amri hizi, ambayo Vista iliacha.



Asynchronous GDI chini ya Windows 7 (chanzo: Microsoft). Bofya kwenye picha ili kupanua.


Karibu kuongeza kamili kazi ya wakati mmoja na windows nyingi (chanzo: Microsoft)

Wacha tufanye muhtasari wa Windows 7.

  • Uelekezaji upya wa moja kwa moja wa amri za utoaji wa GDI kwa graphics dereva kupitia DWW.
  • Usindikaji wa Asynchronous na samtidiga ya amri za GDI kwa madirisha mengi.
  • Mikakati ya kuzuia utumiaji mwingi wa kumbukumbu kwa maombi ya foleni ya picha.
  • Viendeshi vipya na vilivyoboreshwa vya WDDM 1.1.

Mahitaji ya Watengenezaji wa GPU

Urejeshaji wa uongezaji kasi wa maunzi wa picha za 2D umeleta watengenezaji wa GPU kwenye mchezo. Viendeshi vya Windows 7 lazima viundwe mahsusi ili kutoa kuongeza kasi ya vifaa kwa amri za kuongeza kasi za 2D GDI, na pia kusaidia uendeshaji wa 2.5D wa madirisha ya mtu binafsi.

Kwa kadi zingine za video hii iligeuka kuwa ngumu sana. Kwa mfano, kizazi cha sasa cha kadi za michoro za ATI kinaonekana kuteseka kutokana na matatizo yanayohusiana na madereva katika maeneo haya yote ya kuongeza kasi ya picha za 2D. Hapo chini utasoma kuhusu jinsi tulivyogundua matatizo haya na ni hitimisho gani tulifikia.

Windows 7: safu ya Radeon HD 5000 ya kadi za picha hazina kasi ya 2D

AMD imeweka juhudi nyingi katika kutengeneza kadi za michoro za DirectX 11 kizazi cha hivi karibuni; Ni kawaida kabisa kwamba ilichukua muda kukamilisha upande wa programu (sio siri kwamba kutolewa kwa madereva baadae kunaboresha utendaji na uthabiti kwa wengi. njia tofauti) Hatuwezi kupuuza nVidia katika suala hili, kwani tulipata shida sawa na Madereva ya GeForce makampuni wakati wa kutumia graphics za 2D kwenye wasindikaji wa simu za kampuni. Kwa makala yetu, tulitumia toleo la hivi karibuni la dereva wa Catalyst wakati wa kupima - 9.12.



Catalyst na Windows 7 wanapitia bahari zenye machafuko. Bofya kwenye picha ili kupanua.

Suala la 1: ATIKMDAG iliacha kujibu, kisha ikapata nafuu

Ikiwa umekumbana na ujumbe wa hitilafu kama huu, pengine ni kwa sababu ulirudi kwenye hali ya 2D baada ya kuondoka kwenye programu ya 3D. Hatukuwa na chaguo ila kudhani kwamba hii ilikuwa matokeo ya makosa fulani katika dereva.

Acha nikukumbushe: wakati interface ya Aero imezimwa, imezimwa, kwa hivyo kuongeza kasi ya 2D haifanyiki tena (ambayo ni, tunapata kitu sawa chini ya Windows 7 kama ilivyo kwa Vista). Kwa kuwa tumekumbana na hitilafu hii mara kwa mara kwenye mifumo iliyo na kadi za video zilizowekwa Radeon HD 5750 na Radeon HD 5870 (katika usanidi mbili tofauti za majaribio), ilitubidi kuzima kwa makusudi kiolesura cha Aero katika visa vyote viwili. Baada ya ujanja kama huo, makosa hayakuonekana tena. Inashangaza, tulipata hali sawa (na suluhisho lake) kwenye kompyuta za mkononi zilizo na kadi za video za GeForce. Kwa kweli, ni wakati tu ndio utasema ikiwa hii ni bahati mbaya tu au inaonyesha mgongano kati ya DWM, viendeshaji, na kuongeza kasi ya vifaa vya picha za 2D.

Mshukiwa wetu mkuu anayefuata anageuka kuwa masafa ya chini kiasi. Kadi za video za AMD kwa default katika hali ya 2D, pamoja na matatizo fulani katika BIOS ya awali ya kadi za video. Hata hivyo, ili kuthibitisha au kukataa ushawishi wao, tutahitaji uchunguzi wa muda mrefu - au baada ya kutolewa kwa toleo jipya la dereva, tabia inapaswa kubadilika.

Tulikumbana na suala hili kwa sababu mara moja tulipata shida kupata Radeon HD 5870 ili kuauni picha za 2D. Wengi wanaweza, bila shaka, kuongeza katika suala hili kwamba ramani za 3D zimeundwa kwa ajili ya michezo, sio programu za 2D. Lakini ukisoma sehemu zilizopita za kifungu hicho, lazima ukubali kuwa shida hii ilikua mbaya tu na kutolewa kwa Windows 7 (na sio Windows Vista). Ili kuwa mahususi zaidi, kadi nyingi za picha za 3D zina uwezo wa kushughulikia picha za 2D siku hizi bila matatizo yoyote. Lakini kulinganisha moja kwa moja Usaidizi wa kuongeza kasi wa 2D kati ya GeForce GTX 285 na Radeon HD 5870 ilisababisha ukweli kwamba kadi ya video ya AMD ilikuwa ya nje. Kwa kweli, ikilinganishwa na suluhisho la graphics jumuishi nVidia GeForce 7050 (nForce 610i), ambayo haina kumbukumbu yake mwenyewe, Radeons mpya tu kuja katika nafasi ya pili.

Mambo huwa ya kuvutia zaidi wakati wa kuzimwa kwa DW. Hata ikiwa ndani kwa kesi hii Uongezaji kasi wa 2D hauwezekani tena; kadi za video za AMD hutoa nyongeza ya utendakazi. Ikilinganishwa na Nvidia GeForce, kuendesha kadi ya video ya AMD iliyolemazwa na DW huipa utendakazi zaidi. Hata CorelDraw na AutoCAD huendesha haraka sana kwenye Radeon HD 5870 na DW imezimwa. Hii inaweka nVidia katika mwanga mzuri na inapingana na mantiki na data ya awali ya majaribio ya GPU.


Uongezaji kasi wa maunzi ya 2D na kiolesura cha Aero na kuwezeshwa kunatoa faida kwa kadi za video za GeForce.


Bila Aero na kuongeza kasi ya maunzi, kadi za picha za AMD 2D ni hadi mara tano kwa kasi zaidi. Inashtua!

Ni kwa sababu hii kwamba tulirudia vipimo vya PassMark mara kadhaa kwenye kadi hizi za video.


Kiolesura cha Aero na DW kimezimwa - kadi za video za AMD ni haraka sana. Bofya kwenye picha ili kupanua.

Kwa bahati mbaya, hakuna majaribio haya yaliyoweza kupata sababu kamili ya matatizo tuliyokumbana nayo au kutoa mwanga wowote juu ya matokeo ya ajabu ya utendaji. Ndiyo sababu tuliamua kuunda mtihani wetu wenyewe, ambao ulituwezesha kuelewa vizuri sababu za matatizo yaliyotambuliwa.

Kiwango cha Tom2D: Radeon HD 5870 dhidi ya GeForce GTX 285 chini ya Windows 7

Kwa kigezo chetu kipya, tunatumai kuchimba kwa undani zaidi chanzo cha kushuka kwa utendaji wa 2D tuliogundua hivi majuzi tukiwa na kadi za michoro za Radeon HD 5870, 5850 na 5750. Wacha tuanze na ukweli kwamba kuongeza kasi ya 2D ya kazi za GDI chini ya Windows 7 wazi haikufanya kazi kwa mifano yoyote kwenye mstari wa Radeon HD 5000, ambayo ni kwamba, tunakabiliwa na zaidi ya kushuka kwa kasi tu. Tatizo ni nini: katika dereva au katika vifaa? Kwa upande wa nVidia, sio kila kitu kiligeuka vizuri pia: sio kazi zote zinazowezekana ziliharakishwa kwenye kadi za video za kampuni hii.

Usanidi wa jaribio
CPU Intel Core 2 Quad Q6600, 2.4 GHz @ 3.2 GHz, G0 stepping, 8 MB L2 cache, LGA 775
Kumbukumbu GB 4 DDR2-1066 CL5
Ubao wa mama A-Data Vitesta Uliokithiri
mfumo wa uendeshaji Windows 7 Ultimate x64
Kadi za video Radeon HD 5870, GeForce GTX 285
Dereva wa michoro Kichocheo 9.12, GeForce 195.62
Kadi za video Kasi ya saa ikiwa Aero/DWM imewezeshwa Kasi ya saa bila kuongeza kasi
ATI Radeon HD 5870 850 MHz 157 MHz
Nvidia GeForce GTX 285 648 MHz 300 MHz

Ili kuweka msingi thabiti zaidi wa ulinganishaji wa kuongeza kasi ya 2D kuwasha/kuzima, pia tuliendesha majaribio yetu yote kwenye chipset ya zamani ya nForce 610i yenye michoro jumuishi ya GeForce 7050 (bila kumbukumbu maalum). Tulisakinisha kichakataji sawa na 4GB ya kumbukumbu kisha tukaendesha mfumo wa uendeshaji wa Windows 7. Pia tulijaribu utendakazi wa mtangulizi wa Radeon HD5870, ATI Radeon HD 4870, kwenye jukwaa letu la majaribio.


KATIKA mtihani huu Kadi zote za video za majaribio ziko katika safu finyu ya utendakazi.

Itakuwa ya kufurahisha kusikia maoni kutoka kwa nVidia juu ya kwanini iliyojumuishwa GPU huonyesha picha za 2D kwa kasi zaidi kuliko GeForce GTX 285, hata kama tofauti ni ndogo sana.

Kadi ya video ya Radeon HD 4870, ambayo tulichukua kwa kulinganisha, iko ya tatu kutoka chini, ingawa haionyeshi mapungufu yoyote.


Kwa kushangaza, kadi ya michoro ya Radeon HD 5870 haina uwezo wa kutoa laini za kasi za vifaa na utendaji unaokubalika.

Ingawa kadi za majaribio za nVidia na AMD zilitoa matokeo yanayokubalika na karibu kiasi na kuongeza kasi ya 2D kuzimwa na CPU ikifanya kazi yote, pengo kubwa hufunguka kati ya kadi hizo mbili mara tu Aero inapowezeshwa. GeForce GTX 285 ina kasi mara 11 kuliko ATI Radeon HD 5870. Mbaya zaidi ni GPU iliyounganishwa na ubao wa mama kwa $50 miaka miwili iliyopita ni agizo la ukubwa bora kuliko kadi ya video ya $400.

Data tuliyopokea kwa Radeon HD 4870 inaonyesha tofauti ndogo kati ya hali ya kazi ya Aero na hali rahisi (bila kuongeza kasi ya picha) chini ya Windows 7, ambayo inaonyesha kuwa hakuna kasi ya kuchora mistari chini ya Windows 7. Kadi hii ya video ilionekana wazi. polepole zaidi kuliko GeForce GTX 285 na ufumbuzi jumuishi wa graphics, lakini bado inashinda Radeon HD 5870 na kuongeza kasi kugeuka na kuzima.


Jaribio hili linatoa takriban picha sawa na mtihani wa kuchora mstari. Radeon HD 5870 inakuja chini, na kuthibitisha shaka yetu kwamba haiwezi kushughulikia programu za 2D ipasavyo. Hii haiwezi kuitwa kuvumilika hata kwa soko la watumiaji.

Ikiwa kiolesura cha Aero kimewashwa na DW ikiwa hai, kadi ya michoro ya GeForce GTX 285 hutoa mara tisa zaidi. utendaji wa juu. Vivyo hivyo, hata msingi wa zamani wa chipset uliojumuishwa hupita kwa kiasi kikubwa kadi mpya ya video AMD. Kwa njia, utendaji wa Radeon HD 4870 uligeuka kuwa wa kuvutia sana: kadi ya video ina uwezo wa kuharakisha pato la curves katika vifaa, hata kama utendaji umepunguzwa ikilinganishwa na ufumbuzi wote wa nVidia.


Kwa kuwa Radeon HD 5870 yetu ilikuwa na matatizo ya wazi ya uwasilishaji (hasa kwa mipigo mingi), tunaona kuwa nusu ya matokeo yetu ya mtihani wa mstatili yanalingana na matokeo ya awali, ambayo haishangazi.

Kwa hali yoyote, inafurahisha sana kuona jinsi Radeon HD 5870 inavyoongeza utendaji mara mbili na kuongeza kasi ya vifaa kuwezeshwa (ikilinganishwa na kuongeza kasi ya vifaa imezimwa), hata kama utendaji ni mbaya zaidi kuliko GeForce 7050 GPU.

Jaribio la mstatili ndilo pekee ambapo tulipata athari inayoonekana ya kuwezesha uongezaji kasi wa maunzi Kadi za video za ATI, na ambapo kuongeza kasi ya vifaa kunastahili jina lake. Radeon HD 4870 ilinufaika kutokana na athari hii zaidi ya 5870, hata ikiwa ilibaki nyuma ya kadi zingine kwenye jaribio hili ambalo halijakuzwa.


Katika kesi hii, ushindi hutolewa kwa msingi wa zamani wa picha zilizojumuishwa. Nvidia nForce 610i ina ubora zaidi kuliko kadi zingine zote za video za kipekee kwa ukingo mkubwa wa kushangaza, na haijalishi ikiwa tunazitumia kwa kuongeza kasi ya 2D au kutofanya kazi. Inafurahisha kutambua kwamba kwa kadi zote za video za 3D za juu, kuongeza kasi ya pato la poligoni haifanyi kazi hata kidogo.

Kiini cha michoro kilichounganishwa na Aero imewashwa ni kasi mara 10 kuliko Radeon HD 5870. Bila kuongeza kasi, Radeon HD 4870 ni polepole kidogo kuliko 5870. Lakini ikiwa Aero imewashwa, 4870 hufanya kazi zaidi ya mara mbili ya 5870.


Matokeo ni sawa na yale tuliyoyaona hapo juu. Kadi zote mbili za picha za hali ya juu hazitoi kuongeza kasi ya 2D, tofauti na chipset iliyounganishwa. Kadi ya video ya Radeon HD 5870 inakuwa ya nje, na Radeon HD 4870 ya zamani iko mahali fulani katikati.

Nyongeza

Tuliona matokeo sawa tulipotumia Radeon HD 5750, ambayo ilisuluhisha baadhi ya masuala yanayoathiri 5870. Pia tulilinganisha viendeshaji vya Catalyst 9.11 na 9.12 na tukapata mafanikio yanayoonekana wakati wa kuhama kutoka toleo la zamani hadi toleo jipya, bila kujali kama kuongeza kasi ya maunzi kumewezeshwa au Hapana. Yetu kwa kulinganisha ifuatayo Kutakuwa na kipimo cha utendaji wa Windows 7 na Vista, lakini tutaiacha hadi sehemu ya pili ya makala. Inatosha kusema kwamba hata hapa tulipata mshangao mwingi wakati wa majaribio yetu.

Hitimisho

Kulingana na uchambuzi wetu hali ya sasa, basi kadi mpya za video za mstari wa ATI Radeon HD 5000 zina matatizo na graphics za 2D. Pia tunajali sana kuwa chipset ya zamani iliyojumuishwa ilikuwa haraka katika maeneo mengine (dhidi ya kadi za michoro za AMD na nVidia discrete). Kwa kuongeza, hatukuweza kupata suluhisho lolote linalokubalika la kufanya kazi na programu zinazotumia picha za vekta. Na hii inatumika sio tu kwa majaribio yetu; hii inatumika kwa mtu yeyote anayefanya kazi mara kwa mara na michoro ya 2D. Kuwa waaminifu, ni vigumu kufikiria jinsi kadi ya video ya zamani ya Radeon HD 4870 inaweza kuja karibu au hata kupiga kadi mpya za video katika majaribio mengi.

Ingawa uongezaji kasi wa 2D (pamoja na tabaka za 2.5D) hufanya kazi vizuri, AMD bado haijatekeleza baadhi. kazi za msingi GDI katika mstari wa kadi za video za Radeon HD 5000. Matoleo kadhaa ya madereva tayari yamepita tangu kutolewa kwa Windows 7, hivyo hali itakuwa vigumu kuelewa kwa wale ambao walitumia dola mia kadhaa kwenye kadi mpya ya video, lakini kwa wakati huo huo ilipokea "breki" katika programu za 2D. Tunapaswa pia kukukumbusha kwamba yote haya yanatumika sio tu kwa jaribio letu la syntetisk la 2D, lakini pia kwa matumizi anuwai ya ulimwengu halisi tunayotumia katika majaribio yetu, pamoja na AutoCAD, Corel Draw, Adobe Illustrator, Photoshop CS3/CS4, Mchapishaji wa Microsoft, PowerPoint na kadhalika. Hii inahitaji maboresho ya haraka na makubwa kwa madereva kwa upande wa AMD, hasa tangu matokeo yetu chini ya Vista yanaonyesha utendaji wa juu zaidi kuliko chini ya Windows 7 (tutazungumzia kuhusu hili katika sehemu ya pili ya makala).

Wakati wa maandalizi ya makala hii na majaribio, tulimwita Antal Tungler, meneja wa kiufundi wa PR wa AMD, mara kadhaa ili kujadili utendaji wa 2D wa mstari wa Radeon HD 5000 chini ya Windows 7. Tulipojihakikishia kuwa matatizo haya ya utendaji yalihusiana hasa na Pamoja na matatizo ya GDI ambayo karibu programu yoyote inayofanya kazi na madirisha kwenye eneo-kazi hupata uzoefu, hali hii haikuonekana tena kuvumilika kwetu, hasa kwa watumiaji wa nyumbani na ofisini. Zaidi ya hayo, GPU iliyojumuishwa ya mshindani ilishughulikia picha za 2D kwa ufanisi zaidi.

Tunaweza tu kudhani (na kutumaini) kwamba sababu na suluhisho linalowezekana liko katika viendeshaji vya Kichocheo. Ikiwa ndivyo, AMD itaweza kurekebisha matatizo kwa urahisi kabisa. Kuzingatia kutolewa hivi karibuni kwa kadi za video za bei nafuu, tunaweza kudhani kuwa matatizo yanaathiri mstari mzima. Lakini kinachotutia wasiwasi zaidi, kwa kuzingatia matokeo ya mtihani, ni kwamba mistatili hupata kasi inayoonekana, wakati picha zingine zote za asili (haswa mistari na curves) hazifanyi. Tunaona kushuka kwa kiwango kikubwa kwa utendakazi wakati uongezaji kasi wa maunzi wa GPU umewashwa - jambo ambalo linapendekeza kuwa hakuna kitu kizuri kinachofanyika hapa. Tofauti Kadi ya video ya nVidia pia huchelewa wakati wa kutoa duaradufu na poligoni, na tunavutiwa sana kujua kwa nini hii inatokea.

Kwa sasa, tunapendekeza kwamba watumiaji wa safu ya kadi za video za Radeon HD 5000 wazime kiolesura cha Aero wakati wa kufanya kazi na programu zinazotumia sana picha za 2D. Katika kesi hii, ongezeko la tija linaweza kuwa hadi 300%, ambayo hulipa fidia kwa urahisi kwa ukosefu wa muafaka mzuri na wa uwazi wa dirisha. Zaidi ya hayo, unaweza kulemaza Aero kwa programu za kuanza tu, kwa hivyo huna haja ya kuacha kiolesura cha Aero kabisa.

Bonyeza kulia kwenye ikoni ya programu, kisha uchague "Mali" kutoka kwenye menyu inayoonekana. Chagua kichupo cha "Upatanifu" kwenye dirisha la mali, na kisha angalia kisanduku cha "Zimaza utungaji wa eneo-kazi".


Kuchagua "Zima Muundo wa Kompyuta ya Mezani" huzima usaidizi wa DW.

Katika sehemu ya pili, tutajaribu tena uwezo wa kadi za video za AMD na kuzilinganisha na washindani wa moja kwa moja na wa moja kwa moja kutoka nVidia. Kwa sasa, tutakuwa tukizungumza na AMD na Nvidia ili kujadili matokeo ya jaribio letu la awali. Tunavutiwa sana kujua wanachosema.

Baada ya mjadala wa kina wa mada hii na wenzetu, tuliamua kwamba tutafanya majaribio ya kina zaidi kwenye vifaa mbalimbali chini ya XP, Vista na Windows 7. Lengo letu litakuwa kupata uelewa wa kina zaidi. uwezo wa picha 2D ya mifumo hii yote ya uendeshaji. Tunapanga kuangalia kadi za zamani za michoro za S3, Voodoo, aina nyingi za zamani za GeForce, na safu kamili ya kadi za michoro za AMD/ATI. Kwa ujumla, hatutaki kuacha chochote kwa kujumuisha alama za michoro zilizojumuishwa kutoka kwa uteuzi wetu mkubwa wa ubao mama katika majaribio yetu.

Tayari tunajua kwamba wakati wa mchakato huu tutapata mambo ya kuvutia, pamoja na baadhi ya tamaa. Katika sehemu ya pili ya kifungu pia tutatoa maelezo sahihi zaidi ya vipimo, viwango vya matokeo ya mtihani, na pia kutoa fursa ya kupakua Benchmark ya Tom2D mwenyewe. Tuna uhakika utapata hii ya kuvutia sana, hasa tunapogundua ni kadi gani za michoro za kiwango cha watumiaji zitatoa utendakazi bora wa picha za 2D kwa matoleo mahususi ya Windows. Mshangao unakungoja, kwa hivyo endelea kutazama!

Sasisha. Kwa kuangalia matokeo yetu ya awali ya utendaji wa 2D, AMD ilifanya mawazo yafuatayo.

  • Tom's Hardware ilipima eneo (laini za 2D, n.k.) ambalo lilikuwa bado halijaimarishwa.
  • Kabla ya jaribio hili jipya, hatukuwa tumeona programu zingine zikikwamishwa kwa njia ile ile, kwa hivyo hatukuzingatia hapo awali.
  • Uchambuzi wetu wa awali unaonyesha kuwa hakuna mapungufu ya vifaa katika eneo hili.
  • Tutaomba timu yetu ya ukuzaji madereva kuboresha eneo hili pia, na tutajaribu kutambulisha dereva mpya ili kushughulikia suala hilo haraka iwezekanavyo.
  • Tayari tumepata njia rahisi ya kuongeza utendaji wetu kwa umakini, na tutajaribu kutekeleza katika matoleo yajayo ya kiendesha Catalyst (tunahitaji kuandika msimbo, kuhalalisha, kuhakikisha kuwa haivunji kitu kingine chochote; na kadhalika.).

Habari za asubuhi, Habr!

Nimepata habari za kufurahisha kwenye xda-developers.com, ambayo ni urejeshaji wa chapisho la hivi punde zaidi "Kuharibu hadithi kuhusu uharakishaji kamili wa maunzi katika ICS" kutoka kwa wasifu kwenye Google+ wa msanidi programu wa Google Diana Hackborn. Nilichukua uhuru wa kutafsiri tena kwa ufupi kulingana na machapisho haya mawili, ambayo ninawasilisha hapa chini chini ya muhtasari. Toleo la kwanza la uchapishaji huu tayari lilichapishwa na mimi usiku huu kwenye blogi R2-D2: Android na faida, lakini mada ilionekana kustahili kuangaziwa juu ya Habrahabr (Natumai hakuna haja ya kuibua tena mjadala wa ukweli kwamba sehemu ya "Viungo" baada ya sasisho la vuli la Habra ni kivitendo na kwa kweli alikufa).

Msanidi programu wa Google Diana Hackborn alishiriki maelezo kwenye ukurasa wake wa Google+ kuhusu kuongeza kasi ya maunzi ya kiolesura katika Sandwich ya Ice Cream ya Android 4.0. Msisimko uliotokea karibu na utendakazi huu haukutokea bila sababu - lawama nyingi sana zilitolewa kuhusu ulaini wa kutoa vipengele vya 2D katika Android ikilinganishwa na mifumo mingine ya uendeshaji ya simu.

Bila shaka, kuongeza kasi ya vifaa katika Android ni jambo chanya, lakini kuna maoni mengi potofu kuhusu kipengele hiki ni nini. Kwanza, Android imesaidia kuongeza kasi ya vifaa kwa miaka mingi kwa kazi ya kutoa windows nyingi (tunazungumza juu ya muundo wa windows - mwambaa wa kazi, arifa, upau wa menyu, kuonyesha na kuficha vipengee vya kiolesura). Hii inamaanisha kuwa uhuishaji wote wa vipengee vya kiolesura katika Android daima umekuwa ukitumia kuongeza kasi ya maunzi.

Tofauti na uonyeshaji wa muundo wa dirisha, uonyeshaji wa picha ndani ya dirisha kwa kawaida umefanywa kwa kutumia kichakataji katika Android 2.X na chini. Hata hivyo, katika Android 3.0 Honeycomb, vitendaji hivi vinaweza kuhamishiwa kwenye kichapuzi cha michoro, lakini ikiwa tu hii imebainishwa wazi katika faili ya maelezo ya programu kwa chaguo la android:hardwareAccelerated=”true”. Kitu pekee Tofauti ya Android 4.0 ICS ni kwamba wakati wa kuunda kwa kutumia kiwango cha hivi karibuni cha API 14 (na zote zijazo), chaguo hili la programu huwezeshwa "kwa chaguo-msingi".
Inaweza kuonekana kuwa sasa tuna uwezo wa "kulazimisha" programu zote katika Android 4.0 ICS kufanya kazi na kuongeza kasi ya maunzi kuwezeshwa, bila kujali maelezo yake, sivyo nzuri? Kwa kweli hii si kweli. Katika kesi, kwa mfano, kwa kichapuzi cha video cha PowerVR, viendeshi vinavyotumika katika Nexus S na hata Galaxy Nexus hula 8MB kila moja. kumbukumbu ya ufikiaji bila mpangilio kwa kila mchakato unaotumia kuongeza kasi ya maunzi. Haionekani kama nyingi? Hii haikuwa hivyo, kwa sababu matumizi ya kazi ya RAM kwa taratibu nyingi mara moja huongeza kwa kiasi kikubwa matumizi ya kumbukumbu kwa ujumla, ambayo huathiri mara moja kasi ya multitasking - hata kwa uhakika wa kupunguza kwa kiasi kikubwa. Kwa hivyo, timu ya kubuni ya Google sasa inatumia juhudi kubwa kusawazisha ni sehemu gani za kiolesura cha mtumiaji zinahitaji kuongeza kasi ya maunzi kwenye Nexus S.

Matokeo ya mwisho ni nini? Ikilinganishwa na Android 2.X, Sandwichi ya Ice Cream ina uwezekano zaidi, ikiwa ni pamoja na kutokana na kuongezeka kwa matumizi ya kuongeza kasi ya vifaa. Walakini, zaidi ya kuwa na chaguo la kuongeza kasi kuwezeshwa "kwa chaguo-msingi", matumizi ya kuongeza kasi ya vifaa katika ICS sio "kamili" zaidi kuliko ilivyokuwa hapo awali. Na, kati ya mambo mengine, usisahau kwamba kuongeza kasi ya vifaa sio uchawi au muujiza, kama wengi wanavyoamini, lakini uwepo wake hakika ni pamoja, sio minus.

Uwepo wa vifaa vyenye nguvu haimaanishi kila wakati kazi ya haraka vifaa. Katika baadhi ya matukio, uboreshaji huacha kuhitajika na mtumiaji anaweza kujaribu kuharakisha uendeshaji wa simu zao mahiri au kompyuta kibao peke yao. Kuna njia kadhaa ambazo zinaweza kusaidia kukamilisha kazi hii. Njia hizi zinajadiliwa katika makala yetu.

Ondoa maombi yote yasiyo ya lazima

Kuna programu ambazo zinaweza kutumia rasilimali za ziada. Ikiwa maombi haya hayatumiki, ni thamani ya kufuta.

Hii ni pamoja na programu ambazo husakinishwa kwenye simu mahiri unaponunuliwa. Baadhi yao haziwezi kuondolewa, zimejengwa ndani ya firmware, wakati wengine, ikiwa huhitaji, ni bora kuondolewa.

Usitumie wallpapers hai

Mandhari hai, isiyo ya kawaida, yanahitaji rasilimali za ziada. Bila shaka, zinaonekana nzuri na zinapendeza macho, lakini ikiwa unahitaji kasi, unapaswa bado kusema kwaheri kwao.

Usitumie vizindua vya watu wengine

Usitumie wijeti za ziada

Mengi sawa yanaweza kusemwa kuhusu vilivyoandikwa, ambavyo vinaweza kuwekwa kwa wingi kwenye eneo-kazi. Jaribu kuweka wijeti zile pekee ambazo huwezi kuishi bila, kama vile saa au utabiri wa hali ya hewa. Wijeti zingine zinapaswa kuondolewa kutoka kwa desktop, kwani wao, ingawa kidogo, bado "hula" kumbukumbu.

Zima programu zisizo za lazima

Kuna programu zinazofanya kazi ndani usuli, lakini hitaji lao ni nadra. Katika kesi hii, tunazungumza juu ya programu za mtu wa tatu, na sio zile za mfumo, ambazo hazipendekezi kuzimwa, kwani hii inaweza kusababisha kutofaulu kwa mfumo.

Kuzima programu ni rahisi. Nenda kwa mipangilio, pata sehemu na programu, chagua programu inayotaka, nenda ndani yake na ubofye "Acha".

Zima GPS na eneo la eneo

Mipangilio ya geolocation ni muhimu sana, lakini inaweza kutumika tu wakati inahitajika.

Hii, kwa njia, pia itasaidia kuongeza uhuru wa kifaa.

Fanya kusafisha kwa kutumia programu za wahusika wengine

Usisahau kufuta cache na data nyingine ya muda, ambayo inaweza pia kuathiri kasi ya mfumo. Kwa kawaida hii ni maombi ya wahusika wengine kama Safi Master, ambayo hukuruhusu kufuta faili za muda, lakini kwenye vifaa vingine tayari zimejengwa kwenye firmware.

Tumia kuongeza kasi ya GPU

Nenda kwenye menyu, pata sehemu ya "Kwa Wasanidi Programu" au "Chaguo za Wasanidi Programu".

Ikiwa huoni sehemu kama hiyo, unahitaji kuiwezesha. Pata sehemu ya "Kuhusu simu", "Kuhusu kibao" au "Kuhusu kifaa", ingia ndani yake na ubofye "Jenga nambari" mara 7 (wakati mwingine unahitaji kubofya mara kidogo zaidi, mfumo utakuambia kuhusu hilo).

Katika Chaguo za Wasanidi Programu, wezesha uchakataji wa GPU unaolazimishwa (kuongeza kasi ya maunzi ya 2D katika programu).

Wakati huo huo, unaweza kuzima uhuishaji. Tafuta vipengee kama vile "Kiwango cha uhuishaji cha Dirisha".

Zima uhuishaji. Kuwa makini tu wakati wa kuhariri vigezo, baadhi yao yanaweza kusababisha matatizo na mfumo.

Sasisha firmware

Wakati mwingine matatizo ya utendaji yanahusiana na firmware yenyewe, ambayo inaweza kutatuliwa kwa uppdatering firmware hiyo hiyo. Hii ndiyo sababu (na si tu) ni muhimu sana kusasisha programu ya smartphone yako au kompyuta kibao kwa wakati.

Una mawazo tofauti na yetu? Tutafurahi ikiwa utatujulisha juu yao kwa kutumia maoni kwa nakala hiyo.

Nitakuonyesha jinsi ya kuongeza kasi ya kompyuta yako kibao ya Android. Kwa chaguo-msingi, kompyuta kibao imeundwa na mtengenezaji si kwa kasi ya uendeshaji, lakini kwa kazi imara, badala ya hayo, mara nyingi mtengenezaji huweka programu zake nyingi kwenye kibao, ambacho watu wachache wanahitaji, lakini kwa hili mtengenezaji hupokea pesa kutoka kwa wale ambao maombi yao aliweka kwenye kibao.

1. Kuzima huduma za mfumo na programu

Nenda kwa mipangilio - meneja wa programu. Telezesha kidole kutoka kulia kwenda kushoto ili kufungua programu zote.

Kwa kwenda kwa programu zote tutaona orodha ya programu zote ambazo zimesakinishwa kwenye kompyuta yako ndogo.

Chini kabisa ya orodha programu zote zilizolemazwa zinaonyeshwa. Nilizima taswira ya mtaani, synthesizer ya hotuba ya Google, bango la filamu la Yandex, habari za Yandex, msongamano wa magari wa Yandex, teksi ya Yandex kwenye kompyuta yangu ndogo.

Pia nilizima meneja wa programu, ramani, wakati wa dunia, uchapishaji wa simu, Mipangilio ya Google Mshirika, kubadilishana data kupitia Wi-Fi Direct.

Michezo ya Google Play Imezimwa Cheza muziki, Polaris Office 5, S Voice, Samsung apps, Samsung print Service.

Vitabu vya Google Play, Filamu za Google Play, Utafutaji wa Google Play, Google+, Hangouts pia zimezimwa kwenye kompyuta yangu ndogo.

Sihitaji programu hizi zote na sitazitumia, lakini ikiwa zimewashwa, zitasasishwa, kuchukua nafasi, kunipa huduma zao, na kunisumbua machoni na msongamano wao usio na maana.

Unaweza pia kuzima programu kwenye kompyuta yako ndogo ambayo hutumii.

Ili kuzima programu, bofya kwenye orodha ya programu. Na hapa tunaona kitufe cha Acha, kubonyeza ambayo programu itasimamisha kazi yake, lakini haitazima. Unapoanzisha upya kompyuta kibao, itaanza kufanya kazi tena.

Sio vyote maombi ya mfumo Katika kibao unaweza kuizima, baadhi inaweza tu kusimamishwa.

Nitakuonyesha jinsi ya kulemaza programu iliyojengwa ndani kwa kutumia programu ya ujumbe kama mfano.

Kwa mfano, programu ya kutuma ujumbe inayokuruhusu kutuma na kupokea SMS kutoka kwa kompyuta yako ndogo inaweza kusimamishwa na kuzimwa ikiwa hutatuma au kupokea SMS kutoka kwa kompyuta yako ndogo.

Bonyeza kuacha.

Arifa inaonekana: Lazimisha kusitisha. Kulazimisha programu kusitisha kunaweza kusababisha makosa. Hiyo ni, programu ya ujumbe inaendeshwa kwa sasa. Bofya ndiyo.

Programu ya kutuma ujumbe imekoma. Sasa zima programu ya ujumbe. Bofya Lemaza.

Swali la onyo linaonekana: Lemaza programu iliyojengwa ndani?

Kuzima programu zilizojumuishwa kunaweza kusababisha makosa katika programu zingine.

Bofya ndiyo.

Programu ya ujumbe sasa imezimwa.

Katika orodha ya programu unaweza kuona kwamba imezimwa.

Ikiwa unahitaji programu iliyojumuishwa iliyozimwa tena, unaweza kuiwezesha. Fungua programu iliyozimwa kwenye orodha ya programu na ubofye wezesha.

Programu ya ujumbe uliojengewa ndani inafanya kazi tena.

2. Acha kuendesha programu

Nenda kwa mipangilio - meneja wa programu. Telezesha kidole kutoka kulia kwenda kushoto ili kufungua orodha ya "inayoendeshwa"; orodha hii inaonyesha programu ambazo zinatumika kwa sasa.

Wacha tuseme tunasimamisha programu ya kinasa sauti ya watoto inayoendesha kwenye kompyuta kibao (programu hii hukuruhusu kurekodi sauti na sauti wakati inaendesha katika hali ya watoto).

Bofya kuacha ili kusimamisha programu, kupakua programu kutoka kwa RAM (inachukua 2.5 MB ya RAM) na kuacha kazi yake ya nyuma, ambayo pia wakati mwingine hupakia processor.

3. Kuwezesha Chaguzi za Wasanidi Programu

Nenda kwa mipangilio - chaguzi za msanidi.

Ikiwa huna Chaguo za Wasanidi Programu, unaweza kuiwezesha.

Ili kuwezesha chaguo za msanidi programu, nenda kwenye kipengee cha kifaa na ubofye mstari wa nambari ya kujenga mara 7, baada ya hapo unapaswa kuona kipengee cha chaguo za msanidi.

Tayari nina chaguo za msanidi kwenye kompyuta yangu kibao, kwa hivyo ninapobofya kwenye nambari ya ujenzi, ninapata arifa: haihitajiki, hali ya msanidi tayari imewashwa.

4. Zima uhuishaji

Nenda kwa mipangilio - chaguzi za msanidi, pata kipengee cha uhuishaji wa dirisha na ubofye kipengee hiki.

Sasa bofya kwenye uhuishaji umezimwa ili kuzima uhuishaji wa mpito wa dirisha ili usipakie kichakataji cha video na kichakataji kwa utaratibu huu.

Pia tunazima kipimo cha uhuishaji wa mpito na kipimo cha muda cha kihuishaji.

Pia tunawasha uchakataji wa kulazimishwa wa GPU kuchukua fursa ya kuongeza kasi ya maunzi katika programu za 2D. Kwa hivyo, kiongeza kasi cha video kitachukua usindikaji wa picha katika programu za 2D na kufungia kichakataji kidogo kutoka kwa kazi hii.

5. Zima michakato ya nyuma.

Nenda kwa mipangilio - chaguzi za msanidi. Tunapata michakato ya mandharinyuma ya kipengee, kwa chaguo-msingi kuna kikomo cha kawaida.

Bofya kwenye kipengee cha michakato ya usuli ili kuhariri kipengee na kubadilisha michakato ya usuli kuwa hakuna michakato ya nyuma, ili ikiwa programu haipo kwenye skrini na hatutumii hivi sasa, basi haifanyi kazi nyuma na haipotezi nguvu na haipakia processor na kazi yake ya nyuma.

Kwa njia hii, ni programu tumizi ambayo inaendeshwa kwa sasa kwenye skrini itafanya kazi, na hakuna kitu "kitakachokula" rasilimali za kompyuta kibao nyuma.

Hapa kuna mafunzo ya video ya jinsi ya kuongeza kasi ya Android.

Ninajua kiwango cha kutosha cha C++ na sasa nilitaka kuchunguza kutengeneza mchezo. Nilikuwa nikijiuliza ni mbinu gani bora ingekuwa katika suala la kuandika mchezo ulioharakishwa wa vifaa ambao bado ni jukwaa la msalaba (Windows/OSX/Linux). Ingekuwa mchezo wa 2d, lakini mkali wa kutosha kwamba utoaji wa CPU labda haungeukata.

Hatimaye, nimeona maktaba kama http://www.sfml-dev.org/ ambayo inaweza kuwa imerahisisha, je, niende chini kwa njia hii?

Asante tena.

6 majibu

Huu ni ujinga jamani

OpenGL NI jukwaa la msalaba. Hakuna haja ya Qt au vile. Ni sehemu chache tu zinazohitaji kurekebishwa: API ya windows na API ya kuingiza, ambayo ni kazi pekee zinazotegemea taratibu maalum za OS.

Una chaguzi kadhaa:

Je, programu ya 2d C++ imeharakisha maunzi ya jukwaa tofauti?

Ninajua OpenGL, lakini siwezi kupata mafunzo yoyote ya jinsi ya kuitumia kwa njia ya jukwaa, yote yanazingatia jukwaa moja.

SDL_Init(SDL_INIT_VIDEO); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16); SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, 0);//zima vsync ikiwa (SDL_SetVideoMode(scrWidth, scrHeight, 32, SDL_OPENGL) == 0)( fprintf(stderr, "haikuweza" kuweka modi %dx%60, 4 ); SDL_Quit(); rudisha -1; ) glewInit();//ikiwa unatumia glew, vivuli, viendelezi. huku(gameIsRunning())(//game kitanzi glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); //OpenGL uonyeshaji hapa glFlush (); SDL_GL_SwapBuffers(); ) SDL_Quit();

Tazama hati za sdl kwa maelezo zaidi.

Kutumia SDL pia kunawezekana, lakini ninaogopa mchezo unaweza kufanya kazi ikiwa nitautumia. Je, hii ni kweli?

Ikiwa vsync imezimwa, unaweza kupata popote kutoka kwa fremu mia chache hadi elfu kwa sekunde. Utendaji kamili unategemea ugumu wa kifaa chako na ugumu wa tukio. Nilipata ramprogrammen 300 kwa kitambazaji rahisi cha shimo cha 3D ambacho kilitumia "RAW" ya opengl bila kuonyesha orodha/vitu vya bafa ya vertex. Pia, ukitumia kasi isiyobadilika ya fremu au injini ya kipima muda, hutapata fremu nyingi kwa sekunde kuliko ulivyoomba.

SDL ilitumika kuhamisha Unreal 2004 hadi Linux. Ilitumiwa pia katika bandari ya Linux ya Doom 3/Quake 4. Kwa hiyo, imejaribiwa kikamilifu na inajulikana.

Kwangu mimi swali sio ikiwa unapaswa kutumia maktaba au la. Hii ndio maktaba unayopaswa kutumia. Ikiwa ungependa kuandika mchezo, tafuta maktaba ambazo zitatatua masuala mengi ya kubebeka kwa ajili yako. Hii itakuruhusu kuzingatia kile ambacho ni muhimu zaidi: mchezo wenyewe. Wengine wametoa mapendekezo zaidi ya maktaba ambayo ningeweza kukupa.

Nadhani ni makosa kuwa na wasiwasi juu ya utendaji kabla hata haujaanza mradi wako. Fanyia kazi masuala ya utendaji kama vile suala lingine lolote unalokumbana nalo wakati wa utayarishaji. Unda programu yako ili kutenga maktaba kwa kiwango tofauti na mantiki yako yote. Itakuwa rahisi kubadili utekelezaji ikiwa ni lazima. Itakuruhusu hata kujaribu utekelezaji tofauti.

// tenganisha faili za darasa la LowLevelGraphicStuff ( // abstract); darasa LowLevelGraphicStuff_SFML: LowLevelGraphicsStuff ya umma ( // utekelezaji halisi wa SFML); darasa LowLevelGraphicsStuff_OGL: LowLevelGraphicsStuff ya umma ( // utekelezaji halisi wa OpenGL); // kuu // Endesha mchezo na utekelezaji wa SFML. gameLoop(mpya LowLevelGraphicsStuff_SFML()); // Endesha mchezo na utekelezaji wa OpenGL. gameLoop(mpya LowLevelGraphicsStuff_OGL());