モーリーのメモ

アプリ開発等(プログラミング、CG作成)、興味を持ったことを実践してまとめるブログです。

モーリーのメモ

グリースペンシルで縁取り文字を作る!:Blender

この記事の内容
  • Blenderで日本語の縁取り文字を作ります。
    1. 日本語のフォントファイルを入手します。
    2. グリースペンシルで文字の縁取りをします。
    3. ライト、カメラ等を設定して画像ファイルを出力します。
 
 動画のテロップに使われているような縁取り文字を作ります。
    f:id:mmorley:20210424004006p:plain
 縁取りはグリースペンシルを使っています。グリースペンシルを使うと角が丸い縁取りになります。
 
 作業はフォントファイルを入手するところから始めます。
 縁取り文字の作成して、ライト・カメラを設定をして画像を出力するところまでの手順を詳細に説明します。

使用環境

 私が使用している環境です。

日本語のフリーフォントを入手する

 無料で利用可能な『日本語に対応したゴシック体のフォント』を使います。

たまたま見つけたエラー

 最初、『源ノ角ゴシック(Source Han Sans)』を使おうとしましたが、たまたま下図の現象を見つけたので別のフォントを使うことにしました。『源真ゴシック 』も同様でした。

    f:id:mmorley:20210407160906p:plain
 今回は『小瑠璃フォント (koruri)』を使います。
 なお『源ノ角ゴシック(Source Han Sans)』と『小瑠璃フォント (koruri)』の全文字を確認したわけではないので、同様の現象が起きる文字が他にあるかもしれません。

小瑠璃フォント (koruri)の入手

 『小瑠璃フォント (koruri)』の圧縮ファイルをダウンロードして解凍します。
 

    ブラウザで作業

  1. 『小瑠璃フォント (koruri)』をダウンロードするページを開きます。
    github.com
  2. 『Koruri-20180915.zip』をクリックしてダウンロードします。

    エクスプローラで作業

  3. ダウンロードした『Koruri-20180915.zip』を右クリック→『すべて展開』をクリックし、
  4. 『展開』をクリックします。
    フォントファイルが入手できました。フォントファイルをWindowsのフォントフォルダ(C:\Windows\Fonts)に置くかどうかはおまかせします。

テキストオブジェクトを作る

 最初からある『Cube(立方体)』を削除して、テキストオブジェクトを作ります。
 

    Blenderで作業

  1. テンキーの『7』を押して視点を『トップ・平行投影』にします。
    平行投影と透視投影の切り替えはテンキーの『5』です。
  2. 『3Dビューポート』で『Cube』をクリックで選択して、キーボードの『X』→『Enter』を押して削除します。
  3. キーボードの『Shift + A』を押して、『テキスト』をクリックします。
    f:id:mmorley:20210415142157p:plain
    『Text』が作成されます。
    f:id:mmorley:20210408153111p:plain
 
補 足
  1. キーボードで操作する時はマウスのカーソルを3Dビューポートに置きます。
    マウスカーソルの位置でどこに操作しているかが決まります。うっかりしがちです。
  2. 作業しやすいように適時3Dビューポートの視点を操作します
    • ズームイン・アウト:マウスのホイールを回転します。
    • 視点の平行移動:キーボード『Shift』を押しながら、マウスの中(ホイール)ボタンでドラッグします。

日本語フォントを設定する

 『Text』に、入手しておいた『Koruri-Bold.ttf』を設定します。
 

    Blenderで作業

  1. 『オブジェクトデータプロパティ』の『フォント』の『標準』の『フォントを開く』ボタンをクリックします。
    f:id:mmorley:20210408155825p:plain
  2. 『ファイルビュー』で、先程入手した『Koruri-Bold.ttf』を選択して、『フォントを開く』をクリックします。
    f:id:mmorley:20210408160248p:plain

日本語の文字を貼り付ける

 テキストオブジェクトに日本語入力が出来ないので、他の場所から文字をコピー&ペーストします。
 

    Blenderで作業

  1. キーボードの『Tab』を押して『編集モード』にします。
  2. キーボードの『BS(Backspace)』を押して”Text”の文字を全て削除します。

    ブラウザで作業

  3. 下記の文字列を選択して、キーボードの『Ctrl + C』を押してコピーします。
    Blenderで縁取り文字を作る!

    Blenderで作業

  4. キーボードの『Ctrl + V』を押して文字列を貼り付けます。
  5. キーボードの『Tab』を押して『オブジェクトモード』にします。
    f:id:mmorley:20210413134643p:plain

カメラを設定する

 現在の視点にカメラを置いて、レンズのタイプを『平行投影』にします。
 『Text』がカメラの枠に収まるように、カメラのスケールと位置を調整します。
 

    Blenderで作業

  1. キーボードの『Ctrl + Alt + 0(テンキーのゼロ)』を押します。
    現在の視点にカメラが置かれ、カメラ視点になります。
    f:id:mmorley:20210413135408p:plain
  2. 点線のカメラ枠をクリックして『Camera』を選択します。
  3. 『オブジェクトデータプロパティ』の『レンズ』を下記のように設定します。
    • 『タイプ』を『平行投影』に切り替えます。
    • 『平行投影のスケール』を『10』にします。
      『Text』全体がカメラの枠に収まるようにスケールを調整します。
    f:id:mmorley:20210413135901p:plain
  4. キーボードの『G』を押した後、マウスでカメラの枠を移動させて、『テキスト』が中心に収まる場所でクリックして決定します。
    f:id:mmorley:20210413140025p:plain

