On Mon, Nov 14, 2016 at 5:25 PM, David Vanderson <david.vander...@gmail.com> wrote: > Thanks Jay, I hope I'm not abusing the terminology. If I have a sprite that > is a line, and it's rotated a bit, then is that not similar to a polygon > edge not falling on pixel boundaries?
Yes, that's what I meant by the rotated rectangles. > As an example, I've attached a test program and a screenshot of the rotated > and scaled down line segment. This is the sort of thing I'm worried about. > Any advice? I could be wrong, but I don't think that there's an obvious anti-aliasing algorithm that fits mode-lambda's use cases. I would recommend rendering at a high buffer size and then down sampling. I attached a version of your program that does this. FWIW, since mode-lambda is imitating the SNES, it didn't really have this problem because rotation only worked for the background layer in Mode 7 and is almost exclusively used for chunky things rather than fine things, so you wouldn't see bad aliasing of foreground elements. However, looking at any Mode 7 effect, you instantly see the aliasing: http://images.nintendolife.com/screenshots/16705/large.jpg http://img.gamefaqs.net/screens/8/9/8/gfs_40216_2_4.jpg http://media.tiltingatpixels.com/tilting/final_fantasy_4_flying.png > I didn't know that mode-lambda made sure that each pixel only came from a > single sprite. Even if some sprites have some transparency? Within a layer, there is no transparency. Transparency is only across layers. Section 1 of the docs says, "mode-lambda makes no guarantees about the layering and transparency behavior of sprites within a single layer." -- Jay McCarthy Associate Professor PLT @ CS @ UMass Lowell http://jeapostrophe.github.io "Wherefore, be not weary in well-doing, for ye are laying the foundation of a great work. And out of small things proceedeth that which is great." - D&C 64:33 -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
ml-line.rkt
Description: Binary data