So, I'm rendering a textured quad via Graphics.DrawMesh, on an orthographic camera, for windows/mac standalone, in the latest unity 3 beta. All is well when there are no rotations, I have absolutely pixel-perfect crisp graphics.
However, when I rotate the textured quads, it quickly starts to look rather horrible in terms of quality. In SlimDX, running over top of the Direct3DX sprite extensions, it pretty much handled this for me -- there were some artifacts, but they were minor to the point of only being noticeable as the rotation angle changed.
On the Unity side, I've tried:
- Using Bilinear filtering for the Texture2Ds that are rotated (normally it is Point for maximum correctness/quality when not rotated), but that makes the entire texture look fuzzy, despite the fact that the edges look better.
- Trilinear, which does the same as Bilinear.
- Adjusting overall quality settings, including forcing on aniso, 8x multisampling (from 16x, that's the highest my card will go) -- and none of that has any effect whatsoever.
I've been all through the Unity documentation a gazillion times for this -- first for my game Tidalis back four or five months ago, and now for my other game AI War, which I'm now porting to Unity.
Surely there's something I'm just missing...?

First Edit:
Here's the direct image I'm using as the texture on the textured quad, if anyone else wants to check out what is happening:
![]()
Second Edit:
Here's an image that it might be easier to see the general bilinear distortion on, because of better contrast:

This is the sort of quality drop I'm seeing, and I'm seeing it in your image, too:

See how that one starship, which has been rotated with bilnear filtering applied, looks all blurry while the non-rotated point-filtered sprites all look perfectly clear? That's the crux of the issue I'm running into here. Aside from the rotated starship looking pretty blurry in general, worst of all that pink border is incredibly blurry, which makes it stand out like a sore thumb near its un-rotated-point-based peers.
Certainly that can be bypassed by making everything bilinear filtered, but that looks pretty wretched, too. Here's an example of the quality differences in general between bilinear and non-bilinear for non-rotated sprites:
Nice and crisp, no bilinear filtering except on the rotated missiles:

Unfortunately blurry, with bilinear filtering on everything:

This is really quite a challenge!
Are you sure the comparison with the DirectX implementation is more or less 1-to-1? That is, are the textures, texture resolutions, and apparent sizes on screen the same or similar?
– j_y_kYep, I'm 100% sure it's 1:1. These are being displayed in screen coordinates, so basically pixel-for-pixel when not rotated. When not rotated, as I noted, this looks absolutely perfect. But, when rotated but with no other changes, the quality drops.
– x4000I don't have any additional ideas off the top of my head, but maybe someone else will be able to suggest something. (If there's any way you could make a screenshot or example project available, that might make it easier to guess at what might be causing the problem.)
– j_y_kOk -- thanks for the comments, anyway. I've added two images, one of SlimDX and the other of Unity 3D. Hopefully that will make it more clear. Unfortunately the sample product is nearly a hundred lines of code, it's not something I can post publicly -- and it's something I've tried every which way, so it must be something global enough that others would see. Simply rotating any textured quad produces this result in my experience with unity so far (since March). Hope the images help!
– x4000Oh, and one thing to clarify -- if the unity 3D ones look slightly smaller than the slimdx ones, that's just part of the issue I'm talking about -- it's blurring out their edges, which makes them look rough as well as slightly smaller, but they are definitely both being drawn at 1:1 screen space scale, and the rotations here are identical between the two screenshots.
– x4000