[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Programovani grafickejch karet etc...



David Turai wrote:
> 
> >
> > Sewas lidi,
> > mel bych takovej mensi problemek.
> > Stahnul sem si zdrojaky vod jednoho 3D GFX enginu (docela c00l ale umi
 Nemas nahodou na mysli Crystal ? Puvodni source byly na PC a na Amigu
to
predelal Jyrki o Saarinen ? Ten jsem videl, a krome toho ze je brutalne
pomalej a dost pada vypada dost schopne - obzvlaste barevny svetelny
mapy
na stenach :-)

> > jenom 8bpp) a tam se vsechno dela prez tzv. framebuffer coz je misto v
> > pameti, gde se vsecko predpocita a pak se vybleje do graficky pameti
> > (mno, stejne si myslim, ze to kazdej zna ;-)) a me by zajimalo, esli de
 Jinak se to ani delat neda, protoze video-pamet je o moc pomalejsi a
kdyz
se ti ten obraz nekolikrat prekresluje prez sebe, tak by to uzivatel
potom
vsechno videl ,coz by se mu asi moc nelibilo :-)

> > a hlavne jak (urcite to de ;-) to udelat na Amize. Proste alokovani
> > frejmbufferu je malej problem, vetsi problem je, jak ten frejmbuffer
> > zobrazit. Pocitam s tim, ze kdyz je to reseny takle, je malej problem
> > vyrobit rutiny na zobrazovani na GFX kartach nebo na AGA chipech.
> > Tak sem zvedavej, jak se s tim poperete (nebo resp, jak se s tim poperu
> > ja ;-)))
> >
> > Ondrej Zima                 homolka@terminal.cz
> 
> To je uz hodne stara problematika. Asi myslis chun2planar konverze.
> 
> Gandalf

 Presne tak, pokud to chces zobrazit na AGA, tak odpovidajici c2p
konverzi
(pro 020,030,040). A kdyz na CGfx, tak staci funkce WriteChunkyArray,
anebo
si precist parametry bitmapy pomoci LockBitmapTags a zapisovat primo do
bitmapy, pak to zase Unlocknout. Co se tyce prace s Cgfx, tak se obrat
na
Shamana, ten o tom bude vedet nejvic. Jinak na AGA je jeste dobry delat
double-buffering, tzn. ze mas pro 1 obrazovku 2 bitmapy, a tu jednu na
pozadi
vykreslujes a tu druhou zobrazujes, kdyz je ta na pozadi hotova, tak je 
prohodis. Na tohle slouzi fce
AllocDBuffInfo(),FreeDBuffInfo(),ChangeVPBitMap().

				cau,FiDo of INSANITY