Path: chuka.playstation.co.uk!news From: Developer Support Newsgroups: scea.yaroze.programming.2d_graphics Subject: Re: changing resolutions Date: Fri, 01 Aug 1997 17:12:27 +0100 Organization: PlayStation Net Yaroze (SCEE) Lines: 50 Message-ID: <33E20AEB.718C@interactive.sony.com> References: <33E1FCFE.5F42@erols.com> <33E20029.6B6E@erols.com> NNTP-Posting-Host: 194.203.13.10 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.01 (Win95; I) Clint Kelly wrote: > > Well, I just figured out that I have to use "interlaced mode" to have > vertical resolutions of 480. Has anybody out there used interlaced mode > in any of their programs? Is it hard? How much would I have to modify > my program to use it? > > clint > > There are not many modifications for hi-res interlace mode; if your program frame rate is high, you can use it, and it's often worth if because it does look very nice. Firstly: GsDefDispBuff(0,0,0,0) for interlace. Secondly: no need to call DrawSync(0) every frame, or GsSwapDispBuff() for that matter. In interlace, there's one buffer, the odd and even lines are accesses alternately, providing a quasi-double buffering. Thirdly: check frame rate (do this: each frame, use hsync = VSync(1); FntPrint("hsync: %d\n", hsync); this will tell you how many scan lines the program takes per frame. If it's over 280 it's going to miss frames (drop below maximum frame rate, 60fps NTSC, 50fps PAL). --- The reason for all this is that interlace mode doesn't work properly at less than top frame rate: you start to get all kinds of flickering etc. -- You can stop this flicker and keep it all smooth, at the cost of some things not getting drawn, by adding the line ResetGraph(1); // stop drawing, cancel all unfinished draw processes just after VSync(0). Fourthly: when calling GsInitGraph, one of the arguments is GsINTER/GsNONINTER | GsOFSGPU/GsOFSGTE. Use the value (GsINTER|GsOFSGPU) for interlace. -- As far as I can remember, those are the only changes needed for interlace. I think some of the SCEI and SCEE sample programs use interlace. If it doesn't work as suggested above, I'll post some code. Lewis