ユーザーガイド
描くための準備から、質感の仕上げまで。
操作・設定・用語を、制作の流れに沿って探せます。
PICK UP 目的から探す
このガイドでは、HarmoFlowの基本操作、各パネルの設定、対応範囲を説明します。実際の画面・操作動画と図解で、操作の流れや仕組みを確認できます。パネルの配置は変更できます。
はじめる
インストールする
- 入手するBOOTHから選んだ版のZIPを入手して展開
- インストール中のEXEを実行し、使用許諾契約を確認
- 試す小さなモデルで描画と保存を確認
- BOOTHの商品ページで、製品版または体験版のインストーラーをダウンロードします。Ver.0.1.2はZIPで配布されます。選んだ版のZIPをダウンロードして展開し、中にあるセットアップEXEを実行してください。 ファイル名の
fullは製品版、trialは体験版を表します。 - ダウンロードしたセットアップEXEをダブルクリックします。日本語・英語・簡体字中国語・韓国語から案内の言語を選び、表示された使用許諾契約を確認して、同意する場合だけ続けます。製品版の使用許諾契約は購入前にも確認できます。
- インストール先と、必要に応じてデスクトップショートカットを選びます。製品版では
.harmos/.harmopackageの関連付けも選択できます。体験版は関連付けを変更しません。 - 完了画面から起動するか、スタートメニューの HarmoFlow(体験版は HarmoFlow Trial)を開きます。アプリのEXEだけを別の場所へ移動せず、インストールされた構成のまま使ってください。
起動時に止まる場合
動作環境と起動できないときの確認を参照してください。警告の意味や配布元を確認せずに、Windowsの保護を無効化しないでください。
初回起動で確認すること
- ホームからプロジェクトを新規作成するか、UVのある対応モデルを読み込みます。最初は小さなテスト用モデルで、描画と保存を確認すると安心です。
- 表示言語は「ウィンドウ → 言語」で変更できます。パネル配置が分からなくなったら「ウィンドウ → レイアウトをリセット」を使います。
- 製品版と体験版は別々にインストールされ、設定とアセットキャッシュも別です。体験版は編集・プロジェクト保存に対応しますが、テクスチャの書き出しはできません。 体験版で保存したプロジェクトは製品版で開けます。
- アセット一覧は本体に含まれます。ダウンロード対象の画像アセットは初回使用時に通信が必要です。出先などで使う前に、アセットのダウンロードとオフライン利用を確認してください。
アップデート自動通知
Ver.0.1.1から、起動時に新しいバージョンをバックグラウンドで確認します。更新が見つかると、画面上部の検索ボックス右側に青いダウンロードアイコンが表示されます。アイコンをクリックすると、現在のバージョン、新しいバージョン、「今回の変更内容」を確認できます。
- アップデートを入手:ブラウザーで入手先のページを開きます。自動で行われるのは更新の確認と通知までで、インストーラーのダウンロードやインストールは自分で行います。まず下の手順でバックアップを用意してください。
- 後で:ダイアログを閉じます。通知アイコンは残るので、同じ起動中にもう一度開けます。
- この更新を通知しない:そのバージョンの通知を非表示にし、次回起動後も表示しません。さらに新しいバージョンは通知の対象になります。
オフラインや確認に失敗した場合、通知は表示されません。通知がないだけでは最新版とは限らないため、再確認するときはインターネット接続を確認してアプリを再起動するか、BOOTHの商品ページを直接確認してください。変更点と紹介動画は更新情報でも確認できます。
更新前にバックアップする
- 保存・退避シーンを保存し、プロジェクト全体をコピー
- 更新する新しいZIPを展開し、同じ種類のEXEを実行
- 確認するバージョンとテスト用コピーの再読込を確認
Ver.0.1.2の3Dパスと旧版の互換性
新しい3Dパスを含むシーンはVer.0.1.1以前では開けません。旧版でも使うシーンは、変更前のファイルを別に残してください。3Dパスの互換性も確認してください。
- 作業中のシーンを通常保存し、アプリを終了します。プロジェクトフォルダー全体を別の場所へコピーして残してください。
.harmosだけをコピーするのではなく、読み込んだモデルや画像を含むフォルダーを保管します。持ち運び用にはパッケージ出力も利用できます。 - 自分で追加したブラシ・プラグインなども、配布元のファイルや別のバックアップを残します。新しいバージョンで保存したシーンを古いバージョンで開けるとは限らないため、更新前のコピーは上書きしないでください。
- BOOTHから、現在使っている種類(製品版/体験版)に対応する新しいバージョンのZIPを取得して展開し、中のセットアップEXEを実行して既存のインストール先を選びます。製品版は製品版の、体験版は体験版のインストーラーで更新します。
- 起動後にバージョンを確認し、まずバックアップから用意したテスト用コピーで、モデル・画像・レイヤー・保存と再読み込みを確かめます。製品版では必要な書き出しも確認します。
最新版を確認する
最新版の公開状況と配布ファイルはBOOTHの商品ページで確認してください。更新前に作業を保存し、プロジェクトをバックアップします。現在使っている種類(製品版/体験版)に対応する新しいバージョンのインストーラーを取得し、上の更新手順に沿って進めてください。
バージョンと更新履歴を確認する
「ヘルプ → HarmoFlowについて」の上部にアプリのバージョンが表示されます。同じ画面の「更新履歴」タブで、そのアプリに含まれる変更一覧を確認できます。タイトルバーの角括弧内に表示される数字はビルド日時です。問い合わせ時は、製品版/体験版の別とバージョン、ビルド日時を一緒に記録してください。
購入条件は購入前FAQ、操作中の問題はトラブルシューティングを参照してください。
- 読み込むUVのあるモデルを開く
- 描くパーツとレイヤーを選んでペイント
- 保存する編集用のシーンを保存し、完成画像を書き出す
最初の1枚を描く
モデルを読み込む
ファイルメニューから読み込むか、モデルファイルをウィンドウへドラッグ&ドロップします。ホーム画面へのドロップにも対応します。
編集するパーツを選ぶ
チャンネルパネルで対象を選びます。モデルをShift+Alt+右クリックして、その位置のパーツに切り替えることもできます。パーツが1つの場合、切り替えは無効です。
レイヤーとツールを選んで描く
ペイントレイヤーを選び、Bキーでペイントツールに切り替えます。モデルの表面をドラッグして描きます。
シーンを保存する
Ctrl+Sで作業を保存します。後からレイヤーやストロークを編集するためのデータです。
テクスチャを書き出す
エクスポートパネルで出力先・形式・チャンネルを選び、画像を書き出します。
自動ベイク
モデル読み込み時にメッシュマップを自動ベイクします。完了前に汚しを設定しても、生成後に反映されます。
読み込めるモデル
FBX、OBJ、glTF/GLB、DAE、PLY、STL、3DS、BLENDに対応しています。テクスチャ制作に使うモデルにはUVを用意してください。
複数のモデルや画像をまとめてドロップした場合は、最初の対応モデルを開き、残りはプロジェクトのアセットライブラリに取り込みます。ホーム画面では読み込み後に制作画面へ切り替わります。
glTF/GLBの画像を引き継ぐ
glTF/GLBを読み込むと、対応する参照画像をプロジェクトのアセットライブラリに取り込み、BaseColor・Normal・Metallic・Roughness・Emissionに自動で紐づけます。MetallicRoughness画像はRoughnessとMetallicへ分離し、対応する色・強度も反映します。外部の形状データと画像も保存対象になるため、プロジェクト保存後は元フォルダーから独立して開けます。差し替えには「手動テクスチャ紐づけ」を使います。これはレイヤーの画像Fillとは別です。
自動で引き継げない場合
読み込めない画像はコンソールに警告が出ます。読み込めた対応画像は適用されます。読み込んだAO画像の専用チャンネル表示・適用には未対応で、自動ベイクするAOメッシュマップとは別です。自動紐づけはUV0が対象です。UV0以外の参照やKHR_texture_transformなどのテクスチャ座標拡張を持つ画像は自動紐づけされず、警告が記録されます。形状バッファなど、モデル本体に必要なファイルが欠けている場合は、モデルの読み込み自体が失敗することがあります。
外部ファイルと読み込みの注意点
- フォルダーをドロップした場合は、その直下のファイルを取り込みます。サブフォルダーの中身は自動では取り込みません。
- glTF/GLBがインターネット上のURLで参照する画像や形状データを、自動ダウンロードする機能ではありません。必要な外部ファイルをローカルに揃えてから読み込んでください。
- BLENDはファイル内のデータ構造によって読み込めない場合があります。失敗したらコンソールを確認し、BlenderからFBXまたはglTF/GLBへ書き出したモデルでも確認してください。
画面とメッシュパーツ
画面の構成
操作を検索する
画面上部の検索欄では、保存・読み込み・環境設定・パネルの表示切替などの操作を名前で探せます。候補をクリックすると実行し、Enterでは先頭の候補を実行します。Escまたは欄の外をクリックすると閉じます。検索欄が見えない場合は、ウィンドウの横幅を広げてください。アセットの検索には、アセットブラウザー内の検索欄を使います。
パイメニューでツールやレイヤーを切り替える
Ver.0.1.1から、3DビューとUVキャンバスで、カーソルの周囲にパイメニューを開けます。
- 3DビューまたはUVキャンバス上で、右ボタンを押します。
- 右ボタンを押したまま、使いたい項目の方向へスライドします。
- 右ボタンを離すと、その項目が選択されます。取り消すときはEscを押します。スライドせずに離した場合も選択せずに閉じます。
ブラシペイントや色混ぜ・ぼかし、UVシェル塗りなどを、手元で切り替えられます。カメラ操作やブラシサイズ変更など、設定済みの右ボタン操作が優先される組み合わせでは、パイメニューは開きません。キーとマウスの一覧はショートカット早見表を参照してください。
パイメニューの呼び出しは固定操作です。開かないときは、Ctrl・Shift・Altなどの修飾キーを離し、描画や文字入力などの操作を終えてから試してください。
Ver.0.1.2では、右ボタンを押したまま「レイヤー」へスライドすると、サムネイル付きの一覧へ移れます。カードの上で離すと選択でき、カード横では表示やロックなどの設定も切り替えられます。レイヤーの選択と設定を参照してください。
テクスチャセットとメッシュパーツ
HarmoFlowのテクスチャセットはメッシュパーツ単位です。同じマテリアルを使っているパーツも、別々のテクスチャセットとして扱います。
通常のブラシやスタンプは、選択中の既存レイヤーが属するテクスチャセットに描かれます。ほかのパーツへ描くには、一覧からセットを切り替えるか、モデルをShift+Alt+右クリックします。アセットブラウザーから新しく塗るマテリアルの記録先は、現在選択中のテクスチャセットです。既存レイヤーへの塗り足しは、そのレイヤーが属するセットを対象にします。同じマテリアルを共有するパーツは最終テクスチャも共有するため、UVが重なる位置では別のパーツにも見た目の変化が現れることがあります。
パネルでできること
「ウィンドウ」メニューのパネル名です。名前を選ぶと、関連する操作説明を開けます。
| パネル | できること |
|---|---|
| ビューポート | モデルを3Dで確認し、描画・カメラ操作・PBR/NPR表示を行います。 |
| レイヤー | レイヤーやフォルダーを重ね、マスク・表示・不透明度・合成を調整します。 |
| テクスチャセット設定 | 選択中のセットのチャンネルとメッシュマップを確認し、拡大表示や再ベイクを行います。 |
| プロパティ | 選択中のレイヤーの種類に応じた設定を編集します。 |
| ブラシ | ブラシプリセットを選び、太さ・流量・間隔などを調整します。 |
| スタンプ | 画像・テキスト・シェイプ・コピースタンプを設定します。 |
| 消しゴム | 消しゴムの太さや消し方を調整します。 |
| 色混ぜ・ぼかし | 色混ぜ・ぼかしのブラシを選び、混ざり方やぼかしの強さを調整します。 |
| カラーパレット | 描画色を選び、色を混ぜて調整します。 |
| スウォッチ | よく使う色を登録し、選んで再利用します。 |
| アセットブラウザー | プロジェクトやライブラリのアセットを検索・絞り込みして取り込みます。 |
| メッシュ | メッシュパーツを選択・表示切替し、マテリアル名や三角形数を確認します。 |
| シェイプキー | 読み込んだシェイプキーを絞り込み、ウェイトを調整して形状を確認します。 |
| チャンネル | テクスチャセットと解像度を選び、6チャンネルの確認や画像の紐づけを行います。 |
| パス | パスの塗りや枠線などのスタイルを設定し、パスを編集します。 |
| UV エディタ | UV上で描画やパス編集を行い、テクスチャ・メッシュマップ・UVワイヤーを確認します。 |
| エクスポート | 出力先・形式・チャンネルなどを設定し、テクスチャを書き出します。 |
| スクリプト (Lua) | LuaコードやLuaファイルを実行し、実行ログを確認します。 |
| プラグイン | 追加したプラグインを確認し、導入や管理を行います。 |
| 履歴 | 操作履歴を確認し、行を選んでUndo/Redoの状態へ移動します。 |
| コンソール | 現在の起動中の処理結果やエラーを確認し、ログをコピーします。 |
| FPS / フレーム時間 | FPSやフレーム時間を確認し、操作の滑らかさを比較します。 |
| パネルレール | パネルをアイコンとして収納し、開閉・並べ替え・グループ化します。 |
パネルを開く・配置を戻す
閉じたパネルは「ウィンドウ」メニューから再表示できます。配置を戻したいときは「レイアウトをリセット」を使います。操作の補足は各項目にカーソルを重ねると表示されます。
ビューポート・メッシュ・表示
カメラを動かす
既定ではAlt+左ドラッグで回転、中ボタンドラッグまたはSpace+左ドラッグでパンします。ズームはホイール、Alt+右ドラッグ、Ctrl+左ドラッグに対応します。右または上へドラッグすると拡大します。「ピボット360」ではパンを使えません。キーコンフィグを変更済みの場合は、現在の割り当てを確認してください。「正面」で正面へ戻せます。「自由回転」はパンで回転の中心を動かせます。「撮影」またはF12でビューポートをPNG保存できます。
ビューポート上部の「レイヤーへ」で、選択レイヤーの描画範囲へカメラを寄せられます。ペイントレイヤーはストローク、パスレイヤーは形状が基準です。マテリアルレイヤーや調整レイヤーは、有効なマスクにストロークがあればその範囲、なければ対象メッシュの範囲が基準になります。フォーカス中に別のレイヤーを選ぶとそのレイヤーへ移り、「全体」でモデル全体を表示します。空のペイント/パスレイヤーにはフォーカスできません。
軸方向から見る・床グリッドを切り替える
右上のX・Y・Zとマイナス方向の軸をクリックすると、表示位置と距離を保ったままカメラをその方向へ向けられます。軸の表示部分をドラッグして回転することもできます。床のグリッドは、左側のツール列またはパイメニューの「床グリッド表示切替」でオン/オフできます。
描画位置の近くでレイヤーを切り替える
Ver.0.1.2では、3Dビュー上で右ボタンを押したままパイメニューの「レイヤー」へ滑らせ、サムネイル付き一覧のカード上で離してレイヤーを選べます。カード横では表示・ロックなどの設定も切り替えられます。UVエディタでも同じ操作を使えます。
パスレイヤーを選ぶとパスツールへ、ペイントレイヤーを選ぶとブラシへ切り替わります。ペイントレイヤー選択時に色混ぜ・ぼかし、UVシェル塗り、ポリゴン塗りを使用していれば、その塗り方を保持します。ペン操作や設定の条件はレイヤーパイメニューを参照してください。
見え方を切り替える
表示メニューには PBR、NPR、6種類のチャンネル単独表示、レイヤーマスクがあります。色の確認にはBaseColor、粗さの分布にはRoughnessなど、目的のチャンネルを選びます。PBRは光の反射を含む質感確認、NPRはトゥーン系の確認に使います。外部シェーダーとの完全一致を保証する表示ではありません。
「シェーディング設定」では、PBRとNPRのライトの向き・強度・色、環境光、ハイライト、露出、ノーマル強度などを調整できます。環境光の彩度はPBRとNPRで別々に保持され、初期値はPBRが0、NPRが1です。ACESトーンマップはPBRだけに適用します。NPRの明るさの下限・上限と基準反射率(F0)は、HarmoFlowで塗るマテリアルに使います。読み込んだlilToonマテリアルでは、そのマテリアルの値を使います。「シェーディング設定をリセット」で両モードの設定を初期値に戻せます。
現在のNPRプレビューでは、lilToonのアウトラインは描画しません。
「ワイヤー設定」では表示のオン/オフ、奥面の表示、色・不透明度・線幅、検出した疑似四角の対角線の非表示を設定できます。UVエディタ側のワイヤー設定とは別です。
パーツを選ぶ・隠す
選択ツールでパーツをクリックし、Shiftで選択の追加/解除、空白部分のドラッグで矩形選択、Escで選択解除を行います。ツールオプションから選択部分を表示/非表示にできます。「メッシュ」パネルにはパーツ名・マテリアル・三角形数が並び、個別の表示切替と「すべて表示」「すべて非表示」があります。
パネルを開いて表示を切り替える
「ウィンドウ → メッシュ」でパネルを開きます。各行の「表示」チェックが、そのパーツの表示オン/オフです。パーツ名を選択する操作とは別なので、名前をクリックするだけでは非表示になりません。
- 隠したいパーツの「表示」をオフにします。衣服や髪など、手前のパーツを一時的に隠して内側を確認するときに便利です。
- 再表示するときは同じチェックをオンにします。どのパーツを隠したか分からなくなったら「すべて表示」で戻します。
- 複数のパーツをまとめて切り替えるときは、選択ツールやメッシュ一覧で選び、ツールオプションの「選択を非表示」「選択を表示」を使います。既定の Shift+クリックは選択の追加・解除、Escは選択解除です。
非表示はパーツの削除ではありません。表示状態はシーンに保存されます。パネル自体を閉じる操作とも別です。非表示だけで書き出し対象を確実に除外できるとは考えず、書き出し前に必要なパーツを表示して、対象セット・チャンネルと出力画像を確認してください。

