Path: chuka.playstation.co.uk!news From: Nick Slaven Newsgroups: scee.yaroze.programming.2d_graphics Subject: Re: Scrolling backgrounds Date: Sat, 11 Jul 1998 13:47:45 +0100 Organization: PlayStation Net Yaroze (SCEE) Lines: 23 Message-ID: <35A75EF1.C28E7C0B@compuserve.com> References: <6nvfvm$9o1@chuka.playstation.co.uk> <35A34842.A7B6E58C@scee.sony.co.uk> <35a3f513.14718586@news.scea.sony.com> <35A47C17.4266BE24@scee.sony.co.uk> NNTP-Posting-Host: ld10-248.lon.compuserve.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.04 [en] (Win95; I) James Russell wrote: > > AFAIK, The internals have a queue of 64 commands - that means you can add 64 things in. Adding a > command is just a matter of inserting it onto the end of the queue and going back to your program. > The GPU is always checking to see if there's something to do in the queue, so it just processes new > commands as they are inserted. HOWEVER, if the queue is full, then the function to add a GPU command > to the queue will block until there is a space free. So you don't have to _ever_ call DrawSync(0) - > that's just used if the drawing time will go over one frame, because if you just wait for a VSync(0) > you might swap the buffers while the GPU is still busy drawing! > Does this mean that using only one DrawOT, as I've seen in many yaroze programs, will cause a major bottleneck, as this call will block until GPU can cope with it? Does this also mean that to get the best performance that we have to chop up the final OT into 64 command long chunks & draw these sequentially whilst processing the rest of the game logic? Finally does the GPU generate an interrupt when its queue is empty & if so can yaroze programmers get hold of it - to make the above easier? Nick (S)