Path: chuka.playstation.co.uk!news From: Andrew Partington Newsgroups: scee.yaroze.freetalk.english Subject: Aspect ratio and Dynamic TMD's Date: Sat, 19 Jul 2003 15:36:28 +0000 Organization: PlayStation Net Yaroze (SCEE) Lines: 45 Message-ID: NNTP-Posting-Host: public2-ward1-6-cust140.oldh.broadband.ntl.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 X-Accept-Language: en-us, en Well I got my first unlit untextured quad on the screen (yeah I know, I am "teh w00tingest" ;)), but I was wondering about a couple of things. I have my projection distance set at 256 (the camera at 0,0,-256 looking at 0,0,0), this appears to let me specify vertices in pixel resolution (if that makes sense), except it seems slightly out in the Y axis when the screen height is set to 256, when you set it to 240 it works fine. I have overcome this by having an extra GsCOORDINATE2 as a world coordinate (instead of using WORLD from libps.h, which is just null), and then scaling the Y axis by some value to compensate for the PAL aspect ratio (still working on what the value should be, trial-and-error y'see), but I was wondering if there was a global variable i'm not setting - sprites seem to use the correct aspect ratio when you alter the display/draw environment settings, so why not dynamic TMD's? Of course I could just set the screen height to 240 and miss out on 16 pixels, that'd be the easy way out, but I want to make full use of the display area. Another thing - when you point to your primitives in TMD_OBJ, do they all have to be the same type (e.g. TMD_F4N) or can they point to a mixed set of primitives (e.g. a void* of n bytes) - so one "object" can contain quads, sprites, lines, triangles etc instead of having 1 TMD_OBJ per primitive type? It would be fairly easy to populate since you already know the size of the primitive you are going to insert, but would the Yaroze be able to handle the data like that? (I would ideally like one TMD_OBJ per map layer, but it isn't essential) What is the relationship between the projection distance, the camera, the ordering tables and the 3rd arg to GsSortObject4()? I've been pretty much trial-and-erroring that value too and the book doesn't explain it too well (or I haven't got my head round it yet)... Should be fairly straightforward to do a TMD-based map drawing routine now i've sussed the basics (famous last words!), whether or not it'll be any faster remains to be seen :D How come Chris' game didn't work on the coverdisk with CW? Will I have to change dev environments too? Cheers, Andy P