韓国語ゲームローカライズ — ハングルがエンジンに要求すること
韓国語のテキストは一見、他の表音文字言語と同じように扱えそうに見えます。定義された文字集合を持つという点では確かにそうです。しかし実際には同じようには扱えません。ハングルの文字はラテン文字のように左から右へ並ぶのではなく、音節ブロックへと組み立てられます。この構造上の一点が、文字数の数え方、改行の扱い、フォント対応の考え方すべてを変えます。
字母から組み立てられる音節ブロック
ハングルの基本単位は字母(チャモ)、つまり個々の子音字と母音字です。字母はラテン文字のように横一列に並ぶのではなく、正方形の音節ブロックへとまとめられ、1ブロックが1音節を表します。配置は決まった空間パターンに従い(初声の子音・中声の母音・任意の終声の子音が、母音の形に応じて縦に積まれたり横に並んだりします)。画面上で「1文字」として表示されるものは、実はそれ自体が2〜3個の字母からアルゴリズムによって組み立てられた小さな合成物です。現代のハングルテキストは通常、個別の字母としてではなく、あらかじめ組み合わされた音節ブロック(可能な組み合わせのうちの決まった集合)として保存・伝送されており、これによって通常のテキスト描画は各ブロックを1文字として扱えます。
文字数の数え方と改行の挙動が異なる
表示される各音節ブロックはすでに初声・母音・多くの場合終声を1つに詰め込んでいるため、韓国語の「1文字」は通常、ラテン文字1文字より多くの音韻情報を持ちますが、1語や1形態素をまるごと表せる日本語の漢字ほどではありません。ある文字数がどれだけの内容量に相当するかという点で、韓国語はラテン文字と日本語のおおよそ中間に位置し、単純な文字数はどちらとも直接比較できません。英語や日本語で調整した文字数上限や切り詰めの基準は、そのままでは韓国語には合わず、韓国語独自の基準が必要です。
改行に関しては、韓国語の音節ブロックは形状の点で日本語のようなCJKの正方形グリフに近い(おおむね等幅で全角に近いセル)ものの、韓国語は後述の通り分かち書きされる言語であるため、正しい改行位置は通常スペースの位置にあり、これは英語に近い挙動です。これはスペースもラテン文字的な単語境界も持たない日本語との重要な違いです。
単語間の分かち書きルール
日本語や中国語と異なり、韓国語は通常、単語(語節、おおよそ単語に相当する単位)の間にスペースを入れて書かれます。これが、日本語では機能しない「空白で折り返す」という方法が韓国語では概ね機能する理由です。標準的な正書法(韓国のハングル正書法の分かち書き規則で定められています)は、ほとんどの独立した単語の間などスペースが必要な箇所と、直前の単語に直接付く一部の助詞や接尾辞の前などスペースを入れない箇所を規定しています。生成テキストやテンプレート文字列でこれを誤る(たとえば名詞と助詞を分かち書きの規則に従わずに連結する)ことは、単なるスタイルの癖ではなく、ネイティブの読者には明らかな文法上の誤りとして映ります。
敬語レベル
韓国語は日本語と同様、話し言葉のレベル — くだけた表現から複数段階の丁寧さ・改まり方まで — を文法的に符号化しており、動詞の語尾や語彙選択によって、話者と聞き手の相対的な年齢・社会的立場・親密さを示します。英語と違い、これは任意のスタイル上の彩りではありません。韓国語の文は話し言葉のレベルを選ばなければ文法的に成立せず、セリフの1行ごとに、翻訳者はキャラクター同士の関係性に応じた明示的で一貫した判断を下す必要があります。それも行単位ではなく関係性単位で一貫させる必要があります。
文字種の混在への対応
韓国語のゲームテキストには、ハングルにラテン文字(ブランド名や一部の外来語、専門用語)や算用数字が日常的に混在します。原理的には日本語の混在と似ていますが、漢字・仮名という追加の層はありません。こうした混在要素まわりの分かち書きや句読点の慣習 — ハングルの中に半角のラテン語の用語を埋め込む際に前後にスペースが必要かどうか — は実質的なスタイル上の決定であり、翻訳者ごとの好みに任せるのではなく一度決めて一貫して適用すべきものです。
フォントの網羅性
現代のハングルは理論上、非常に多くの音節ブロックの組み合わせを許容しますが、日常的なテキストの大多数はそのうちのはるかに小さな一般的な部分集合を使っています。フォントファイルがその範囲をどこまでカバーするかは大きく異なり、一般的な音節の小さな部分集合向けに作られたフォントは、簡単なテストでは問題なく見えても、珍しい音節ブロックを使うキャラクター名や外来語の音写、あまり一般的でない語彙で文字欠けの四角を出すことがあります。フォントの網羅性は、短いサンプル文ではなく、実際にゲームで使うテキスト — 特にキャラクター名やアイテム名で問題が表面化しやすい — に対してテストしてください。
- 表示上の文字数がラテン文字と同じ意味での文字列長に対応すると想定しない
- 空白ベースの折り返しに頼りつつ、生成・連結された文字列では語節の分かち書き規則を確認する
- 話し言葉のレベル・丁寧さの段階はキャラクター同士の関係性ごとに決め、シーンをまたいで一貫させる
- 埋め込まれたラテン語の用語や数字まわりのスペースの取り方について、社内のスタイルを一つ決める
- フォントのグリフ網羅性は、一般的なサンプルではなく実際の名前・アイテムのリストに対してテストする