ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
Unreal Engine 5(UE5)でコンテンツブラウザに画像を追加するには、PNGやJPGなどの画像ファイルをエクスプローラからコンテンツブラウザへドラッグ&ドロップするか、コンテンツブラウザの「インポート」ボタンを使います。取り込まれた画像はUE5内部では「テクスチャ(Texture2D)」というアセットに変換され、マテリアルやUIで使える状態になります。この記事では、取り込みの2つの方法、対応フォーマット、取り込み後に確認すべきテクスチャ設定、そしてよくある落とし穴までをまとめて解説します。
| この記事の要点 |
|---|
|
画像の取り込み方法(2通り)
UE5で画像を追加する方法は大きく2つあります。どちらを使っても、取り込まれた画像はコンテンツブラウザ内にテクスチャアセット(拡張子の見えない「.uasset」として保存されるアセット)として現れます。元の画像ファイルそのものがコピーされるのではなく、UE5が扱える内部形式に変換される点を押さえておきましょう。
まず共通の準備として、コンテンツブラウザで取り込み先のフォルダを決めておきます。プロジェクトが大きくなると画像が散らかりやすいので、Content/Textures や Content/UI のように用途別のフォルダを作っておくと管理が楽になります。
方法①:ドラッグ&ドロップで取り込む
もっとも手軽な方法です。手順は次の通りです。
- Windowsのエクスプローラ(macOSならFinder)で、取り込みたい画像ファイルが入ったフォルダを開きます。
- UE5エディタ側で、コンテンツブラウザの取り込み先フォルダを表示しておきます。
- エクスプローラから画像ファイルを選び、そのままコンテンツブラウザの中へドラッグ&ドロップします。複数ファイルをまとめてドラッグすることもできます。
- ドロップすると自動的にインポート処理が走り、フォルダ内にテクスチャアセットが追加されます。
取り込み直後のアセットは未保存(アセット名の左に「*」マークが付く状態)です。コンテンツブラウザで右クリックして「保存」するか、エディタ上部の「すべて保存」で確定させましょう。保存しないとプロジェクトを閉じたときに取り込んだ画像が失われます。
方法②:インポートボタンから取り込む
ファイルダイアログから選びたい場合は、こちらが確実です。
- コンテンツブラウザで取り込み先フォルダを選択します。
- コンテンツブラウザ上部にある「インポート」ボタン(バージョンによっては「+追加」→「インポート」)をクリックします。
- 開いたファイルダイアログで取り込みたい画像ファイルを選び、「開く」を押します。
- 画像の場合は通常そのままインポートが完了します(FBXなど一部のアセットではインポートオプションのウィンドウが表示されますが、単純な画像では基本的に追加設定は不要です)。
どちらの方法でも、取り込み後にやるべきこと(保存・設定の確認)は同じです。
対応している画像フォーマット
UE5がテクスチャとして取り込める主な画像フォーマットは次の通りです。一般的な用途ではPNGかTGAを使えばほぼ問題ありません。
| フォーマット | 拡張子 | アルファ(透過) | 主な用途・特徴 |
|---|---|---|---|
| PNG | .png | 対応 | もっとも汎用的。透過付きのUI画像やアイコンに向く。可逆圧縮で劣化しない。 |
| TGA | .tga | 対応 | ゲーム制作で定番。アルファチャンネルを安定して扱える。 |
| JPG / JPEG | .jpg / .jpeg | 非対応 | 写真など。非可逆圧縮のため画質が落ちる。透過は持てない。 |
| BMP | .bmp | 非対応 | 無圧縮。手軽だがファイルが大きい。 |
| TIFF | .tif / .tiff | 対応 | 高ビット深度に対応。制作ツールからの書き出しで使われる。 |
| PSD | .psd | 対応 | Photoshop形式。統合された見た目を1枚のテクスチャとして取り込む。 |
| EXR | .exr | 対応 | HDR(ハイダイナミックレンジ)画像向け。ライティングやキューブマップに利用。 |
| DDS | .dds | 対応 | あらかじめ圧縮・ミップ生成された形式。2Dテクスチャやキューブマップに対応。 |
※対応フォーマットや細かな仕様はUE5のバージョンによって追加・変更されることがあります。最新の正確な一覧は、Epic Gamesの公式ドキュメント(「Texture Format Support and Settings」)の確認を推奨します。
取り込み後に確認するテクスチャ設定
取り込んだテクスチャをダブルクリックすると、テクスチャエディタ(アセットエディタ)が開きます。右側の詳細パネル(Details)で、用途に応じて次の項目を確認しましょう。設定を間違えると色味が変わったり、メモリを無駄に使ったりします。
sRGB(色空間)
「Texture」セクションにあるsRGBのチェックボックスです。考え方はシンプルで、人が見る「色」の画像はオン、データとして使う画像はオフが基本です。
- sRGBオン:見た目の色を表す画像(アルベド/ベースカラー、UI画像、アイコンなど)。
- sRGBオフ:色ではなく数値データを格納した画像(ノーマルマップ、ラフネス、メタリック、マスクなど)。
ここを取り違えると、色が妙に明るく/暗く見えたり、ノーマルマップの凹凸が破綻したりします(詳しくは後述の落とし穴を参照)。
圧縮設定(Compression Settings)
「Compression」セクションのCompression Settingsで、画像の役割に合った圧縮方式を選びます。代表的なものは次の通りです。
- Default:一般的なカラーテクスチャ。アルベドやUIのカラー画像はこれが基本。
- Normalmap:ノーマルマップ専用。法線情報に適した圧縮になる。
- Masks:ラフネスやメタリックなど、チャンネルごとの精度が欲しいデータ用。
- UserInterface2D (RGBA):UI用途で、品質を優先したいときに使う設定。
UI用途のTextureGroup
UI(ボタン画像やアイコンなど)に使う画像は、「Texture」セクションのTexture GroupをUserInterface2Dに設定するのがおすすめです。UserInterface2DはインターフェイスやSlate用の画像を想定したグループで、sRGBに対応し、用途に合った内部フォーマット(高ビット深度の画像にも対応)で扱われるため、UIで意図しない劣化が起きにくくなります。
UIで使う場合 / マテリアルで使う場合
UIで使う場合(Slate Brush / Image ウィジェット)
取り込んだテクスチャをHUDやメニューなどのUMG(ウィジェットブループリント)で使うときは、次の流れになります。
- ウィジェットブループリントを開き、パレットからImageウィジェットをキャンバスに配置します。
- Imageを選択し、詳細パネルのAppearance → BrushのImage(Slate Brush)に、取り込んだテクスチャを指定します。
- UI画像は前述の通り、Texture GroupをUserInterface2Dにしておくと品質面で安心です。透過を活かしたいPNG/TGAは、sRGBオンのままカラー画像として扱います。
マテリアルで使う場合
3Dモデルの表面(アルベド/ベースカラーなど)に使うときは、マテリアル経由で適用します。
- コンテンツブラウザで右クリック →「マテリアル」を作成し、ダブルクリックでマテリアルエディタを開きます。
- 取り込んだテクスチャをマテリアルエディタのグラフ上にドラッグ&ドロップすると、Texture Sampleノードが作られます。
- Texture Sampleの出力(RGB)を、メインノードのBase Colorなどの入力に接続します。透過を使う場合はAlpha出力をOpacity等に接続します。
- 保存し、このマテリアルをメッシュに割り当てると、画像がオブジェクトの見た目として反映されます。
つまずきやすい落とし穴
| 落とし穴 | 何が起きるか・対処 |
|---|---|
| 2のべき乗でないサイズ | 幅・高さが256/512/1024のような2のべき乗でないと、ミップマップが生成されず、テクスチャストリーミングの対象にもなりません。遠景でちらつきや負荷増の原因に。可能な限り2のべき乗サイズで用意します(UIの一枚絵など、ミップ不要な用途では非2のべき乗でも使えます)。 |
| アルファ(透過)が消える/効かない | JPGは透過を持てないため、透過が必要ならPNGかTGAを使います。透過があるのに反映されない場合は、マテリアル側でAlpha出力を接続しているか、ブレンドモードがTranslucent/Maskedになっているかを確認します。 |
| 巨大画像によるメモリ圧迫 | 4Kや8Kの画像を大量に取り込むとVRAM/メモリを大きく消費します。アイコンや小さなUIに高解像度は不要です。用途に必要な解像度に抑え、不要に大きい画像は縮小してから取り込むのが安全です。 |
| sRGBの取り違え | カラー画像でsRGBをオフにすると色が暗く(または不自然に)なり、逆にノーマルマップなどのデータ画像でsRGBをオンにすると凹凸表現が崩れます。「色=オン/データ=オフ」を基本に見直してください。 |
よくある質問(FAQ)
Q. 取り込んだ画像を後から差し替えたい(元画像を更新した)。
A. テクスチャを右クリックし、「リインポート(Reimport)」を選ぶと、元の画像ファイルから取り込み直して内容を更新できます(元ファイルのパスが残っている場合)。差し替え後は保存を忘れずに。
Q. PNGとJPG、どちらで取り込むのがよい?
A. 透過が必要なUI画像やアイコンは、劣化のないPNG(またはTGA)が無難です。写真のような重い画像で容量を抑えたい場合はJPGも選択肢ですが、非可逆圧縮で画質が落ち、透過は持てない点に注意してください。最終的にはUE5内部で圧縮されるため、可逆形式で取り込むのが基本です。
Q. 取り込んだはずの画像がコンテンツブラウザに見当たらない。
A. 取り込み先フォルダが意図と違っていないか、コンテンツブラウザの検索・フィルタが絞り込まれていないかを確認します。また、保存していないと別の場所からは見えにくいことがあるため、まず「すべて保存」を試してください。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- 床の上に乗ったらイベントを発生させる方法
- OverlapAllDynamicとOverlapAllの違い
- タイトル画面を作る方法
- サードパーソンテンプレートでのキャラクター表示の仕組みと非表示にする方法
- ボタンに文字を記載する方法
- Event ActorBeginOverlapとOn Component Begin Overlapの違い
- キャラクターに特定のオブジェクトとの当たり判定を付ける
- 特定のオブジェクトに触れたとき、キャラクターが倒れるようにする
- 動いているオブジェクトに静止しているキャラクターが当たり判定を持たない原因と解決方法
- 「On Component Hit」に「Cast To ~」で複数のクラスを指定する方法
- Blenderファイルをインポートする方法
- 鏡を作成する方法
- レベルブループリントでキャラクターの出現を設定する方法
- サードパーソンテンプレートにおけるキャラクター出現の定義
- アイテムに近づいたらボタンを押してイベントを発火させる方法
- 画面の中央にメッセージを表示する方法
- どこからでも呼び出せるカスタムイベントを作成する方法
- カスタムイベントに引数を追加する方法
- 「Get Overlapping Actors」から特定のクラスの場合のみ処理を実行する方法
- オブジェクトに近づいている間だけメッセージを表示する方法
- PCの画面を操作するUIを作る方法
- コンテンツブラウザに画像を追加する方法
- SetInputMode_UIOnlyを取り消す方法
- 特定の画像の上にマウスカーソルを置いたら手マークにする方法
- オブジェクトがアウトライナーで選択できない原因と解決策
- PlayerStartを作成する方法
- メニュー画面を作成して開く方法
- 「Esc」キーを押してメニュー画面を開く方法
- イベントの「On Clicked」と「On Pressed」の違い
- 「Set Input Mode」の種類と使い方
- 「Set Game Paused」の使い方と詳細解説
- Motion Matchingとは?
- 「GameMode」と「GameModeBase」の違い
- マップに配置したTargetPointを取得する方法
- TargetPointにタグをつけて取得する方法
- Spawnしたインスタンスがイベントを実行する方法
- 特定の時間ごとに処理を実行する方法
- 数値をランダムで出力する方法
- ThirdPersonテンプレートでキャラクターの移動を歩くように変更する方法
- MaxWalkSpeedを変更する方法
- しゃがむ動作を導入する方法
- キャラクターのアニメーションを設定する方法
- 導入済みのプラグインを確認する方法
- Motion Matchingの導入と必要なプラグイン
- プレイヤーを非表示にする方法
- カメラを傾ける角度を制限させる方法
- 配列からランダムに重ならない要素を特定の数取得する方法
- カメラの映す画面に文字やエフェクトを付ける方法
- キャラクターやメッシュを非表示にした際にカメラが移動しなくなる問題の解決方法
- プライマリーデータアセットを活用する方法
- プレイヤーのHPといった変数を定義する最適な場所
- カメラに映った画面をスクリーンショットとして保存する方法
- ゲーム内のカメラ映像を保存して再表示する方法
- HighResShot を使って高解像度の画像を保存する方法(UE5)
- HighResShotで保存した画像のファイル名を取得する方法
- SceneCapture2DとFrameGrabberの画像保存方法の比較
- SceneCapture2Dを使用して画像を保存・取得する方法
- HighResShotとTake High Res Screenshotの違い
- ゲーム終了ボタンを作成する方法
- 「Save Game To Slot」の戻り値がfalseになる問題の解決方法
- 画面上にメッセージを指定された時間表示させる方法
- シェーダコンパイル時間を短縮する方法
- 「Take High Res Screenshot」実行時に「シェーダをコンパイル」に長時間待たされる問題とその解決策
- データベースを活用する方法
- UE5.5がインストールされた環境にUE5.4を追加で導入する方法
- World PartitionとWorld Compositionの違い
- オープンワールドテンプレートとは?
- ポーンをスポーンさせても視点を切り替えない方法
- キャラクター同士がすり抜けてしまう問題の解決方法
- キャラクターの外見を動的に変更
- World Partitionでインスタンスが「アンロード済み」になる問題
- データ アセットとデータ テーブルの違い
- コンポーネントイベントグラフ内で親クラスの変数にアクセスする方
- エディターのソースコードの自動保存の頻度を高める方法
- SpawnActorでSpawn Transform Rotationが反映されない理由
- ミニマップを表示しポーンの位置を反映する方法
- RInterp ToとVInterp Toの違い
- 毎秒実行するイベントの定義方法
- Niagara のエフェクトにコリジョンを持たせる方法
- 「Overlap」と「Hit」の違い
- OverlapはあるがHitがない原因
- Overlapした位置の座標を取得する方法
- ブループリントでレベル間のパラメータを受け渡す方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?