Path: chuka.playstation.co.uk!news From: "Derek da Silva" Newsgroups: scee.yaroze.beginners Subject: Re: Order in main display loop Date: Sun, 19 Sep 1999 00:49:56 +0100 Organization: PlayStation Net Yaroze (SCEE) Lines: 94 Message-ID: <7s18ej$lcu13@chuka.playstation.co.uk> References: <7s08as$lcu11@chuka.playstation.co.uk> NNTP-Posting-Host: pABs08a07.client.global.net.uk Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_000A_01BF0238.E4972CC0" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 This is a multi-part message in MIME format. ------=_NextPart_000_000A_01BF0238.E4972CC0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi Check out what each line in your GraphicsLoopStart() and = GraphicsLoopEnd() do. You'll see that sprites/objects must be sorted = /between/ clearing and drawing your OT. activebuff =3D GsGetActiveBuff(); =20 GsSetWorkBase((PACKET*)GpuPacketArea[activebuff]); GsClearOt(0, 0, &WorldOT[activebuff]); // initialise OT GsSortSprite(&sprite, &WorldOT[activebuff], 1); // insert sprite = in OT =20 DrawSync(0); // wait for completion of all drawing =20 VSync(0); // wait for next vsync =20 GsSwapDispBuff(); // swap double buffers =20 GsSortClear(0, 0, 0, &WorldOT[activebuff]); // insert clear sceen = command in OT GsDrawOt(&WorldOT[activebuff]); // draw OT Hope this helps, Derek ------=_NextPart_000_000A_01BF0238.E4972CC0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi
 
Check out what each line in your GraphicsLoopStart() = and=20 GraphicsLoopEnd() do.  You'll see that sprites/objects must be = sorted=20 /between/ clearing and drawing your OT.
 
 
   activebuff =3D=20 GsGetActiveBuff();
 
  =20 GsSetWorkBase((PACKET*)GpuPacketArea[activebuff]);
 
   GsClearOt(0, 0,=20 &WorldOT[activebuff]);    // initialise = OT
 
   GsSortSprite(&sprite,=20 &WorldOT[activebuff], 1);    // insert = sprite in=20 OT  
 
   DrawSync(0);    // = wait=20 for completion of all drawing
 
  =20 VSync(0);    // wait for next = vsync
 
  =20 GsSwapDispBuff();    // swap double=20 buffers
   
   GsSortClear(0, 0, 0,=20 &WorldOT[activebuff]);    // insert clear sceen = command in=20 OT
 
  =20 GsDrawOt(&WorldOT[activebuff]);    // draw = OT
 
Hope this helps,
 
Derek
------=_NextPart_000_000A_01BF0238.E4972CC0--