シェイプキーを確認する
FBXから読み込む
シェイプキー(Blend Shape)は、モデルに含まれる表情や形状の変化です。シェイプキーを含めて出力したFBXを「ファイル → モデルをインポート...」で読み込み、「ウィンドウ → シェイプキー」を開きます。Unity Packageの場合も、先にパッケージを展開し、その中のFBXを選びます。
モデルを読み込める形式と、シェイプキーを読み込める形式は同じではありません。シェイプキーの取り込みにはFBXを使ってください。glTF/GLB/Blendなどのモデル読み込みに対応していても、それらのモーフ情報をこのパネルへ取り込めるとは限りません。
ウェイトと絞り込み
- メッシュで絞り込むか、名前を検索して対象を見つけます。「使用中のみ」は、ウェイトが0.0001より大きいキーを表示します。
- ウェイトを0〜1で調整します。0は変形なし、1はそのシェイプキーの全量です。複数のキーを同時に使えるため、組み合わせたときの形も確認してください。
- パネル上部の「適用中のみ0」は、表示の絞り込みにかかわらず、ウェイトが0.0001より大きいキーを0にします。「すべてリセット」は読み込み時の初期値へ戻すため、必ずしも全部0にはなりません。
グループ内にも「リセット」「適用中0」があります。これらは現在の絞り込みで表示対象になっている、そのグループのキーに作用します。全体を戻したいときは上部の「すべてリセット」を使います。ウェイトはシーンに保存されます。
キーが見つからないとき
「読み込んだモデルにシェイプキーがありません」と出る場合は、元のモデルにキーがあるか、FBX出力時にBlend Shapeを含めたか確認してください。Unity側のPrefabだけに設定があっても、現在のPrefab自動インポートでは取り込めません。項目があるのに見えない場合は、メッシュ・名前・使用中のみのフィルターを解除します。
テクスチャの書き出しには、モデルの形状やシェイプキーのウェイトは含まれません。編集を続ける場合はシーンを保存し、完成した画像はテクスチャとして書き出してください。
UVを見やすくする
UVエディタで描く・移動する
表示中でロックされていないペイントレイヤーとペイントツールを選び、UVエディタのキャンバスをドラッグすると、対応するモデル表面に描画できます。パスのアンカー編集にも使えます。UV配置を展開し直す機能はありません。
UVエディタでは、ペイントレイヤーへの描画に加え、マテリアルの塗布や、Fill・調整レイヤーのマスクへの描画もできます。対象レイヤーとマスク編集の状態を確認してください。現在のUV描画は一定の筆圧で記録され、3Dビューの手ぶれ補正も適用されません。筆圧の強弱や手ぶれ補正を使う場合は、3Dビューポートで描いてください。
| 操作 | キーとマウス操作 |
|---|---|
| ズーム | ホイール |
| パン | 中ボタンドラッグ、またはSpace+左ドラッグ |
| 表示を回転 | Shift+Space+左ドラッグ、またはShift+Space+右ドラッグ |
| 角度だけをリセット | Shift+Space+左ダブルクリック、またはShift+Space+右ダブルクリック |
| 回転・移動・ズームをリセット | 「全体表示」 |
角度だけをリセットした場合は、ズームと表示位置を維持します。パンと回転の操作中は、専用のカーソルが表示されます。
文字・図形・画像スタンプは、ビューポート上で Ctrl + Alt + ドラッグでサイズ、Shift + Space + ドラッグで角度を調整できます。どちらも左ボタンと右ボタンに対応します。
既定ではCtrl+左ドラッグでもズームでき、右または上へ動かすと拡大します。
UV上でパスのアンカーを編集する
UVエディタでも、パスレイヤーとPのパスツールを選んで新しいパスを作れます。クリックでアンカーを置き、押したままドラッグしてハンドルを作り、始点をクリックすると閉じられます。
パスの作図中は、上部の「確定」で開いたまま確定し、「閉じる」で閉じたパスにし、「キャンセル」で作図を取り消せます。
パスレイヤーを選ぶと、UVエディタでアンカーを左ドラッグして動かせます。既定では、既存のアンカーから離れたパスの線上を左ダブルクリックすると、アンカーを追加できます。この操作は「環境設定 → キーコンフィグ」のUVエディタ用の割り当てに従います。3Dビューポートのパス編集とは操作が異なります。
3D描画とUVアイランド境界を確認する
Ver.0.1.2の境界描画の改善は、3Dビューでの描画が対象です。
- 通常ブラシは、同じパーツのつながった表面でUVアイランド境界を越えて描画できます。ブラシの説明も参照してください
- 3Dビューで新しく作成するパスは、線・塗りがUVアイランド境界で途切れたり別の位置へ飛んだりする問題を修正しています。以前に保存したUV座標のパスは、3Dビューで作り直す必要があります
境界付近の結果は、UVエディタと3Dビューを見比べて確認してください。新しい3Dパスを含むシーンの旧版互換性は、パスの説明を確認してください。
ワイヤーと背景を調整する
「UVワイヤー」で線の表示を切り替え、「ワイヤー設定」で色・不透明度・線幅を調整します。初期設定は細いワイヤーです。
- 三角形 — 内部のエッジも表示します。検出した疑似四角の対角線は非表示にできます。
- UVシェル — UV島の外周を表示します。四角い島では枠だけの表示になります。
- 全体表示 — 拡大や移動した表示を全体が見える状態に戻します。
背景の選択ではBaseColorなどのチャンネルと、生成済みの曲率・AO・法線・位置マップを切り替えられます。
ブラシ・消しゴム・色
描画の基本
ペイントレイヤーを選び、Bでペイントツールに切り替えてモデルをドラッグします。ストロークは表面上の位置・法線などとして保持し、現在のUVにベイクされます。複数のPBRチャンネルを有効にすると、色と粗さなどを同じストロークで描けます。
| 設定 | 効果 |
|---|---|
| サイズ | 筆跡の太さ。角括弧キー、またはCtrl+Alt+水平ドラッグでも調整 |
| 硬さ | 筆先の縁のぼけ方。低くすると柔らかい縁 |
| 不透明度 | 1ストロークの濃さの上限。レイヤー全体の不透明度とは別 |
| 流量(Flow) | 筆先の1回の押し付けごとに置くインクの量。低くすると重なりで徐々に濃くなる |
| 間隔 | 筆先を並べる距離。大きくすると点が分かれやすい |
| 手ブレ補正 | 入力軌跡の揺れを抑える強さ |
| 筆圧サイズ | ペンの筆圧をサイズへ反映 |
| ブラシ先端 | 丸い先端と取り込んだ画像先端を選択 |
| シンメトリー | X・Y・Zのうち1軸を選び、その軸に垂直な面で反転描画 |
| マルチチャンネル | 描き込むチャンネルの有効化と値を設定 |
シンメトリーはX・Y・Zのうち1軸を選び、モデルの原点を通る、その軸に垂直な面を基準に反転描画します。3Dビューのガイドで位置を確認してください。反転先も対象のテクスチャセット内にある必要があります。
ブラシパネルではカテゴリからプリセットを選び、調整した設定をプリセット保存できます。「PNGブラシをインポート」で独自の先端を追加できます。プロジェクト内の画像を右クリックし、「ブラシに登録」を選んでも追加できます。消しゴムは専用パネルでサイズや先端などを調整します。
ブラシ先端とプリセット
画像のブラシ先端は、明るさと透明度を形として使います。白い部分ほど強く描き、黒や透明部分は描きません。128×128の正方形PNGを目安に作成してください。プリセットを選んでも現在の選択色は保持されますが、描画チャンネルはプリセットに合わせて切り替わります。「ブラシをリセット」は選択中のプリセットへ戻し、未選択なら初期設定へ戻します。同名でプリセット保存すると、その設定を置き換えます。
3DビューでUVアイランド境界をまたいで描く
Ver.0.1.2では、3Dビューの通常ブラシで、同じパーツのつながった表面のUVアイランド境界を越えて描画できます。モデル上で境界をまたいで描き、3DビューとUVエディタで結果を確認してください。
この改善の対象は3Dビューの通常ブラシです。ポリゴン塗り・UVシェル塗りの対象範囲は、下の「面やUV島を塗る」を参照してください。新しく作る3Dパスの線・塗りについては、パスのUVアイランド境界を確認してください。
流量と不透明度の使い分け
ブラシの線は、小さな筆先の跡を連続して置いて作られます。「流量」はその1回ごとの量、「不透明度」はペンを離すまでの1ストロークで到達する濃さの上限です。
| したいこと | 調整する設定 |
|---|---|
| 同じ場所をなぞりながら、少しずつ濃くする | 流量を下げる |
| 1本の線が濃くなりすぎないようにする | 不透明度を下げる |
| 筆圧による濃淡を付ける/外す | 「筆圧で濃さを変える」を切り替える |
例えば不透明度50%、流量10%なら、ペンを離さず同じ場所をなぞると徐々に濃くなりますが、そのストロークの上限は50%です。ペンを離して描き直すと別のストロークとなり、重ね塗りされます。流量0ではインクを追加しません。ブラシ上部のプレビューと試し描きで違いを確認してください。
消しゴムにも流量と不透明度があり、少しずつ消すときの量と1ストロークの消去の上限を調整できます。レイヤー全体を薄くしたい場合は、レイヤー側の不透明度を使います。
通常のペイントレイヤーでは、消しゴムはブラシ側のチャンネル設定にかかわらず、全チャンネルを消去します。マテリアルの塗布範囲を消す場合は、下の「マテリアルを塗るチャンネル」の説明を確認してください。
UV外の余白をなくす(厳密)
ブラシ/消しゴムの「UV外の余白をなくす(厳密)」をオンにすると、ピクセル中心がUV島の内側にあるピクセルだけを描画対象とし、描画用の余白(パディング)を無効にします。ピクセルがUV境界に少し触れていても、中心が外側なら描き込みません。
- 初期状態はオフです。UV島の外に描画用の余白を残したくないときにオンにします
- ブラシごとの設定ではなく、シーン全体の設定です。シーンとともに保存され、変更はUndo/Redoで戻せます
- UVエディタで境界を拡大し、切り替え前後を比較してください。厳密なピクセル境界になるため、必要に応じてモデル上の継ぎ目も確認します
UV外を透明に書き出したい場合
この設定は描画範囲の制御です。「環境設定 → VRAM → テクスチャ」の「メッシュUVの外側」は、元画像で補完するか、透明にするか、全体を保持するかを決める別の設定です。厳密な描画をオンにするだけで、既存の元画像のUV外が透明になるわけではありません。書き出し時のUV外側の扱いも確認してください。
色混ぜ・ぼかし
- Uキーまたは指先アイコンで「色混ぜ・ぼかし」を開きます。
- ペイントレイヤーとモードを選びます。
- 3DビューまたはUVエディタをドラッグします。
- ぼかし:色の境界をやわらかくします
- 色混ぜ:周囲の色をなじませます
- 指先:色を引き延ばします
- 筆なじませ:細かな質感を残してなじませます
選択色は加えず、既存の色を使います。サイズ・強さ・濃度などはブラシごとに保持し、Bで通常のペイントへ戻れます。マスクやマテリアル塗布範囲のぼかしにも使えます。
色混ぜ・ぼかしの調整
「強さ」は効果の量、「ぼかし幅」は色を拾う範囲、「ブラシ濃度」は一度に作用する量です。色混ぜ・指先・筆なじませでは「色延び」と「質感」も調整できます。通常のペイントレイヤーでは対象チャンネルを選べます。マスクやマテリアルの塗布範囲もぼかせますが、まだ何も塗っていないマスクに最初のぼかしを置くことはできません。
面やUV島を塗る
ポリゴン塗りはクリックした面、UVシェル塗りはその面の属するUV島を塗ります。ホバー時のハイライトで対象範囲を確認してからクリックしてください。「疑似四角を反映」は、検出した三角形ペアを1枚の四角形として扱う設定です。
マテリアルも部分的に塗る
対象のテクスチャセットを選択してから、アセットブラウザーでマテリアルを選び、ブラシで塗ります。ツールバーの「ポリゴン塗り」「UVシェル塗り」なら、3DビューまたはUVエディタでクリックした範囲へ色・法線・粗さなどをまとめて適用します。アセットを変更しても塗り方は保持されます。
塗ったマテリアルレイヤーやアセットフォルダーを選ぶと塗り足せます。消しゴムはブラシ範囲で塗布領域を消します。
アセットブラウザーから新しく塗るマテリアルの記録先は、現在選択中のテクスチャセットです。既存レイヤーへの塗り足しは、そのレイヤーが属するセットを対象にします。同じマテリアルを共有するパーツは最終テクスチャも共有するため、UVが重なる位置では別のパーツにも見た目の変化が現れることがあります。
マテリアルを塗るチャンネル
マテリアルの描画・消去は、ビューポートの表示モードに連動します。BaseColor・Normal・Roughness・Metallic・Height・Emissionの単独表示では、そのチャンネルだけが対象です。PBR・NPR・レイヤーマスク表示では全チャンネルが対象になります。プロパティの「描画・消去の対象」を確認してから塗り足しや消去を行ってください。
スポイトとパレット
ペイントツールでCtrl+Shiftを押すと、モデル上の合成済みBaseColorをプレビューします。Ctrl+Shift+左ボタンを押したまま移動し、左ボタンを離すと色を採用します。左ボタンより先にCtrl+Shiftを離すとキャンセルです。照明込みの画面色ではなく、BaseColorから取得します。
カラーパレットはホイール(三角/四角)、スライダー、近似色、混色から色を選べます。RGB・HSV・カラーコードでも指定できます。混色パッドでは現在のブラシで色を混ぜ、既定ではAlt+左ボタンを押したまま確認し、左ボタンを離すと色を採用します。パッドは「クリア」で消せます。
Altを押したまま左ボタンを離してください。Altを先に離すと取り消します。
既定ではXで前景色と背景色を切り替え、Cで透明色(消しゴム)へ切り替え、Dで黒と白に戻せます。「スウォッチ」ではカテゴリを選んで「現在の色を追加」すると色を保存できます。保存した色はクリックで選び、右クリックから削除します。
レイヤー・マスク・合成
レイヤーの種類
| 種類 | 主な用途 |
|---|---|
| ペイント | ブラシ、消しゴム、スタンプで局所的に描く |
| マテリアル(Fill) | チャンネルの一定値・画像・プロシージャルで面を覆う |
| パス | 後からアンカーと線・塗りを編集する |
| 調整 | 下の合成結果を色調補正・グラデーションマップ・トーンカーブで補正 |
| グループ | レイヤーをフォルダーにまとめる |
パイメニューでレイヤーを選択・設定する
Ver.0.1.2では、3DビューとUVエディタのパイメニューから、サムネイルを見ながらレイヤーを選べます。
- 右ボタンを押したまま、パイメニューの「レイヤー」へ滑らせます。
- サムネイル付きの一覧で、選びたいレイヤーのカードへ移動します。
- カードの上で右ボタンを離すと、そのレイヤーを選択します。Escで取り消せます。
ペンタブでは、ポインターを一覧の上・下に置くと一覧を送れます。中央へ戻すと停止し、ペン先のタップでもカードを選べます。
カード横では「表示」「ロック」「クリッピング」「透明ピクセルロック」「描画で高さ」「単独表示」を切り替えられます。右ボタンを押したまま目的の設定へ滑らせ、そこで離すと、その設定だけを変更します。途中で通過した設定は変更しません。オンの設定は青い背景で表示され、ボタンが伸びて一瞬つながるアニメーションで操作を示します。
使える設定はレイヤーの種類によって異なります。透明ピクセルロックと描画で高さはペイントレイヤー専用です。グループや、下にクリッピング先となるレイヤーがない場合はクリッピングできません。ソロでも非表示のレイヤーや非表示フォルダー内のレイヤーは表示されません。
レイヤー選択とツールの切り替え
Ver.0.1.2では、パスレイヤーを選ぶとパスツールに切り替わります。ペイントレイヤーを選ぶとブラシに切り替わりますが、色混ぜ・ぼかし、UVシェル塗り、ポリゴン塗りを使用中の場合は、その塗り方を保持します。
調整レイヤーで後から色を変える
レイヤーパネルの「調整レイヤーを追加」から、色調補正・グラデーションマップ・トーンカーブを追加できます。下にあるレイヤーの合成結果を補正し、対象チャンネルや補正値はプロパティで後から変更できます。保存後も再編集でき、Undo/Redoに対応します。プラグインメニューから使う場合はビューポートでプレビューし、「適用」で調整レイヤーに確定、「キャンセル」で元の表示へ戻ります。
操作手順と設定値、3つの補正の使い分けは標準の調整機能で詳しく説明しています。
レイヤーを追加・整理する
追加・複製・削除・グループ化はレイヤーパネル上部から行います。レイヤーパネルにフォーカスがあるときは Delete キーでも選択レイヤーを削除できます(グループは子レイヤーごと削除)。ドラッグで順序を変更し、グループはダブルクリックで開閉します。プロパティで名前、不透明度、合成モードを変更できます。「通常」は通常の重ね合わせ、「乗算」は暗く重ねる表現、「加算」は明るく足す表現、「オーバーレイ」は下地を活かしてコントラストを付ける表現に使います。
レイヤーを選んでF2を押すと名前を変更できます。グループ内へ移すときはフォルダー行の中央へ、同じ階層で並べ替えるときは行の上端・下端へドロップします。歯車の「レイヤーの表示設定」では描画内容のプレビューを切り替え、「テクスチャ全体」または「描画範囲にフォーカス」を選べます。プレビューの拡大は作品の内容を変更しません。
コピーと貼り付け
レイヤーパネルにフォーカスがあるときは、Ctrl+Cでコピー、Ctrl+Xで切り取り、Ctrl+Vで貼り付け、Ctrl+Dで複製できます。グループは子レイヤーを含めて操作します。コピーはその時点の内容を保持します。切り取り・貼り付け・複製はUndo/Redoで戻せます。残りのレイヤーをすべて切り取る・削除する操作はできません。
同じシーン内で使うコピー機能で、新規シーンではコピー内容がリセットされます。文字入力中やダイアログ表示中、読み込み・ストローク処理中は実行されません。
追加される位置
新しいレイヤーは、対象セットの選択レイヤーのすぐ上に追加されます。フォルダー内のレイヤーを選んでいれば同じフォルダー内、フォルダー自体を選んでいればその外側の同じ階層です。貼り付けでもこの規則を使いますが、コピー元のテクスチャセットは変わりません。別のセットを選択中なら、コピー元セットの最上部へ追加され、表示もそのセットへ切り替わります。
単独表示(ソロ)では、グループを選ぶと子レイヤーも表示されます。調整レイヤーを選ぶと補正元の下地を含み、通常のレイヤーを選ぶと上にある調整レイヤーも反映されます。単独表示を終えるときは、もう一度ソロを押すか「単独表示を解除」を使います。
非表示にしたレイヤーや、非表示のフォルダー内のレイヤーは、ソロでも表示されません。
ロックすると描画を防げます。
下のレイヤーと統合できる条件
「下と統合」は、同じテクスチャセット・同じ階層で隣り合うペイントレイヤーに限られます。両方が表示中、不透明度100%、通常合成で、有効なマスクやマスクへの描画がなく、クリッピングを使っていないことが条件です。現在の透明ピクセルロック設定が一致し、透明ピクセルロックを使って記録したストロークがないことも必要です。直上のレイヤーがクリッピングしている場合も統合できません。上側に消しゴムのストロークがある場合や、高さ設定が一致しない場合も統合できません。
不透明度を変えたときの反応速度
Ver.0.1.1では再合成を最適化し、レイヤーの不透明度を変えたときに結果が表示されるまでの待ち時間を短くしています。専用のツールに切り替える必要はなく、いつもの不透明度の操作で利用できます。
改善幅は操作や環境によって異なります。開発環境での計測条件と結果はVer.0.1.1の更新情報を参照してください。
マスクで見える範囲を調整する
マスクを追加できるのはペイント・マテリアル(Fill)・調整レイヤーです。パスとグループにはマスク欄がありません。透明ピクセルロックはペイントレイヤー専用で、オンにした後の描画を、その時点で既に描かれた範囲へ制限します。
対象レイヤーのマスク欄をクリックしてマスクを追加・選択します。
新しいマスクは黒で始まるため、追加直後はレイヤー全体が隠れます。元の描画は消えていません。マスクに塗ると、その部分が表示されます。
マスクにペイントすると表示する範囲が増え、消しゴムで隠す範囲を増やせます。
内容側へ戻って、元のレイヤーを編集します。
マスクのShiftクリックで有効/無効を切り替えられます。レイヤーマスク表示で分布を確認してください。クリッピングは下のレイヤーが描かれた範囲へ制限する機能、透明ピクセルロックは同じペイントレイヤーの既存の描画範囲へ新しいストロークを制限する機能です。
グループや、クリッピング先になる下のレイヤーがない場合には、クリッピングを設定できません。何も描いていないペイントレイヤーで透明ピクセルロックをオンにすると描画先がないため、最初の描画ではオフにしてください。
「描画で高さ」はペイントによる高さ表現を設定します。「浮き上げ/下げ」と「高さの量」で凹凸の方向・量を調整します。
色調補正・トーンカーブ・グラデーションマップ
3種類とも、下にあるレイヤーの合成結果を補正する機能です。描いた内容を残したまま設定を変えられます。全体の明るさや色味を整えるなら色調補正、暗部・中間調・明部を分けて調整するならトーンカーブ、明るさに応じた配色に置き換えるならグラデーションマップを選びます。
明るさ・コントラスト・彩度・色相・ガンマで、色全体を整える。
入力の明るさを、曲線に沿って別の明るさへ変える。
元の明るさを位置として使い、指定したグラデーションの色へ置き換える。
概念図です。実際の操作画面や出力結果ではありません。
追加して再編集する
- レイヤーパネルで対象のテクスチャセットと、補正を重ねたい位置を選びます。
- 半円のアイコン「調整レイヤーを追加」を押し、3種類から選びます。
- 追加されたレイヤーを選択し、プロパティで「対象チャンネル」と補正値を設定します。色を変える場合はまず BaseColor を選びます。
- レイヤーの表示を切り替えて比較します。後から同じレイヤーを選べば設定を編集できます。レイヤー順を変えると、補正される下地も変わります。
対象チャンネルは BaseColor・Normal・Roughness・Metallic・Height・Emission です。1枚の調整レイヤーが補正するのは選んだ1チャンネルです。Roughness・Metallic・Height は数値の分布なので、配色の変更と同じ感覚で調整しないようにしてください。
プラグインから同じ補正を開く方法もあります。この場合は「対象テクスチャセット」「対象チャンネル」を選び、ビューポートのプレビューを確認して「適用」を押します。「適用」で再編集できる調整レイヤーが追加され、「キャンセル」または補正ウィンドウ内で Esc を押すと元の表示に戻ります。
色調補正
塗り直さずに、全体の明るさ・色の鮮やかさ・色相を整える用途に向いています。
| 項目 | 範囲/初期値 | 使い方 |
|---|---|---|
| 明るさ | −1〜1/0 | 全体を明るく、または暗くする |
| コントラスト | 0〜3/1 | 明暗差を弱める、または強める |
| 彩度 | 0〜3/1 | 0で無彩色、1が元の彩度。上げると鮮やかになる |
| 色相 | −180〜180/0 | 色相を回して色味を変える |
| ガンマ | 0.1〜3/1 | 主に中間調を調整。1より大きいと明るく、小さいと暗くなる |
まず明るさとコントラストを少しずつ調整し、彩度・色相、最後にガンマで整えると変化を追いやすくなります。極端な設定は明部や暗部の階調を失わせるため、BaseColor単独表示と通常の質感表示を見比べてください。「補正をリセット」は補正値を初期値へ戻します。補正の種類と対象チャンネルは変わらないため、対象を間違えた場合はチャンネルを選び直してください。
トーンカーブ
横軸が元の明るさ(入力)、縦軸が補正後の明るさ(出力)です。左下は暗部、右上は明部。対角線より上へ持ち上げた部分は明るく、下げた部分は暗くなります。
- 「チャンネル」で RGB(全体)を選び、全体の明暗を整えます。個別の色味を調整したい場合はレッド・グリーン・ブルーを選びます。
- グラフをクリックして点を追加し、ドラッグで動かします。選択した点は「入力」「出力」でも調整できます。
- 暗部を少し下げ、明部を少し上げるとコントラストを強められます。効果が強いときは「強さ」を下げます。0で補正なし、1で全量です。
各カーブは端点を含め2〜16点です。入力・出力の範囲は0〜1で、左右の端点は入力位置が固定され、削除できません。中間の点は「点を削除」で取り除けます。
「カーブのプリセット」にはリニア・コントラスト・柔らかなコントラスト・シャドウを明るく・マット・暗くがあります。プリセットは現在選択しているカーブに適用されます。RGB(全体)の補正に、個別のR・G・Bカーブの補正が重なります。
グラデーションマップ
下地の明るさを読み取り、暗い部分から明るい部分へ順に色を割り当てます。画面の左から右へ色を塗る機能ではありません。同じ明るさの部分は、モデル上の位置にかかわらず同じ配色に近づきます。
- グラデーション上の色の点を選び、カラーピッカーまたは #RRGGBB で色を指定します。
- 点をドラッグするか「位置」で、どの明るさにその色を対応させるか決めます。0%側は暗部、100%側は明部です。
- 中間色が必要なら「色を追加」を使います。たとえば暗部に紺、中間に赤、明部に淡い黄色を置けば、元の明暗を使った3色の配色になります。
- 「強さ」を下げて元の色を残しながらなじませます。0で補正なし、1で全量です。
色の点は2〜16個です。「削除」で選択した点を取り除き、「反転」で配色と位置を左右反転できます。「プリセット」では見本を検索して選び、その後で色や位置を調整できます。点は隣の点を越えずに移動します。
保存・書き出しと、変化が見えないとき
- 再編集を続けるために .harmos のシーンも保存してください。3種類の補正設定は保存後も編集でき、設定変更は Undo/Redo に対応します。
- 通常の画像書き出しには合成結果が反映されます。PSDでは対象チャンネルの画像レイヤーとして書き出され、Photoshopの調整レイヤーにはなりません。PSD側で下地を変えても、この補正は自動再計算されません。詳しくは書き出しを参照してください。
- 変化が見えない場合は、対象セット・対象チャンネル・レイヤーの表示・不透明度・順序を確認します。補正対象がそのレイヤーより下にあるか、マスクやクリッピングで制限されていないかも確認してください。
- 元の透明部分を塗りつぶすための機能ではありません。何も描かれていない場所に色を置きたい場合は、マテリアルやペイントのレイヤーを使います。
スタンプ・文字・シェイプ
スタンプをモデルに配置する
スタンプパネルには画像・テキスト・シェイプ・コピーのタブがあります。画像・テキスト・シェイプは、設定後に「モデルに配置」を選び、モデル上をクリックします。配置したスタンプはペイントとして扱います。元の文字列や図形パラメーターを後から直接編集することはできません。修正するときはUndoして設定し直すか、専用レイヤーを使って描き直します。
配置前に対象のテクスチャセットを選んでください。別のセットの表面をクリックしても、配置先は自動で切り替わりません。画像・テキスト・シェイプの配置時にペイント以外のレイヤーを選んでいると、ペイントレイヤーを作成します。
色を付けずに凹凸を配置する
画像・テキスト・シェイプは「凹凸のみ」でも配置できます。ロックしていないペイントレイヤーを選び、マスクの描画を解除して切り替えます。色を付けずに配置し、レイヤープロパティの「浮き上げ/下げ」「高さの量」で凹凸を調整します。この切り替えではシーンの「高さからノーマルを生成」も有効になります。レイヤーの不透明度とマスクは色と凹凸の両方に作用します。コピータブでは使えません。
配置中にサイズと角度を変える
ビューポートでは、Ctrl+Alt+左/右ドラッグでサイズ、Shift+Space+左/右ドラッグで角度を調整できます。Shift+Space+左/右ダブルクリックで角度だけを0に戻せます。これらは既定の割り当てです。画像・シェイプのサイズはモデル上の大きさ、テキストのサイズは文字の高さを表し、ブラシのサイズ表示とは単位が異なります。
サイズと回転は左右のドラッグ量で変わります。UVキャンバスでのスタンプ操作ではありません。
コピースタンプ
「コピー」では、スポイトと同じ操作(既定はCtrl+Shift+左ボタン)でモデル上のコピー元を指定し、ボタンを離して確定します。
その後ペイントレイヤー上をドラッグすると、取得時点の合成済みBaseColorを塗り写せます。「位置関係を保持」をオンにするとストローク間でも相対位置を保持し、オフでは毎回コピー元から始まります。Normalなど他のチャンネルや照明込みの画面色をコピーする機能ではありません。
コピーは、表示中でロックしていないペイントレイヤーに使います。マスクへの描画には使えないため、先に内容側へ戻してください。「コピー元を解除」で現在のコピー元を外しても、既に描いたコピーのストロークは残ります。
画像・テキスト・シェイプの設定
| タブ | 設定と用途 |
|---|---|
| 画像 | 画像を追加またはドロップ。サイズ、不透明度、回転を設定して模様やデカールを配置します。プロジェクト内の画像を右クリックし、「画像スタンプに登録」を選ぶと、画像タブで使えます。 |
| テキスト | 入力文、システムフォント、サイズ、不透明度、字間、行送り、整列、回転を指定 |
| シェイプ | 矩形・楕円・多角形・星を選択。塗りつぶし、線幅、角数、星の内径比、サイズ、不透明度、回転を設定 |
テキストの装飾とプレビュー
テキストはフォント検索・お気に入り、太字、大文字化、下線、打ち消し線に対応します。Tでテキストの配置へ進めます。テキスト/シェイプのプレビューでは不透明度の反映を切り替えられます。スタンプの不透明度はブラシとは独立した設定です。
画像の色と選択色
白一色の画像スタンプは、透明度を形として使い、現在の選択色で配置されます。色付き画像は元の色を保ちます。好きな色で配置したいロゴや記号は、描画部分を白、背景を透明にした画像を用意してください。画像の追加にはPNG・JPG・JPEG・TGAを使えます。
パスを描く・編集する
パスを作成する
Pでパスツールへ切り替えます。モデル上をクリックすると角のアンカーを置けます。ボタンを押したままドラッグするとハンドルができ、曲線を引けます。作図中に最後のアンカーをクリックすると、次の線に向かうハンドルを引っ込められます。
Enterで開いたまま確定、Cで閉じる、Fで閉じて塗り、Escでキャンセルします。作図中のDelete / Backspaceは最後のアンカーを取り消します。始点クリックでも閉じられます。
CとFは初期割り当てです。「パスを閉じる」が未割り当ての場合は、キーコンフィグで競合しないキーを設定してください。詳しくはショートカット早見表を参照してください。
始点をクリックして閉じる場合は、プロパティの「閉じたとき塗りつぶす」で塗りの有無を選べます。モデルの反対側のパスも確認したい場合は、「反対側のパスを表示」をオンにしてください。
1本のパスは1つのテクスチャセット内に作成します。開いたパスには2点以上、閉じたパスには3点以上のアンカーが必要です。C/Fは、作図中にポインターを3Dビューポートへ置いて押します。
確定済みのパスは、3Dビューでクリックして再編集できます。アンカーやハンドルをドラッグして輪郭を整え、曲線上のクリックで点を追加、Deleteで選択点を削除します。アンカーをダブルクリックすると角と曲線を切り替えられます。パス外のクリック・Enter・Escで編集を終了します。
UVエディタでも島の位置を確認しながら編集できます。操作方法はUVエディタを参照してください。
複数のアンカーと角の丸み
3Dビューで確定済みパスを再編集中は、空白からドラッグして複数のアンカーを囲めます。選択したアンカーをドラッグするとまとめて移動し、Deleteでまとめて削除します。角のアンカーの横にある小さな丸をドラッグすると、角の丸みを調整できます。
新しい3DパスとUVアイランド境界
Ver.0.1.2では、3Dビューで新しく作成するパスの線・塗りが、UVアイランド境界で途切れたり、別の位置へ飛んだりする問題を修正しました。1本のパスを1つのテクスチャセット内に作る条件は同じです。
以前に保存したUV座標のパスでこの改善を利用するには、3Dビューでパスを作り直してください。既存のパスを開いただけで新しい3Dパスになるわけではありません。
旧版でも使うシーンは変更前のファイルを残してください
新しい3Dパスを含むシーンはVer.0.1.1以前では開けません。作り直す前に、シーンのバージョン互換性を確認してください。
塗りと二重の枠線
パスパネルで塗り、外側枠線、内側枠線を個別に設定します。塗りには角の丸い/尖った設定と不透明度、枠線には幅・硬さ・不透明度があり、それぞれ描画チャンネルを選べます。色見本の交換や「なし」への切替で、線だけ・塗りだけの表現にもできます。「パスを再ベイク」で反映を更新できます。
パスの塗り・外側線・内側線には、それぞれ別のマテリアルアセットを使えます。対応するスウォッチを選び、アセットの選択ボタンから選ぶか、アセットブラウザーからドラッグしてください。アセットブラウザーのクリックでも、選択中の塗り/線へ割り当てられます。「単色」で元の色に戻せます。アセットのマップや重ね合わせを保持し、線幅・不透明度はパスごとに調整できます。シーン保存とUndo/Redoに対応します。
設定を変えるパスと点の削除
確定済みパスの見た目を変えるときは、先にそのパスをクリックして編集状態にします。パスを開いていないときの設定は、次に作るパスの設定です。色見本の交換はRGBだけを交換し、線幅や不透明度は変えません。「パスを再ベイク」はパスパネルの空白を右クリックして開きます。点の削除で開いたパスが2点未満、閉じたパスが3点未満になると、パス自体が削除されます。
画像Fill・マテリアル・パターン
画像をFillに使う
マテリアルレイヤーのプロパティで対象チャンネルを有効にし、「画像Fill」で画像を選ぶか、プロジェクトからドロップします。画像指定はそのチャンネルの一定値を置き換えます。数値チャンネルは画像のR、透明度はアルファを使います。「解除」で画像を外せます。
UV変換には繰り返し数、位置、回転、画像の繰り返しがあり、そのレイヤーの画像に共通で適用されます。「UVをリセット」で初期値へ戻せます。「高さからノーマルを生成」はシーン全体に作用します。
ノーマル画像で凹凸だけを追加する
ノーマル画像だけで凹凸を追加するには、画像Fillの「ノーマルマップで凹凸だけ追加...」を使います。Normalだけが有効になり、シーン全体の「高さからノーマルを生成」がオフになります。Heightから凹凸を作る作業へ戻る場合は、このシーン全体の設定を確認してください。
パターンを作る
「パターンを追加」から汚し、錆、泥はね、擦り傷、埃、流れを選びます。画像そのものではなく設定を保持するので、後から分布を調整できます。
| 設定 | 調整するもの |
|---|---|
| 細かさ | 模様の繰り返しと粒の大きさ |
| 量 | 模様が覆う割合 |
| エッジの硬さ | 模様の境界の強さ |
| シード | 同じ傾向のまま配置を変える数値 |
| 細部 | ノイズに重ねる細部の段数 |
| 色ムラ | 模様内の色むら |
| 凹凸 | Heightチャンネルを有効にしたとき、模様に凹凸を加える |
| 反転 | 模様の分布を反転 |
| 形状による配置/形状マスクの強さ | 凸・凹・AOを用いた配置。詳しくは汚し |
パターンが形を決めるのはBaseColor・Roughness・Metallic・Heightで、これらのチャンネルでは画像Fillよりパターンが優先されます。NormalとEmissionは対象外です。画像が反映されないときは「パターンが使用中」の表示とチャンネルの有効状態を確認してください。「ランダム」でシードを変え、「反転」で分布を反転できます。「パターンを解除」はチャンネル値を残して通常のFillへ戻します。
マテリアルプリセット
現在のマテリアルを登録し、アセットブラウザーのプリセットから再利用できます。
単一レイヤーのプリセットで置き換えるには、ロックしていないFillレイヤーを選び、「選択中のレイヤーに適用」を使います。チャンネル値・画像・パターン設定が置き換わり、Undoで戻せます。
新しいレイヤーとして追加するには、アセットをビューポートへドラッグします。複数レイヤーのプリセットは、選択レイヤーの上に編集可能なレイヤーとフォルダーとして追加されます。
保存したプリセットは右クリックから更新・名前変更・削除でき、お気に入りにも登録できます。内蔵プリセットとユーザー保存プリセットでは編集できる操作が異なります。
対象のテクスチャセットを選択してから、アセットブラウザーでマテリアルを選びます。ブラシ・ポリゴン塗り・UVシェル塗りでは、現在選択中のテクスチャセット内を部分的に塗れます。塗布済みのアセットレイヤーやフォルダーを選ぶと、同じアセットで塗り足せます。詳しくはブラシ・消しゴム・色を参照してください。
マテリアルで全体を塗りつぶす場合も、対象は現在選択中のテクスチャセットです。アセットブラウザーから新しく塗るマテリアルの記録先は、現在選択中のテクスチャセットです。既存レイヤーへの塗り足しは、そのレイヤーが属するセットを対象にします。同じマテリアルを共有するパーツは最終テクスチャも共有するため、UVが重なる位置では別のパーツにも見た目の変化が現れることがあります。
プリセットに保存される内容
「現在のマテリアルを登録」は、選択中のFillのチャンネル値と有効設定、画像とUV、パターン設定を保存します。マスクやレイヤー不透明度を含むシーン全体の保存とは異なります。右クリックの「選択中のレイヤーの素材で上書き」は、チャンネル値とパターン設定で置き換えます。画像や複数レイヤー構成を残したい場合は、元のプリセットを保持し、別名で登録してください。ユーザー保存プリセットは最大512件です。
マテリアルを塗るチャンネル
マテリアルの描画・消去は、ビューポートの表示モードに連動します。BaseColor・Normal・Roughness・Metallic・Height・Emissionの単独表示では、そのチャンネルだけが対象です。PBR・NPR・レイヤーマスク表示では全チャンネルが対象になります。プロパティの「描画・消去の対象」を確認してから塗り足しや消去を行ってください。
塗り足す・通常の描画へ戻る
部分的に塗ったマテリアルは、そのFillレイヤーやフォルダーを選んで塗り足せます。フォルダー内の対象レイヤーは同じセットのFillで、マスクが有効になっている必要があります。全面を覆うマスクなしのFillを部分編集する場合は、先にマスクを追加してください。通常の色で描く作業へ戻るには、プロパティの「アセットの選択を解除」を押します。適用済みレイヤーは残ります。
アセットのダウンロードとオフライン利用
現在の配布版にはアセット一覧とプレビューが含まれますが、ダウンロード対象の画像マテリアルの元画像は含まれません。画像マテリアルは初めて使うときに取得します。ダウンロードアイコン付きのアセットは、まだ画像の取得が必要です。 一覧をオフラインで見られても、そのアセットをオフラインで使えるとは限りません。
プロシージャルアセットと、自分で取り込んだ画像は、マテリアルのダウンロードなしで使えます。取得済みのキャッシュは製品版と体験版で別々に管理されます。
- オンラインの状態で、ライブラリから使いたいアセットを選びます。未取得のアセットを使う操作をするとダウンロードが始まります。
- 作業前に準備するなら、アセットを右クリックして「オフライン用にダウンロード」を選びます。これは画像を準備する操作です。
- アセットブラウザーの「ダウンロード中 → データを確認中 → 画像を展開中」が完了するまで待ちます。
- 取得後はキャッシュを使ってオフラインでも利用できます。ダウンロード中にシーン・レイヤー・ツールなどを切り替えた場合は、完了後にアセットをもう一度選び、現在の対象へ適用してください。
別のアセットを取得したいときは、進行中のダウンロードが終わるのを待つか「取得をキャンセル」を使います。オフラインにする前に、必要なアセットをそれぞれ取得しておきましょう。
失敗・キャンセルしたとき
- 通信状態を確認して、アセットブラウザーの「再試行」を押します。キャンセル後も再試行できます。
- エラー表示にマウスを重ねると、詳細がある場合は確認できます。「閉じる」は失敗・キャンセルの表示を閉じます。
- 「配布元にダウンロードファイルが登録されていない」と表示されるアセットは、通信の再試行だけでは取得できません。
- 取得済みなのに適用されないときは、アセットを再選択し、対象のレイヤーと有効なチャンネルを確認してください。
アセットデータをアンインストールする
ディスクの空きを増やすには、アセットを右クリックして「素材データをアンインストール...」を選びます。確認画面でアセット名とインストール済みデータの容量を確認してください。
削除されるのは、そのアセットのダウンロード済み画像と、アプリのフォルダーに残っている対応する同梱画像です。作品に取り込み済みの画像、アセット一覧、アセットの設定、プレビューは残ります。
次にそのアセットを使うときは再ダウンロードが必要になります。これからオフラインで使うアセットはアンインストールしないでください。
ダウンロードや描画・他の処理の途中は削除できません。削除ボタンが無効な場合は処理の完了と削除できるデータの有無を確認します。追加ファイルやリンクがあるため安全に削除できないと表示された場合は、フォルダーごと手作業で消さず、表示された理由を確認してください。削除に失敗した場合は保存先の権限や他のアプリで使用中でないかを確認して再試行します。
チャンネルを確認する
チャンネルの役割
パネル最上部でメッシュパーツを選択します。その下で作業解像度と書き出し解像度を変更できます。サムネイルはレイヤー合成後の結果です。
| チャンネル | 役割 |
|---|---|
| BaseColor | 表面の色 |
| Normal | 表面の法線 |
| Roughness | 表面の粗さ |
| Metallic | 金属らしさ |
| Height | 表面の高さ |
| Emission | 発光の色 |
解像度と画像の紐づけ
プロジェクト内の画像をチャンネルへドロップして紐づけられます。ビューポートのプレビュー解像度は「環境設定」のVRAM項目で設定します。
作業解像度は512 / 1024 / 2048 / 4096、書き出し解像度はこれらに加えて8192を選べます。作業解像度・書き出し解像度・プレビュー解像度は別の設定です。高解像度の書き出しには、より多くのメモリと処理時間が必要になります。
「手動テクスチャ紐づけ」では取り込んだマテリアルのチャンネルに画像を指定し、「解除」で紐づけを外せます。レイヤーの画像Fillとは別の設定です。
ベイクされた形状情報を見る
メッシュマップを確認する
「テクスチャセット設定」のメッシュマップ一覧に、自動生成されたマップが表示されます。サムネイルをクリックすると拡大でき、「UVエディタに表示」で背景に切り替えられます。
4種類のマップの見方
| マップ | 読み方 |
|---|---|
| 曲率 | 白が凸、灰色が平面、黒が凹 |
| アンビエントオクルージョン(AO) | 白は遮蔽なし。暗い部分ほど遮蔽されている |
| オブジェクト空間法線 | モデル内での面の向きをRGBで表す。チャンネルのNormalとは用途が異なる |
| 位置 | モデル全体の境界内の位置をRGBで表す |
ベイクの解像度と対応範囲
自動ベイクは各テクスチャセットにつき1024pxです。「再ベイク」で更新できます。手動出力の解像度は自動ベイクには適用されません。
- 「ファイル → メッシュマップをベイク...」を開き、「テクスチャセット番号」と「解像度」を選びます。解像度は256 / 512 / 1024 / 2048pxから選べます。
- 「メッシュマップをベイク」を押して完了を待ちます。
- 表示されたテクスチャセットと画像サイズを確認してから「4種類のマップをPNG出力...」を押します。
解像度の選択だけでは、表示中の自動ベイク結果は変わりません。
現在の対応範囲
現在のモデルの全パーツから生成するセルフベイクです。AOは64本の半球レイ、最大距離はモデル対角長の15%です。曲率は面の角度とエッジからの距離で求めます。
UVは0〜1を対象とし、同一テクスチャセット内の重複UVでは最初の面を共有します。ハイポリからの転写、ケージ、UDIM、ID・厚み・Bent Normalのベイクは未対応です。
手動ベイクとPNG出力
手動ベイク画面は「テクスチャセット設定 → ベイク・出力...」からも開けます。「自動ベイク結果を使用(1024px)」で自動結果へ戻せます。PNGはリニアデータで、curvature.png・ao.png・object_normal.png・position.pngの4ファイルを新しいフォルダーへ出力します。前の出力は上書きしません。モデル変更の案内が出た場合は、現在の形状で再ベイクしてから出力してください。
エッジや凹部に汚しを加える
形状に合わせて汚しを配置する
汚しのパターンレイヤーを選ぶ
プロシージャルパターンを有効にし、色やRoughnessなどを調整します。
「形状による配置」を選ぶ
「凸エッジ」「凹エッジ」「遮蔽部分の汚れ(AO)」から選択します。「全面」は形状で制限しない配置です。
メッシュマップの自動ベイク中は、完了して配置が反映されるまで待ちます。結果が更新されない場合は、表示されたエラーを確認し、「メッシュマップを再ベイク」を使います。
強さとパターンを調整する
「形状マスクの強さ」で形状の影響を調整し、「量」「細かさ」などで汚しの分布を整えます。
設定の保存とUV変形
形状配置では、塗りつぶし画像のUV変形は適用しません。配置設定はシーンとマテリアルプリセットに保存され、Undo/Redoにも対応します。
アセットを探す・取り込む
アセットを検索・絞り込む
アセットブラウザーには作業フォルダー内のアセットと共通のマテリアルプリセットが表示されます。画像・メッシュ・マテリアルの種類、フォルダー、検索、お気に入りで絞り込み、検索条件を保存できます。下部の「保存検索」と「パスでフィルタ」で、絞り込み欄を表示・非表示にできます。非表示にしても絞り込み条件は残ります。上部の検索入力欄は表示されたままです。見つからないときはフィルターを戻してください。
マテリアルを使う前に、対象のテクスチャセットを選択してください。アセットブラウザーから新しく塗るマテリアルの記録先は、現在選択中のテクスチャセットです。既存レイヤーへの塗り足しは、そのレイヤーが属するセットを対象にします。同じマテリアルを共有するパーツは最終テクスチャも共有するため、UVが重なる位置では別のパーツにも見た目の変化が現れることがあります。
検索条件を保存する
検索文字、種類、ライブラリ、フォルダー、お気に入りの条件を保存検索にまとめられます。同じ名前で保存すると条件を更新でき、不要な保存検索は右クリックから削除できます。条件を手動で変えると、保存検索の選択状態は解除されます。外部でファイルを追加・復元した後は、上部の更新ボタンで一覧を読み直してください。
ライブラリのアセットをオフラインで使う
ダウンロードアイコンのあるマテリアルは初回使用時に画像を取得します。オフラインで使う前に、右クリックの「オフライン用にダウンロード」で準備してください。取得後はキャッシュを再利用します。取得状況・再試行・キャッシュの削除を参照してください。キャッシュをアンインストールしても、作品内の画像とアセット一覧は残ります。
アセットを取り込んで使う
「ファイルを取り込む」やOSからのドロップでアセットを追加します。「Unity Packageをインポート」ではUnity Package内のアセットを取り込めます。Unityのエディター機能やスクリプトを実行する機能ではありません。アセットの右クリックからお気に入り登録やエクスプローラーでの表示ができます。画像は用途に応じてチャンネル、画像Fill、スタンプへ渡します。
プロジェクト内の画像を右クリックし、「画像スタンプに登録」または「ブラシに登録」を選べます。画像スタンプではスタンプの画像タブ、ブラシではブラシパネルが開きます。既存の「PNGブラシをインポート」や画像の追加/ドロップも利用できます。
フォルダー・名前変更・削除
追加メニュー、何もない場所、またはフォルダーの右クリックから「新規フォルダ」を作れます。作成後は名前を入力します。既存のファイルやフォルダーは、選択してF2、または右クリックの「名前を変更」で変更できます。Enterまたは入力欄の外をクリックすると確定し、Escで取り消します。同じ場所にある別ファイルへ上書きする名前変更はできません。
削除は右クリックの「削除」、またはアセットブラウザーにフォーカスがある状態でDeleteを使います。通常の確認画面を出さず、対象をWindowsのごみ箱へ移します。フォルダーの中身も対象です。シーンのUndoとは別の操作なので、戻す場合はごみ箱で元の場所へ復元し、アセットブラウザーの更新ボタンを押してください。
使用中のモデルや画像を削除すると、後で参照できなくなることがあります。ライブラリアセットの「素材データをアンインストール...」と、プロジェクト内のファイル削除は別の操作です。
ごみ箱を利用できない保存先では、Windowsの警告やエラーが表示される場合があります。削除前に対象と保存先を確認してください。
Unity Packageを取り込む
Unity Package(.unitypackage)内のファイルをプロジェクトのアセットライブラリへ展開できます。パッケージを取り込んだだけでは、ビューポートのモデルは切り替わりません。展開されたモデルを自分で選ぶ流れです。
- 取り込む.unitypackageを選び、ライブラリーへ展開
- 選ぶ取り込んだフォルダー内からFBXなどの対応モデルを探す
- 開いて確認モデルを読み込み、テクスチャや表示を確認する

