Path: chuka.playstation.co.uk!chuka.playstation.co.uk!chuka.playstation.co.uk!not-for-mail From: Lewis_Evans@Playstation.sony.com Newsgroups: scea.yaroze.programming.2d_graphics Subject: Re: GPU Packets... Date: 25 Feb 1998 10:12:27 -0000 Organization: Sony Computer Entertainment Europe - 119.SS5 Lines: 57 Sender: news@chuka.playstation.co.uk Message-ID: <6d0qqb$acg1@emeka.playstation.co.uk> Reply-To: Lewis_Evans@Playstation.sony.com NNTP-Posting-Host: emeka.playstation.co.uk From: Lewis_Evans@Playstation.sony.com To: news@playstation.co.uk The thing about the GPU packets is, you really don't need to access them directly. I've been programming on Yaroze for 15 months now and I still don't know what format they are (and only guess that the average size is 24 bytes). I know what they are, namely purely 2d draw commands sent to the GPU, and that they are created as the output of 3d rendering functions like GsSortObject4; but I see no advantage to directly accessing them. Of course, if you're really keen, feel free to work out what they're saying; each packet probably has a type identifier, is liable to have x,y,w,h fields, tpage and clut ids, perhaps 'attribute' member, or just 'scale, rotate' etc; messing about with 2d primitives (or polygons rendered screen-relative so that they appear on screen just as they do in the world, set a unit matrix for GsSetLs) should enable you to figure out the format. Question is, what use that format is. Lewis Well, that's about the best explaination I have heard... Sounds good to me.. I just thought it was odd that there is no 'clear' data as to what it does. Saying that it is used in the most basic of function you would think we would have some data on it.. Just a thought. Now is there anyone that can back Graeme up? Regards, Jeff / ROGUE Graeme Evans wrote in message <6cv79u$as9@chuka.playstation.co.uk>... >I found an interesting page on the internet that had a big list of the >primitives. It seems like all our 3D tmds and stuff have 3D calculations >done on them (by the library assisted by the GTE?) and get turned into 2D >GPU packets which are for things like triangles and quadrangles. These >packets are what we have the 'packet area' for. > >Anyway block fills are about 12 bytes long, going up to 36 bytes for a flat >shaded textured quadrangle, so I guess 24 or 26 must be an 'intelligent >average'. Sprites go in either a free size sprite (16 bytes) or a 16x16 >sprite(12 byte) packet which has stuff like colour, an x and y coordinate, >and x and y texture page coordinate, clut ID and height and width