ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
Unity Terrain の概要
Unity の Terrain は広大な地形を扱うための専用コンポーネントで、Heightmap(高さデータ)を持ち、ブラシ操作で凹凸を作れます。山・谷・平原・川などのオープンワールドを構築するための土台です。
GameObject → 3D Object → Terrain を作成すると、シーンに平らな地形(既定 1000×1000)が配置されます。Inspector の地形コンポーネントには 5 つのアイコンが並び、地形編集モードを切り替えます。

1. Raise / Lower Terrain(盛上げ / 掘削)
最も基本的な地形ブラシ。マウス左ドラッグで盛り上げ、Shift + 左ドラッグで掘り下げます。
| パラメータ | 役割 | 目安 |
|---|---|---|
| Brush Size | ブラシの半径 | 大地形は 50〜100、ディテールは 5〜20 |
| Opacity | 1 ストロークあたりの強度 | 10〜30 が扱いやすい |
| ブラシ形状 | 柔らかい円 / 硬い円 / ノイズ等 | 自然地形はノイズ系がおすすめ |
2. Set Height(平坦化 / 基準面作成)
指定した高さに地形を揃えます。建物を建てる土地、湖底、台地を作るのに使います。
- Set Height ブラシを選択
- Height 欄に目標高さを入力(例: 50)
- Flatten Tile ボタンで全面に適用、もしくはブラシでなぞる
- 地表に Shift を押しながらクリックすると「その地点の高さ」を Height にスポイト取得できる
3. Smooth Height(平滑化)
盛りすぎてギザギザになった地形をなめらかにします。山と谷の境目、湖の周辺など、不自然な急角度をなだらかにするのに便利です。

4. Stamp Terrain(テンプレ地形の押付)
あらかじめ用意した山や火口の形をスタンプとして地形に押し付けます。同じパターンを連続で配置したい場合に時間を節約できます。
- Brush に山型・峰型・尾根型などの形状を選択
- Stamp Height でスタンプの最大高さを指定
- マウスクリックで 1 回押下、Shift + クリックで反転(くぼみに)
5. Paint Texture(テクスチャ塗布)
高低づくりに直接関係ありませんが、地形が出来たら草地・岩・砂浜のテクスチャを塗り分けます。Layers を追加し、ブラシで描画します。標高別・傾斜別の自動塗布は Terrain Layers + シェーダまたは Unity Asset Store の MicroSplat / CTS で実現できます。
Heightmap を外部ツールで作成
広大な地形を手で塗るのは時間がかかります。実写の標高データ(DEM)や、World Machine / Gaea / TerreSculptor などのプロシージャル地形ツールで生成した Heightmap(グレースケール画像)を Unity に取り込むと、リアルな地形が一気に作れます。
[Terrain Inspector]
歯車アイコン (Terrain Settings)
→ Texture Resolutions (On Disk)
→ Heightmap Resolution: 513 / 1025 / 2049 / 4097
→ Import Raw... ← RAW 16bit ファイルを取り込む
→ Export Raw... ← 現在の地形を書き出す
対応フォーマット:
RAW 16bit (推奨) — 階調が広く滑らか
RAW 8bit — 軽量だが段差が見える
PNG (8bit/16bit) — 一般的、Photoshop で編集可
URP / HDRP での Terrain
Built-in(Standard)と URP / HDRP では Terrain のシェーダが異なります。新規プロジェクトで URP / HDRP テンプレートを選んだ場合、Terrain のマテリアルは自動的にパイプライン用のものに差し替わります。既存プロジェクトをアップグレードした場合は、Edit → Rendering → Materials → Convert Selected Built-in Materials to URP で変換できます。

スクリプトから地形を編集
ランタイム or エディタ拡張で地形を動的に変更したい場合のサンプル:
using UnityEngine;
public class TerrainEdit : MonoBehaviour
{
public Terrain terrain;
void Start()
{
TerrainData data = terrain.terrainData;
int w = data.heightmapResolution;
int h = data.heightmapResolution;
float[,] heights = data.GetHeights(0, 0, w, h);
// 中央を山にする(簡易ガウス)
for (int z = 0; z < h; z++)
{
for (int x = 0; x < w; x++)
{
float dx = (x - w / 2f) / w;
float dz = (z - h / 2f) / h;
float d2 = dx * dx + dz * dz;
heights[z, x] = Mathf.Exp(-d2 * 12f) * 0.5f;
// 正規化高さ 0.0〜1.0
}
}
data.SetHeights(0, 0, heights);
}
}
作業効率を上げるコツ
- Opacity は控えめに: 5〜10 で繰り返すと自然な凹凸ができる
- カメラを真上に: 上空視点で大まかな地形を作り、視点を下げてディテール
- 頻繁にプレビュー: Game View に切替えてプレイヤー視点を確認
- Heightmap Resolution は必要十分に: 4097 はメモリを大量に使う
- 大規模地形は Terrain Tile(複数 Terrain)に分けて遠景 LOD を効かせる
FAQ
Q: 高低差の最大値は?
A: Terrain Settings → Mesh Resolution の Terrain Height で決まる。既定 600m。山岳地形なら 1000〜2000m に。
Q: 地形が真っ黒に表示される
A: URP / HDRP のマテリアル変換が未実施です。Window → Rendering → Render Pipeline Converter で一括変換できます。
Q: Undo が効かない
A: 大きな Terrain では Undo がバッファに収まらず効かないことがあります。重要な変更前に Export Raw で書き出しておくと安心です。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 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
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- 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
- ファイアウォールとは|パケットフィルタ・ステートフル・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
コメントを削除してもよろしいでしょうか?