1. Import DFGUI เข้ามาใน Unity Project
2. จากนั้นทำการ import file .txt กับ .tga ของ Bitmap font เข้ามาใน Unity Project นะครับ
3. เลือกไฟล์ Font (.tga) แล้วดูในส่วนของ Inspector แล้วทำตามรูปด้านล่าง แล้วกด Apply ครับ
วิธีการทำ
1. Import DFGUI เข้ามาใน Unity Project 2. จากนั้นทำการ import file .txt กับ .tga ของ Bitmap font เข้ามาใน Unity Project นะครับ 3. เลือกไฟล์ Font (.tga) แล้วดูในส่วนของ Inspector แล้วทำตามรูปด้านล่าง แล้วกด Apply ครับ
0 Comments
สิ่งที่ต้องเตรียม 1. โปรแกรม BMFont (http://www.angelcode.com/products/bmfont/) 2. Font ที่ต้องการ 3. Unity Plug-in (NGUI หรือ DFGUI) วิธีการทำ 1. หลังจากที่เปิด BMFont ให้ไปที่ Options -> Font Settings 2. จากนั้นเลือก Font และ ขนาดของ Font แล้วกด OK 3. จากนั้นให้เลือก Font ที่ต้องการโดยการ คลิกที่ช่อง สี่เหลี่ยม 4. คลิกลาก ตัวอักษรที่ไม่ต้องการ 5.สามารถดู Texture ที่จะถูก Generate โดยไปที่ Options -> Visualize 6. หลังจากพอใจแล้ว ก็ให้ไปที่ Options -> Save bitmap font as.. 7. เลือก Folder ที่จะทำการ Export 8. หลังจากที่ ทำการ Export แล้วก็จะได้มา 2 files นะครับ (.tga กับ .fnt) ให้ทำการเปลี่ยน นามสกุลของ .fnt เป็น .txt 9. เท่านี้ก็พร้อมที่จะนำไปใช้งานกับ NGUI หรือ DFGUI แล้วครับ ปล. เดี๋ยวจะทำวิธีการใช้งาน Bitmap Font ใน NGUI กับ DFGUI อีกทีนะครับ กำลังทำเกมอยู่ดีๆ แล้วเกมดัน Frame rate ตกไปถึง 0.2 โดยไม่ทราบสาเหตุ ซึ่งก่อนหน้านี้ก็ไม่เป็น ก่อนเป็นเพิ่งได้ทำการเพิ่ม Particle Effects เข้าไปก็ไม่มีปัญหาใดๆ จนกระทั้งปรับแต่งมากไปจนเกิดปัญหา จึงได้ข้อสรุปที่ควรระวัง(อาจทำให้เกม Frame rate ตกก็เป็นได้) สิ่งที่ทำให้เกม Frame rate ตกมีดังนี้ 1. ใช้จำนวน Draw Calls มากเกินไป ซึ่งอาจเกิดจากการใข้ Materials, Textures, Light อื่นๆ ที่มากจนเกินไป 2. เปิดใช้งาน Collision ใน Particle Effects หลายๆตัวพร้อมๆกัน ทำให้มีการคำนวณที่มาก (เจอมากะตัวเลยมาโพส) 3. มีการใช้งาน Print("debug") หรือ Debug.Log("bug"); มากจนเกินไป ทำให้เวลาทดสอบแล้วช้า (อันนี้เจอเพราะเพื่อนใช้ Print("OTL") ซะเยอะ) 4. ...ถ้าเจอจะมาเขียนเพิ่มต่อ ปล. เจอเองกับตัวล้วนๆ ใครมีอะไรเพิ่มเติมก็แนะนำมาได้นะครับ ปัญหาที่เจอ เป็นปัญหาที่เกิดหลังจากติดตั้ง Android SDK ทำให้ทุกครั้งที่ Unity มีการ Compile Script ด้วย "adb.exe" (ของ Android SDK) จะทำให้เวลาปิด Unity แล้วค้างนะครับ วิธีการทำ UV สำหรับ LightMap ก็คือการสร้าง UV set ใหม่ขึ้นมานะครับ ปล. ถ้าตัว UV ของ Model ไม่มีการซ้อนทับกันก็ไม่จำเป็นต้องทำก็ได้นะครับ (แต่สำหรับ UDK ควรทำนะครับ) ในส่วนของ Unity เองเวลา Import Mesh ก็จะมีให้ check ในส่วนของ Generate LightMap UV นะครับ ขั้นตอนการทำ 1. เลือก Model ที่ต้องการจะทำ UV LightMap 2. ให้ทำการเปิด UV Texture Editor (ไปที่ Edit UVs -> UV Texture Editor ในส่วนของ Polygons) 3. ในส่วนของ UV Texture Editor ให้ไปที่ Polygons -> Create Empty UV set หรือ Copy UVs to UV Set ก็ได้ครับ 4. คลิกที่ UV Sets ในส่วนของ Tools bar จะเห็นว่ามี UV set ต้วใหม่ขึ้นมา ก็ให้เลือกครับ 5. จากนั้นให้เราทำการ แยก UV แต่ละส่วนไม่ให้มันซ้อนกันครับ 6. เท่านี้เราก็จะได้ UV ส่วนที่ 2 สำหรับ LightMap ปล. ขออภัยครับเสียงเบาไป
|
ผู้เขียนก้องเกียรติ เลียวประเสริฐพร Archives
October 2020
Categories
All
|