fonts.odin 771 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package karl2d_minimal_example
  2. import k2 "../.."
  3. import "core:log"
  4. main :: proc() {
  5. context.logger = log.create_console_logger()
  6. init()
  7. for !k2.shutdown_wanted() {
  8. step(0)
  9. }
  10. shutdown()
  11. }
  12. cat_and_onion_font: k2.Font_Handle
  13. init :: proc() {
  14. k2.init(1080, 1080, "Karl2D Fonts Program")
  15. cat_and_onion_font = k2.load_font_from_bytes(#load("cat_and_onion_dialogue_font.ttf"))
  16. }
  17. step :: proc(dt: f32) -> bool {
  18. k2.process_events()
  19. k2.clear(k2.BLUE)
  20. font := k2.get_default_font()
  21. if k2.key_is_held(.K) {
  22. font = cat_and_onion_font
  23. }
  24. k2.draw_text_ex(font, "Hellöpe! Hold K to swap font", {20, 20}, 64, k2.WHITE)
  25. k2.present()
  26. free_all(context.temp_allocator)
  27. return true
  28. }
  29. shutdown :: proc() {
  30. k2.destroy_font(cat_and_onion_font)
  31. k2.shutdown()
  32. }