Author Topic: Easter Lang Fonts (Jap) requires 4096 texture in order to not be pixelated!  (Read 6282 times)

Eyesonly

  • Guest
Hello All.

I have been using NGUI for a bit and I love it.
Recently I had to add Japanese subtitles for my game. So I followed the "NGUI: Packed Fonts" tutorial on youtube and was able to pack more than 13k JAP characters into a 4096x4096 texture.
After following the steps and changing the shader, compression and removing effects. The characters look pixalated when I use the texture as 1024. Look at the image below



However, If I set the texture of the font to be 4096 then it looks normal



But the problem is that the size of the texture is 64MB T_T. Look below



And here is the material



So my question is, how do I make the font look normal and keep the size of the texture down? Like I said I followed the ""NGUI: Packed Fonts" tutorial so it should be using the RGBA channels.

Is it possible to reduce the size? Am I missing some setting to keep the size low?

Please reply as soon as possible :). I need to find a fix urgently!

Thanks!

ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
Looking at the texture you posted, it's not actually packing anything. Everything seems to be in the Blue channel. Reduce the texture size to 2048 in BMFont and try exporting again.

Eyesonly

  • Guest
Awesome, thank you. I'll try that now!

EDIT: Thanks! The size now reduced to 16MB on 2048 to get the font looking normal, If i set to 1024 it will be pixelated.
Is that related to the fact that we are exporting the font with texture size 2048x2048?



Cheers.
« Last Edit: April 01, 2013, 06:20:33 AM by Eyesonly »

ArenMook

  • Administrator
  • Hero Member
  • *****
  • Thank You
  • -Given: 337
  • -Receive: 1171
  • Posts: 22,128
  • Toronto, Canada
    • View Profile
You must use the same texture size in Unity as you exported in BMFont. 2048x2048 is going to be the smallest possible texture size for you (based on what I see from your screenshots).

Eyesonly

  • Guest
Hmm .. I see. This is still bad though (for my purpose). This means I have to load 16MB texture in memory just to display Japanese characters!

Are there any workarounds? Such as another way of displaying Japanese characters? May be a super packed font specifically for the Japanese language?
Can I unload the texture after I finish displaying the characters and load it when I want to display the characters? If yes, can you point me on how to do it?

Thanks!

Nicki

  • Global Moderator
  • Hero Member
  • *****
  • Thank You
  • -Given: 33
  • -Receive: 141
  • Posts: 1,768
    • View Profile
Consider using dynamic fonts
http://www.tasharen.com/forum/index.php?topic=2707.0
They should only load the chars you actually need, which should be significantly less.

galuodo

  • Jr. Member
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 65
    • View Profile
try using point filter

Eyesonly

  • Guest
@Nicki
"Consider using dynamic fonts
http://www.tasharen.com/forum/index.php?topic=2707.0
They should only load the chars you actually need, which should be significantly less."

Hey, thanks for the reply. I copied the font over to Unity. I am not able to drag it over in the Font Maker? The post doesn't tell you either (it only has the pictures which I didn't find to be very helpful). I can see the font in the inspector but I can't select it from my NGUI label. Any help?

Cheers.


@Galuodo: "try using point filter" - what's a point filter :) ? Thnx.
« Last Edit: April 01, 2013, 07:50:12 AM by Eyesonly »

galuodo

  • Jr. Member
  • **
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 65
    • View Profile
@Nicki
"Consider using dynamic fonts
http://www.tasharen.com/forum/index.php?topic=2707.0
They should only load the chars you actually need, which should be significantly less."

Hey, thanks for the reply. I copied the font over to Unity. I am not able to drag it over in the Font Maker? The post doesn't tell you either (it only has the pictures which I didn't find to be very helpful). I can see the font in the inspector but I can't select it from my NGUI label. Any help?

Cheers.


@Galuodo: "try using point filter" - what's a point filter :) ? Thnx.


In material of font's, set filter: point, the default maybe bilinear or triliner