Moravské přístroje, a. s., zdroj: http://www.controlweb.eu/art?id=937&lang=405, vytištěno: 03.05.2025 19:08:18
Hlavní stránka▹Podpora▹Články | 29.8.2019 |
---|
V nových ovladačích verze 388.XX a 390.XX grafických karet NVidia se objevil problém, který způsobuje deformaci obrazu při zmenšení vlastnického okna na pozadí Windows pod velikost okna s OpenGL vykreslovacím kontextem. Na starších ovladačích, máme to vyzkoušeno např. na 382.05, vše funguje správně. Tento problém se také netýká ovladačů pro grafické adaptéry Intel a AMD. |
V OpenGL vykreslovači systému Control Web je testováno a více či méně složitě ošetřováno několik desítek různých chyb a nekorektností, které se vyskytovaly v některých verzích ovladačů jednotlivých výrobců. Snaha o ošetření tohoto problému ale vede na snížení kvality obrazu takovými artefakty, že jsem se rozhodli již vyvinutou záplatu raději tentokrát do systému nedávat. Problém se objeví jen tehdy, když je okno v pracovní ploše Windows zmenšeno pod velikost v něm (kdekoliv v stromové hierarchii) umístěného okna s vykreslovacím kontextem. Je-li přímo okno s kontextem na desktopu, vše funguje správně bez ohledu na jeho zmenšení. Autoři ovladače, pravděpodobně vedeni snahou o optimalizaci množství přenášených dat mezi obrazovým bufferem v grafické paměti a pamětí obrazovky, sice správně okopírují data jen z viditelné části obrazového bufferu, ale do paměti obrazovky je pak expandují, jako by měla rozměr celého existujícího okna s kontextem. Obraz je pak bitmapově zvětšený se všemi z tohoto procesu vyplývajícími artefakty. Při zmenšení okna na pozadí Windows pod velikost okna s OpenGL vykreslovačem dojde ke zvětšování bitmapy z obrazového bufferu Proti této činnosti ovladače je pak těžko nějak bojovat. Můžeme se sice pokusit sestavit opačné transformace k této deformaci, ale ty pak mají za následek nutnost zmenšení obrazu v bufferu, které vede na další znehodnocení kvality při expanzi bitmapy ovladačem. A to nemluvě o problému s třetím rozměrem. Nastavení hloubky při různých poměrech zmenšování v osách X a Y nelze dobře vyřešit. Korekční záplata dokáže udržet pozici a velikost, ale kvalita obrazu je nepřijatelná Korekční zásahy sice udrží vykreslované objekty ve správných pozicích a velikostech, ale pokles kvality zobrazení vypadá jako chyba v systému Control Web. Proto jsem se tentokrát rozhodli záplatu do našeho systému nedávat.m Je jich tam i tak již docela dost. Ale ať závěr nevyznívá příliš pesimisticky, kvalita grafických ovladačů s postupem času jednoznačně stále roste. Navíc tento problém se velmi pravděpodobně neprojení v žádné běžící aplikaci. Není žádný důvod mít okno s vykreslovačem větší než koncové vlastnické okno na pozadí Windows. Může nám pouze trochu znepříjemnit práci v integrovaném vývojovém prostředí pří vývoji aplikace. Snad to NVidia brzy opraví, informace jsme jim pro klid našeho svědomí poslali ... Roman Cagaš |