- 「ファイル → Unity Packageをインポート...」から .unitypackage を選びます。アセットブラウザーの追加メニュー、またはOSからのドロップでも取り込めます。
- アセットブラウザーで展開されたフォルダーを確認します。見つからなければ検索条件・種類・フォルダーの絞り込みを戻します。
- 使うFBXなどのモデルをアセットブラウザーからビューポートへドラッグします。単体ファイルを「ファイル → モデルをインポート...」から開く方法もあります。
- 必要な画像をチャンネルやマテリアルレイヤーに割り当て、見た目を確認します。
- 未保存の作業では、プロジェクトフォルダーへ保存して取り込んだアセットを保持します。詳しくはプロジェクトの保存を参照してください。
取り込める内容と注意点
- パッケージ内のフォルダー構造や関連ファイルを展開します。モデル選択ダイアログが対応する形式は FBX・OBJ・glTF・GLB・DAE・PLY・STL・3DS・Blend です。形式が対応していても、そのファイルの全機能を再現するとは限りません。
- 画像やマテリアル定義、.metaなどの関連ファイルも展開先に残ります。ただし、ファイルの取り込みと、Unityのマテリアル設定の自動適用は別です。割り当てる画像とチャンネルを確認してください。
- Prefabの自動インポートは現在無効です。 パッケージを展開した後、FBXなどのモデルを選んでください。Unityのシーン、スクリプト、Animator、独自シェーダーの実行環境を読み込む機能ではありません。Unity上の表示との完全一致も保証しません。
- 同じ相対パスのファイルがあると上書きされることがあります。 再取り込みや複数パッケージの統合前はプロジェクトのコピーを保管し、必要なら別のプロジェクトで確認してください。
モデルが表示されないときは、パッケージの取り込み後にモデルを選んだか確認します。色や模様がない場合は、画像が含まれているか、正しいテクスチャセットとチャンネルに割り当てたかを確認してください。シェイプキーの読み込みはFBXのシェイプキーを参照してください。
プロジェクト・保存・復旧
- 編集を続ける.harmosのシーンを保存。レイヤーやストロークを後から編集
- ほかのソフトで使う画像・PSDを書き出す。編集用のシーンも別に残す
新規作成とモデルの読み込み
「ファイル → 新規プロジェクト」で保存先を決め、「モデルをインポート」でモデルを読み込みます。FBX、OBJ、glTF / GLB、DAE、PLY、STL、3DS、BLENDに対応します。テクスチャ制作にはモデルのUVを用意してください。UVを持たない形式やデータでは、形式の読み込み対応とテクスチャ編集の可否は別になります。
プロジェクトはアセットとシーンをまとめる作業フォルダーです。「プロジェクト設定」ではルートフォルダーとテクスチャ解像度を変更できます。シーンの拡張子は .harmos です。
Unity Packageからアセットを取り込む場合はUnity Packageの読み込み、FBXに含まれる変形とパーツの表示はメッシュ・シェイプキーを参照してください。
新規シーンとプロジェクトの切り替え
「新規プロジェクト」で作るフォルダーには、scenes・assets・autosaveとworkspace.jsonが入ります。作成したシーンはCtrl+Sで保存してください。1つのプロジェクトで、複数のシーンがアセットを共有できます。
「ファイル → 新規シーン」(Ctrl+N)は、現在の作業解像度で新しいシーンを始めます。変更があるときは「保存して新規作成」「保存せず新規作成」「キャンセル」を選べます。カメラの移動なども保存確認の対象になることがあります。
「プロジェクト設定 → 変更」やホームのプロジェクト選択は、プロジェクトフォルダーを指定する操作です。編集中のシーンは閉じず、既存のシーンやアセットも移動しません。シーンを切り替えるには「シーンを開く」を使います。プロジェクトフォルダーやworkspace.jsonを開くと、scenes内で最後に更新されたシーンが開きます。特定の版を開くには、その.harmosを直接選んでください。
保存方法を使い分ける
| 操作 | 用途 |
|---|---|
| シーンを保存 | 現在の編集状態を保存。Ctrl+S |
| 名前を付けてシーンを保存 | 別名で編集状態を残す。Ctrl+Shift+S。別のプロジェクトへ保存する場合は、現在のライブラリ内のアセットも保存先へコピーします。 |
| 増分して保存 | 番号を進めて版を残す。Ctrl+Alt+S |
| シーンを開く | 保存した編集状態から再開 |
| パッケージとして書き出し | プロジェクトを .harmopackage にまとめて持ち出す |
| 前回と同じ場所へ書き出し | 確認画面を出さず、前回書き出したパッケージを上書きする。実行前にカーソルを重ね、出力先を確認する |
| パッケージを開く | 設定された場所へ展開して開く |
| 展開先を指定して開く | 今回の展開先を選んで開く |
パッケージ出力では、まず現在のシーンを保存します。未保存の作業では、出力するパッケージと同じ場所にプロジェクトフォルダーを作成します。パッケージにはworkspace.jsonとscenes・assets・autosaveフォルダーが含まれ、プロジェクト直下のその他のファイルは含まれません。ほかの人に渡す前に、別のシーンや自動保存に共有できない内容がないか確認してください。
増分保存とパッケージの保存先
「増分して保存」は、現在のシーンと同じフォルダーへ名前_001.harmos、名前_002.harmosのように保存し、そのシーンで作業を続けます。アセットは同じプロジェクトで共有し、版ごとにプロジェクト全体を複製しません。
「パッケージを開く」の標準の展開先はダウンロードフォルダーです。「環境設定 → 一般 → パッケージの展開先」で変更できます。「展開先を指定して開く」は今回だけ使う展開先を選びます。同名の空でないフォルダーがある場合は、番号付きの別フォルダーへ展開します。
「前回と同じ場所へ書き出し」の出力先はアプリに記憶されます。別のプロジェクトへ移った後も、実行前にカーソルを重ねて出力先を確認してください。
新しい3Dパスを含むシーンの互換性
Ver.0.1.1以前でも使う場合
Ver.0.1.2の新しい3Dパスを含むシーンは、Ver.0.1.1以前では開けません。旧版でも使うシーンは、変更前のファイルを残してください。
新しい3Dパスを追加したり、以前のUV座標のパスを3Dビューで作り直したりする前に、「名前を付けてシーンを保存」や「増分して保存」で別のファイルを用意し、元のファイルを上書きせずに保管してください。作り直しが必要なパスは、パスのUVアイランド境界で確認できます。
自動保存と復旧
定時の自動保存は初期状態ではオフです。有効にしたときの初期値は5分間隔、変更があるときだけ保存、20件保持です。画面で指定できる保持数は0〜50件で、0はすべて残します。描画中や他の処理中は定時保存を待機します。「今すぐ自動保存」は定時保存がオフでも使えます。
「環境設定 → 自動保存」で有効化し、間隔(1〜60分)、接頭辞、変更時だけ保存するか、保持数を指定します。保持数0はすべて残す設定です。「今すぐ自動保存」と保存フォルダーを開く操作もあります。
「ファイル → 自動保存から復旧」で保存済みスナップショットを選びます。「前回の保存から復旧」は、利用できる前回保存から別の復旧用シーンを作成して開きます。元のシーンファイルは残ります。復旧した内容を確認したら、通常のシーン保存を行ってください。
自動保存の場所と選び方
保存済みのプロジェクトでは、プロジェクトフォルダー内の autosave にスナップショットを作ります。未保存のセッションではHarmoFlowのアプリデータ領域を使います。「環境設定 → 自動保存」の「現在の保存先」と「自動保存フォルダを開く」で、実際の場所を確認してください。
「自動保存から復旧」では日時と対象を確認して選びます。プロジェクトに属する自動保存は、シーン用フォルダーに 元のシーン名_recovered_番号 の別シーンとして追加されます。プロジェクトに存在しないアセットは戻し、既存のアセットファイルは変更しません。未保存セッションの自動保存は未保存のシーンとして開き、通常保存時に保存先を選びます。復旧前に現在の作業を自動保存する処理もありますが、大切な作業は先に通常保存しておいてください。
自動保存は通常保存やバックアップの代わりにはなりません。保持数の上限により古いスナップショットは整理されるため、残したい版は別名保存・増分保存やバックアップで確保します。復旧を調べている間は、元のプロジェクトと自動保存を削除・移動しないでください。
GPUエラー後に作業を復旧する
復旧には成功した自動保存が必要です
GPUエラー時には復旧用の自動保存を試みますが、必ず成功するわけではありません。保存失敗、データの欠損、強制終了などでは復旧できない場合があり、未保存の変更がすべて戻ることは保証されません。
- エラー画面の原因・操作・詳細を控え、「作業は自動保存しました」か「復旧用の自動保存に失敗しました」かを確認します。成功した場合は画面の「再起動する」を使うか、「終了する」の後にHarmoFlowを起動します。
- 次回起動時に「作業の復元」が表示されたら、対象を確認して「復元する」を選びます。読み込みが終わるまで待ってください。元のプロジェクトが利用できない場合や、元々未保存の作業は、未保存のシーンとして開かれる場合があります。
- 復元されたモデル、レイヤー、直前の描画、アセット・画像を確認します。開けたことだけで完全に戻ったとは判断しないでください。
- 内容を確認してから「シーンを保存」(Ctrl+S)します。復元しただけでは元のシーンファイルは上書きされず、通常保存するまでディスク上の元ファイルは変わりません。 元の保存も残したい場合は「名前を付けてシーンを保存」を使います。
復元を後回しにする場合は、「今はしない」を押す前にボタンへマウスを重ね、ツールチップに表示される自動保存の場所を控えてください。「今はしない」を選ぶと案内は閉じますが、自動保存データは削除されません。
後から復旧する場合、保存済みの作業は元のプロジェクトを開いてから「ファイル → 自動保存から復旧」を選びます。この一覧に表示されるのは現在のプロジェクトの自動保存です。未保存セッションではアプリデータ内の自動保存が表示されます。見つからない場合は、控えたパスと「現在の保存先」を照合してください。
案内が出ない、保存に失敗した、復元中にまた終了する場合は、元データを保管したままGPUエラーの対処と問い合わせへ進みます。復元や終了を繰り返す前に、GPU負荷やドライバーの状態を確認してください。
画像を書き出す
書き出しとシーン保存の違い
出力先と形式はエクスポートパネルで、書き出し解像度はチャンネルパネルで選びます。PNG、JPG、TGA、EXR、PSDなどに対応しています。編集を再開するためのシーン保存と、完成したテクスチャの画像出力は別の操作です。
形状マップだけを取り出す場合は、メッシュマップのベイク画面からPNG出力を使います。マップはリニアデータです。出力先には新しいフォルダーを作成します。
エクスポートパネルからのテクスチャ出力は製品版で利用できます。体験版ではシーンを保存し、製品版で開いて書き出してください。
出力設定
- 「チャンネル」で書き出し解像度を選びます。
- 「エクスポート」で出力先フォルダー、ベース名、形式を指定します。
- 必要なチャンネルをオンにし、ノーマルマップの規約を選びます。
- 同じ出力先に同名の画像がある場合は、確認画面を出さずに上書きします。以前の書き出しを残す場合は、出力先フォルダーかベース名を変更してください。「サブフォルダーに出力」をオンにすると、出力先の下にベース名のフォルダーを作成します。
- 「テクスチャをエクスポート」を押します。
| 項目 | 選び方 |
|---|---|
| PNG | 画像の劣化を避けて保存したいときの基本形式 |
| JPG | 色画像の容量を抑える用途。非可逆圧縮のため数値マップにはPNGなどを選ぶ |
| TGA | TGAを要求する制作環境へ渡す場合 |
| EXR | EXRを扱う制作環境へ渡す場合。元の編集データの精度が形式変更だけで増えるわけではない |
| PSD | 出力するテクスチャセットと有効なチャンネルごとに、画像レイヤー付きPSDを作成。保持する情報と制限は下記を参照 |
| OpenGL / DirectX | 接線空間Normalの緑チャンネルの向きを選択。出力先の設定と合わせる |
JPGは透明度を保存しません。透明部分が必要な出力にはPNGなどを選んでください。
PNGの未描画部分と透明度
Ver.0.1.2では、表示用に自動で付くBaseの下地をPNG出力から除外します。未描画部分は透明になり、半透明の描画、マスク、レイヤーの不透明度も反映されます。
読み込んだテクスチャと、自分で追加したFillレイヤーはPNG出力に含まれます。PNGの背景を確認するときは、自動の表示用Baseと、これらの出力対象の下地を区別してください。
UV外側を元画像で補完するか、透明にするかなどは、下の「UVの外側をどう書き出すか」の設定も確認してください。
PSDに保存される情報
出力するテクスチャセットごとに、有効な各チャンネルのPSDを作成します。
元のストロークや補正値を後から編集する場合は、HarmoFlowのシーン(.harmos)も保存してください。
保持する情報
- ペイント・塗りつぶし・パスは、元の名前・順序・表示状態を持つ画像レイヤーとして保存します
- 不透明度と合成モードはPSD上でも編集できます。通常・乗算・加算・オーバーレイに対応し、加算は「覆い焼き(リニア)- 加算」になります
- フォルダーは階層・名前・表示状態・折りたたみ状態を保持し、通過合成で保存します
画像に焼き込む情報
編集可能なマスクを保持する設定がオフの場合、マスクとクリッピングは画素の透明度に焼き込みます。Paint・Fill・Pathの通常チャンネル合成には、合成差を埋めるためだけの補正レイヤーを追加しません。生成ノーマル・法線のUV境界処理・立体的な高さの結果は、必要に応じて別レイヤーに保存します。
調整レイヤーも対象チャンネルの画像レイヤーとしてPSDへ書き出します。HarmoFlowの調整パラメーターをPhotoshopの調整レイヤーとして保持する形式ではありません。補正値を後から編集するには.harmosも保存してください。補正用の画像は、その位置より下の合成結果を前提にするため、PSD側で下地を変更してもHarmoFlowの補正が自動再計算されるわけではありません。
PSDのマスクとクリッピング
PSDを選ぶと、「クリッピングを編集可能な状態で保持」と「レイヤーマスクを編集可能な状態で保持」を個別に選べます。初期状態では両方オフで、効果をレイヤーの画素に焼き込みます。オンにすると、Photoshopで編集できるクリッピング設定やレイヤーマスクを分けて保存します。この2項目はPSDにだけ作用し、シーンを保存すると設定も残ります。
Photoshopの合成方法により、半透明の境界や連続したクリッピングの見え方が変わる場合があります。見た目を優先する場合は保持をオフにし、後からマスクを編集したい場合はオンにして、書き出したPSDを確認してください。
パーツをまとめて書き出す
書き出しは、チャンネルパネルで選択中の1パーツだけを取り出す操作ではありません。出力するテクスチャセットごとに、有効なチャンネルのファイルを作ります。同じマテリアルのパーツをまとめてPSDへ書き出すと、パーツごとのレイヤーがメッシュ名のフォルダーに分かれることがあります。
PNGなどの画像とPSDは、出力するテクスチャセットとチャンネルごとにファイルを作ります。「同じマテリアルのパーツをまとめる」は初期設定で有効です。元のモデルで同じマテリアルが割り当てられたパーツのUV領域を1組にまとめ、別のマテリアルは分けて書き出します。UVが重なる部分は先頭パーツの描画を優先します。重なったUVに別々の絵を描いている場合は、この設定をオフにしてパーツごとに書き出してください。
UVの外側をどう書き出すか
「環境設定 → VRAM → テクスチャ」の「メッシュUVの外側」で、元テクスチャで補完/透明/テクスチャ全体を保持を選べます。保存方式の変更は次のモデル読み込みか解像度変更で反映されます。「透明」の書き出しはスパースGPU非対応でも利用できます。元テクスチャ補完は通常の出力と、レイヤー付きPSDの背景・統合画像に適用されます。
環境設定・履歴・拡張
ホーム画面と最近使用したシーン
ホーム画面の左側では、プロジェクトの新規作成、プロジェクトフォルダーの選択、シーンの読み込みができます。右側の「最近使用したシーン」からは、以前の作業を再開できます。
正常に読み込み・保存できたシーンの履歴を、最新20件まで保持します。名前やパスで検索でき、各行のメニューから履歴だけを削除できます。ファイル本体は削除されません。
右上の「制作画面へ」で編集を始め、「ファイル → ホーム」でホーム画面へ戻れます。「起動時にホームを表示」をオフにすると、次回は制作画面で起動します。
最近使用したシーンの各行のメニューには、「開く」「ファイルの場所を開く」「パスをコピー」「最近使用したファイルから除去」があります。ファイルが見つからない行は開けません。プロジェクトフォルダーを切り替えても、現在編集中のシーンは閉じません。
表示言語は「ウィンドウ → 言語」または「環境設定 → 一般 → 言語」で変更できます。選択は次回起動にも引き継がれます。ユーザーが付けたアセット名やレイヤー名は翻訳されません。
手ぶれ補正を調整する
手ぶれ補正が有効なブラシは、面を斜めから見るときに補正が少し強くなります。画面上の小さな揺れが表面上で拡大するのを抑えるためです。輪郭付近では正面より追従が遅くなります。ブラシの点は表面上の距離に沿って配置しますが、極端に浅い角度では描く面を正面に向けるとさらに安定します。
「描き心地」の「速度に合わせて手ぶれ補正を変える」をオンにすると、ゆっくり描く間は揺れを抑え、速く動かすほど追従を速めます。「速度への追従」で変化量を調整できます。補正量が0のブラシには適用しません。新しいブラシの手ぶれ補正は標準で0.15です。既存の保存済みブラシの補正量は維持します。
筆圧を調整する
「筆圧サイズ」は筆圧で太さを変え、「筆圧で濃さを変える」は筆圧で濃淡を付けます。均一なインクの線を描くときは濃さへの筆圧をオフにしてください。既存シーンのストロークは保存時の設定で再描画されます。
先にモデルを読み込みます。読み込みやパスの編集などが途中の場合は、その操作を終えてから筆圧を調整してください。筆圧は「環境設定 → 描き心地 → 試し描きで筆圧を調整」から調整できます。ビューポート上のモデルにペンで強弱をつけて数本描き、「自動調整して確認」を押してください。確認画面で描き直し、「もっと柔らかく」「もっと硬く」で微調整して「完了」で保存します。「キャンセル」では変更しません。マウス入力は自動調整に使わず、筆圧の強弱やサンプルが不足した場合は追加の試し描きを案内します。試し描きはシーンには描き込みません。
試し描きは最新の1本だけが表示され、次の線を描き始めると前の線が消えます。「試し描きを消す」で表示を消し、確認画面の「最初から試し描き」で調整をやり直せます。
筆圧カーブや最小筆圧を調整するには、「環境設定 → 描き心地」で「筆圧の詳細設定」を開きます。筆圧カーブは「軽いタッチ」で弱い力でも太く、「しっかり押す」で強く押したときに太くなります。最小筆圧は弱く触れたときの下限、筆圧のなめらかさは変化を緩やかにする量です。なめらかさを上げると追従に遅れが生じます。グラフは入力に対する出力、モニターは現在の補正後の筆圧を表示します。これらの筆圧設定は自動保存され、すべてのブラシに適用されます。マウスには適用されません。
「試し描きのカーブを使う」がオンの間は、「筆圧カーブ」と「最小筆圧」を変更できません。この2項目を手動調整する場合は、先に「試し描きのカーブを使う」をオフにしてください。
同じ画面で現在のブラシの筆圧サイズ、手ぶれ補正、描画間隔も調整できます。ブラシごとの設定はブラシプリセットに保存して使い分けてください。
ペンのサイドボタンを使う
ペンのサイドボタンは、ペンタブレットのドライバーで割り当てたクリックとして使えます。「右クリック」を割り当てたボタン単独ではカメラは回転せず、Altと組み合わせるとズームします。右ボタンを押しながらペン先を付けても描画しません。ボタンを離したときにペン先がまだ板に触れていても、一度ペンを板から離すまでは描画しません。ペン先がボタンよりわずかに先に触れた場合も右クリックとして扱い、描き始めた線は取り消します。Shift+Altを押している間は、ペン先が触れても描画しません。「左クリック」「中クリック」を割り当てたボタンも、マウスのボタンと同じように使えます。サイドボタンの左クリックで描くときは筆圧がないため、マウスと同じ強さで描かれます。
Ver.0.1.2のレイヤーパイメニューでは、ペンタブでも一覧の上・下へポインターを置いてレイヤーを送り、中央へ戻して停止できます。ペン先のタップでもカードを選べます。3DビューとUVエディタで使えます。
ファイル選択画面を切り替える
ファイルやフォルダーの選択には、標準でOSのダイアログを使います。「環境設定 → 一般 → 内蔵ファイルブラウザーを使う」をオンにすると内蔵ブラウザーへ切り替わります。設定は次回起動時にも引き継がれます。この設定はモデルやシーンなどのファイル選択に使います。プラグインの追加やLuaファイルの実行では、引き続きOSのダイアログを使います。新規プロジェクトでは、標準ダイアログ内でプロジェクト用のフォルダーを作成して選択してください。
画面配置と履歴
「ウィンドウ」から各パネルを表示し、ドッキングで配置を変更できます。パネルレールにはパネルを収納し、アイコンから呼び出せます。レールの幅を広げるとラベルが表示され、並べ替え・グループ化・レールから外す操作ができます。配置を戻す場合は「レイアウトをリセット」を使います。
Ctrl+Z / Ctrl+Yで編集を戻す/やり直すことができ、「履歴」で操作を確認できます。Undoはすべての設定や外部ファイル操作を元に戻すものではありません。「コンソール」は処理結果やエラーの確認に使います。操作説明はこの公式ドキュメントを参照してください。言語は日本語・英語・簡体字中国語・韓国語を切り替えられます。
ブラシ・消しゴム・色混ぜ/ぼかし・スタンプ・パスのツール設定もUndo/Redoに対応します。スライダーや数値欄の連続ドラッグは1回の操作として戻ります。別のツールへ切り替えていても、変更した設定に適用されます。ブラシやスタンプの設定を戻すと、次に描く筆跡へ反映されます。すべての設定や外部ファイル操作が戻るわけではありません。
パネルレールを使う
パネルのタイトル部分をパネルレールへドラッグすると、アイコンとして収納できます。アイコンをクリックして開き、もう一度クリックすると閉じます。別のアイコンを開くと、先にレールから開いていたパネルは閉じます。開いたパネルのタイトルを外へドラッグすると、通常のパネルとして配置できます。アイコンの右クリックメニューの「レーンから外す」で、レールから取り除けます。レール上部の矢印は、アイコンだけの表示と名前付きの表示を切り替えます。
履歴を戻す・進める
「ウィンドウ → 履歴」では、行をクリックして、その操作を終えた状態までまとめて戻る・進むことができます。「最新の状態」は、保持中のRedoをすべて進めます。読み込みや描画などの処理中は履歴を移動できません。戻ったあとに新しい編集をすると、その先のRedo履歴は置き換わります。
「環境設定 → 一般 → 最大履歴数」では、UndoとRedoを合わせた保持件数を設定します。標準は100件、0は無制限です。変更後に「保存」を押すと、上限を超えた古いUndo履歴から削除され、必要に応じて先のRedo履歴も削除されます。削除した履歴は復元できません。連続ドラッグなど、まとめられた操作は1件として数えます。
FPSとフレーム時間を確認する
「ウィンドウ → FPS / フレーム時間」では、FPS、平均・P95・最大のフレーム時間、50msを超えたフレーム数とグラフを確認できます。直近240フレームの実時間で、FPS制限や待機時間も含みます。GPUの描画処理だけを測った値ではありません。比較する操作の前に「計測をリセット」を押してください。実験的なテクスチャストリーミングのON/OFFも表示します。
VRAMと表示品質
「環境設定 → VRAM」ではプリセットを起点に調整できます。重い場合は最初にプレビュー解像度を下げ、必要に応じて作業解像度を下げます。
プリセットとプレビュー解像度
初期設定は「バランス」です。「最高品質」はプレビューをフル解像度にし、「低 VRAM」はプレビューを1/4にして、表示用のBC7圧縮などを使います。個別の項目を変更すると「カスタム」になります。「最高品質」「バランス」「低 VRAM」を選び直すと、実験的機能はオフになります。「カスタム」を選ぶだけでは、現在の設定は変わりません。
「半分」「1/4」は画像の縦横の解像度です。UVエディタを開いている間は、UI側のプレビュー解像度がキャンバスの大きさに合わせて自動調整されます。書き出し解像度は変わりません。
VRAMの設定を変えたら、環境設定の下部にある「保存」を押してください。「閉じる」だけではVRAMの変更は適用されません。メッシュUV外側のピクセルの保存方式を変えた場合は、次にモデルを読み込むか解像度を変えたときに反映されます。
| 設定群 | 内容 |
|---|---|
| テクスチャ | UV外側の扱い、BC7表示圧縮、チャンネル遅延ロードと対象チャンネル |
| ベイク中間バッファ | スナップショット、ライブスクラッチ、レイヤーチェックポイントの遅延確保と最大数 |
| インポート / GPU準備 | 高速GPUパスとGPU確保バッチ |
| プレビュー | ビューポートとUIパネルをフル/半分/1/4で表示 |
| メモリ基盤 | ステージングプール、ブロック容量、アイドル時の再利用 |
| 予算 | VRAM予算と超過警告。0は予算制限なし |
| 実験的機能 | ニューラルテクスチャ圧縮、仮想テクスチャキャッシュ、非編集中セットの省メモリ化。詳しくは以下を参照 |
描画そのものをUV島内のピクセルに限定したい場合は、ブラシ側の「UV外の余白をなくす(厳密)」を使います。「メッシュUVの外側」の保存・書き出し設定とは別です。
VRAM予算の意味
「VRAM予算」は、警告や一部のキャッシュの調整に使う目安です。指定値を超えるメモリ確保をすべて禁止する設定ではありません。使用量のバーは推定値で、他のアプリの使用量が含まれる場合があります。0では予算を設けません。
表示用画像の圧縮
BC7はビューポート表示用の画像だけを圧縮します。「未選択セットをBC7」では選択中を通常のプレビューで表示し、「全セットをBC7」では選択中も対象になります。編集用の画像や書き出しデータは圧縮しません。通常のBC7表示用画像は256〜512pxです。フル解像度の仮想テクスチャキャッシュでは扱いが異なります。
「ニューラル圧縮(ビューポート表示)」は実験的機能で、初期状態ではオフです。表示用の画像を小さな情報から復元するため、細部や色が元画像と異なる場合があります。プレビューは256〜512pxで、編集・書き出し用の画像は維持します。「レイテント分割」は初期値4、最小2です。フル解像度の仮想テクスチャキャッシュや非編集中セットの省メモリ化が優先される場合、この方式は使われません。
仮想テクスチャキャッシュ
仮想テクスチャキャッシュは非選択セットを可逆圧縮してディスクへ退避し、選択時に復元します。フル解像度表示では非選択セットにBC7表示用コピーを使うため、表示色にわずかな差が出る場合があります。編集・書き出しデータは可逆のままです。選択中のセットはページ予算より優先し、常駐管理はテクスチャセット単位です。
編集していないセットの省メモリ化
「非編集中のテクスチャセットを省メモリ化」は初期状態ではオフです。対応GPUでは、選択中・編集対象セットを元解像度で保ち、3秒以上操作がないと他のセットを可逆退避して1/4解像度で表示します。選択中のレイヤーが全テクスチャセットを対象にする場合は、全セットをメモリに保持します。単一セットではチャンネルメモリを減らしません。BC7・NTC・従来のVTなどより優先され、切り替え時に復元待ちが発生する場合があります。
自動保存は保存と復旧を参照してください。「一般」にはパッケージ展開先の設定があります。「キーコンフィグ」では操作名や条件を検索し、キー・マウスの割り当てを変更できます。
Luaとプラグイン
「スクリプト (Lua)」では入力したコードの実行とLuaファイルの実行、ログの確認・クリアができます。hf APIにはレイヤー追加・編集、マスク、画像Fill、マテリアルプリセット、ブラシ、モデル読み込み、シーン保存、パッケージ、テクスチャ書き出しなどの操作があります。レイヤー番号は1から始まります。
hf.log('Layers: ' .. hf.layer_count())
hf.add_layer('paint', 'Practice layer')プラグインは上部の「プラグイン(P)」メニューから起動します。通常のLuaスクリプトと、パネルを登録するLua拡張は別の実行経路です。詳しい手順は、目的に合うページをご覧ください。
- プラグインの導入・管理:追加、保存場所、起動、更新、エラーの確認
- プラグインを作る:Luaの最小例、公式SDKのダウンロード、DLLのビルドとテスト
- 標準の調整機能:色調補正・トーンカーブ・グラデーションマップ
スクリプトの実行とUndo
通常のLuaスクリプトは、描画中や他の処理中は実行を待機します。Lua命令には約2秒の実行制限がありますが、呼び出した処理のすべてを途中で止められるとは限りません。長い処理は小さく分け、出力ログでエラーを確認してください。Lua拡張のアクションとは異なり、通常のスクリプト全体が自動で1回のUndoにまとまったり、エラー時に一括で巻き戻されたりするわけではありません。実行前にシーンを保存しておきましょう。
プラグインの導入・管理
プラグインは、HarmoFlowに操作パネルや画像フィルターを追加する仕組みです。このページでは受け取ったファイルを使う手順を説明します。自分で作る場合はプラグインを作る、最初から使える色調補正・トーンカーブ・グラデーションマップは標準の調整機能へ進んでください。
- 確認する種類・配布元・対応バージョンを確認してシーンを保存
- 追加する追加・閲覧画面でファイルを選び、読み込み状態を確認
- 起動するプラグインメニューから開き、テスト用シーンで試す
まず、ファイルの種類を確認する
| 種類 | 追加・実行する場所 | 主な用途 |
|---|---|---|
Lua拡張(.lua) | プラグイン → プラグインを追加・閲覧... | スライダーとボタンを備えたパネルを登録し、レイヤー操作をまとめる |
DLLプラグイン(.dll) | 同じ追加画面 | ネイティブコードで画像フィルターなどを登録する。Windows x64向けが必要 |
通常のLuaスクリプト(.lua) | ウィンドウ → スクリプト (Lua) → 実行/ファイルを実行... | hf APIの処理を一度実行する。パネルの登録とは別の機能 |
拡張子が同じ .lua でも、通常のスクリプトとプラグイン用の拡張は別です。 プラグインとして追加するLuaには、パネルを登録する hf.register_panel が必要です。通常のスクリプトを追加画面へ渡しても、期待したプラグインパネルにはなりません。
追加する前に
作業中のシーンを保存し、配布元と対応するHarmoFlowのバージョンを確認してください。DLLはアプリと同じプロセスで動くネイティブコードです。Lua拡張にも制限はありますが、安全性を保証する隔離環境ではありません。信頼できる作者のファイルだけを使ってください。
追加から起動まで
- 上部の「プラグイン(P) → プラグインを追加・閲覧...」を開きます。
- 「プラグインを追加...」から、配布された
.luaまたは.dllを選びます。 - ファイルをアプリ側の保存場所にコピーすると、読み込みが始まります。Lua拡張は、描画やほかの処理が終わってから登録されます。「追加しました」と表示されても、Lua拡張機能欄で登録結果を確認してください。
- 上部の「プラグイン(P)」メニューをもう一度開き、登録された項目を選びます。追加・閲覧画面は管理用、起動はプラグインメニューからです。
- 小さなテスト用シーンで処理結果を確認します。レイヤーを追加する拡張は、レイヤー一覧に意図した結果ができたかも見てください。
追加したファイルは次回起動時の読み込み対象になります。起動メニューに項目がない場合は、うまく読み込めないときへ進んでください。
現在の実装では、起動時に読み込みを試みるLuaファイルは、ファイル名順で先頭の16個までです。実行中に読み込める拡張は最大32個ですが、すべてを次回起動時にも使う場合は、extensions/ 直下の .lua ファイルを16個以内にしてください。
どこに保存される?
自動追加では、HarmoFlowの実行ファイルと同じ場所にある次のフォルダーへ保存します。プロジェクトフォルダー内に置くものではありません。
HarmoFlowの実行ファイルがあるフォルダー/
├─ extensions/
│ └─ my_panel.lua
└─ plugins/
└─ my_filter.dll手動で配置する場合も同じです。起動時の検索対象は、それぞれのフォルダーの直下にあるファイルです。ZIPのまま置いたり、さらに深いサブフォルダーへ入れたりせず、小文字の .lua/.dll にしてください。追加画面からコピーすると拡張子は小文字に揃えられます。
同名ファイルを上書きする操作は、追加画面にはありません。既に同じ名前がある場合は、次の更新手順を使います。
更新・削除する
- シーンを保存して、HarmoFlowを終了します。
- Lua拡張は
extensions/、DLLはplugins/の対象ファイルを確認します。 - 更新する場合は旧ファイルを別の場所へバックアップし、新しいファイルに置き換えます。使わなくなった場合は対象フォルダーの外へ移します。
- HarmoFlowを再起動し、一覧の読み込み状態とメニュー項目を確認します。
実行中の再読み込み・アンロード・削除の専用操作はありません。同じDLLを再度読み込んだり、同じパネルIDのLua拡張を別名で追加したりしても、更新にはなりません。バックアップを .dll/.lua のまま同じフォルダーに残すと起動時の読み込み対象になるため、別の場所へ保管してください。
うまく読み込めないとき
| 症状・表示 | 確認すること |
|---|---|
| 同名ファイルがある/追加できない | 同名ファイルは上書きされません。アプリを終了し、旧ファイルを確認してから置き換えます |
| Luaの追加後、メニューに項目がない | 一覧のLuaの読み込み結果を確認。通常のスクリプトではなく、hf.register_panel でパネルを登録する拡張か確認します |
| 再起動後、一部のLua拡張がない | 起動時に読み込みを試みるのはファイル名順で先頭の16個までです。無効なファイルも数に含まれるため、extensions/ 直下の .lua ファイル数を確認します |
| LuaのパネルIDが重複している | 同じ拡張の旧版やコピーが extensions/ に残っていないか確認します |
Could not load DLL | Windows x64向けか、必要な実行時ライブラリや依存DLLが揃っているかを作者の説明と照合します |
DLL exports no hf_plugin_init | HarmoFlow用のエントリーポイントが見つかりません。別アプリ用のDLLやビルド設定の間違いを疑います |
Plugin init failed or wrong API version | プラグインの対応バージョンを確認し、作者へ読み込み結果を伝えます |
Already loaded | 同じDLLは再読み込みできません。更新時はアプリを終了して置き換え、再起動します |
| 手動で置いたファイルが見つからない | アプリ横の正しいフォルダー直下、小文字の拡張子、ZIP展開済みであることを確認します |
不明なDLLを別のサイトから探して追加する前に、配布元の必要条件を確認してください。問題を報告するときは、HarmoFlowとプラグインのバージョン、ファイル名、表示されたエラー、追加した手順を添えると切り分けやすくなります。
次に読む
プラグインを作る
最初は、Luaで「ボタンを押すとレイヤーを1枚追加する」パネルを作ると、ファイル作成・登録・実行・確認までを短く試せます。画像の各ピクセルを処理するフィルターにはDLLを使います。導入するだけの場合はプラグインの導入・管理をご覧ください。
- 作るLuaでパネル、またはSDKでDLLフィルターを実装
- 読み込む管理画面で登録結果、メニューで起動を確認
- 検証する繰り返し実行・Undo・保存と再読込を確かめる
どちらで作る?
| Lua拡張 | DLLプラグイン | |
|---|---|---|
| 作るもの | ボタンと数値スライダーを持つパネル | ネイティブの画像フィルターなど |
| 開発の準備 | UTF-8のテキストエディター | 公式SDKヘッダーとWindows x64対応C/C++コンパイラー |
| 実行の仕組み | 操作ボタンから、許可された hf APIを呼ぶ | ホストに登録したコールバックで、渡された画像を処理する |
| 得意なこと | レイヤーの追加・整理、定型操作をまとめる | RGBA画像のピクセル処理、数値・グラデーション・カーブで調整するフィルター |
| APIの版 | 拡張側の hf.api_version は1 | 現在のSDKの HF_API_VERSION は3 |
公式SDKと最小サンプル
HarmoFlow Plugin SDK API 3をダウンロード(ZIP)。公式ヘッダー harmoflow_api.h、このガイド用の小さなCサンプル guide_gray.c、ビルド手順を収録しています。アプリ本体は含みません。Luaの最小例はSDKを使わず試せます。
このSDKはHarmoFlow Ver.0.1.1のDLLプラグインAPI 3に対応します。配布先のHarmoFlowの版と使用するAPIを確認してください。このページの基本CサンプルはAPI 1の機能だけを使い、API 1として登録します。
1. 最小のLuaパネルを作る
テキストエディターで新しいファイルを作り、以下を my_first_panel.lua の名前、UTF-8(BOMなし)で保存します。Windowsの拡張子を表示して、.lua.txt になっていないことを確認してください。
hf.register_panel {
id = "example.my_first_panel",
title = "My First Panel",
description = "Add one paint layer",
actions = {
{
id = "add_paint",
label = "Add paint layer",
run = function(values)
hf.add_layer("paint", "Practice layer")
hf.log("Added one paint layer")
end
}
}
}この例は、既存ファイルの読み書きや外部通信をせず、ボタンを押すたびにペイントレイヤーを1枚追加します。追加位置は選択中のレイヤーとテクスチャセットに従います。実際の制作シーンではなく、テスト用シーンで確認してください。
コードの各部分
hf.register_panel:読み込み時にパネルを登録します。登録時点ではレイヤーを追加しません。id:他の拡張と重ならない識別子です。配布時は作者名.機能名のように自分固有の名前へ変更します。title/description:パネル名と説明です。actions:ボタンの一覧です。各ボタンにも固有のidと表示用のlabelが必要です。run(values):ユーザーがボタンを押したときに実行します。valuesはその時点のスライダー値をIDで参照できるテーブルです。この最小例では使いません。
2. 読み込んで動作を確認する
- UVを持つ小さなモデルを開き、テスト用シーンを保存します。
- 「プラグイン(P) → プラグインを追加・閲覧... → プラグインを追加...」で
my_first_panel.luaを選びます。 - 一覧でLua拡張が正しく登録されたことを確認します。
- 「プラグイン(P)」から My First Panel を開き、Add paint layer を1回押します。
- レイヤーが1枚増えたことを確認します。Ctrl+Zで追加が戻り、Ctrl+Yでやり直せることも確認します。
- シーンを保存して開き直し、結果のレイヤーが残ることを確認します。
ファイルを修正したら、アプリを終了して extensions/ のインストール済みファイルを置き換え、再起動します。元の作業フォルダーでソースだけを書き換えても、追加時にコピーしたファイルは更新されません。更新手順も参照してください。
3. 操作を増やすときのルール
利用できる操作
Lua拡張のアクションで使える hf APIは次の範囲です。通常の「スクリプト (Lua)」画面のAPI全体を、そのまま使えるわけではありません。
| 用途 | API |
|---|---|
| ログ | log |
| レイヤーを調べる | layer_count, layer_name, layer_depth |
| 追加・削除・選択 | add_layer, remove_layer, set_active_layer |
| レイヤーの状態 | set_layer_opacity, set_layer_visible, set_layer_clip, set_layer_alpha_lock |
| Fillの設定 | set_fill_channel, set_fill_uv |
レイヤー番号は1から始まります。hf.add_layer は新しい番号を返しません。また、選択位置によって途中に追加されるため、追加直後の hf.layer_count() を新しいレイヤーの番号として扱わないでください。番号を使う処理は、操作対象を確実に特定してから実行します。
スライダーと上限
パネルの controls に数値スライダーを登録できます。各スライダーのIDをキーにして、アクション内の values から値を読み取ります。最小値は最大値より小さくし、有限の数値を使います。初期値は範囲内に収められます。
- 1パネルにつき数値スライダー16個、アクション16個まで
- 1拡張につきパネル8個、読み込める拡張32個まで
- ファイルは1 MiBまで。ID・タイトル・ラベルは空でない256バイト以下の文字列
- パネルIDは全拡張で一意。コントロールID・アクションIDもパネル内で重複させない
現在の実装では、起動時に読み込みを試みるLuaファイルは、ファイル名順で先頭の16個までです。実行中に読み込める拡張は最大32個ですが、すべてを次回起動時にも使う場合は、extensions/ 直下の .lua ファイルを16個以内にしてください。
スライダー付きの例
次の例は、指定した不透明度のペイントレイヤーを追加します。同名レイヤーがあれば名前へ _ を足し、追加後に名前から実際の番号を見つけます。レイヤー末尾へ追加されると仮定しないための例です。opacity のIDと values.opacity が対応しています。
assert(hf.api_version == 1)
hf.register_panel {
id = "guide.paint_layer",
title = "Paint Layer Helper",
description = "Create an empty paint layer with a chosen opacity.",
controls = {
{id = "opacity", label = "Opacity", min = 0, max = 1, value = 0.5},
},
actions = {
{
id = "add",
label = "Add paint layer",
run = function(values)
local name = "Plugin practice"
local function find_layer()
for i = 1, hf.layer_count() do
if hf.layer_name(i) == name then return i end
end
end
while find_layer() do name = name .. "_" end
hf.add_layer("paint", name)
local index = assert(find_layer(), "Layer was not created")
hf.set_layer_opacity(index, values.opacity)
hf.set_active_layer(index)
end,
},
},
}Undoと保存の考え方
1回のアクションで記録された編集は、1回のUndoにまとめられます。エラーの場合は記録された編集を巻き戻し、元の選択レイヤーへ戻します。ただし、あらゆる処理に無条件の復旧を保証するものではありません。最初から制作シーンで試さず、失敗ケースもテストしてください。
シーンに保存されるのは処理結果の通常のレイヤーです。Lua変数やパネルのスライダー値がシーンと一緒に永続化されると想定しないでください。
実行環境の制限
Lua拡張はそれぞれ独立したLua状態を持ちます。使える標準機能は基本関数・math・string・table が中心で、任意のファイル読み込み、GPUアクセス、独自Undo APIはありません。load、dofile、loadfile、collectgarbage、pcall、xpcall も除かれています。
登録とアクションには、Lua命令を監視する2秒の実行制限があります。C++側の処理を強制中断するものではなく、重い処理を長時間回してよいという意味ではありません。これは悪意あるコードを安全に実行するためのプロセス隔離ではありません。
DLLの構造を理解する
DLLはC ABIでホストとやり取りします。現在のSDKはAPI 3で、旧版向けのDLLに対しては3 → 2 → 1の順に初期化を試します。利用する機能が、指定したAPI版に存在することを確認してください。
| API | 登録するフィルター | 入力の考え方 |
|---|---|---|
| 1 | register_filter | 基本の画像コールバック |
| 2 | register_adjustable_filter | 最大16個の浮動小数パラメーター |
| 3 | register_gradient_filter | 2〜16個のグラデーションストップ |
| 3 | register_curve_filter | RGB全体・R・G・Bの4カーブ。各2〜16点 |
エントリーポイント
DLLは hf_plugin_init(const HfHost*, HfPluginInfo*) を、名前を変形せずエクスポートします。C++では extern "C" とSDKの HF_EXPORT を使います。戻り値0が初期化成功です。
初期化では HfPluginInfo に api_version、name、author、version を設定し、ホストの登録関数へコールバックを渡します。渡された HfHost* は初期化中だけ使い、後の処理のためにポインターを保持しないでください。フィルター名、コールバック、必要なデータは、処理時にも有効な寿命を持たせてください。
画像コールバック
基本の HfFilterDesc は name、apply、user を持ち、コールバックは void apply(HfImage* image, void* user) の形です。ホストは登録時に記述子をコピーします。HfImage は幅×高さ×4バイトの、行方向に連続したRGBA8画像です。画像の範囲内だけを書き換え、アルファを変更するかどうかも意図して決めます。pixels のポインターや width/height を差し替えず、渡されたバッファをその場で処理します。
SDKの構造体のメンバーや関数テーブルを推測して手書きせず、対応する公式ヘッダーを読み込んでください。画像のメモリを解放したり、コールバック後もポインターを保持したりしない設計から始めると、寿命の問題を避けやすくなります。
最小のCフィルター
ダウンロードに含まれる guide_gray.c は、RGBの単純平均をR・G・Bの各チャンネルへ書き込む小さな学習用フィルターです。アルファは変更しません。知覚上の輝度を厳密に計算する処理ではありません。
#include <stddef.h>
#include "harmoflow_api.h"
static void grayscale(HfImage* image, void* user) {
(void)user;
for (size_t i = 0; i < (size_t)image->width * image->height; ++i) {
uint8_t* pixel = image->pixels + i * 4;
uint8_t value = (uint8_t)(((unsigned)pixel[0] + pixel[1] + pixel[2]) / 3);
pixel[0] = pixel[1] = pixel[2] = value;
}
}
HF_EXPORT int hf_plugin_init(const HfHost* host, HfPluginInfo* info) {
if (!host || !info || host->api_version < 1 || !host->register_filter)
return 1;
info->api_version = 1;
info->name = "Guide Grayscale";
info->author = "Your name";
info->version = "1.0";
HfFilterDesc filter = {"Guide Grayscale", grayscale, NULL};
host->register_filter(&filter);
return 0;
}このファイルはCとしてビルドします。C++へ書き換える場合は、エクスポート関数を extern "C" で宣言してください。SDKにない終了コールバックを想定したり、初期化で渡されたホストポインターを保持したりしないでください。
プレビューと適用結果
独自のDLLフィルターは、最大512×512ピクセルのプレビュー画像に対しても呼ばれます。コールバックが「適用を押したときだけ」実行されると仮定せず、繰り返し呼ばれても問題ない画像処理にしてください。「適用」時はフル解像度で処理し、画像を持つFillレイヤーができます。独自DLLが自動的にパラメーター再編集可能な調整レイヤーになるわけではありません。
Color Adjustment、Gradient Map、Tone Curve は標準調整機能の識別に使われる名前です。独自フィルターに同じ名前を付けず、固有の名前を使います。標準搭載の3機能の操作は調整機能のガイドに分けて説明しています。
DLLをビルドして試す
まず上の公式SDK ZIPを展開します。アプリ本体の開発環境一式を揃える必要はなく、単純な画像コールバックなら、SDKヘッダーとWindows x64用C/C++コンパイラーから始められます。
- SDK ZIPを展開し、
harmoflow_api.hとguide_gray.cがあるフォルダーを開きます。 - 最初は同梱サンプルを変更せずビルドし、その後フィルター名や画像処理を自分の目的に合わせて編集します。
- x64用のコンパイラー環境で、共有ライブラリー(DLL)としてビルドします。Debug版の依存ランタイムが他のPCにもあると仮定しないでください。
- 出力DLLに
hf_plugin_initがエクスポートされていることを確認します。 - テスト用シーンを保存し、追加手順でDLLを読み込みます。管理画面の情報とプラグインメニューを両方確認します。Guide Grayscale を開き、BaseColorでプレビュー → キャンセル → 再度開く → 適用を試します。レイヤー、Undo/Redo、保存・再読込も確認します。
- ソースを変更したらHarmoFlowを終了し、再ビルドしたDLLへ置き換えて再起動します。
Microsoftのx64 Native Tools Command Promptで、ヘッダーとCサンプルを展開したフォルダーへ移動して実行します。コンパイラーのインストールやライセンスは、その開発ツールの提供元の案内に従ってください。
cl /nologo /LD /O2 /W4 /I . guide_gray.c /link /OUT:guide_gray.dll
dumpbin /exports guide_gray.dlldumpbin の一覧に hf_plugin_init があれば、名前付きエクスポートを確認できています。DLLがHarmoFlowで実行できるかは、実際に読み込んで確認します。将来C++のソースを使う場合は、ビルド設定もC++向けに調整してください。
基本の HfImage コールバックだけを使うDLLでは、HarmoFlow本体のVulkan・ImGui・Luaを直接リンクする必要はありません。自分で追加した依存ライブラリーがある場合は、その配布条件と実行時の依存関係を別途確認してください。
配布前のチェックリスト
- 登録:初回追加、アプリ再起動、同名ファイルや重複IDでの失敗を確認する
- 操作対象:空の状態、モデルあり、複数パーツ、グループ内の選択で意図した対象へ作用する
- 繰り返し:ボタンを連打・再実行しても、予期しない対象へ変更が及ばない
- 履歴:Luaでは1アクションのUndo/Redo、エラー時の結果と選択の復旧を確認する
- 保存:処理後のシーンを保存・再読込し、必要な結果が残ることを確認する
- 画像:DLLでは小さい画像、異なる解像度、透明ピクセル、パラメーターの最小値・最大値を確認する
- 案内:作者、版、対応HarmoFlow/API、導入先、操作手順、依存関係、既知の制限を添える
このガイドのコードは学習用の最小例です。CサンプルはLinux上でコンパイルとCPU処理(登録、画素変換、アルファ保持)、Lua例は構文と模擬APIでの動作を確認しています。Windows DLLの生成と実際のHarmoFlowでの動作確認は、この公開ガイド作成時には実施していません。使用するアプリ・SDK・開発環境で上の手順を検証してください。
API 3のカーブを渡すとき
各カーブは入力0と入力1の点を含み、入力値を重複しない昇順で並べます。入出力の値は有限の0〜1に収めてください。
ショートカット早見表
キー設定を確認・変更する
「環境設定 → キーコンフィグ」で、操作名・条件・割り当てを検索できます。キーのボタンをクリックすると変更し、「+」では別の割り当てを追加します。「追加」と表示される操作は未割り当てです。変更は操作ごとに保存されます。
設定画面では「既定に戻す」「削除」「キャンセル」を使えます。固定操作は変更できません。通常の左クリックや、同時に使う操作と衝突する割り当ては登録できません。使いたいキーが別の操作に割り当てられている場合は、先にその割り当てを見直してください。

