Mercurial > sdl-ios-xcode
view README.PS3 @ 3333:b334b4f7dfa0
[SDL] Bad math in SDL_RenderCopy
Mason Wheeler to sdl
When I tried to render an image using something other than NULL for srcrect, it got horribly distorted. I traced it down to the fact that the math in the rectangle adjustments performed just before the call to renderer->RenderCopy is written inside out. It should look like this:
if (dstrect->w != real_dstrect.w) {
int deltax = (dstrect->x - real_dstrect.x);
int deltaw = (dstrect->w - real_dstrect.w);
real_srcrect.x += (deltax * real_srcrect.w) / dstrect->w;
real_srcrect.w += (deltaw * real_srcrect.w) / dstrect->w;
}
if (dstrect->h != real_dstrect.h) {
int deltay = (dstrect->y - real_dstrect.y);
int deltah = (dstrect->h - real_dstrect.h);
real_srcrect.y += (deltay * real_srcrect.h) / dstrect->h;
real_srcrect.h += (deltah * real_srcrect.h) / dstrect->h;
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sat, 03 Oct 2009 16:23:16 +0000 |
parents | 94fb40a4a9a7 |
children |
line wrap: on
line source
SDL on Sony Playstation3 ------------------------ Installation: First, you have to install the Cell SDK - Download the Cell SDK installer RPM and ISO images to a temporary directory such as /tmp/cellsdk. - Mount the image: mount -o loop CellSDK-Devel-Fedora_3.1.0.0.0.iso /tmp/cellsdk - Install the SDK installer: rpm -ivh cell-install-3.1.0-0.0.noarch.rpm - Install the SDK: cd /opt/cell && ./cellsdk --iso /tmp/cellsdkiso install You'll than need to install the SPU-libs - Run make ps3-libs && make ps3libs-install Finally, install SDL - Go to SDL-1.2/ and build SDL like any other GNU style package. e.g. - Build the configure-script with ./autogen.sh - Configure SDL for your needs: ./configure --enable-video-ps3 ... - Build and install it: make && make install Todo: - Mouse & Keyboard support - On SPU-side the current scaler and converter restrictions are: - resolution has to be a multiple of 8 (will work on that) - scaler/converter only supports the YV12 and IYUV format - the scaler works only bilinear (lanzos would be nice) - Optimize the SPU-program handling on the PPE side - Integrate spumedia in SDL Have fun! Dirk Herrendoerfer <d.herrendoerfer [at] de [dot ibm [dot] com>