Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

An update to Anim8or, v1.00b, is available with a few bug fixes. Get your copy HERE. See the "ReadMe" file for details.

Author Topic: Don't Antialias Against Background Option  (Read 5726 times)

wild_qwerty

  • Newbie
  • *
  • Posts: 10
    • View Profile
Don't Antialias Against Background Option
« on: September 04, 2008, 10:16:43 pm »

I currently make a lot of sprites for a game where I need a 'hard' edge with no anti aliasing. Rendering the image with the Alpha channel and pasting it over doesn't really do the job as the image is still anti aliased against the back ground and while it might have a hard outside edge some of the background colours creep into the image so I get these colours in my sprite (looks like crap).


Anyway, this is how my friend does the job using 3d Max, could this option be added to Anim8or?

You can disable AA on outer edges in Max while rendering (I discovered it some time ago), so you can skip this whole "removing AA in PS" thingie.

Customize --> Preferences --> Rendering Tab --> Check "Don't Antialias Against Background"
Logged

hihosilver

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1294
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #1 on: September 05, 2008, 04:39:17 am »

When go you "Render>Render Image..." Un-check the "antialiased" box ;)
Logged

wild_qwerty

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #2 on: September 05, 2008, 05:37:19 am »

Not quite, I want to render it with AA on because it looks much better, but I don't want the outside edge of the sprite anti aliased against the background. When I add the sprite into the game the background will be transparent for that the sprite/model overlays the game and has a clean edge. Unfortunately with AA on you end up artefacts on the outside edge. With AA off the model doesn't look as good.
Logged

thecolclough

  • Sr. Member
  • ****
  • Posts: 832
  • 3D Ignoramus 1988-2002, Anim8or User 2002-present.
    • View Profile
    • www.mattghc.com
Re: Don't Antialias Against Background Option
« Reply #3 on: September 05, 2008, 10:59:34 am »

so you're saying you want an option for selective antialiasing, with different parts of the same image AA or not AA, depending on whether the edge is against another model, or against the background?
Logged

almost cool

  • Sr. Member
  • ****
  • Posts: 316
  • The Truffle Shuffle
    • View Profile
    • www.deadboltdevelopment.com
Re: Don't Antialias Against Background Option
« Reply #4 on: September 05, 2008, 01:35:05 pm »

thats what i got out of it.but opengl is whats rendering,so steve wouldnt have any control over that.

5L1D3R

  • Newbie
  • *
  • Posts: 45
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #5 on: September 05, 2008, 09:00:34 pm »

Antialiasing works on the 2D image, but it sounds like you want to antialias the 3D object.  based on that, I agree with almost cool about rendering
Logged
Let's settle this the ol' Navy way...
First one to die looses!

wild_qwerty

  • Newbie
  • *
  • Posts: 10
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #6 on: September 08, 2008, 11:51:17 am »

so you're saying you want an option for selective antialiasing, with different parts of the same image AA or not AA, depending on whether the edge is against another model, or against the background?

Yes that is exactly what I need. Though I only need it to not AA against the background (I want a Transparent background). At the moment I'm having to use a program called Super Sprites to combine an AA render with a non AA render. It semi-automates the task but I have a lot of different animations and it really slows the process down.

http://www.phelios.net/supersprites.html

I'm not quite sure what you guys are talking about but regarding openGL but surely the background can be made transparent (no colour) and therefore no AA is performed against it? For anyone using Anim8or to make game sprites this would be a very important option to have, most people will just end up rendering all their sprites with out AA which makes them look crappy :(

For the record I'm working on a Fallout 2 mod called Mutants Rising

http://www.mutantsrising.com/

Logged

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 1547
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #7 on: September 11, 2008, 06:05:05 am »

I understand what you're asking.  Rendering an anit-aliased image but a hard alpha mask.  I don't know if I can easily do it but I'll certainly keep it in mind when I'm working on the renderers.
Logged

CobraSpectre

  • Newbie
  • *
  • Posts: 39
    • View Profile
Re: Don't Antialias Against Background Option
« Reply #8 on: September 11, 2008, 04:56:42 pm »

I think what you want is a premultiplied alpha. Currently your edges become a partially transparent combination of the object color and the background color. The premultiplied alpha makes your edges the object color only.

You might be able to try rendering large and resizing. Render without AA at a size that is 2x, 4x, 8x, etc larger than you want. Bring it into a photo editing program like GIMP, delete the background making it transparent. Then resize it down to the correct size.
« Last Edit: September 11, 2008, 07:15:52 pm by CobraSpectre »
Logged