ライトを設定する

 全体を均一に照らすために『サン』にします。
 マテリアルで設定した色とレンダリングした色が近づくように『ライト』の『強さ』を設定します。
 反射で白くならないように『スペキュラー』(光の反射)は0にします。
 真上(文字の正面)から照らすように『ライト』の回転を設定します。
 

    Blenderで作業

  1. アウトライナー』で『Light』を選択します。
    f:id:mmorley:20210413112700p:plain
  2. 『オブジェクトデータプロパティ』の『ライト』を下記のように設定します。
    • 『サン』に切り替えます。
    • 『強さ』を『35』にします。
    • 『スペキュラー』を『0』にします。
    f:id:mmorley:20210416094145p:plain
  3. 『3Dビューポート』で、キーボードの『N』を押して『サイドバー』を表示します。
  4. 『アイテム』の『トランスフォーム』の『回転』の値を下記のように設定します。
    • 『X』を『0』にします。
    • 『Y』を『0』にします。
    • 『Z』を『0』にします。
    f:id:mmorley:20210413130740p:plain
    『Light』は下図のようになります。
    f:id:mmorley:20210423153139p:plain
  5. キーボードの『N』を押して『サイドバー』を非表示にします。
     
    補 足
    • 『X』~『Z』をドラッグして選択して、『0』を入力するとまとめて設定出来ます。
      f:id:mmorley:20210413133130g:plain

縁取り用のオブジェクトを作る

 『Text』を複製して、Z軸マイナス方向に移動させます。
 複製したテキストオブジェクトをグリースペンシルに変換します。
 3重の縁取りにするため、グリースペンシルのオブジェクトを2回複製します。
 

    Blenderで作業

  1. 『3Dビューポート』で『Text』をクリックして選択します。
  2. キーボードの『Shift + D』→『Z』→『-0.5』→『Enter』を押して、複製して移動させます。
    フロントビュー(テンキーの『1』)で見ると下図のようになります。
    f:id:mmorley:20210413163325p:plain
  3. 『3Dビューポート』で右クリックして、『グリースペンシルに変換』をクリックします。
    f:id:mmorley:20210413163926p:plain
  4. キーボードの『Shift + R』を押して、もう一度『グリースペンシルに変換』を適用します。
    1度ではグリースペンシルにならないのでもう一度変換します。(『テキスト』→『カーブ』→『グリースペンシル』と2段階で変換されます。)
    アウトライナー』で『GPencil』と表示されます。
    f:id:mmorley:20210413165743p:plain
  5. キーボードの『Shift + D』→『Z』→『-0.5』→『Enter』を押して、複製して移動させます。
    『GPencil』を複製して移動させます。
  6. キーボードの『Shift + R』を押して、もう1つ複製します。
    『Shift + R』は直前の操作を繰り返し実行するショートカットです。ここでは複製+移動が繰り返されます。
    フロントビュー(テンキーの『1』)で見ると下図のようになります。
    f:id:mmorley:20210413232606p:plain

3Dビューポートのシェーディングを変更する

 3Dビューポートのシェーディングを『レンダー』すると、レンダリング結果を確認しながら作業することが出来ます。処理が重くなるので状況に応じて切り替えて下さい。
 

    Blenderで作業

  1. 『3Dビューポート』で『3Dビューのシェーディング』の『レンダー』ボタンをクリックします。
    f:id:mmorley:20210414005145p:plain

Textの色を設定する

 『マテリアル』を追加して、『ベースカラー』を青色にします。
 

    Blenderで作業

  1. アウトライナー』で『Text』を選択します。
    f:id:mmorley:20210415170342p:plain
  2. 『マテリアルプロパティ』の『新規』ボタンをクリックします。
    f:id:mmorley:20210418113911p:plain
  3. サーフェス』の『ベースカラー』をクリックします。
  4. 『RGB』をクリックして、『青(R:0、G:0、B:1、A:1)』にします。
    f:id:mmorley:20210418120625p:plain
     
    『Text』が青くなりました。文字の周りの白色は後ろのグリースペンシルの色です。。
    f:id:mmorley:20210423164711p:plain

GPencilの色(マテリアル)を設定する

 『マテリアル』を追加して、色はデフォルトの黒色にします。

    Blenderで作業

  1. アウトライナー』で『GPencil』を選択します。
    f:id:mmorley:20210418113449p:plain
  2. 『マテリアルプロパティ』の『新規』ボタンをクリックします。
    f:id:mmorley:20210419111748p:plain

