Board index » cppbuilder » Flicker-free graphics: double buffering I presume?
Michael A. Power
![]() CBuilder Developer |
Fri, 25 Apr 2003 03:00:00 GMT
|
Michael A. Power
![]() CBuilder Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Flicker-free graphics: double buffering I presume?
Hello All,
I am developing a performance sensitive graph component for BCB4, using C++ Thanks, |
Ron Sawye
![]() CBuilder Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?Hi Mike! Check out Harold Howe's FAQ: http://www.bcbdev.com/faqs/faq34.htm "Michael A. Powers" <mapow...@email.com> wrote in message Quote> Hello All, |
André Jage
![]() CBuilder Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?There is a property DoubleBuffered. Set this to true and the TWinControl (or derivative) will be drawn to an in-memory bitmap first. Andr "Michael A. Powers" <mapow...@email.com> wrote in message Quote> Hello All, |
Black Moo
![]() CBuilder Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?QuoteAndr Jager <aja...@scintillating.nl> wrote in message Quote> There is a property DoubleBuffered. Set this to true and the TWinControl flickering with dubble buffering And if this dosent make much sence its probley cause im drunk lol. But really... I think opengl would make killer 2d app's too if someone could make a class libary for it. I mean think, how many of your wonderfull vcl components never ever flicker, can be updated more then 1 time per ms. and support rotation, easy zooming (yes, zooming, not just scaleing, but zooming in and out and rescaleing font, size, and graphic textures all at once) plus antialiasing.. Sure its not pratical, But I just love opengl, eveything else just seems {*word*99}py to me now. Anyhow... just a drunken rant. probley not a good idea to use opengl for it. but anyhow, for something on topic double buffering is like this 1 area (pointer 1) of ram holds a pointer to what part of the ram is to be drawed 2 (area 1 and area 1) other area's hold the visable part of the screen area 1 is displayed area 2 is writen to (ie, some text or texture or vcl object drawn to it) pointer 1 is set to area 2 (and area 2 is displayed) area 1 gets writen too pointer 1 is set to area 1 (repeat) Most app's use single buffering Ie Area 1 displayed object 1 drawn to area 1 Sometimes, a screen refresh will happen befor object 1 is drawn fully, or at all, thats what gives "flicker" Double buffering draws "behind the screen" and then switchs a pointer telling the next update to draw the other 1/2 of the buffer insted of the 1st half You may think "dosent this mean we only have 1/2 the res?" Wrong, it means you use double the draw buffer, but thats all, refreshs may be *slightly* delayed, but it isent much (in laymens terms, its like trying to draw a picture "as" someone is takeing the picture, while double buffering is like drawing while the guy photo's the last one you drew, sure it makes a delay on what photo he can take, but a few ms isent bad :) (btw, a normal tpicture takes 3/4 of a ms to move 1 axis or so, so unless your useing about 100+ objects at a time, double buffering is only a plus.. unless your targeting systems with vary low video ram, but then you can just made a if to see if it supports double buffering or not Aww man, now im sober. this sucks. im gonna stop typeing now Quote
|
André Jage
![]() CBuilder Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?I think OpenGL is the way to go as well but for many applications it is to much work. Andr Quote"Black Moon" <Black_mo...@hotmail.com> wrote in message Quote
|
patrick marti
![]() CBuilder Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?There are some very nice free encapsulations of OpenGL for the VCL already. Try TGLScene http://perso.infonie.fr/revolution/GLScene/features.htm among the first, and there is a commercial product from SignSoft Quote"Andr Jager" wrote: |
Lew Barnesso
![]() CBuilder Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?True, but apparently *only* for Delphi. Heres an excerpt from the GLScene FAQ at the url below: CPP Builder : does not compile ! Quote"patrick martin" <patrickmmar...@freenet.co.uk> wrote in message Quote> There are some very nice free encapsulations of OpenGL for the VCL |
Michael A. Power
![]() CBuilder Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?Thanks, but my component is derived from TGraphicControl and not TWinControl so I can't use that. -Mike Quote"Andr Jager" <aja...@scintillating.nl> wrote in message Quote> There is a property DoubleBuffered. Set this to true and the TWinControl |
Nick Trou
![]() CBuilder Developer |
Mon, 28 Apr 2003 03:00:00 GMT
Re:Flicker-free graphics: double buffering I presume?Quote> I am developing a performance sensitive graph component for BCB4, using You can get a lot of flicker because windows sends an "erase background" Class view... New method... to the component class and add the window Hope this helps.... More info on vcl.components.writing if you need it. |
1. Textout flicker and double buffering
2. Double buffering help (flickering)
3. double buffering a form or component, Image component flickers when moved
4. Double Buffering Metafiles to Prevent Flicker
5. NT, Win95 and double buffering/flicker question
6. Invalidate, Repaint(), HDC, flicker, double-buffering, TGraphicControl problem
7. Animation/Double Buffering Graphics