x


Achieving Crisp Pixel Perfect Text --> Best Practices?

I have an application I am working on that will run under Unity iOS on a first gen iPad. I need a way of displaying crisp dynamic text that will be entered in by the user at run-time and I want to take this text and display it ontop/infront of the word balloon image. While I can currently get the text and display it infront of the balloon both the text and balloon are coming out very pixelated on the device.

I am aware of and have tried guitext and Unity GUI but want to know if there are better alternatives.

I have also tried a 3D Text mesh, but I'm finding the text is still coming out pixelated when I test on the actual device. Does anyone know of any sites or tutorials, or have and advice on how to achieve really crisp dynamic text and images under Unity iOS? Any ideas or thoughts would be greatly appreciated!

more ▼

asked Apr 30 '12 at 07:18 PM

rhart gravatar image

rhart
1 1 1 1

When you say test on the actual device, are you deploying it or are you using unity remote to view it on the device? if using the remote it will be pixelated.

Apr 30 '12 at 07:42 PM Landern

As of now, unity iOS does not support dynamic fonts. Your best bet is to find the size that is most ideal, and export it at that given size.

Previously, when I came across a similar issue, I had to have 4 different font files for the same font so that I could show them crisp across iOS devices of differing gens and types. If you're using Unity's built-in GUI system, I honestly think that's the only approach that you have right now.

Using a third party plug-in such as NGUI would be my optimal suggestion, if you don't mind spending the money.

Apr 30 '12 at 07:44 PM dannyskim

I'm deploying the build to a real device each time. I am also trying 2DToolkit, but still seeing some significant pixelation happening. I also develop native iOS apps via the raw sdk and I'm used to extremely sharp graphics and text...just wondering how close to the crispness of a native sdk App people been able to get and the techniques they used to achieve this.

Apr 30 '12 at 07:56 PM rhart

I did the same as Dannyskim. I imported 3 fonts (arial in my case) of different point size and the fonts look crisp on all devices I've tried them on old/new iPhone and new iPad.

Apr 30 '12 at 08:09 PM Fabkins

It it pretty much required that you opt for an orthographic camera, or can you still achieve nice crisp results with a perspective camera?

Apr 30 '12 at 08:44 PM rhart
(comments are locked)
10|3000 characters needed characters left

1 answer: sort voted first

• For textures, the trick is to avoid scaling, and instead use pixelOffset to position the texture. Or you can get away with using a large texture on a large/retina display, and displaying it at exactly half-size on other displays.

Note that if you go this approach you may end up writing a lot of code to calculate the pixel position of almost every GUI element you want to draw, and its got to handle every size screen.

For the balloon around your text, you might consider using a GUIStyle, in effect drawing it like a GUI button. You can customize the texture that defines the button's border and background.

If you do it this way you'll have to draw the tail of your balloon separately. You could just make it a thin line from the balloon to the whoever is speaking, for instance.

• I don't know a reason why your text would look pixellated with UnityGUI. It shouldn't.

more ▼

answered Apr 30 '12 at 08:53 PM

Bampf gravatar image

Bampf
5.1k 8 20 49

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x2028
x567
x369
x15

asked: Apr 30 '12 at 07:18 PM

Seen: 1430 times

Last Updated: Apr 30 '12 at 08:53 PM