GPencilの線の幅を設定する

 一番内側の縁取り線です。
 線(ストローク)の幅を『幅のスケール』と『ストローク幅』で調整します。
 なお、線の幅の半分はテキストの後ろに隠れます。

    Blenderで作業

  1. 『オブジェクトデータプロパティ』の『ストローク』の『幅のスケール』を『10』にします。
    f:id:mmorley:20210419100527p:plain
  2. 『オブジェクトデータプロパティ』の『調整』の『ストローク幅』を『2』にします。
    f:id:mmorley:20210419105200p:plain
     
    黒い縁取りを追加しました。
    f:id:mmorley:20210423193425p:plain

GPencil.001の色(マテリアル)を設定する

 『マテリアル』を追加して、『ベースカラー』を白色にします。

    Blenderで作業

  1. アウトライナー』で『GPencil.001』を選択します。
    f:id:mmorley:20210419105614p:plain
  2. 『マテリアルプロパティ』の『新規』ボタンをクリックします。
    f:id:mmorley:20210419111748p:plain
  3. サーフェス』の『ストローク』の『ベースカラー』をクリックします。
  4. 『RGB』をクリックして、『白(R:1、G:1、B:1、A:1)』にします。
    f:id:mmorley:20210419112658p:plain

GPencil.001の線の幅を設定する

 最内から2番目の縁取り線です。

    Blenderで作業

  1. 『オブジェクトデータプロパティ』の『ストローク』の『幅のスケール』を『10』にします。
    f:id:mmorley:20210419100527p:plain
  2. 『オブジェクトデータプロパティ』の『調整』の『ストローク幅』を『6』にします。
    f:id:mmorley:20210419154649p:plain
     
    白い縁取りを追加しました。
    f:id:mmorley:20210424002150p:plain

GPencil.002の色(マテリアル)を設定する

 『マテリアル』を追加して、『ベースカラー』を黒色にします。

    Blenderで作業

  1. アウトライナー』で『GPencil.002』を選択します。
    f:id:mmorley:20210418113449p:plain
  2. 『マテリアルプロパティ』の『新規』ボタンをクリックします。
    f:id:mmorley:20210419111748p:plain

GPencil.002の線の幅を設定する

 一番外側の縁取り線です。

    Blenderで作業

  1. 『オブジェクトデータプロパティ』の『ストローク』の『幅のスケール』を『10』にします。
    f:id:mmorley:20210419100527p:plain
  2. 『オブジェクトデータプロパティ』の『調整』の『ストローク幅』を『18』にします。
    f:id:mmorley:20210420164136p:plain
     
    さらに黒い縁取りを追加しました。
    f:id:mmorley:20210424002456p:plain

GPencil.002の位置をずらす

 右下に移動させて立体感を出します。

    Blenderで作業

  1. キーボードの『G』→『X』→『0.03』→『Enter』を押して右に移動させます。
  2. キーボードの『G』→『Y』→『-0.03』→『Enter』を押して下に移動させます。
     
    浮き出た感じにしました。
    f:id:mmorley:20210424002847p:plain

背景を透明する

 フィルムの透過にチェックを入れて背景を透明にします。

    Blenderで作業

  1. 『レンダープロパティ』の『フィルム』の『透過』にチェックを入れます。
    f:id:mmorley:20210420173848p:plain

画像の解像度を設定する

 画像の解像度を設定します。
 解像度を変更すると上下の余白(縦横の比率)が変わります。横の余白はカメラの『平行投影のスケール』で決まります。

    Blenderで作業

  1. 『出力プロパティ』の『寸法』の『解像度』を『X:1980、Y:200』にします。
    f:id:mmorley:20210420190316p:plain

画像を保存する

 レンダリングして、画像を保存します。

    Blenderで作業

  1. キーボードの『F12』を押してレンダリングします。
    Blenderレンダー』ウインドウが開いて、レンダリング結果が表示されます。
  2. Blenderレンダー』で、『画像』→『名前をつけて保存』をクリックします。
    f:id:mmorley:20210424003813p:plain
  3. Blenderファイルビュー』で、ファイル名を入力して『画像を別名保存』をクリックします。
    f:id:mmorley:20210420205758p:plain
     
    完成した画像です。
    f:id:mmorley:20210424004006p:plain
 
補 足
  • 画像をきれいにする(ギザギザ感を減らす)
    画像を大きいサイズで出力して、『Gimp(画像処理ソフト)』で縮小します。Blender以外のソフトを使用するので、邪道ですが、きれいにはなります。

      Blenderで作業

    1. 『出力プロパティ』の『寸法』の『%』を『400』にします。
      f:id:mmorley:20210421104346p:plain
    2. キーボードの『F12』を押してレンダリングしてから、画像を保存します。

      Gimpで作業

    3. 画像を開きます。
    4. 『画像』→『画像の拡大縮小』をクリックします。
      f:id:mmorley:20210421093226p:plain
    5. キャンバスサイズを下図のように設定して、『拡大縮小』をクリックします。
      f:id:mmorley:20210421093705p:plain
    • Blenderでそのまま出力(一部分)
      f:id:mmorley:20210421104019p:plain
    • Blenderで大きいサイズで出力してGimpで縮小(一部分)
      f:id:mmorley:20210421104031p:plain
 
今回は以上です。お疲れさまでした。

おすすめ・関連する記事