@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