Turned title font into a sprite sheet
|
@ -237,7 +237,7 @@ SKY_TEXTURES := $(wildcard $(TEXTURE_DIR)/sky/*.png)
|
||||||
MACHINE_TEXTURES := $(wildcard $(TEXTURE_DIR)/machine/*.png)
|
MACHINE_TEXTURES := $(wildcard $(TEXTURE_DIR)/machine/*.png)
|
||||||
MOUNTAIN_TEXTURES := $(wildcard $(TEXTURE_DIR)/mountain/*.png)
|
MOUNTAIN_TEXTURES := $(wildcard $(TEXTURE_DIR)/mountain/*.png)
|
||||||
GRASS_TEXTURES := $(wildcard $(TEXTURE_DIR)/grass/*.png)
|
GRASS_TEXTURES := $(wildcard $(TEXTURE_DIR)/grass/*.png)
|
||||||
CUSTOM_FONT_TITLE_TEXTURES := $(wildcard $(TEXTURE_DIR)/custom_font_title/*.png)
|
CUSTOM_FONT_TEXTURES := $(wildcard $(TEXTURE_DIR)/custom_font/*.png)
|
||||||
|
|
||||||
# Texture Files
|
# Texture Files
|
||||||
$(BUILD_DIR)/bin/segment2.o: $(SEGMENT2_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
$(BUILD_DIR)/bin/segment2.o: $(SEGMENT2_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
|
@ -255,7 +255,7 @@ $(BUILD_DIR)/bin/sky.o: $(SKY_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
$(BUILD_DIR)/bin/machine.o: $(MACHINE_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
$(BUILD_DIR)/bin/machine.o: $(MACHINE_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
$(BUILD_DIR)/bin/mountain.o: $(MOUNTAIN_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
$(BUILD_DIR)/bin/mountain.o: $(MOUNTAIN_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
$(BUILD_DIR)/bin/grass.o: $(GRASS_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
$(BUILD_DIR)/bin/grass.o: $(GRASS_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
$(BUILD_DIR)/bin/custom_font_title.o: $(CUSTOM_FONT_TITLE_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
$(BUILD_DIR)/bin/custom_font.o: $(CUSTOM_FONT_TEXTURES:%.png=$(BUILD_DIR)/%.inc.c)
|
||||||
|
|
||||||
# Others
|
# Others
|
||||||
$(BUILD_DIR)/bin/segment2.elf: SEGMENT_ADDRESS := 0x02000000
|
$(BUILD_DIR)/bin/segment2.elf: SEGMENT_ADDRESS := 0x02000000
|
||||||
|
@ -274,7 +274,7 @@ $(BUILD_DIR)/bin/sky.elf: SEGMENT_ADDRESS := 0x09000000
|
||||||
$(BUILD_DIR)/bin/machine.elf: SEGMENT_ADDRESS := 0x09000000
|
$(BUILD_DIR)/bin/machine.elf: SEGMENT_ADDRESS := 0x09000000
|
||||||
$(BUILD_DIR)/bin/mountain.elf: SEGMENT_ADDRESS := 0x09000000
|
$(BUILD_DIR)/bin/mountain.elf: SEGMENT_ADDRESS := 0x09000000
|
||||||
$(BUILD_DIR)/bin/grass.elf: SEGMENT_ADDRESS := 0x09000000
|
$(BUILD_DIR)/bin/grass.elf: SEGMENT_ADDRESS := 0x09000000
|
||||||
$(BUILD_DIR)/bin/custom_font_title.elf: SEGMENT_ADDRESS := 0x09000000
|
$(BUILD_DIR)/bin/custom_font.elf: SEGMENT_ADDRESS := 0x09000000
|
||||||
|
|
||||||
# EU segment 19 translations
|
# EU segment 19 translations
|
||||||
$(BUILD_DIR)/bin/eu/translation_de.elf: SEGMENT_ADDRESS := 0x19000000
|
$(BUILD_DIR)/bin/eu/translation_de.elf: SEGMENT_ADDRESS := 0x19000000
|
||||||
|
|
55
bin/custom_font.c
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
#include <ultra64.h>
|
||||||
|
#include "sm64.h"
|
||||||
|
#include "game/ingame_menu.h"
|
||||||
|
#include "make_const_nonconst.h"
|
||||||
|
|
||||||
|
ALIGNED8 const u8 texture_font_normal[] = {
|
||||||
|
#include "textures/custom_font_title/custom_font_normal.rgba32.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
const f32 font_normal_widths[] = {
|
||||||
|
/* ! " # $ % & ' ( ) * + , - . / */
|
||||||
|
0.2200f, 0.3750f, 0.4375f, 0.3750f, 0.4375f, 0.5000f, 0.2500f, 0.3125f, 0.3125f, 0.3750f, 0.4375f, 0.2500f, 0.3750f, 0.2500f, 0.3125f,
|
||||||
|
/* 0 1 2 3 4 5 6 7 8 9 */
|
||||||
|
0.4375f, 0.3800f, 0.4200f, 0.4375f, 0.4300f, 0.4375f, 0.4375f, 0.4000f, 0.4375f, 0.4375f,
|
||||||
|
/* : ; < = > ? @ */
|
||||||
|
0.2000f, 0.2500f, 0.3125f, 0.3750f, 0.3125f, 0.3125f, 0.5750f,
|
||||||
|
/* A B C D E F G H I J K L M N O P Q R S T U V W X Y Z */
|
||||||
|
0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.3125f, 0.5000f, 0.5000f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.5000f, 0.4375f, 0.3750f, 0.3750f,
|
||||||
|
/* [ \ ] ^ _ ` */
|
||||||
|
0.3125f, 0.3125f, 0.3125f, 0.3750f, 0.3750f, 0.2500f,
|
||||||
|
/* a b c d e f g h i j k l m n o p q r s t u v w x y z */
|
||||||
|
0.3000f, 0.3125f, 0.3125f, 0.3125f, 0.3125f, 0.3000f, 0.3750f, 0.3125f, 0.2200f, 0.3125f, 0.3125f, 0.1700f, 0.4350f, 0.3125f, 0.3000f, 0.3000f, 0.3125f, 0.2700f, 0.3125f, 0.3125f, 0.3125f, 0.2750f, 0.4375f, 0.3750f, 0.3125f, 0.3125f,
|
||||||
|
/* { | } ~ DEL */
|
||||||
|
0.3125f, 0.2500f, 0.3125f, 0.5000f, 0.2000f,
|
||||||
|
};
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
ALIGNED8 const u8 texture_font_title[] = {
|
||||||
|
#include "textures/custom_font_title/custom_font_title.rgba32.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
const f32 font_title_widths[] = {
|
||||||
|
/* ! " # $ % & ' ( ) * + , - . / */
|
||||||
|
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
||||||
|
/* 0 1 2 3 4 5 6 7 8 9 */
|
||||||
|
0.45f, 0.35f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f,
|
||||||
|
/* : ; < = > ? @ */
|
||||||
|
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
||||||
|
/* A B C D E F G H I J K L M N O P Q R S T U V W X Y Z */
|
||||||
|
0.55f, 0.50f, 0.50f, 0.50f, 0.45f, 0.45f, 0.50f, 0.55f, 0.28f, 0.60f, 0.50f, 0.45f, 0.55f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.55f, 0.50f, 0.50f, 0.50f, 0.60f, 0.52f, 0.60f, 0.45f,
|
||||||
|
/* [ \ ] ^ _ ` */
|
||||||
|
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
||||||
|
/* a b c d e f g h i j k l m n o p q r s t u v w x y z */
|
||||||
|
0.45f, 0.45f, 0.40f, 0.40f, 0.45f, 0.37f, 0.40f, 0.40f, 0.20f, 0.45f, 0.40f, 0.30f, 0.50f, 0.40f, 0.40f, 0.40f, 0.45f, 0.40f, 0.50f, 0.45f, 0.50f, 0.40f, 0.50f, 0.50f, 0.45f, 0.45f,
|
||||||
|
/* { | } ~ DEL */
|
||||||
|
0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
||||||
|
};
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
ALIGNED8 u8 texture_selectionbox_icon[] = {
|
||||||
|
#include "textures/segment2/custom_selectionbox_icon.rgba16.inc.c"
|
||||||
|
};
|
||||||
|
|
|
@ -1,499 +0,0 @@
|
||||||
#include <ultra64.h>
|
|
||||||
#include "sm64.h"
|
|
||||||
#include "game/ingame_menu.h"
|
|
||||||
#include "make_const_nonconst.h"
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_01[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_01.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_02[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_02.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_03[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_03.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_04[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_04.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_05[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_05.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_06[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_06.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_07[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_07.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_08[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_08.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_09[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_09.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_10[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_10.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_11[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_11.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_12[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_12.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_13[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_13.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_14[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_14.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_15[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_15.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_16[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_16.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_17[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_17.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_18[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_18.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_19[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_19.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_20[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_20.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_21[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_21.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_22[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_22.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_23[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_23.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_24[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_24.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_25[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_25.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_26[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_26.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_27[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_27.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_28[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_28.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_29[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_29.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_30[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_30.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_31[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_31.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_32[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_32.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_33[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_33.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_34[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_34.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_35[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_35.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_36[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_36.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_37[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_37.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_38[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_38.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_39[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_39.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_40[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_40.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_41[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_41.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_42[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_42.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_43[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_43.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_44[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_44.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_45[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_45.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_46[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_46.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_47[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_47.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_48[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_48.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_49[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_49.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_50[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_50.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_51[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_51.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_52[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_52.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_53[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_53.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_54[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_54.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_55[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_55.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_56[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_56.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_57[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_57.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_58[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_58.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_59[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_59.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_60[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_60.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_61[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_61.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_62[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_62.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_63[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_63.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_64[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_64.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_65[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_65.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_66[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_66.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_67[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_67.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_68[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_68.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_69[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_69.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_70[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_70.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_71[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_71.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_72[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_72.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_73[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_73.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_74[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_74.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_75[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_75.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_76[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_76.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_77[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_77.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_78[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_78.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_79[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_79.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_80[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_80.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_81[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_81.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_82[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_82.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_83[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_83.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_84[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_84.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_85[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_85.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_86[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_86.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_87[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_87.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_88[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_88.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_89[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_89.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_90[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_90.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_91[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_91.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_92[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_92.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_93[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_93.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_94[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_94.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 static const u8 texture_font_title_char_95[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_title_95.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
const u8* const font_title_chars[] = {
|
|
||||||
texture_font_title_char_01, // !
|
|
||||||
texture_font_title_char_02, // "
|
|
||||||
texture_font_title_char_03, // #
|
|
||||||
texture_font_title_char_04, // $
|
|
||||||
texture_font_title_char_05, // %
|
|
||||||
texture_font_title_char_06, // &
|
|
||||||
texture_font_title_char_07, // '
|
|
||||||
texture_font_title_char_08, // (
|
|
||||||
texture_font_title_char_09, // )
|
|
||||||
texture_font_title_char_10, // *
|
|
||||||
texture_font_title_char_11, // +
|
|
||||||
texture_font_title_char_12, // ,
|
|
||||||
texture_font_title_char_13, // -
|
|
||||||
texture_font_title_char_14, // .
|
|
||||||
texture_font_title_char_15, // /
|
|
||||||
texture_font_title_char_16, // 0
|
|
||||||
texture_font_title_char_17, // 1
|
|
||||||
texture_font_title_char_18, // 2
|
|
||||||
texture_font_title_char_19, // 3
|
|
||||||
texture_font_title_char_20, // 4
|
|
||||||
texture_font_title_char_21, // 5
|
|
||||||
texture_font_title_char_22, // 6
|
|
||||||
texture_font_title_char_23, // 7
|
|
||||||
texture_font_title_char_24, // 8
|
|
||||||
texture_font_title_char_25, // 9
|
|
||||||
texture_font_title_char_26, // :
|
|
||||||
texture_font_title_char_27, // ;
|
|
||||||
texture_font_title_char_28, // <
|
|
||||||
texture_font_title_char_29, // =
|
|
||||||
texture_font_title_char_30, // >
|
|
||||||
texture_font_title_char_31, // ?
|
|
||||||
texture_font_title_char_32, // @
|
|
||||||
texture_font_title_char_33, // A
|
|
||||||
texture_font_title_char_34, // B
|
|
||||||
texture_font_title_char_35, // C
|
|
||||||
texture_font_title_char_36, // D
|
|
||||||
texture_font_title_char_37, // E
|
|
||||||
texture_font_title_char_38, // F
|
|
||||||
texture_font_title_char_39, // G
|
|
||||||
texture_font_title_char_40, // H
|
|
||||||
texture_font_title_char_41, // I
|
|
||||||
texture_font_title_char_42, // J
|
|
||||||
texture_font_title_char_43, // K
|
|
||||||
texture_font_title_char_44, // L
|
|
||||||
texture_font_title_char_45, // M
|
|
||||||
texture_font_title_char_46, // N
|
|
||||||
texture_font_title_char_47, // O
|
|
||||||
texture_font_title_char_48, // P
|
|
||||||
texture_font_title_char_49, // Q
|
|
||||||
texture_font_title_char_50, // R
|
|
||||||
texture_font_title_char_51, // S
|
|
||||||
texture_font_title_char_52, // T
|
|
||||||
texture_font_title_char_53, // U
|
|
||||||
texture_font_title_char_54, // V
|
|
||||||
texture_font_title_char_55, // W
|
|
||||||
texture_font_title_char_56, // X
|
|
||||||
texture_font_title_char_57, // Y
|
|
||||||
texture_font_title_char_58, // Z
|
|
||||||
texture_font_title_char_59, // [
|
|
||||||
texture_font_title_char_60, // \ //
|
|
||||||
texture_font_title_char_61, // ]
|
|
||||||
texture_font_title_char_62, // ^
|
|
||||||
texture_font_title_char_63, // _
|
|
||||||
texture_font_title_char_64, // `
|
|
||||||
texture_font_title_char_65, // a
|
|
||||||
texture_font_title_char_66, // b
|
|
||||||
texture_font_title_char_67, // c
|
|
||||||
texture_font_title_char_68, // d
|
|
||||||
texture_font_title_char_69, // e
|
|
||||||
texture_font_title_char_70, // f
|
|
||||||
texture_font_title_char_71, // g
|
|
||||||
texture_font_title_char_72, // h
|
|
||||||
texture_font_title_char_73, // i
|
|
||||||
texture_font_title_char_74, // j
|
|
||||||
texture_font_title_char_75, // k
|
|
||||||
texture_font_title_char_76, // l
|
|
||||||
texture_font_title_char_77, // m
|
|
||||||
texture_font_title_char_78, // n
|
|
||||||
texture_font_title_char_79, // o
|
|
||||||
texture_font_title_char_80, // p
|
|
||||||
texture_font_title_char_81, // q
|
|
||||||
texture_font_title_char_82, // r
|
|
||||||
texture_font_title_char_83, // s
|
|
||||||
texture_font_title_char_84, // t
|
|
||||||
texture_font_title_char_85, // u
|
|
||||||
texture_font_title_char_86, // v
|
|
||||||
texture_font_title_char_87, // w
|
|
||||||
texture_font_title_char_88, // x
|
|
||||||
texture_font_title_char_89, // y
|
|
||||||
texture_font_title_char_90, // z
|
|
||||||
texture_font_title_char_91, // {
|
|
||||||
texture_font_title_char_92, // |
|
|
||||||
texture_font_title_char_93, // }
|
|
||||||
texture_font_title_char_94, // ~
|
|
||||||
texture_font_title_char_95, // DEL
|
|
||||||
};
|
|
||||||
|
|
||||||
const f32 font_title_widths[] = {
|
|
||||||
/* ! " # $ % & ' ( ) * + , - . / */
|
|
||||||
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
|
||||||
/* 0 1 2 3 4 5 6 7 8 9 */
|
|
||||||
0.45f, 0.35f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f, 0.45f,
|
|
||||||
/* : ; < = > ? @ */
|
|
||||||
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
|
||||||
/* A B C D E F G H I J K L M N O P Q R S T U V W X Y Z */
|
|
||||||
0.55f, 0.50f, 0.50f, 0.50f, 0.45f, 0.45f, 0.50f, 0.55f, 0.28f, 0.60f, 0.50f, 0.45f, 0.55f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.55f, 0.50f, 0.50f, 0.50f, 0.60f, 0.52f, 0.60f, 0.45f,
|
|
||||||
/* [ \ ] ^ _ ` */
|
|
||||||
0.50f, 0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
|
||||||
/* a b c d e f g h i j k l m n o p q r s t u v w x y z */
|
|
||||||
0.45f, 0.45f, 0.40f, 0.40f, 0.45f, 0.37f, 0.40f, 0.40f, 0.20f, 0.45f, 0.40f, 0.30f, 0.50f, 0.40f, 0.40f, 0.40f, 0.45f, 0.40f, 0.50f, 0.45f, 0.50f, 0.40f, 0.50f, 0.50f, 0.45f, 0.45f,
|
|
||||||
/* { | } ~ DEL */
|
|
||||||
0.50f, 0.50f, 0.50f, 0.50f, 0.50f,
|
|
||||||
};
|
|
24
bin/custom_textures.c
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
#include <ultra64.h>
|
||||||
|
#include "sm64.h"
|
||||||
|
#include "game/ingame_menu.h"
|
||||||
|
#include "make_const_nonconst.h"
|
||||||
|
|
||||||
|
ALIGNED8 const Texture texture_hud_char_luigi_head[] = {
|
||||||
|
#include "textures/segment2/custom_luigi_head.rgba16.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
ALIGNED8 const Texture texture_hud_char_toad_head[] = {
|
||||||
|
#include "textures/segment2/custom_toad_head.rgba16.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
ALIGNED8 const Texture texture_hud_char_waluigi_head[] = {
|
||||||
|
#include "textures/segment2/custom_waluigi_head.rgba16.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
ALIGNED8 const Texture texture_hud_char_wario_head[] = {
|
||||||
|
#include "textures/segment2/custom_wario_head.rgba16.inc.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
ALIGNED8 const Texture texture_shadow_spike_ext[] = {
|
||||||
|
#include "textures/segment2/shadow_spike_custom.ia8.inc.c"
|
||||||
|
};
|
|
@ -90,7 +90,6 @@ ALIGNED8 static const u8 texture_hud_char_J[] = {
|
||||||
#include "textures/segment2/custom_hud_j.rgba16.inc.c"
|
#include "textures/segment2/custom_hud_j.rgba16.inc.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#if defined(VERSION_JP) || defined(VERSION_SH)
|
#if defined(VERSION_JP) || defined(VERSION_SH)
|
||||||
ALIGNED8 const Texture texture_hud_char_J[] = {
|
ALIGNED8 const Texture texture_hud_char_J[] = {
|
||||||
#include "textures/segment2/segment2.02600.rgba16.inc.c"
|
#include "textures/segment2/segment2.02600.rgba16.inc.c"
|
||||||
|
@ -221,22 +220,6 @@ ALIGNED8 const Texture texture_hud_char_mario_head[] = {
|
||||||
#include "textures/segment2/segment2.05A00.rgba16.inc.c"
|
#include "textures/segment2/segment2.05A00.rgba16.inc.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_hud_char_luigi_head[] = {
|
|
||||||
#include "textures/segment2/custom_luigi_head.rgba16.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_hud_char_toad_head[] = {
|
|
||||||
#include "textures/segment2/custom_toad_head.rgba16.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_hud_char_waluigi_head[] = {
|
|
||||||
#include "textures/segment2/custom_waluigi_head.rgba16.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_hud_char_wario_head[] = {
|
|
||||||
#include "textures/segment2/custom_wario_head.rgba16.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_hud_char_star[] = {
|
ALIGNED8 const Texture texture_hud_char_star[] = {
|
||||||
#include "textures/segment2/segment2.05C00.rgba16.inc.c"
|
#include "textures/segment2/segment2.05C00.rgba16.inc.c"
|
||||||
};
|
};
|
||||||
|
@ -1829,6 +1812,12 @@ ALIGNED8 const Texture texture_hud_char_arrow_down[] = {
|
||||||
#include "textures/segment2/segment2.081D0.rgba16.inc.c"
|
#include "textures/segment2/segment2.081D0.rgba16.inc.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// TODO: move these out of the font
|
||||||
|
extern ALIGNED8 const Texture texture_hud_char_luigi_head[];
|
||||||
|
extern ALIGNED8 const Texture texture_hud_char_toad_head[];
|
||||||
|
extern ALIGNED8 const Texture texture_hud_char_waluigi_head[];
|
||||||
|
extern ALIGNED8 const Texture texture_hud_char_wario_head[];
|
||||||
|
|
||||||
// Main HUD print table 0x02008250-0x02008337
|
// Main HUD print table 0x02008250-0x02008337
|
||||||
const Texture *const main_hud_lut[] = {
|
const Texture *const main_hud_lut[] = {
|
||||||
#ifdef VERSION_EU
|
#ifdef VERSION_EU
|
||||||
|
@ -2590,10 +2579,6 @@ ALIGNED8 const Texture texture_shadow_quarter_square[] = {
|
||||||
#include "textures/segment2/shadow_quarter_square.ia8.inc.c"
|
#include "textures/segment2/shadow_quarter_square.ia8.inc.c"
|
||||||
};
|
};
|
||||||
|
|
||||||
ALIGNED8 const Texture texture_shadow_spike_ext[] = {
|
|
||||||
#include "textures/segment2/shadow_spike_custom.ia8.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
const Texture texture_transition_star_half[] = {
|
const Texture texture_transition_star_half[] = {
|
||||||
#include "textures/segment2/segment2.0F458.ia8.inc.c"
|
#include "textures/segment2/segment2.0F458.ia8.inc.c"
|
||||||
};
|
};
|
||||||
|
@ -2686,6 +2671,7 @@ const Gfx dl_shadow_square[] = {
|
||||||
gsSPEndDisplayList(),
|
gsSPEndDisplayList(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extern ALIGNED8 const Texture texture_shadow_spike_ext[];
|
||||||
const Gfx dl_shadow_spike_ext[] = {
|
const Gfx dl_shadow_spike_ext[] = {
|
||||||
gsSPDisplayList(dl_shadow_begin),
|
gsSPDisplayList(dl_shadow_begin),
|
||||||
gsDPLoadTextureBlock(texture_shadow_spike_ext, G_IM_FMT_IA, G_IM_SIZ_8b, 16, 16, 0, G_TX_WRAP | G_TX_MIRROR, G_TX_WRAP | G_TX_MIRROR, 4, 4, G_TX_NOLOD, G_TX_NOLOD),
|
gsDPLoadTextureBlock(texture_shadow_spike_ext, G_IM_FMT_IA, G_IM_SIZ_8b, 16, 16, 0, G_TX_WRAP | G_TX_MIRROR, G_TX_WRAP | G_TX_MIRROR, 4, 4, G_TX_NOLOD, G_TX_NOLOD),
|
||||||
|
@ -3508,31 +3494,3 @@ const s16 seg2_painting_mesh_neighbor_tris[] = {
|
||||||
3, 240, 242, 244,
|
3, 240, 242, 244,
|
||||||
1, 243,
|
1, 243,
|
||||||
};
|
};
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
ALIGNED8 const u8 texture_font_normal[] = {
|
|
||||||
#include "textures/custom_font_title/custom_font_normal.rgba32.inc.c"
|
|
||||||
};
|
|
||||||
|
|
||||||
const f32 font_normal_widths[] = {
|
|
||||||
/* ! " # $ % & ' ( ) * + , - . / */
|
|
||||||
0.2200f, 0.3750f, 0.4375f, 0.3750f, 0.4375f, 0.5000f, 0.2500f, 0.3125f, 0.3125f, 0.3750f, 0.4375f, 0.2500f, 0.3750f, 0.2500f, 0.3125f,
|
|
||||||
/* 0 1 2 3 4 5 6 7 8 9 */
|
|
||||||
0.4375f, 0.3800f, 0.4200f, 0.4375f, 0.4300f, 0.4375f, 0.4375f, 0.4000f, 0.4375f, 0.4375f,
|
|
||||||
/* : ; < = > ? @ */
|
|
||||||
0.2000f, 0.2500f, 0.3125f, 0.3750f, 0.3125f, 0.3125f, 0.5750f,
|
|
||||||
/* A B C D E F G H I J K L M N O P Q R S T U V W X Y Z */
|
|
||||||
0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.3125f, 0.5000f, 0.5000f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3750f, 0.3125f, 0.3750f, 0.3750f, 0.5000f, 0.4375f, 0.3750f, 0.3750f,
|
|
||||||
/* [ \ ] ^ _ ` */
|
|
||||||
0.3125f, 0.3125f, 0.3125f, 0.3750f, 0.3750f, 0.2500f,
|
|
||||||
/* a b c d e f g h i j k l m n o p q r s t u v w x y z */
|
|
||||||
0.3000f, 0.3125f, 0.3125f, 0.3125f, 0.3125f, 0.3000f, 0.3750f, 0.3125f, 0.2200f, 0.3125f, 0.3125f, 0.1700f, 0.4350f, 0.3125f, 0.3000f, 0.3000f, 0.3125f, 0.2700f, 0.3125f, 0.3125f, 0.3125f, 0.2750f, 0.4375f, 0.3750f, 0.3125f, 0.3125f,
|
|
||||||
/* { | } ~ DEL */
|
|
||||||
0.3125f, 0.2500f, 0.3125f, 0.5000f, 0.2000f,
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
ALIGNED8 u8 texture_selectionbox_icon[] = {
|
|
||||||
#include "textures/segment2/custom_selectionbox_icon.rgba16.inc.c"
|
|
||||||
};
|
|
||||||
|
|
|
@ -64,7 +64,7 @@ struct DjuiBind* djui_bind_create(struct DjuiBase* parent, const char* message,
|
||||||
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
||||||
djui_base_set_size(&text->base, 0.3f, 1.0f);
|
djui_base_set_size(&text->base, 0.3f, 1.0f);
|
||||||
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
||||||
djui_text_set_drop_shadow(text, 255, 255, 255, 128);
|
djui_text_set_drop_shadow(text, 64, 64, 64, 100);
|
||||||
djui_base_set_color(&text->base, 200, 200, 200, 255);
|
djui_base_set_color(&text->base, 200, 200, 200, 255);
|
||||||
bind->text = text;
|
bind->text = text;
|
||||||
|
|
||||||
|
|
|
@ -55,7 +55,7 @@ struct DjuiButton* djui_button_create(struct DjuiBase* parent, const char* messa
|
||||||
djui_base_set_size(&text->base, 1.0f, 1.0f);
|
djui_base_set_size(&text->base, 1.0f, 1.0f);
|
||||||
djui_base_set_color(&text->base, 11, 11, 11, 255);
|
djui_base_set_color(&text->base, 11, 11, 11, 255);
|
||||||
djui_text_set_alignment(text, DJUI_HALIGN_CENTER, DJUI_VALIGN_CENTER);
|
djui_text_set_alignment(text, DJUI_HALIGN_CENTER, DJUI_VALIGN_CENTER);
|
||||||
djui_text_set_drop_shadow(text, 0, 0, 0, 64);
|
djui_text_set_drop_shadow(text, 64, 64, 64, 100);
|
||||||
button->text = text;
|
button->text = text;
|
||||||
|
|
||||||
djui_base_set_size_type(base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE);
|
djui_base_set_size_type(base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE);
|
||||||
|
|
|
@ -63,7 +63,7 @@ struct DjuiCheckbox* djui_checkbox_create(struct DjuiBase* parent, const char* m
|
||||||
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
||||||
djui_base_set_size(&text->base, 1.0f, 1.0f);
|
djui_base_set_size(&text->base, 1.0f, 1.0f);
|
||||||
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
||||||
djui_text_set_drop_shadow(text, 255, 255, 255, 128);
|
djui_text_set_drop_shadow(text, 64, 64, 64, 100);
|
||||||
checkbox->text = text;
|
checkbox->text = text;
|
||||||
|
|
||||||
struct DjuiRect* rect = djui_rect_create(&checkbox->base);
|
struct DjuiRect* rect = djui_rect_create(&checkbox->base);
|
||||||
|
|
|
@ -38,13 +38,18 @@ static const struct DjuiFont sDjuiFontNormal = {
|
||||||
// font 1 (custom title font) //
|
// font 1 (custom title font) //
|
||||||
////////////////////////////////
|
////////////////////////////////
|
||||||
|
|
||||||
static void djui_font_title_render_char(char* text) {
|
static void djui_font_title_render_char(char* c) {
|
||||||
char c = *text;
|
|
||||||
extern const u8* const font_title_chars[];
|
|
||||||
// replace undisplayable characters
|
// replace undisplayable characters
|
||||||
if (c == ' ') { return; }
|
if (*c == ' ') { return; }
|
||||||
c = djui_unicode_get_base_char(text);
|
|
||||||
djui_gfx_render_texture(font_title_chars[c - '!'], 64, 64, 32);
|
u32 index = djui_unicode_get_sprite_index(c);
|
||||||
|
if ((u8)*c < '!' || (u8)*c > '~' + 1) { index = djui_unicode_get_sprite_index("?"); }
|
||||||
|
|
||||||
|
u32 tx = index % 16;
|
||||||
|
u32 ty = index / 16;
|
||||||
|
|
||||||
|
extern ALIGNED8 const u8 texture_font_title[];
|
||||||
|
djui_gfx_render_texture_tile(texture_font_title, 1024, 512, 32, tx * 64 + 1, ty * 64, 64, 64);
|
||||||
}
|
}
|
||||||
|
|
||||||
static f32 djui_font_title_char_width(char* text) {
|
static f32 djui_font_title_char_width(char* text) {
|
||||||
|
|
|
@ -84,7 +84,7 @@ void djui_gfx_render_texture(const u8* texture, u32 w, u32 h, u32 bitSize) {
|
||||||
|
|
||||||
void djui_gfx_render_texture_tile(const u8* texture, u32 w, u32 h, u32 bitSize, u32 tileX, u32 tileY, u32 tileW, u32 tileH) {
|
void djui_gfx_render_texture_tile(const u8* texture, u32 w, u32 h, u32 bitSize, u32 tileX, u32 tileY, u32 tileW, u32 tileH) {
|
||||||
Vtx *vtx = alloc_display_list(sizeof(Vtx) * 4);
|
Vtx *vtx = alloc_display_list(sizeof(Vtx) * 4);
|
||||||
f32 aspect = w ? ((f32)h / (f32)w) : 1;
|
f32 aspect = tileH ? ((f32)tileW / (f32)tileH) : 1;
|
||||||
vtx[0] = (Vtx) {{{ 0, -1, 0 }, 0, { ( tileX * 512) / w, ((tileY + tileH) * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
vtx[0] = (Vtx) {{{ 0, -1, 0 }, 0, { ( tileX * 512) / w, ((tileY + tileH) * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
||||||
vtx[1] = (Vtx) {{{ 1 * aspect, -1, 0 }, 0, { ((tileX + tileW) * 512) / w, ((tileY + tileH) * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
vtx[1] = (Vtx) {{{ 1 * aspect, -1, 0 }, 0, { ((tileX + tileW) * 512) / w, ((tileY + tileH) * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
||||||
vtx[2] = (Vtx) {{{ 1 * aspect, 0, 0 }, 0, { ((tileX + tileW) * 512) / w, ( tileY * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
vtx[2] = (Vtx) {{{ 1 * aspect, 0, 0 }, 0, { ((tileX + tileW) * 512) / w, ( tileY * 512) / h }, { 0xff, 0xff, 0xff, 0xff }}};
|
||||||
|
|
|
@ -94,7 +94,7 @@ struct DjuiSelectionbox* djui_selectionbox_create(struct DjuiBase* parent, const
|
||||||
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
||||||
djui_base_set_size(&text->base, 0.6f, 1.0f);
|
djui_base_set_size(&text->base, 0.6f, 1.0f);
|
||||||
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
||||||
djui_text_set_drop_shadow(text, 255, 255, 255, 128);
|
djui_text_set_drop_shadow(text, 64, 64, 64, 100);
|
||||||
selectionbox->text = text;
|
selectionbox->text = text;
|
||||||
|
|
||||||
struct DjuiRect* rect = djui_rect_create(&selectionbox->base);
|
struct DjuiRect* rect = djui_rect_create(&selectionbox->base);
|
||||||
|
@ -111,7 +111,7 @@ struct DjuiSelectionbox* djui_selectionbox_create(struct DjuiBase* parent, const
|
||||||
djui_base_set_size_type(&rectText->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
djui_base_set_size_type(&rectText->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
||||||
djui_base_set_size(&rectText->base, 1.0f, 1.0f);
|
djui_base_set_size(&rectText->base, 1.0f, 1.0f);
|
||||||
djui_text_set_alignment(rectText, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
djui_text_set_alignment(rectText, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
||||||
djui_text_set_drop_shadow(rectText, 255, 255, 255, 128);
|
djui_text_set_drop_shadow(rectText, 64, 64, 64, 100);
|
||||||
selectionbox->rectText = rectText;
|
selectionbox->rectText = rectText;
|
||||||
|
|
||||||
struct DjuiImage* rectImage = djui_image_create(&rect->base, texture_selectionbox_icon, 16, 16, 16);
|
struct DjuiImage* rectImage = djui_image_create(&rect->base, texture_selectionbox_icon, 16, 16, 16);
|
||||||
|
|
|
@ -116,7 +116,7 @@ struct DjuiSlider* djui_slider_create(struct DjuiBase* parent, const char* messa
|
||||||
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
djui_base_set_size_type(&text->base, DJUI_SVT_RELATIVE, DJUI_SVT_RELATIVE);
|
||||||
djui_base_set_size(&text->base, 0.6f, 1.0f);
|
djui_base_set_size(&text->base, 0.6f, 1.0f);
|
||||||
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
djui_text_set_alignment(text, DJUI_HALIGN_LEFT, DJUI_VALIGN_BOTTOM);
|
||||||
djui_text_set_drop_shadow(text, 255, 255, 255, 128);
|
djui_text_set_drop_shadow(text, 64, 64, 64, 100);
|
||||||
slider->text = text;
|
slider->text = text;
|
||||||
|
|
||||||
struct DjuiRect* rect = djui_rect_create(&slider->base);
|
struct DjuiRect* rect = djui_rect_create(&slider->base);
|
||||||
|
|
|
@ -202,7 +202,7 @@ void produce_interpolation_frames_and_delay(void) {
|
||||||
sFrameTargetTime += sFrameTime * gGameSpeed;
|
sFrameTargetTime += sFrameTime * gGameSpeed;
|
||||||
gRenderingInterpolated = false;
|
gRenderingInterpolated = false;
|
||||||
|
|
||||||
printf(">>> fpt: %llu, fps: %f :: %f\n", frames, sAvgFps, fps);
|
//printf(">>> fpt: %llu, fps: %f :: %f\n", frames, sAvgFps, fps);
|
||||||
}
|
}
|
||||||
|
|
||||||
void produce_one_frame(void) {
|
void produce_one_frame(void) {
|
||||||
|
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
BIN
textures/custom_font/custom_font_title.rgba32.png
Normal file
After Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 480 B |
Before Width: | Height: | Size: 663 B |
Before Width: | Height: | Size: 1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 973 B |
Before Width: | Height: | Size: 992 B |
Before Width: | Height: | Size: 512 B |
Before Width: | Height: | Size: 893 B |
Before Width: | Height: | Size: 896 B |
Before Width: | Height: | Size: 722 B |
Before Width: | Height: | Size: 646 B |
Before Width: | Height: | Size: 507 B |
Before Width: | Height: | Size: 365 B |
Before Width: | Height: | Size: 405 B |
Before Width: | Height: | Size: 646 B |
Before Width: | Height: | Size: 778 B |
Before Width: | Height: | Size: 717 B |
Before Width: | Height: | Size: 712 B |
Before Width: | Height: | Size: 773 B |
Before Width: | Height: | Size: 824 B |
Before Width: | Height: | Size: 767 B |
Before Width: | Height: | Size: 709 B |
Before Width: | Height: | Size: 664 B |
Before Width: | Height: | Size: 734 B |
Before Width: | Height: | Size: 744 B |
Before Width: | Height: | Size: 534 B |
Before Width: | Height: | Size: 690 B |
Before Width: | Height: | Size: 511 B |
Before Width: | Height: | Size: 494 B |
Before Width: | Height: | Size: 518 B |
Before Width: | Height: | Size: 785 B |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 667 B |
Before Width: | Height: | Size: 796 B |
Before Width: | Height: | Size: 739 B |
Before Width: | Height: | Size: 781 B |
Before Width: | Height: | Size: 619 B |
Before Width: | Height: | Size: 781 B |
Before Width: | Height: | Size: 639 B |
Before Width: | Height: | Size: 730 B |
Before Width: | Height: | Size: 557 B |
Before Width: | Height: | Size: 706 B |
Before Width: | Height: | Size: 898 B |
Before Width: | Height: | Size: 751 B |
Before Width: | Height: | Size: 943 B |
Before Width: | Height: | Size: 785 B |
Before Width: | Height: | Size: 609 B |
Before Width: | Height: | Size: 754 B |
Before Width: | Height: | Size: 773 B |
Before Width: | Height: | Size: 829 B |
Before Width: | Height: | Size: 803 B |
Before Width: | Height: | Size: 551 B |
Before Width: | Height: | Size: 458 B |
Before Width: | Height: | Size: 876 B |
Before Width: | Height: | Size: 1,017 B |
Before Width: | Height: | Size: 854 B |
Before Width: | Height: | Size: 800 B |
Before Width: | Height: | Size: 771 B |
Before Width: | Height: | Size: 622 B |
Before Width: | Height: | Size: 928 B |
Before Width: | Height: | Size: 610 B |
Before Width: | Height: | Size: 653 B |
Before Width: | Height: | Size: 438 B |
Before Width: | Height: | Size: 453 B |
Before Width: | Height: | Size: 847 B |
Before Width: | Height: | Size: 818 B |
Before Width: | Height: | Size: 583 B |
Before Width: | Height: | Size: 835 B |
Before Width: | Height: | Size: 757 B |
Before Width: | Height: | Size: 753 B |
Before Width: | Height: | Size: 871 B |
Before Width: | Height: | Size: 567 B |
Before Width: | Height: | Size: 520 B |
Before Width: | Height: | Size: 822 B |
Before Width: | Height: | Size: 906 B |
Before Width: | Height: | Size: 508 B |
Before Width: | Height: | Size: 734 B |
Before Width: | Height: | Size: 543 B |
Before Width: | Height: | Size: 538 B |
Before Width: | Height: | Size: 813 B |
Before Width: | Height: | Size: 921 B |
Before Width: | Height: | Size: 638 B |
Before Width: | Height: | Size: 623 B |
Before Width: | Height: | Size: 646 B |
Before Width: | Height: | Size: 538 B |