以下はVer.0.1.1の初期割り当てと固定操作に、Ver.0.1.2のレイヤー操作を加えたものです。保存済みの設定がある場合は、キーコンフィグの表示を優先してください。ツールなどのキー操作は、文字入力中・環境設定の表示中・パイメニューの表示中には使えません。
Ver.0.1.1では、ウィンドウのフォーカス移動と「角と曲線を切り替え」は、表の既定操作を使ってください。キーコンフィグで変更しても、実際の操作に反映されない場合があります。
操作とキー・ジェスチャー
一般
| 操作 | キー・マウス操作と条件 |
|---|---|
| 環境設定 | Ctrl+, |
| エンジン一時停止 | Shift+Esc |
編集
| 操作 | キー・マウス操作と条件 |
|---|---|
| 元に戻す | Ctrl+Z |
| やり直す | Ctrl+Y / Ctrl+Shift+Z |
ファイル
| 操作 | キー・マウス操作と条件 |
|---|---|
| 新規シーン | Ctrl+N |
| プロジェクトを保存 | Ctrl+S |
| 名前を付けて保存 | Ctrl+Shift+S |
| 増分して保存 | Ctrl+Alt+S |
ツール
| 操作 | キー・マウス操作と条件 |
|---|---|
| ペイントツール | B |
| 色混ぜ・ぼかしツール | U |
| パスツール | P |
| 選択ツール | V |
| テキストツール | T |
ペイント
ペイント・色混ぜ・ぼかしなどのブラシ系ツールで使います。1・2・3ではペイントツールの塗り方を切り替え、Eでは消しゴムのオン/オフを切り替えます。消しゴムをオンにすると、ブラシ形状で消します。
| 操作 | キー・マウス操作と条件 |
|---|---|
| ブラシ塗り | 1 |
| ポリゴン塗り | 2 |
| UVシェル塗り | 3 |
| 消しゴム切替 | E |
| ブラシを小さく | [ |
| ブラシを大きく | ] |
| シンメトリー切替 | M |
| シンメトリー X | Shift+X シンメトリーが有効なとき |
| シンメトリー Y | Shift+Y シンメトリーが有効なとき |
| シンメトリー Z | Shift+Z シンメトリーが有効なとき |
| 疑似四角切替 | Q |
| スポイト | Ctrl+Shift+左ドラッグ 3Dビューのモデル上。CtrlとShiftを押したまま左ボタンを離すと採用し、修飾キーを先に離すと取り消します |
| ブラシサイズを変更(ドラッグ) | Ctrl+Alt+左ドラッグ / Ctrl+Alt+右ドラッグ 左右にドラッグ |
パレット
| 操作 | キー・マウス操作と条件 |
|---|---|
| 前景色と背景色を入れ替え | X |
| 透明色を切り替え | C |
| スロットをリセット | D |
| ミキサーのスポイト | Alt+左ドラッグ ミキサー上。Altを押したまま左ボタンを離すと採用し、Altを先に離すと取り消します |
スタンプ
| 操作 | キー・マウス操作と条件 |
|---|---|
| スタンプのサイズ変更(ドラッグ) | Ctrl+Alt+左ドラッグ / Ctrl+Alt+右ドラッグ 文字・図形・画像スタンプ 3Dビューで左右にドラッグ |
| スタンプを回転(ドラッグ) | Shift+Space+左ドラッグ / Shift+Space+右ドラッグ 文字・図形・画像スタンプ 3Dビューで左右にドラッグ |
| スタンプの回転を戻す | Shift+Space+左ダブルクリック / Shift+Space+右ダブルクリック 文字・図形・画像スタンプ |
表示
| 操作 | キー・マウス操作と条件 |
|---|---|
| ワイヤーフレーム切替 | I |
| 床グリッド切替 | G |
| ビューポートを保存 | F12 |
| UV エディタ切替 | Shift+P |
| カーソル下のテクスチャセットを開く | Shift+Alt+右クリック モデル上でクリック |
3Dビュー
| 操作 | キー・マウス操作と条件 |
|---|---|
| カメラ回転 | Alt+左ドラッグ |
| カメラパン | 中ボタンドラッグ / Space+左ドラッグ Pivot 360モードでは移動できません |
| カメラズーム(ドラッグ) | Alt+右ドラッグ / Ctrl+左ドラッグ 右または上にドラッグすると拡大 |
| カメラズーム(ホイール) | マウスホイール |
パス
C・Fはパス作図中、ビューポート上の操作です。DeleteまたはBackspaceは作図中の最後のアンカーを削除します。既存のパスを編集中は、選択したアンカーを削除します。
Escは作図中のパスを取り消します。3Dビューで確定済みのパスを再編集中の場合は、編集内容を残して再編集を終えます。
「パスを閉じる」の初期登録はCですが、「透明色を切り替え」もCを使います。保存済み設定の読込みで「パスを閉じる」が未割り当てになる場合があります。「追加」と表示されている場合は、競合しないキーを割り当ててください。
| 操作 | キー・マウス操作と条件 |
|---|---|
| 開いたまま確定 | Enter 作図中、または3Dでパスを再編集中 |
| パスをキャンセル | Esc 作図中、または3Dでパスを再編集中 |
| 直前のアンカーを削除 | Delete / Backspace 作図中 |
| パスを閉じる | キーコンフィグで確認(初期登録:C) 作図中・3Dビュー上 |
| 閉じて塗り | F 作図中・3Dビュー上 |
| 選択アンカーを削除 | Delete / Backspace アンカー選択時。3Dビュー/UVエディタ |
| 角と曲線を切り替え | 左ダブルクリック 3Dビューで再編集のために開いたパスのアンカー上 |
選択
| 操作 | キー・マウス操作と条件 |
|---|---|
| メッシュ選択を解除 | Esc 選択ツールで、カーソルが3Dビュー上にあるとき |
| 選択に追加・解除 | Shift+左クリック 選択ツールでShift+クリックするとパーツの選択を切り替えます。空白からのShift+範囲ドラッグは選択に追加します |
| 選択に追加・解除(パーツ一覧) | Shift+左クリック |
レイヤー
| 操作 | キー・マウス操作と条件 |
|---|---|
| 選択レイヤーをコピー | Ctrl+C レイヤーパネルにフォーカスがあるとき |
| 選択レイヤーを切り取り | Ctrl+X レイヤーパネルにフォーカスがあるとき |
| レイヤーを貼り付け | Ctrl+V レイヤーパネルにフォーカスがあるとき |
| 選択レイヤーを複製 | Ctrl+D レイヤーパネルにフォーカスがあるとき |
| 選択レイヤーを削除 | Delete レイヤーパネルにフォーカスがあるとき |
| レイヤーマスクのオン・オフ | Shift+左クリック マスクのサムネイル上で |
| フォルダを開閉 | 左ダブルクリック フォルダーの行で |
| パイメニューでレイヤーを選択(Ver.0.1.2) | 右ボタンを押したまま「レイヤー」へ滑らせ、サムネイル付き一覧のカード上で離す 3Dビュー/UVエディタ |
| パイメニューでレイヤー設定を切替(Ver.0.1.2) | カード横の設定へ滑らせ、その上で右ボタンを離す 離した設定だけを変更 |
| ペンでレイヤー一覧を送る・選ぶ(Ver.0.1.2) | ポインターを上・下に置くと送り、中央へ戻すと停止。ペン先でカードをタップして選択 |
UVエディタ
| 操作 | キー・マウス操作と条件 |
|---|---|
| ブラシサイズを変更(ドラッグ) | Ctrl+Alt+左ドラッグ / Ctrl+Alt+右ドラッグ 描画できる対象とブラシ系ツールを選び、左右にドラッグ |
| キャンバスをズーム(ドラッグ) | Ctrl+左ドラッグ 右または上にドラッグすると拡大 |
| キャンバスをズーム | マウスホイール |
| キャンバスをパン | 中ボタンドラッグ / Space+左ドラッグ |
| キャンバスを回転 | Shift+Space+左ドラッグ / Shift+Space+右ドラッグ 左右にドラッグ |
| キャンバスの回転を戻す | Shift+Space+左ダブルクリック / Shift+Space+右ダブルクリック |
| 線の上にアンカーを追加 | 左ダブルクリック パスの線上で |
画面の操作
| 操作 | キー・マウス操作と条件 |
|---|---|
| 次のウィンドウにフォーカス | Ctrl+Tab |
| 前のウィンドウにフォーカス | Ctrl+Shift+Tab |
| 現在のツールで操作 | 左クリック/ペン |
| ツールバーのパイメニュー | 右ボタンを押したままスライドし、離して確定。Escで取消。3Dビュー/UVキャンバスで使用し、設定済みの右ボタン操作を優先 |
| 次のウィジェットにフォーカス | Tab |
| 前のウィジェットにフォーカス | Shift+Tab |
| フォーカス解除 / ポップアップを閉じる | Esc |
| コマンドパレット | タイトルバーの検索欄をクリック |
| ハイライト中のコマンドを実行 | Enter コマンドパレットの表示中 |
| コマンドパレットを閉じる | Esc コマンドパレットの表示中 |
| 軸方向から見る | 軸ギズモをクリック 3Dビュー |
| 項目のメニュー | 右クリック プリセット・スウォッチ・ツール列など |
| 項目を開く | ダブルクリック パネル内のファイル・フォルダー・プリセット |
| パネルをドック / アンドック | パネルのタイトルバーをドラッグ |
| ドックタブを切り替え | ドックのタブをクリック |
パネル内の操作
| 操作 | キー・マウス操作と条件 |
|---|---|
| レイヤー・アセット・自作マテリアルプリセットの名前を変更 | 対象を選び、対応するパネルにフォーカスがある状態でF2。プロジェクトのアセット名を変えると、ファイル名も変わります。 |
| プロジェクトのアセットを削除 | アセットブラウザーにフォーカスがある状態でDelete。Windowsのごみ箱へ移す操作で、シーンのUndoでは戻せません |
各操作の詳しい条件はパイメニュー、パス、UVエディタ、レイヤー・レイヤーパイメニュー、アセットブラウザーを参照してください。
用語解説
テクスチャ制作の用語
| 用語 | 意味 |
|---|---|
| メッシュ・ポリゴン | 頂点と面で構成される3D形状。ポリゴンはその面 |
| メッシュパーツ | モデルを構成する部品。HarmoFlowではテクスチャセットの単位 |
| UV・UV島(シェル) | 3D表面と2D画像の対応座標。その中でつながった領域がUV島 |
| 疑似四角 | 2枚の三角形を検出して、四角形相当として扱う仕組み |
| テクスチャセット | あるパーツで使う色・粗さなどの画像の組 |
| チャンネル | 色、法線、粗さなど、質感を構成する情報の種類 |
| PBR / NPR | 物理的な反射を基にした表現/トゥーンなど非写実的な表現 |
| ベイク | ストロークや形状情報などを画像へ計算して反映する処理 |
| メッシュマップ | 曲率や遮蔽など、モデルの形状から求めた画像 |
| 曲率・AO | 凸凹の傾向/周囲の形状によって遮られる度合い |
| 法線・接線空間 | 面の向き/表面を基準とする座標系。通常のNormalテクスチャで使う |
| オブジェクト空間 | モデル自体を基準にした座標系。形状マップの法線やストロークで使用 |
| Height | 高さの情報。表示上の凹凸に使用し、モデルの頂点編集とは別 |
| Fill | 一定値・画像・生成パターンで塗りつぶすレイヤー |
| プロシージャル・シード | 計算で模様を生成する方式/模様の配置を決める数値 |
| アルファ・不透明度 | 透明度を表す情報/どれだけ濃く見せるかの設定 |
| マスク・クリッピング | 見せる領域を指定する情報/下のレイヤーの描画範囲を使う制限 |
| アンカー・ハンドル | パスの通過点/曲線の方向や曲がり方を調整する取っ手 |
| シェイプキー | 頂点の変形を重みで混ぜ、表情などを変えるデータ |
| リニア・sRGB | 光の強さに比例した値で色を扱う方式/表示に適した非線形の色符号化。色用の画像と、粗さなどの数値マップでは扱いが異なる |
| VRAM・BC7 | GPUのメモリ/GPU向けのテクスチャ圧縮形式 |
| IBL・F0・ACES | 環境画像を使う照明/正面から見た基準反射率/明るさを表示範囲へ収めるトーンマップ |
| ハイポリ・ケージ・UDIM | 詳細なモデル/転写レイの範囲を定める形状/複数UVタイルを使う方式。現在のメッシュマップベイクでは未対応 |
困ったとき
症状に合わせて、まず起動・突然終了、GPUエラー、復旧手順を確認してください。解決しない場合は問い合わせ用テンプレートをご利用ください。
起動できない・突然終了する
最初に残しておくもの
- 表示されたエラーの全文、発生時刻、直前の操作を記録します。画面を撮る場合は、個人情報や公開できない作品が写っていないか確認してください。
- 操作できる場合はシーンを保存します。内容が欠けて見える場合は、正常な保存を上書きする前に「名前を付けてシーンを保存」で別名を選びます。
- プロジェクトと自動保存を残したまま切り分けます。最初の対処として設定や自動保存フォルダーを削除する必要はありません。
安全に確認する順番
- インストール手順を確認し、スタートメニューのHarmoFlowまたはHarmoFlow Trialから起動します。ダウンロードが不完全なら、BOOTHで、利用中の製品版/体験版に対応するインストーラーを再取得してください。インストール先の
harmoflow.exeだけを移動せず、不明な配布元から不足DLLを補わないでください。 - Windows環境と、Vulkan 1.2に対応するGPU・ドライバーを確認します。ドライバーを更新する場合は、PCメーカーまたはGPUメーカーの公式配布元を使ってください。アプリを使うためにVulkan SDKを導入する必要はありません。
- 他のアプリの作業を保存してから、ゲーム・動画編集などGPU負荷の高いアプリを終了し、HarmoFlowを起動し直します。必要ならWindowsも再起動します。
- アプリが開く場合は、元のプロジェクトを保護したうえで、小さなテスト用プロジェクトと低めの作業解像度で確認します。「起動直後から起きる」「特定のモデルだけ」「解像度変更・描画・書き出し中」など、発生する条件を分けて記録します。
- 同じエラーが繰り返す場合は、未保存の作業がある状態で再現を繰り返さず、診断情報を添えてお問い合わせください。Windowsの警告やセキュリティソフトを無効化して進めることは勧めません。
突然終了したとき
すべてのクラッシュで復旧画面が出るわけではありません。GPUエラー時の復旧は、復旧用の自動保存が成功し、そのデータが利用できる場合に限られます。表示されない場合は、最後に保存したシーンや利用可能な自動保存を確認してください。未保存の変更がすべて戻ることは保証されません。
GPUエラーの表示に合わせて対処する
| 表示・症状 | 次に確認すること |
|---|---|
| GPUメモリ(VRAM)が足りなくなりました | 他のGPU使用アプリを閉じ、テクスチャ解像度を下げて試します。パーツ(テクスチャセット)が多いほど必要なメモリは増えます。「環境設定 → VRAM」ではプレビューのメモリ使用量も調整できます |
| GPUが応答しなくなりました | 負荷の高いアプリを閉じ、公式ドライバーの更新を確認します。発生した操作と、処理が止まるまでの状況を記録してください |
| GPUがリセットされました | スリープ復帰やドライバー更新の直後かを確認します。繰り返す場合は公式ドライバーの更新を検討し、発生条件を報告してください |
| その他のGPUエラー | 詳細欄をそのまま記録し、GPU名・ドライバーバージョン・実行した操作と一緒に報告してください |
メモリ不足では、操作前の状態へ戻って続行できる場合もあります。アプリが開いたままなら状態を確認して保存し、負荷を下げてから再試行します。終了と再起動を求められた場合は、GPUエラー後の復旧へ進んでください。解像度やVRAM設定は一度に一つずつ変更すると、原因を切り分けやすくなります。
UVが枠だけに見える
対処方法
「ワイヤー設定」の表示を「三角形」に変更します。UVシェル表示では島の外周だけが描かれます。
ワイヤーが濃い・密集して見える
対処方法
線幅と不透明度を下げるか、UVシェル表示に切り替えます。テクスチャ自体を確認したいときはUVワイヤーをオフにできます。
パーツを切り替えられない
対処方法
読み込んだモデルにパーツが1つしかない場合、切替欄は無効です。複数パーツではチャンネル上部から選択できます。
メッシュマップが表示されない
対処方法
自動ベイクが完了するまで待ちます。エラーが表示されている場合は内容を確認し、「再ベイク」を試してください。読み込むモデルを変更すると古い処理結果は破棄されます。
レイヤーパネルの表示
レイヤーパネルの歯車メニューで内容のプレビュー表示を切り替えられます。この設定はUIレイアウトに保存されます。プレビューには、描画済みマテリアルのBaseColorを小さなUV画像で表示します。各行のためにレイヤー全体を再ベイクするのではなく、GPUベイクの結果を再利用します。
フォルダー行はペイントレイヤーの行より高さを抑えて表示され、選択中の行には内側に枠線が付きます。レイヤー名の上半分または下半分へドラッグすると、対応する挿入位置に線が表示されます。フォルダーの中央へドラッグすると枠線が表示され、フォルダー内へ移動します。フォルダーの上端・下端では挿入位置に線が表示され、子レイヤーを含むフォルダー全体の前後へ並べ替えられます。フォルダーを移動しても子レイヤーは保持され、Undo/Redoにも対応します。
バージョンとログを確認する
- バージョン:「ヘルプ → HarmoFlowについて」の
v…を控えます。タイトルバー中央に表示される角括弧内のビルド日時も、確認できれば添えてください。起動できない場合は、ダウンロードした配布ファイルの名前とバージョンを記載します。 - GPUとWindows:Windowsのバージョン、GPUの正式な型番、VRAM容量、グラフィックドライバーのバージョンを控えます。GPUが複数ある場合は、分かる範囲ですべて記載してください。
- アプリのログ:「ウィンドウ → コンソール」で処理結果を確認し、「コピー」でテキストを取得できます。これは現在の起動中のログで、最大5,000件が保持されます。再起動後に前回分を読める恒久的なログファイルではありません。取得できる場合は、終了・再起動・クリアの前に残します。
ログのコピーと共有
コンソールで表示を絞り込んでいても、「コピー」は保持中のログ全体をコピーします。テキストエディターへ貼り付け、発生時刻の前後など関連部分だけを残してください。ユーザー名、ローカルのフルパス、非公開のファイル名などは伏せます。アプリが起動せずログを取れない場合は、その旨とエラー画面の内容だけでも報告できます。
問い合わせ用テンプレート
下記をコピーし、分かる項目を埋めて豆々庵のBOOTHショップからお問い合わせください。不明な項目は「不明」で構いません。パスワードや購入時の決済情報は記載しないでください。
【症状】
HarmoFlowのバージョン/製品版・体験版:
ビルド日時(分かれば):
Windowsのバージョン:
GPUの型番/VRAM容量/ドライバーバージョン:
発生日時:
行っていた操作:
再現手順:1. … 2. … 3. …
期待した結果/実際の結果:
発生頻度(毎回・時々・一度だけ):
新規プロジェクトでも起きるか/特定データだけか:
モデル形式・パーツ数・作業解像度(分かれば):
追加プラグインの有無・名前・バージョン:
エラーの全文:
最後に正常保存できた時点/復旧画面と復旧の結果:
試した対処とその結果:
添付(必要な範囲のログ・画像・再現用サンプル):
サンプルを共有できるか/共有範囲の制限:最初からプロジェクト一式を送る必要はありません。画像・ログ・サンプルは関連する最小限に絞り、公開していない作品や顧客情報、第三者のアセットが含まれていないか確認してください。購入アセットは再配布条件を確認し、許可がない場合は送らず、同じ現象が起きる自作の小さなサンプルに置き換えるか、共有できない旨を伝えてください。










