@arturB, post #210
@arturB, post #213
MEGA! A jak to idzie na natywnym AGA?
@mateusz_s, post #214
@mateusz_s, post #219
@mateusz_s, post #220
@mateusz_s, post #221
main loop { if (! _safeToWrite) while(! GetMsg(_dispPort)) Wait(1l<<(_dispPort->mp_SigBit)); _safeToWrite=TRUE; // render EM_Update_And_Render(&APP_main_loop); if (! _safeToChange) while(! GetMsg(_safePort)) Wait(1l<<(_safePort->mp_SigBit)); _safeToChange=TRUE; if (ChangeScreenBuffer(APP_screen, _hardwareScreenBuffer[_currentScreenBuffer])) { // Flip. _currentScreenBuffer = _currentScreenBuffer ^ 1; EM_prefs.current_dbuffer_index = _currentScreenBuffer; } _safeToChange=FALSE; _safeToWrite=FALSE; }
@teh_KaiN, post #224
@Hexmage960, post #225
@mateusz_s, post #226
@mateusz_s, post #226
@mateusz_s, post #229
@forge, post #232
@Hexmage960, post #234
void Task__Display() { WaitTOF(); switch(curr_buffer) { case 0: show_buf = 1; break; case 1: show_buf = 2; break; case 2: show_buf = 0; break; } ChangeVPBitMap(&APP_screen->ViewPort, bmp[show_buf ], myDBI); } // a w głownej pętli mam tylko render i zmiene curr_buff: ... RenderDoBitmapy[curr_buf]; curr_buffer++; if (curr_buffer > 2) curr_buffer = 0; ...
@mateusz_s, post #235
void Pętla(struct ViewPort *vp, struct DBufInfo *dbi, struct BitMap *bm[]) { struct MsgPort *safeport = dbi->dbi_SafeMessage.mn_ReplyPort; struct MsgPort *dispport = dbi->dbi_DispMessage.mn_ReplyPort; BOOL safeToDraw = FALSE, safeToChange = FALSE; UWORD frame = 0; ULONG safesig = 1L << safeport->mp_SigBit, dispsig = 1L << dispport->mp_SigBit; ChangeVPBitMap(vp, bm[frame], dbi); while (!done) { ULONG result = Wait(safesig|dispsig); if (result & safesig) { if (!safeToDraw) { while (!GetMsg(safeport)) { WaitPort(safeport); } safeToDraw = TRUE; } /* Tutaj można rysować */ } if (result & dispsig) { if (!safeToChange) { while (!GetMsg(dispport)) { WaitPort(dispport); } safeToChange = TRUE; } ChangeVPBitMap(vp, bm[frame], dbi); safeToDraw = safeToChange = FALSE; /* Tutaj zmieniamy "frame" na indeks nowego bufora */ } } }
@Hexmage960, post #236
@Hexmage960, post #236
@mateusz_s, post #237
dzięki, spróbuję.. tzn nie zebym sie upierał przy triple buffer, po prostu nie zauwazylem ŻADNEJ roznicy
cokolwiek bym nie robił.. wiec cos robie nie tak..
@asman, post #239