I suggest that you use <U8g2_for_Adafruit_GFX.h> which is available from the IDE Library Manager
#include <MCUFRIEND_kbv.h>
MCUFRIEND_kbv tft;
#include <U8g2_for_Adafruit_GFX.h>
U8G2_FOR_ADAFRUIT_GFX u8g2_for_adafruit_gfx;
void setup()
{
tft.begin(tft.readID());
u8g2_for_adafruit_gfx.begin(tft); // connect u8g2 procedures to Adafruit GFX
u8g2_for_adafruit_gfx.setForegroundColor(TFT_WHITE); // apply Adafruit GFX color
u8g2_for_adafruit_gfx.setBackgroundColor(TFT_BLACK); // apply Adafruit GFX color
}
const char utf8_msg[] = "由沙子制成的城堡最竟落入海中"
;
void loop(void)
{
//u8g2_for_adafruit_gfx.setFont(u8g2_font_unifont_t_japanese2); // use japanese
//u8g2_for_adafruit_gfx.setFont(u8g2_font_unifont_t_chinese2); // use chinese2 for all the glyphs of "你好世界"
//u8g2_for_adafruit_gfx.setFont(u8g2_font_unifont_t_korean2); // use korean for all the glyphs of "헬로월드"
u8g2_for_adafruit_gfx.setFont(u8g2_font_unifont_t_korean1); // use korean for all the glyphs of "헬로월드"
//u8g2_for_adafruit_gfx.setFont(u8g2_font_10x20_t_cyrillic); // use cyrillic for all the glyphs in "Привет, мир"
//u8g2_for_adafruit_gfx.setFont(u8g2_font_inr24_t_cyrillic); // use cyrillic for all the glyphs in "Привет, мир"
u8g2_for_adafruit_gfx.setFontDirection(0);
tft.fillScreen(TFT_BLACK);
u8g2_for_adafruit_gfx.setCursor(0, 30);
u8g2_for_adafruit_gfx.print("Hello World!");
u8g2_for_adafruit_gfx.setCursor(0, 60);
//u8g2_for_adafruit_gfx.print("こんにちは世界" ); // Japanese "Hello World"
//u8g2_for_adafruit_gfx.print("你好世界"); // Chinese "Hello World"
u8g2_for_adafruit_gfx.print("헬로월드"); // Korean "Hello World"
//u8g2_for_adafruit_gfx.print("Привет, мир"); // Russian "Hello World"
u8g2_for_adafruit_gfx.setCursor(0, 80);
u8g2_for_adafruit_gfx.print(utf8_msg);
delay(1000);
}
EDIT. Sorry, I ran this sketch on a STM32. I did not notice the Mega2560 i.e. AVR
The korean2 font is too big for an AVR. I have changed to korean1