← Kembali ke blog

Nombor Kerosakan Terapung: Penerimaan Serahan dan Pelaksanaan Enjin

Kriteria gagal apabila popup kabur, glif hilang, susunan salah, atau tersekat; memilih TMP vs digit bitmap, kolam dan susunan Canvas, langkah penerimaan Unity UGUI, dan cara art digit reka bentuk dipasang.

Diterbitkan
  • game-ui-design
  • game-dev-ai
  • ui-to-engine
  • bitmap-font
  • unity
  • godot
  • cocos
  • vberai
  • 2026
Nombor Kerosakan Terapung: Penerimaan Serahan dan Pelaksanaan Enjin

Apabila sepuluh serangan mendarat dalam satu saat, isu teks terapung jarang diselesaikan dengan “fon lebih besar”: tajam dalam Editor, lembut pada peranti; warna krit berfungsi tetapi “K” atau tolak hilang; nombor duduk di atas butang HUD dan mencuri ketikan; atau Instantiate memuncak GC. Popup ialah UI frekuensi tinggi, jangka hayat pendek—terima mereka secara berasingan daripada HUD statik.

Di bawah memberi tumpuan kepada Unity UGUI / TextMeshPro (RectTransform, Canvas, sortingOrder). Godot: Label + Theme / bitmap; Cocos: Label + fon bitmap + kolam—kriteria dan urutan langkah yang sama. Cengkerang HUD statik: senarai semak enjin + MCP. Item pra-hantar 3 (“art kabur / nombor kerosakan”)—uji semula pada peranti Release.

Kriteria gagal (mana-mana satu = tidak lulus): kebolehbacaan terjejas (kabur, klip, glif hilang); masa bingkai pertempuran jelas lebih buruk daripada garis dasar tanpa popup pada peranti sasaran; popup menyekat ketikan yang diperlukan dengan raycast masih aktif; visual krit/heal/miss tidak sepadan dengan spesifikasi dipacu data; pemformatan nombor tidak konsisten dengan jadual reka bentuk (contohnya 1.2K vs 1200 bercampur).

Sharp in Editor vs soft on device


Pilih dahulu: TMP atau digit bitmap

SenarioLebih sesuaiPerangkap biasa
Digit + beberapa simbol (0-9 . + - %)Bitmap / mesh digit tersuaiJurang set aksara; penapis salah → kabur
Rentetan penyetempatan penuh (“Critical”, “Immune”)TMP + jadual rentetanLebar bergetar apabila bercampur dengan digit
Garis luar tebal, gradien, gaya beranimasiBitmap atau urutan bingkaiKeadaan hilang → warna sandaran salah
PrototaipTMP SDF lalaiTiada resolusi rujukan → lembut pada peranti

Jika kabur peranti berterusan: Canvas Scaler rujukan, TMP padding/atlas, bitmap Filter Mode (selalunya Point)—kemudian set aksara atau kualiti SDF. Lihat perancangan set aksara fon bitmap dan item pra-hantar 3.

Bitmap digit atlas vs TMP/SDF text


Unity: bina dan terima (6 langkah)

1. Canvas khusus atau susunan eksplisit

  • Gunakan Canvas khusus (Screen Space - Camera sejajar dengan kamera pertempuran) atau lapisan anak HUD.
  • Tetapkan sortingOrder di atas UI dunia, di bawah popup modal; raycastTarget = false pada grafik popup.
  • Popup dunia: satu World Canvas dikongsi—bukan satu Canvas setiap nombor.

Popup Canvas sort above HUD, below modals, raycasts off

2. Kolam objek

  • Panaskan awal ≥ kiraan puncak di skrin (tekanan daripada kemahiran; selalunya minimum 16–32).
  • Semasa kitar semula: tetapkan semula kedudukan, alpha, skala, keadaan animasi, teks.
  • Tiada Instantiate/Destroy setiap serangan.

3. Pisahkan data daripada persembahan

  • Pertempuran mengeluarkan DamagePopupEvent (nilai, jenis, pos dunia/titik lampiran, bendera krit).
  • Persembahan memilih warna, awalan, singkatan (K/M/B), lengkung.
  • Jadual reka bentuk memetakan jenis → Prefab gaya (Normal / Crit / Heal / Miss / Block).

4. Gerakan dan kebolehbacaan

  • Biasa: terapung naik + pudar + skala sedikit; 0.4–0.8s; berperingkat atau beratur pada sauh yang sama.
  • Serangan berbilang bingkai sama: gabungkan atau offset 1–2 bingkai untuk elak pertindihan.
  • Jika saiz mengikut jarak kamera, gunakan satu peraturan skala dunia—jangan campur dengan skala UI Canvas dua kali.

Multiple popup states with horizontal stagger

5. Set aksara dan pemformatan

  • Bitmap: sahkan 0-9 . , + - % x K M B dan peraturan singkatan projek.
  • TMP: pisahkan medan atau sprite—jangan bergantung pada satu rentetan untuk menukar fon.
  • Dengan limpahan lokasi: jangan rasterkan ayat penyetempatan penuh sebagai art popup.

6. Ujian asap peranti

  • Dev dan Release: 30s kawanan mob, kemahiran bos berbilang tik, peranti RAM rendah.
  • Bandingkan masa bingkai dengan vs tanpa popup; tangkap skrin krit/heal/miss masing-masing sekali.
  • Kriteria lulus hidup dalam Prefab + konfigurasi kolam, bukan hanya Scene ujian.

Serahan reka bentuk (digit dan keadaan)

PenghantaranKegunaan
Art digit atau gaya TMP setiap keadaan (Normal/Crit/Heal/Miss)Prefab/Material dipacu jadual
Garis luar/bayang pada resolusi sasaranSemakan ketajaman peranti
Warna + ikon krit/combo pada digitElak warna keras dalam kod
Skop set aksara (digit sahaja vs unit penyetempatan)Bitmap atau jadual rentetan

Senarai semak serahan reka bentuk: jika popup raster, tentukan setiap lokasi atau tidak; lalai digit bitmap + label TMP.


Penghalaan pembaikan

GejalaPunca berkemungkinanTindakanPemilik
Lembut pada peranti, tajam dalam EditorScaler / SDF / penapis bitmapSelaraskan res rujukan; penapis Point; padding SDFKejuruteraan
Glif hilangSet aksara / simbolLanjutkan set aksara; atau TMPKejuruteraan + Reka Bentuk
Menyekat butangSusunan / raycastTurunkan susunan atau lumpuhkan raycastKejuruteraan
TersekatTiada kolam / terlalu banyak FX+teksKolam; gabungkan pop bingkai samaKejuruteraan
Rupa krit salahWarna kerasJenis→Prefab; keadaan reka bentukKejuruteraan + Reka Bentuk
Berpisah daripada gaya HUDDua saluran paip fonSatukan sumber fon atau ThemeReka Bentuk + Kejuruteraan

Soalan Lazim

Mesti popup World Space?
Tidak. 2D tetap selalunya menggunakan Screen Space - Camera; kamera 3D bebas selalunya menggunakan World Canvas. Pilih satu dan dokumentasikan.

Partikel UI untuk gaya?
Baik untuk FX; digit kekal Label/TMP/mesh untuk lokasi dan pengumpulan.

Satu skrip dengan logik kerosakan?
Keluarkan peristiwa daripada logik; togol persembahan (ShowDamageNumbers) untuk ujian dan kebolehaksesan.

Nombor besar?
Satu peraturan pemformat daripada reka bentuk; satu pelaksanaan—tiada salin-tampal merentas skrip UI.

Panduan lain yang mungkin anda suka