.[ ČeskéHry.cz ].
Záhadný doublebuffer v OpenGL

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
frca



Založen: 28. 07. 2007
Příspěvky: 1558

PříspěvekZaslal: 5. říjen 2007, 22:57:50    Předmět: Záhadný doublebuffer v OpenGL Odpovědět s citátem

Zdravím,
jak je možné, že při překreslování obrazu v OpenGL renderu nikdy nedochází k třesení obrazu, když se nepřekresluje pozadí, jako tomu bylo např. u doomovek?
Díky.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 5. říjen 2007, 23:11:05    Předmět: Odpovědět s citátem

Treba proto, ze ten zbuffer mazes? Chtelo by to lip definovat problem.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
frca



Založen: 28. 07. 2007
Příspěvky: 1558

PříspěvekZaslal: 5. říjen 2007, 23:33:42    Předmět: Odpovědět s citátem

Když nemažu color buffer, vzniká tam, kde se nic nevykreslí, tohle:

Jak to, že se to ale netřese, když se střídají dva buffery? Žádný problém s tím nemám, jen mě to zarazilo. Dá se to nějak vysvětlit?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 6. říjen 2007, 00:10:22    Předmět: Odpovědět s citátem

Leda ze by ses zeptal primo lidi z nVidie/AMD, coz muzes. Nebo jsi jeste nenasel spravnou podmnozinu stavu, ktera to zpusobuje. A treba to taky nejde.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
pcmaster



Založen: 28. 07. 2007
Příspěvky: 1824

PříspěvekZaslal: 6. říjen 2007, 01:11:26    Předmět: Odpovědět s citátem

Podla mna je to spravanie uplne spravne. Nechapem o akom traseni hovoris. Ked color buffer nezmazes, ostane v nom to, co tam bolo okrem miest, kam nieco znovu vykreslis.
Ako by sa malo take trasenie prejavit? Povedz priklad nejakeho softu, napr. hry, kde to tak je, lebo neviem co myslis...
_________________
Off-topic flame-war addict since the very beginning. Registered since Oct. 2003!
Interproductum fimi omne est.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 6. říjen 2007, 03:53:32    Předmět: Odpovědět s citátem

On asi myslel, ze kdyz neco vyrenderujes do back bufferu, pak se to prohodi (back->front) a pak zas neco do back bufferu a pak to jenom furt prohazujes, ze to bude blikat. To si myslim, ze to karty takto resit nemusi. Tam ten buffer muze byt klidne jenom jeden. Ony ty data se klidne mohou rovnou poslat pryc pres RAMDAC a muze se renderovat dal na to stejny misto.

Je treba si uvedomit, ze ucel doublebufferingu je zabranit moznost videt, jak se cela scena sklada tzn. jak tam postupne pribyvaji ty objekty. Jelikoz je to vetsinou dost rychly, muze to spis budit dojem blikani nez ze se tam opravdu neco pridava a pak maze. Nikdo urcite nepocital s tim, ze tam bude chtit frca udelat problikavani dvou bufferu. To udelas nejlip asi tak, ze budes renderovat do dvou textur a vzdycky mezi nimi budes prepinat. Tim asi nasimulujes ten artefakt zpusobeny ve hrach jako doom jeste z dosu, ovsem za cenu vykonu.

frca> Mozna bys mel do tech svych prispevku dat pro priste trochu vic okecavani, at ja tady neztracim cas vysvetlovanim neceho, co ty vlastne ani nechces.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
igor



Založen: 28. 07. 2007
Příspěvky: 196

PříspěvekZaslal: 6. říjen 2007, 09:43:55    Předmět: Odpovědět s citátem

Zjistil jsem akorat, ze samotny pojem double buffering znamena jen, ze obraz je vykreslovan do nejakeho bufferu, ktery se pak zobrazi najednou. Ta technika s prepinanim 2 bufferu se jmenuje page flipping. Page flipping je jen zpusobem, jak lze double buffering provest.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Ladis



Založen: 18. 09. 2007
Příspěvky: 1536
Bydliště: u Prahy

PříspěvekZaslal: 6. říjen 2007, 12:11:10    Předmět: Odpovědět s citátem

Na starych grafikach page flipping zpusobuje blikani, ktere asi frca mysli (jeste na takovem ATI RagePro sem to videl). Kdyz se pouzilo kopirovani z back-bufferu na screen (druha moznost double-bufferingu), tak zadne blikani samozrejme neni a vysledek je jako na screenshotu. Jak to delaj novy grafiky, nevim.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna