Moravian instruments
Vyhledávání
Hlavní menu
Hlavní stránka
O společnosti
Stažení software
Stažení dokumentů
Obchodní partneři
Registrace
Vstup pro partnery
Produkty
Programový systém Control Web
Strojové vidění VisionLab
Kamery DataCam a  osvětlovače DataLight
Průmyslový počítačový systém DataLab
Vědecké CCD kamery
Speciální technika
Ceník
Aktivace produktů
Control Web online
Služby
Školení
Zakázková řešení
Podpora
Rady pro tvorbu aplikací


Hlavní stránka  Podpora  Články

Chyba v ovladačích grafických karet NVidia verze 388.XX a 390.XX
 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.

Okno s OpenGL vykreslovačem je vloženo do okna na pozadí Windows

Okno s OpenGL vykreslovačem je vloženo do okna na pozadí Windows

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

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á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š

 
 | O společnosti | Produkty | Podpora | Stažení software | Stažení dokumentů | 
Moravské přístroje, a.s., Masarykova 1148, Zlín-Malenovice, 76302