kun mun 3D RautaLanka Moottori piirtää parhaimmillaan 20000 viivaa joka kerta kun se pyörii uusiks (2 kertaa sekunnissa) niin voitte kuvitella kuinka se tuppaa vilkkumaan aika ikävästi. Miten sen saisi pois kun se piirtää viivat ihan vaan Linellä saisiko siihen jonkunmoisen tuplabufferoinnin tms?
oletko kokeillut tehdä framebufferia?
teoriassa tapahtuu sillain, että piirretään toiseen pictureboxiin, joka on piilossa, kun grafiikan on piirretty boxiin, niin boxin sisältö kopioidaan näkyvään boxiin.
sama toimii muidenkin hDC pintojen kanssa.
itse ainakin sain aikanaan tällä tavalla toimiin..
kannattaa siirtyä käyttämään WinAPI käskyjä. suoraan sanottuna noi vb:n omat grafiikkarutiinit haisee..
visual studion mukana tulee api text viewer.. sieltä vaan selaileen..
esimerkkinä muutama grafiikka käsky, jotka löytyy tuon ohjelman avulla. tästä jää vielä puuttumaan muutama esimääritelty muuttuja, mutta ne löydät kyllä api text viewerin avulla (win32api.txt).
laittaa pinnalle pixelin.
---
Public Declare Function SetPixel Lib "gdi32" Alias "SetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
nimensä mukainen käsky. katsoo pixein ns värin.
---
Public Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
käytä bitblt-käskyä tuon taustabufferin kirjoittamiseen/tyhjentämiseen.
--
Public Declare Function BitBlt Lib "gdi32" Alias "BitBlt" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
----
näillä eväillä varmaan onnistuu..
Aihe on jo aika vanha, joten et voi enää vastata siihen.