NAIST-IS-MT9951117

修士論文

没入型仮想環境を利用した対話的地形モデリング森本 龍太郎2001 年 2 月 9 日
奈良先端科学技術大学院大学
情報科学研究科 情報システム学専攻

本論文は奈良先端科学技術大学院大学情報科学研究科に修士 (工学) 授与の要件として提出した修士論文である。
森本 龍太郎

審査委員：

横矢 直和 教授
千原 國宏 教授
竹村 治雄 助教授

没入型仮想環境を利用した対話的地形モデリング 3
森本 龍太郎内容梗概

3 次元 CG によって表現された自然景観は, VR 環境や映像コンテンツにおいて多く利用されている. このような環境で用いられる地形モデルは , 実在する地形だけでなく, 架空の地形をも表現したいという要求が高いため, 写実性の高い地形を半自動的に生成する方法や, ユーザの操作による生成法が提案されてきた. しかし , 従来のモデリングシステムでは , ユーザの思い通りの多様な地形を容易に生成することはできなかった. そこで本研究では, この要求を満たすために , 没入型
仮想環境と 3 次元操作可能なペン型デバイスを用いることで, 直感的で対話的な操作による地形モデリングシステムを提案する.
提案環境は, 傾斜型ディスプレイを表示装置として用いることで , ディスプレイ
面による 2 次元平面と, デ ィスプレ イ上に映し出された映像を立体視した 3 次元
空間により構成される. ユーザはこの 2 次元平面に対して , 地形の外観の特徴を表した図形を描画し , この図形を 3 次元空間に直接引っ張り上げ , 斜面の傾斜具合を設定することで地形のモデリングを行なう. 本論文では , 要求される地形モデ
リングについて述べた後, それらの要求を満たした地形モデリングシステムを提案する. さらに , 提案するモデリングシステムについて詳しく述べ, 実際のモデリング結果と実験によって本研究の有効性を検証する.
キーワード
仮想現実感, 没入型モデラ, 地形データ生成, 対話的モデリング
3 奈良先端科学技術大学院大学 情報科学研究科 情報システム学専攻 修士論文, NAIST-ISMT9951117, 2001

年 2 月 9 日.

iInteractive Terrain Generation in a Virtual
Environment3

Ryutarou Morimoto
Abstract
3-D terrain models are required for virtual environments, movies, TV programs,
video games and so on. Therefore, there is a need for a modeling system that caneasily generate arbitrary terrain models.
This paper presents an immersive modeling system for generating 3-D terrain
models of mountain scenery. The system satis es these demands. In the proposedsystem, users can design 3-D terrain shapes by drawing an outline of terrain on a2-D plane of a sloped rear-projection display, pulling a mountaintop in 3-D spaceand regulating the slope of the mountain generated.
As a result, complicated arbitrary terrain models are easily and eciently generated by repeating these intuitive operations.

Keywords:
virtual reality, immersive modeling system, terrain generation, interactive modeling

3 Master's Thesis, Department of Information Systems, Graduate School of Information
Science, Nara Institute of Science and Technology, NAIST-IS-MT9951117,

ii

February 9, 2001.

目 次

1. はじめに1

2. 従来の 3 次元地形のモデリングと本研究の方針

4

2.1 従来の地形モデリング
2.2 本研究の方針
2.2.1 多様な地形を生成する自由度の高い形状定義法の実現
2.2.2 多様な地形を容易に生成するための直感的な操作の実現: : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : ::3. 没入型仮想環境とペン型デバイスを利用した地形モデリングシステムの開発

3.1 試作システムにおける装置の構成
3.2 地形モデリング
3.2.1 地形モデリングの基本操作
3.2.2 基本操作を応用した地形モデリング方法: : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : :: : : : : : : : : :: : : : : : : : : : :: : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : :5. 検証と考察

5.1 モデリング例
5.2 任意地形生成の検証
5.3 考察

18

19
23
23
29

33

4. 地形モデリング操作に対する地形生成法

4.1 本システムで扱う地形データと地形生成の処理
4.2 複数の制御図形を利用した地形生成
4.3 各制御図形における地形生成
4.4 階層構造による地形生成と傾斜具合の調整

4
12
13
15

33
38
40
42

44

: : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

45
45
49

6. おわりに

53

謝辞

54
iii

55

参考文献

iv

図 目 次

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

Shede における 3 次元形状作成の概要
Shede による 3 次元地形作成例: : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : :プリミティブの階層的な配置による地形の定義 : : : : : : : : : : :1 本の等高線の入力による他の等高線の生成
Terragen による地形生成
Vertual Sand Box の操作の様子: : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : :

斜面形状の自由度 : : : : : : : : : : : : : : : : : : : : : : : : : : :
地形の外観の特徴の描画 : : : : : : : : : : : : : : : : : : : : : : :
標高の操作: : : : : : : : : : : : : : : : : : : : : : : : : : : : : :斜面の傾斜具合の操作
装置の構成図: : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : :試作システムでのモデリングの様子 : : : : : : : : : : : : : : : : :傾斜型ディスプレ イ: : : : : : : : : : : : : : : : : : : : : : : : :液晶シャッタ眼鏡 : : : : : : : : : : : : : : : : : : : : : : : : : : :ライトペンと超音波センサを組み合わせたペン型デバイス
基本操作の入力手順: : : :

: : : : : : : : : : : : : : : : : : : : : : : : :外観の特徴図形の分類: : : : : : : : : : : : : : : : : : : : : : : :外観の特徴を表す図形: : : : : : : : : : : : : : : : : : : : : : : :外観の特徴図形の選択: : : : : : : : : : : : : : : : : : : : : : : :複数の制御図形の操作: : : : : : : : : : : : : : : : : : : : : : : :斜面の傾斜具合の操作: : : : : : : : : : : : : : : : : : : : : : : :

傾斜具合のバーによる表示 : : : : : : : : : : : : : : : : : : : : : :連続線の制御図形の操作 : : : : : : : : : : : : : : : : : : : : : : :閉曲線による制御図形の操作
複数の制御図形の操作: : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : :

地形の階層構造による制御 : : : : : : : : : : : : : : : : : : : : : :階層構造を持った地形の生成
格子状の地形データ: : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : :

v

6
7
8
10
11
12
14
15
16
18
20
21
21
22
22
24
25
26
27
27
28
28
30
30
32
33
34
35

29 地形生成のための処理の流れ
30 生成対象領域と制御点の xy 座標の入力
31 生成対象領域の境界と制御点との距離の比による重み付け
32 距離マップ
33 傾斜関数34 2 つの制御点によって生成された地形データの合成
35 制御図形からの距離
36 傾斜具合の不連続な地形の階層構造
37 階層構造による斜面の滑らかな地形
38 モデリング例 1 〜 3
39 モデリング例 4 〜 540 三宅島41 見本とする地形
42 ユーザ A がモデリングした地形
43 ユーザ B がモデリングした地形
44 視点の変更による標高の判断: : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : :: : : :

: : : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : :

36
36
37
38
39
40
41
43
44
46
47
48
50
50
50
52

表 目 次

1
2

各例のモデリングに要した時間: : : : : : : : : : : : : : : : : : :各例のモデリングに対して行った操作

vi: : : : : : : : : : : : : : :4545

1. はじめに
今日, 3 次元コンピュータグラフィクス (CG) を利用した画像や映像は広く普及している. 中でも自然景観の 3 次元 CG は , テレビや映画のような映像コンテンツや, ビデオゲーム, 仮想環境におけるウォークスルーやフライトシュミレーショ

ン [2], 芸術の分野において広く利用され , 要求に応じて様々な景観をモデリングする必要がある [3].

その際, 目的とする景観は, 実在する景観と, 架空の景観の 2 種に分けられる.

また、この 2 種はさらに , 建造物や橋, 道路のような人工物と, 地形や木, 雲, 水面のような自然物とに分けられる. 人工物は , 実在する景観に関しては , その設計図が存在しているため 3 次元 CG 化は比較的容易であり, 架空の景観に関しても 3
次元 CG ソフトウェアを用いることによって, 自由度の高い 3 次元 CG モデルを作成することが可能である. 自然物は, 地形や樹木, 雲, 雪など様々な形態で存在するため, それぞれ別々の方法で形状定義をする必要がある. 本研究では , この中でも地形に注目し , そのモデリングを目的とする. 実在する景観の地形データは ,計測技術の向上によって, 詳細な情報が広範囲に渡って収集されている. この計測結果は , 国土地理院やアメリカ地質調査所等の各国の地図作成機関より刊行されている, 数値地図の標高情報 [1] や , 地形図の等高線情報として提供されており,このデータを利用して実際の地形を再現することができる.

これに対して , 映像コンテンツやビデオゲーム, ウォークスルー型の仮想環境,

芸術等のようなエンターテイメント性の高い 3 次元 CG 環境では , 実在する景観だけでなく架空の景観をも表現する要求が高いため, ユーザからの入力によって,新しく任意の地形を生成する必要がある. ユーザからの入力による地形モデリン

グでは , 1) 多様な地形を生成可能である, 2) ユーザの意志に沿った地形生成ができる, 3) 生成された地形の 3 次元形状を即座に確認できる, 4) 少ない操作で目的とする地形を生成できる, 5) 写実性の高い地形を生成できる, の 5 つの項目が必要とされる. 写実性は, 生成された地形に後から加えることも可能であると考えられるが , 1) から 4) は全て満たす必要があり, これらを満たした地形モデリング

システムが要求される.

従来, 様々な方法によって地形のモデリングが行なわれている. 例えば , Shade1

のような 3 次元 CG ソフトウェアで架空の地形を設計するには , 複数の操作を多数組み合わせる必要があるので多くの労力を要する [4][5]. また, フラクタルや確率モデルを利用した地形の生成法 [6] [7] [8] [9] [10] や , 地形の外観の描画を元にしたモデリング法 [11] [20] のような様々な地形モデリング法が試みられているが ,いずれの方法も要求される機能を全て満たしてはいない.

一方, 対話性・直感性の高いモデリング環境として , 仮想現実感 (VR：Virtual

Reality) の技術を応用した没入型モデラが注目され, 様々なシステムが開発されている [13][14][15]. この様な没入型のモデラによるモデリングでは , 両眼立体視による 3 次元形状の確認や, 多自由度のデバイスによる 3 次元空間に存在する形
状の直接 3 次元的な操作が実現されているため, 直感性の高いモデリング環境が提供される. この没入型モデリングシステムの技術を景観モデリングに応用したものにバーチャル箱庭システム [16] がある. このシステムでは , 没入型仮想環境を利用することで, 地形を直感的に生成することができる. しかし , このシステムによって生成される地形は , 山裾の大きさや斜面の傾斜具合が一定であるため, 多様な地形を作成するには不十分である.
そこで, 本論文では , 1) から 4) の要求を全て満たした地形モデリングシステム
として , 没入型仮想環境を利用することで , 生成される地形の 3 次元形状を確認しながら , 直感的, かつ対話的な操作によって, 複雑な地形生成を容易に行える地
形モデリングシステムを提案する [17]. 提案システムでは , 直感的な操作によって操作の煩わしさを大幅に省くことができるとともに , 生成される 3 次元地形を確認しながら対話操作を行なえることで, 地形モデリングの効率が高まるものと考えられる. 提案システムにおけるモデリング操作は, ペン型デバイスと物理的な 2次元平面を利用した 2 次元平面に対する地形の外観の特徴の描画と, 3 次元位置
センサを利用した外観の特徴を直接 3 次元空間に引っ張り上げる操作, 斜面の傾
斜具合の設定の 3 つの基本操作によって提供した . ユーザはこれらの操作によって, 生成される地形の外観を意識しながら , 3 次元地形の操作を直感的に行うことが可能となる. 本論文ではさらに , 提案システムを実装し , 提案システムにおける
地形モデリングの有効性を, モデリング結果と検証実験によって確認した.
以下, 2 章では , 要求される地形モデリングについて述べるとともに, 従来の地
2形のモデリング方法を紹介する. その上で , 本研究で満たすべき地形モデリングの機能について検討し , 要求される機能を満たした地形モデリングシステムを提案する. 3 章では, 2 章で提案したモデリングシステムの概要と操作方法を説明し ,4 章では, 各操作に対する地形生成の処理について説明する. さらに, 5 章で提案
システムの有効性をモデリング結果と検証実験によって確認, 考察し , 今後満たすべき課題について解決法を考え, 最後にまとめる.

3

2. 従来の 3 次元地形のモデリングと本研究の方針
前章で述べたように , 3 次元 CG によって表現された景観は 実在する景観と架空の景観の 2 種に大別でき, それぞれの景観は , 建築物や橋のような人工的なオブジェクトと , 地形や木, 雲のような自然に存在するオブジェクトに分けることができる.

実在する景観の 3 次元 CG は , 土木建設用の景観シミュレーションや , 3 次元地図, フライトシミュレーション , 実世界をシミュレートした仮想環境などで利用される. 一方, 架空景観の 3 次元 CG は , 映画やテレビのような映像コンテンツ, ビ

デオゲームや架空世界の体験を目的とした仮想環境などで , 実在しない世界の体験を与える. また, 都市計画シミュレーションや , 古代都市の復元では , 実在景観の要素と架空の景観の要素が混合された景観や, 実在景観を元に加工を加えた景観が利用される.

このように, 景観のモデリングは様々な用途にわたって需要が見込まれる. 中

でも地形モデリングでは , それぞれの景観に応じて様々な地形が必要とされるために, 多様な地形を効率良くモデリングする方法が要求される.

本章では , まず 2.1節で, 従来の地形モデリングについて説明し , 2.2節において,本研究で提案する地形モデリングシステムについて述べ, それを実現するための方針を述べる.

2.1 従来の地形モデリング
地形のモデリングでは , 計測値による実在地形のモデリングと , ユーザからの入力による架空地形のモデリングの 2 種が要求される.

実在地形の計測結果は , 地形図の等高線情報や, 国土地理院やアメリカ地質調査所等の各国の地図作成機関より刊行されている数値地図によって提供されている. 地形図の等高線は , 地表面の高さの等しい点を連続して結んだものであり, 閉曲線によって表される. このとき既知である各等高線上の標高から , 等高線間の標高を補間することによって, 3 次元地形を復元できる. また, 数値地図は , 格子によって地形図をサンプリングし , 格子にその地点の標高値を格納することで地4

形を表したものである. 数値地図を利用した場合, 隣接する格子に対して , 三角形

面や四角形面を張り合わせることで, 3 次元地形が復元される.

一方, ユーザからの入力による架空地形のモデリングでは , 以下のような機能を全て満たした生成法が要求される.

 多様な地形を生成可能である
 ユーザの意志に沿った地形生成ができる
 生成された地形の 3 次元形状を即座に確認できる
 少ない操作で目的とする地形を生成できる
 写実性の高い地形を生成できる
まず, 架空地形のモデリングでは , その目的に従って様々な地形が要求されるため, 多様な地形を生成可能である必要がある. 例えば , 高山の景観では鋭い斜面を持った地形が要求され , 月のような惑星の景観では無数のクレーターによって窪んだ地形が要求される.

次に , この地形をユーザの思い通りに生成できる必要がある. 多様な地形が生成可能であっても , ユーザにとって目的とする地形の生成が困難であってはならない. 例えば , 同じ入力に対して , 異なる地形が生成されるようではユーザは入力として何を与えれば良いかわからず混乱してしまうし , 入力を変化させた際に, 生成される地形がどのように変化するのか判別しにくいと, ユーザは修正を繰り返しても, 目的とする地形に近づけることもできず, 任意の地形生成を達成することはできない.

さらに , 目的とする任意の多様な地形を生成することが可能だとしても, 生成された 3 次元地形がすぐに確認できなかったり, 膨大な量の操作によってやっと目的の地形が生成されるようでは , 目的とする地形を生成するためにユーザは大変な労力を要することになる.

最後に , 生成された地形には実在地形と同様の写実性のある地形が要求される.

生成された地形が , おわんやピラミッドのような形の山では , 自然の地形を生成したとはいえない.

5以下, 従来の架空地形のモデリング法を紹介し , それぞれをこれらの観点に従って評価する.

(a) 3 次元 CG ソフトウェアを用いた地形データ生成
一般的に 3 次元形状データは Shade のような 3 次元 CG ソフトウェアによって作成されている. Shade では, 上面図, 正面図, 側面図, 透視図に表示された 4 つのウィンドウを見ながら , 線形状や球などによるオブジェクトに対し , その平面形状に沿って立体的に押し出す操作 (掃引) や , オブジェクト同士を接続して自由曲面を作成する操作によって 3 次元形状データを作成する. 以下に Shade による地形

上面図

透視図

正面図

側面図

掃引前
(a) Shade

の四面図

(b)

掃引後
掃引

接続前
(c)

接続後

オブジェクトの接続

図 1 Shede における 3 次元形状作成の概要
データの作成例 [4][5] を示す.

(1) 正面図に, 地形の断面の線形状を描く (図 2(a)).
(2) この断面の線形状をコピーし , 上面図上で下方に移動させる. さらにこの
2 本の線形状を接続して, この 2 本の線形状に挟まれた自由曲面を作成 (図2(b)).
(3) コピーすることによって作成した, 新たな線形状の接続点を移動し , 不規則
性を持たせる (図 2(c)).
(4) 線形状のコピー, 移動, 接続点の移動を繰り返し , 起伏を持った形状を作成
する (図 2(d)).
6(5) さらに制御点を増減し , 制御点を移動させることで, 地形を作成する.

(a)

線形状の描画(c)

接続点の移動(b)自由曲面の作成(d)繰り返し

図 2 Shede による 3 次元地形作成例
この工程のように, 地形を Shade のような 3 次元 CG ソフトウェアで作成することを考えると, 確かにユーザの意志に沿った多様な地形を生成できるかもしれないが , 線の追加や操作に非常に膨大な労力を要し , 大変効率が悪い. また, 写実

性の面においては , 形状作成はユーザの操作に委ねられているため, 写実性の向上を考えるとさらにユーザの負担が増すことになる.

7

(b) フラクタルや乱数を利用した地形の生成
山岳地形に代表される侵食地形の形状は, 自己アフィン性をもつフラクタルととらえることができると考えられ , フラクタルを利用した地形の生成が提案されてきた [6][7][8]. フラクタルでは単純な数式を繰り返し適用することで自己相似性を持った形状を生成することができる. ユーザは , この数式のパラメータを調整することで, 地形を定義することになる.

また, Marshall らは手続き的な方法による地形の生成を提案している [9]. この手法では , 図 3に示すように, 地形は山の集合として定義され , 山は平地, 丘, 山の組合せによって定義されたモデルで表されている. 地形生成, 山生成, 平地生成,
丘生成は別々のアルゴ リズムで定義されており, 地形生成アルゴ リズムは山生成

アルゴ リズムを呼び出し , 山生成アルゴ リズムは平地生成アルゴ リズムと丘生成

アルゴ リズム, 山生成アルゴ リズムを呼び出すことで , 階層的に地形生成を行なう. 各地形を構成する山の個数, 山の配置位置, 大きさは , 乱数に左右され , 多様な地形を生成することができる.

Plane

Hill

Mountain

Mountain Range

randumrandum

plane

plane

mountain
mountainhill

mountainhill

mountain

図 3 プリミティブの階層的な配置による地形の定義
さらに , 安生らによる自然景観エディタ [10] では , 地形を確率モデルで表された

プリミティブに対して , 加算, 減算のような集合演算で組み合わせることでモデリ

8

ングしている. この方法では , ユーザは山や丘, 砂漠のようなプリミティブに対して, その形状を生成するために各地形の座標と標高, 勾配の向き, 斜面のうねりを表すパラメータを入力し , 地形を生成する. これらのパラメータの設定によって,生成された地形はプレビューされることで , その 3 次元形状を確認することができる.

しかしながら , これらの方法では, 入力に対して , 生成される地形が一定形状にならない. それは , フラクタルや乱数によって生成形状が不規則性を持つため当然のことであるが , これによって, 生成される地形を前もって予測することができず , ユーザの思い通りの地形を生成することは困難である. そのため, 任意地形の生成には向かない方法であるといえる.

(c) 1 本の等高線より他の等高線を推測することによる地形形状定義法
三沢らは , 山の特徴を良く表しているような 1 本の等高線の形状を入力するだ

けで , その内側に存在する他のすべての等高線が生成される" 等高線生成法" を考案しており, 生成された等高線より地形の 3 次元形状を求めることができる [11].
この手法では , ある等高線に注目したとき, その周囲の等高線は非常に類似した形状で表されているという特徴を利用し , 一定距離内側に元の等高線の相似閉曲線を生成する. このとき生成された相似閉曲線が推定された隣接する等高線であり, この推定を繰り返すことで他の全ての等高線の形状を生成する. この生成結果を図 4に示す. 図 4(a)では , 一番外側の等高線が入力された等高線であり, その内側の全ての等高線がこの手法によって推定された相似閉曲線である. また図4(b)は, 図 4(a)で一番外側の等高線を実際に有す地形図である. この結果から, この手法は架空の地形だけでなく, 実在する地形に対しても近似を与えるといえる.
このように , この方法では , 1 本の等高線を与えるだけといった, 大変容易な入力で地形をモデリングできる. このとき, 入力として与えた等高線は , 生成される地形の一番外側の等高線となり, これは生成される地形の山裾にあたるので, ユー
ザは生成形状をある程度予測しながら入力を行えることになる. しかしながら , この方法では , 等高線 1 本の情報から地形を推定するため, 山頂の標高や, 斜面の傾斜具合を考慮した生成法ではない. そのため , 多様な地形の生成が可能であると
9(a)等高線生成法による生成例(b)

実際の地形図

図 4 1 本の等高線の入力による他の等高線の生成は言えない.

(d) 2 次元濃淡画像による地形作成システム (Terragen)また, 近年では景観モデリングソフトとして Terragen のような製品が広く普及している. Terragen では , 地形の標高マップを 5(a)図のように 2 次元の濃淡マップで表現しており, ユーザはこの 2 次元濃淡マップをペンで塗る感覚で 3 次元地形データを生成できる. ユーザは 2 次元画像に対して , マウスの右クリックによって, その点の輝度を上げ , 左クリックによって, その点の輝度を下げる. このとき,
操作対象の範囲を大, 中, 小の 3 つより選択することができ, これによる操作を組

み合わすことで多様な描画を行う. 最終的に生成された 2 次元濃淡画像に対して,

視点と参照点を決めてレンダリングを行うと, 輝度値の高い点は標高の高い点, 輝

度値の低い点は標高の低い点として, 3 次元地形として表される 5(b).

この方法では, ユーザの入力によって, 2 次元濃淡画像上に地形の外観が描かれたことになる. 例えば , 2 次元濃淡画像の輝度値の高いところは実際に山が存在するところで , 高度の低いところは輝度値の低いところとして現われており, 生成された地形の 2 次元的な外観は , 明確である. また, この方法では , 操作を複数繰り返すことで , ユーザの思い通りの地形を生成することも可能である. しかしながら , 入力が 2 次元画像であるため, 直感的にはその 3 次元形状が把握できないので , 生成された地形の 3 次元形状を確認するには一旦プレビューする必要がある

10

(a) Terragenの入力画像(b) Terragenによって生成された地形図 5 Terragen による地形生成
ため, 作業の効率を低下させる元となる. さらに, 操作対象の範囲は 3 種類を選ぶことができるが , 各々の操作では地形に単調な変化しか与えられないため, 複雑な地形を生成するには, 微小な操作を多数繰り返す必要がある.

(e) 没入型仮想環境を利用した地形形状操作 (Virtual Sand Box)
KIJIMA らによる Virtual Sand Box[16] は, 容易に景観を作成できるように, 没
入型のシステムを開発している. このシステムでは, 図 6のように , ユーザは 100
インチの大型スクリーンの前に立ち, スティック状のデバイスで画面上の地形をつかんで, 上げ下げすることで容易に地形を生成することができる. また, ジョイ
スティックの操作によって視点位置が変更可能であるため , 操作地形の 3 次元形状を把握しやすい位置から眺めながらの操作が可能である.
このシステムでは , ユーザは 3 次元操作可能なスティックによって地形を直接,かつ対話的に操作でき, その生成される地形の 3 次元形状を把握しながら操作を行えるので , 地形の標高の操作はかなり思い通りに行える. しかし , このシステム
での生成地形は , スティックの上げ下げのみに依存し , 生成された地形の山裾の大きさや, 斜面の傾斜具合を自由に操作することができないため, 単純な地形しか生11

図 6 Vertual Sand Box の操作の様子
成することができず, 任意の地形を生成するには到らない.

2.2 本研究の方針
前節で述べたように , 架空地形のモデリングには , 多様な地形を生成可能である
 ユーザの意志に沿った地形生成ができる
 生成された地形の 3 次元形状を即座に確認できる
 少ない操作で目的とする地形を生成できる
 写実性の高い地形を生成できるといった要求を全て満たした生成法が必要である. 前節ではこれをふまえて, 従来の地形モデリングについて述べてきたが , この要求を全て満たした地形モデリ

12ング法は存在しない. 写実性に関しては , 他の方法によって生成された形状にフラクタルやテクスチャマッピングを利用することで付加させることも可能であるが , その他の 4 つの項目は, 写実性を与える前の大体の形状を生成する段階で不可欠である. 前節で述べたように , これら 4 つの項目の一つでも欠けると, 任意形状の生成が不可能, または非常に困難なものになってしまうため, これら全てを満たした地形モデリングシステムが望まれる.

そこで , 本研究では , これらの 4 つの項目を全て同時に満たした地形モデリング

システムとして , 没入型仮想環境を利用することで , 生成される地形の 3 次元形状を確認しながら , 直感的, かつ対話的な操作によって, 複雑な地形生成を容易に行える地形モデリングシステムを提案する. 多様な地形を生成する方法を考えた

とき , 複雑な操作による高度な形状定義法か , 簡単な操作を複数組み合わせることによる形状定義法かど ちらかの形状定義法が考えられる. 複雑な操作では , ユー

ザにとって制御が困難であると考えられるので , 本研究では , 簡単な操作の組み合わせによる, 多様な地形の定義を採用する. このとき, これら複数の操作によって, 地形モデリングが煩雑なものになることが考えられるが , 提案システムでは ,没入型仮想環境を利用することで , 直接的な操作によって, 操作の煩わしさを大幅に省くことができるものと考えられる. また, 2 次元的に見ればわかりにくい形状
でも, 3 次元的に形状を確認できることによって, ユーザが行った操作が生成される地形にどのような影響を及ぼすかを容易に確認ができることが期待される.

本研究では , このような提案システムを実現するために , 直感的で対話的な操作を組み合わせた地形の生成方法を提案する.

以下に , どのような入力の組合せで自由度の高い形状定義を実現するかと , こ

れらの入力をどのような操作で実現するかの方針を示す.

2.2.1 多様な地形を生成する自由度の高い形状定義法の実現
地形は地形図や数値地図のように, 緯度や経度による地平面上の座標と, その座標の標高で決まる. つまり, 地形データを生成するには, この地平面上の座標とその標高を入力すればよいことになる. 例えば Terragen では , マウスでクリックした座標を半径とした一定の範囲が , 入力された地平面上の座標であり, このとき

13付加された輝度値が入力された標高となる.

このとき, 全ての地点に対して 1 地点ずつ標高を与えてやれば , ユーザの思い

通りの地形を自由に生成することができる. しかし , このような方法は非常に手間がかかってしまい, 効率が悪い. そこで , 同時に広範囲の地形に対して , ユーザの思い通りの地形生成を行なうために, ユーザの意志に従って地形の生成される範囲を地形の外観として描けることと, その範囲内の地形の生成規則を標高や斜面の勾配によって設定できることが必要となる.

斜面は複雑な形状によって表されるが , 複雑な規則によって複雑な形状を表せ

ば , 制御が困難となる. そこで , 斜面の形状は単調に変化する関数を複数組み合わせることで制御することを考える. このとき, 制御の容易さ考えると, 斜面の形状を表す関数へのパラメータは 1 次元の変数が良い. また, 斜面の形状は , その断面で考えると, 図 7(a)のように 2 次元の自由度で表されるが , 2 自由度で斜面形状が変化しては , 制御が困難である. そこで, この 2 自由度の形状変化を 1 つの自由度

で同時に制御する必要がある. 以上より, 本提案システムでは, 図 7(b)において,矢印で示されるような 1 次元的な形状変化の組み合わせによって斜面形状を定義することによって, 容易に制御の行える斜面形状の操作を実現する.

(a) 2次元の自由度をもった斜面(b) 1

図 7 斜面形状の自由度

14次元の自由度をもった斜面

2.2.2 多様な地形を容易に生成するための直感的な操作の実現
前節において , 自由度の高い地形を生成するためには , 1) 地形の外観をユーザの思い通りに描ける, 2) 標高を自由に選べる, 3) 斜面の形状を自由に選べることが必要であることを述べた. 本節では , それらの操作を直感的に行えるように , どのような操作によって実現するかを説明する. 以下, それぞれの操作について述
べる.

地形の外観の特徴の入力
提案システムでは , 図 8のような地形の外観の特徴の入力を, 物理的な 2 次元平面にペン型のデバイスを用いて描くことによって実現する.

図 8 地形の外観の特徴の描画
地形の外観の特徴の入力は , 2.1節の (c) の 1 本の等高線による生成法における外側の等高線の入力や, (d) の Terragen の生成法における 2 次元濃淡画像への描画によって実現されている. (c) の方法では , 生成される地形の山裾を入力することになり, (d) の方法では , 地形を隆起, 沈降させたい地点をマウスでなぞることによって, 操作した地点の画像の濃淡が地形の外観を表す.

15このように, 地形の外観の特徴の入力は, ユーザの思い描いている地形の, 大体の範囲や, 大きさ, 形状といった地形の外観を描く作業である. そのため , 特別な知識を必要とせずに, 誰にでも容易に思い通りの描画を行なえる方法である, ペン
型のデバイスによるスケッチ型の入力 [22][23] が最適であると考えられる.

また, ペン型のデバイスによって操作することを考えると, 没入型仮想環境では , 6 自由度の制御によって操作する必要があり, 大変困難な作業となる [21]. そ

こで , 本提案システムでは , 物理的な制約によって提供される 2 次元平面を用いて, 入力を 2 自由度に制約するとともに, 実世界と同様の摩擦力や抗力によって,外観の特徴の入力に対して高い操作性を実現する [19].
標高の入力
提案システムでは , 図 9のように, 前項で説明された地形の外観に対し , 3 次元

操作可能なデバイスで , 直接 2 次元平面から 3 次元空間に引っ張り出すことによって, 標高を与える.

図 9 標高の操作
地形に対して直接標高を与える操作は, 2.1節の (e) におけるスティック状の 3次元デバイスによって実現されている. この方法でユーザは , 地形が表示された

16

スクリーンの前に立ち, 没入型仮想環境内の地形を直接つかんで隆起, 沈降を行なうため, ユーザの手で地形を生成している感覚が得られる. このように , 地形の標

高の入力は, 地形の一部を直接触れて操作することによって, 高い操作感覚を得られる. そこで, 本研究では, これを実現するための 3 次元デバイスを, 前項で説明したペン型デバイスと同一のデバイスとして組み合わせることで, 操作に応じてデバイスを持ち変える必要なく, 標高の入力の際の 3 次元的な操作を実現する.
斜面の形状の入力

提案システムでは, 1 つの山裾内に複数点の標高の入力によって, 斜面形状の変曲点を入力するとともに , 各変極点間の斜面の傾斜具合を , 1 次元的な形状変化で表すことで , 斜面の形状の定義を容易に行なえるようにする. このとき, 斜面の傾斜具合は 1 次元的に変化するので , この傾斜具合を求めるためのパラメータも 1
次元的な操作で入力することによって, 容易に制御できるようにする. 本提案システムでは , 図 10のように , 前節で説明した 3 次元操作可能なペン型デバイスを,

生成地形の前で左右に動かすことで , 傾斜具合のパラメータが入力され , 傾斜具合が一意に定まるようにする.

17

図 10 斜面の傾斜具合の操作

3. 没入型仮想環境とペン型デバイスを利用した地形モ

デリングシステムの開発
前章において, 没入型仮想環境を利用した多様な地形を容易に生成する方法を提案し , これを実現するためのモデリング操作を示した.

提案する地形モデリングシステムは , 前章で示した方針に従い, 没入型仮想環境の利用
 実平面による物理的な制約を持った 2 次元平面の利用
 3 次元操作可能なペン型のデバイスの利用の 3 項目を満たした環境によって実現する. これらを満たした環境は , 吉森らによる 2 次元平面と 3 次元空間を組み合わせたモデリング環境 [19] によって実現されており, 本研究でも同様の環境によってこれを実現する. 吉森らによるモデリ

18

ング環境では, 傾斜型ディスプレ イのディスプレ イ面を用いることで実平面を有する没入型仮想環境を実現し , ライトペンに 3 次元位置を計測するセンサを取り付けることで 3 次元操作可能なペン型のデバイスによる操作を実現している.

これらの装置を用いて , 前章で示した地形モデリング操作による, 地形モデリ

ングシステムを試作した. 試作システムでは,

 ペン型のデバイスによる 2 次元平面への地形の外観の特徴の描画
 2 次元平面上から直接地形を引っ張り上げることによる地形の立体化
 デバイスの左右の移動による斜面の傾斜具合の操作を実現し要求に応える.

本章では , 試作した地形モデリングシステムの詳細について詳しく述べる. 以下, この傾斜型ディスプレ イとペン型のデバイスを中心に構成される試作システ
ムの装置の構成を 3.1節に , 試作システムにおける地形モデリングの操作を 3.2に示す. なお, 試作システムの実装にあたり, プログラミング言語として C++言語[24] を, グラフィクスライブラリとして OpenGL[25] を使用した.

3.1 試作システムにおける装置の構成

試作システムにおける没入型仮想環境は, 図 11に示す装置構成によって実現される. これらの装置によって, 図 12のようなモデリング作業が提供される.

広範囲の作業空間の実現のために , 画像表示装置として , 図 13に示される 86 イン

チ背面投影式傾斜型ディスプレ イ (ソリッドレ イ社製) を使用する. この傾斜型

ディスプレイに映し出された仮想空間を両眼立体視するために , 液晶シャッタ眼鏡

CrystalEyes(StereoGraphics 社製) を用いる. また, ユーザが操作を行なっている
3 次元空間内の位置を検出するために, 超音波センサ IS-600(InterSense 社製) を位置計測装置として用いる. 図 14で示されるように , 液晶シャッタ眼鏡のフレームの両端に超音波センサを取り付けることで , ユーザの視点位置が計測されるので,ユーザは 3 次元仮想環境を実時間で運動立体視できる. 入力装置としては , 図 1519

図 11 装置の構成図にしめすような, ライトペン LP-213(MicroSpeed 社製) と IS-600 を組み合わせた

ペン型デバイスを利用する. ライトペンでは , 走査線の検知によるディスプレイ上の座標の検出と , 図 15に示すような, ペン先に 1 つ, 側部に 2 つ配置された, 3 つのスイッチによる入力操作が行える. これらのスイッチはペン先から順に S W 1,

3 と呼ぶ.
2と押下され ,

1 はペン先をディスプレイ面に押しつけることによって3 は直接指で押下する. また, 超音波センサでは 3 次元的な位置を計測できるので , これら 2 つを組み合わせたペン型デバイスでは , ディス
プレ イ座標の入力, 3 次元空間の座標の入力, 3 つのスイッチを使った操作が実現される. これらの計測装置からの入力を処理し , 傾斜型ディスプレ イに描画を行うグラフィクスワークステーションには , Onyx2 IR2(SGI 社製) を用いる.
SW

2,

SW

SW

SW

SW

20

図 12 試作システムでのモデリングの様子

図 13 傾斜型ディスプレ イ

21

図 14 液晶シャッタ眼鏡

図 15 ライトペンと超音波センサを組み合わせたペン型デバイス

22

3.2 地形モデリング
本節では , 試作システムによって地形をモデリングする方法を示す. 以下で, 地形モデリングのための基本操作を操作手順を追いながら説明し , 基本操作を応用した自由度の高い地形モデリング操作について説明する.

3.2.1 地形モデリングの基本操作
試作システムでは, 超音波センサとライトペンを組み合わせた 3 次元位置の計

測可能なペン型のデバイスによって, 全てのモデリング操作を行う. 本システム

における基本となる操作は,

 地形の外観の特徴の入力
 標高の操作
 斜面の傾斜具合の操作の 3 つである. 試作システムにおける, 地形モデリングの基本操作の手順を図 16に示す. ユーザは, まず外観の特徴として, 点, 連続線, 閉曲線のいずれかの図形

を 2 次元平面上に描く. このとき, 描かれた図形を外観の特徴図形と呼ぶ. 外観の特徴図形は , その性質によって 2 種に分けられる. 一方は , 引っ張り上げ操作の対象となる図形であり, もう一方は , 引っ張り上げられる図形の外側に位置する閉曲線で, この操作によって引っ張り上げられる地形の領域を限定する図形である. 本論文では , 図 17(a)に示すように, 引っ張り上げられることによって, 生成される地形の形状を制御する図形を制御図形と呼び , 制御図形の引っ張り上げによる地形生成の領域を限定する閉曲線による図形を生成対象領域と呼ぶ. 制御図形と生成対象領域の配置は図 17(b)のように, 閉曲線による生成対象領域の内側に ,点, 連続線, 閉曲線による制御図形が描かれる. 描かれた制御図形は . 引っ張り上げ操作の対象となり, 選択, 把持され , ディスプレイ面に垂直に上下に動かされる

ことで , 地形が生成される. また, この状態で操作を切替えることによって, 傾斜具合の調整が行なわれる. 以下で, これらの操作の詳細を説明し , 連続線, 閉曲線による制御図形の操作について述べる.

23

図 16 基本操作の入力手順
地形の外観の特徴の入力：
地形の外観の特徴の入力は , 図 12のように 2 次元ディスプレ イ面に対して行う. まず , ユーザがディスプレ イ面に対して , ペン先を押しつけることで, スイッ

チ S W 1 が押下され , 特徴図形の描画が開始する. ここから先, ユーザは外観の特徴図形の描画を続けるか, それまで描画した形状を外観の特徴図形として , 描画操
作を終了するかを選びながら操作を繰り返すことになる. S W 3 が押下されたときは , その時点で外観の特徴図形の描画を終了して , それまで描かれていた図形を新たな外観の特徴図形として加える. S W 3 が押下されずに , 図形の描画が続けられたときは , 図形に新しく描画された点を加える. このときの描画の様子を図 18

24

制御図形

生成対象領域

制御図形

生成対象領域(a)

制御図形と生成対象領域(b)

特徴図形の配置

図 17 外観の特徴図形の分類に示す.

まず , 始点が入力された状態を図 18(a)に示す. この時点で S W 3 によって入力が終了されると, この点が外観の特徴図形として新たに加えられる. 次に , 新たな点を加えて連続線が描かれた状態を図 18(b)に示す. この状態で S W 3 によって入力が終了されると, このときの連続線が外観の特徴図形として新たに加えられる. さらに , この連続線に頂点を加えて, 図 18(c)のように連続線の始点と新しく追加した頂点が同一の座標をとったとき, この連続線は閉曲線であると判断され ,新たにこの閉曲線が外観の特徴図形に加えられる. これらの入力の繰り返しにより, 外観の特徴図形が描かれる.

,

制御図形の選択 把持：
制御図形は , 標高の設定, 傾斜具合の設定といった操作の対象となり, これらの操作によって地形が生成される. この図形は, 入力された時点ではディスプレ イ
面上に描かれた 2 次元図形である. ユーザはこの形状を把持することで 3 次元操

作を行う. しかし , 1 つの生成対象領域内に制御図形は複数描かれるので , それらの中から目的の図形を 1 つ選択して操作を行う必要がある. 本システムでは , 図

19のように, この図形に対してペン先を近づけると, その位置を検出して, 図形の
25

(a)

点による外観(b)

連続線による外観(c)

閉曲線による外観

図 18 外観の特徴を表す図形
色と太さを変化させることで, 把持可能な状態であることを示す. このとき, 図形の選択は , 点であればその点上に , 連続線であればその線上に, 閉曲線であればその閉曲線より内側の領域に , ペン先を近づけることで行なわれる. 図形の選択状

態のときに, スイッチ S W 2 を押したままペン先をディスプレ イ面上の図形に押しつけることで , そのとき選択されている制御図形をペン型デバイスの先端で把持することになる.

制御図形の引っ張り上げ：
制御図形が把持されると, スイッチ SW 2 を押したままの状態でペンをディスプレイ面から離すことによって, この制御図形が引っ張り上げられるとともに , 生
成対象領域内の周囲の地形も同時に 3 次元座標に引っ張り出される. このとき図20(a)から図 20(f)のように, ペンをディスプレ イ面に対して垂直に上げ下げすることで , 生成される地形を確認しながら , 地形のモデリングが行える. この際, ペンの上下移動に伴って, 制御図形も同時にディスプレ イ面に対して垂直に上下に移動するので, どのような操作を行っているかの確認が容易である.
傾斜具合の変更：
制御図形を把持している状態で , S W 2 に加えて S W 3 も同時に押すと , 傾斜具

合の入力状態となる. この状態でペンを 3 次元空間上で左右に動かすことで , 傾26

図 19 外観の特徴図形の選択

外観

(b)

操作 1

(c)

操作 2

操作 3

(e)

操作 4

(f )

操作 5

(a)

(d)

図 20 複数の制御図形の操作

27斜具合を変化させることができる. このとき, 図 21(a)から図 21(d)のように , ペ

ンを左に移動させたときは, 鋭く尖った形状に変形し , ペンを右に移動させたときは , 逆に釣り鐘状の膨らんだ形状に変形する. この際, 図 22のように, ペンの移動

(a)

状態 1

(b)

状態 2

(c)

状態 3

(d)

状態 4

図 21 斜面の傾斜具合の操作に伴って, 形状の奥に入力値の大きさを示したスクロールバーが表示され , 入力値を確認することができる.

図 22 傾斜具合のバーによる表示

28

連続直線の制御図形による操作：
複数の制御点の集合として連続線を用いることで, 効率良く操作が行なえる. 連

続した直線による制御図形が図 23(a)のように描かれたとき, この線上のいずれかの地点にペン方デバイスのペン先を近づけ, 選択状態にあるときにスイッチ S W 2

を押しながらディスプレ イ面上の図形を触れることで, この形状を把持することができる. 次に , 図 23(b)のように , この形状を把持したままディスプレ イ面に垂直にペンを上下に移動させることで, この連続線による制御形状によって地形が引っ張り上げられ , 図 23(c)のような入力制御線と同じ形の山頂を持った地形が生成される. さらに , この形状の傾斜具合を調節することで , 23(d)のような形状に変形させることができる.

閉曲線の制御図形による操作：
閉曲線による制御図形が図 24(a)のように描かれたとき , この境界線より内側のいずれかの地点にペン方デバイスのペン先を近づけ , 選択状態にあるときにス
イッチ SW 2 を押しながらディスプレ イ面上の図形を触れることで , この形状を把持することができる. 次に, この形状を把持したままペンをディスプレ イ面に垂直に上下に移動させることで , この閉曲線によって囲まれた領域面による地形が引っ張り上げられ , 図 24(b)のように閉曲線の領域と同形状の台を持った地形が生成される. 閉曲線による制御図形の境界は地形図における等高線と同様に同一の標高であるので, この閉曲線図形の操作は , 等高線の操作と見立てることができる. さらに , この形状の傾斜具合を調節することで , 斜面の形状を自由に変化させることができる.

3.2.2 基本操作を応用した地形モデリング方法
3.2.1節において, 生成対象領域に対して制御図形の個数が 1 つのときの地形のモデリング方法を示した . これに対して , 1 つの生成対象領域内に対して複数の制御図形を組み合わせたり, 階層的に生成対象領域を配置することよって, 多様な地
形モデリングが可能である. 以下で, これらの方法によるモデリングを示す.
29

(a)

制御図形の描画

(c)

(b)

生成地形

図形の引っ張り上げ(d)

傾斜具合の調節図 23 連続線の制御図形の操作(a)

制御図形の描画(b)

生成地形

図 24 閉曲線による制御図形の操作

30

複数の制御図形を扱ったモデリング：
提案するモデリング法では , 1 つの生成領域に対して , 複数の制御図形を描くことで , 様々な形状を生成することが可能である. 例えば , 図 25(a)のように左から順に, 点, 連続線, 点を制御図形と配置された外観の特徴に対して , 引っ張り上げ ,傾斜具合の調節を行うことで , 図 25(b)から図 25(e)に示すような様々な地形を生成可能である.
図25(b)： 左と右の制御点を大きく, 中央の連続線による制御図形を中程度引っ張り上げて生成した地形である. なお, 傾斜具合はそれぞれ変更しないままである.
図25(c)： 左と右の制御点を小さく, 中央の連続線による制御図形を大きく引っ張り上げて生成した地形である. なお, 傾斜具合はそれぞれ変更しないままである.
図25(d)： 左と中央の制御図形を小さく, 右の点による制御図形を大きく引っ張
り上げて生成した地形である. また, 左と右の制御図形の傾斜具合を変更し ,やや外側に膨らんだ地形を生成した.
図25(d)： 全ての制御図形を中程度引っ張り上げ , 傾斜具合を変更させて鋭く尖った地形を生成した.

階層構造を用いた地形生成：
提案するモデリングシステムでは , 閉曲線を, 制御図形と生成対象領域の両方の機能を持った外観の特徴図形として定義することで, この閉曲線によって地形を階層的に表すことができる. 階層的に地形を定義することで , 図 27(a)のように,閉曲線より内側の地形と外側の地形を別々に制御することが可能となる.

階層構造を利用して , 図 27(a)に示される入力状態から , 図 27(b)に示される生成結果をモデリングした . このように , 階層構造を用いたモデリング法によって,変化に富んだ形状を容易に生成できる.

31

(a)

制御図形の形状(b)

モデリング例 1(c)モデリング例 2(d)モデリング例 3(e)モデリング例 4

図 25 複数の制御図形の操作

32

上の階層

下の階層

図 26 地形の階層構造による制御

4. 地形モデリング操作に対する地形生成法
前章で示したように , 提案する地形モデリングシステムでは, 外観の特徴図形
 特徴図形を引っ張り上げた標高
 斜面の傾斜具合の 3 つの入力によって 3 次元地形の形状を定義する. 以下で, 本システムで扱う
地形データについて説明し , 各操作に対する 3 次元地形を生成するための処理を示す.

4.1 本システムで扱う地形データと地形生成の処理
本システムにおける地形データは , 図 28で示すように , 地表をメッシュで区切り, その格子に標高値を格納することによって表す. このとき, 格子上の座標を x,

33

(a)

外観の特徴の描画

(b)

生成地形

図 27 階層構造を持った地形の生成

34

y

3
2
1
x
0

1

2

3

4

5

図 28 格子状の地形データ
yで表すと, 格子の標高値は h(x; y ) で表される. 本システムでは , 地形生成のための全てのデータをこの地形データと同等の格子で表現し , この格子のデータを変更することで, 地形の形状モデリングを行う.

図 29に処理の流れを示す. 本システムでは , ユーザによって入力された , 生成対

象領域と制御図形, 制御図形の標高, 斜面の傾斜具合を用いて, 目的とする地形を生成する. 地形生成の処理ではまず, 生成対象領域の境界と制御図形の描かれた座標によって, 制御図形の引っ張り上げ操作時に生成対象領域内の地形が引っ張り上げられる標高の比率を, 重みマップとして表す. 次に , この重みマップを利用して , 制御図形の引っ張り上げ操作, 斜面の傾斜具合の操作による, 生成領域内の地形の標高を算出する. 最後に , 生成された地形データの格子に対しての三角パッ

チを張り合わせによって, ポリゴンモデルによる 3 次元地形が生成される. 以下に , それぞれの処理の詳細を示す.

生成対象領域, 制御図形の座標は , 格子で近似して表す. 例えば , 図 30では , 制御

図形は, (1; 2) に近似され , 生成対象領域は, (0; 2); (1; 1); (1; 2); (2; 1); (2; 2); (3; 2)の各格子に近似される. このデータを用いて, 生成対象領域内の各格子の標高を,制御図形が引っ張り上げられた標高に応じてどのような割合いで与えるのかを ,重みマップによって示す. 以下では内容を簡単にするため, 制御図形を制御点に

35

制御図形

生成対象領域重みマップ

斜面の傾斜具合

制御図形の標高

生成地形
図 29 地形生成のための処理の流れ

3
制御図形
2
1
生成対象領域
0

1

2

3

4

5

図 30 生成対象領域と制御点の xy 座標の入力

36限定して説明し , 後で連続線や閉曲線の制御図形の場合について説明する.

重みマップに格納する各格子の重み w (i; j ) は , 制御点の xy 座標と生成対象領域の境界からの 4 近傍距離を用い, 図 31のように , 制御点の xy 座標からの距離を( ), 生成対象領域からの距離を ( ) とすると, 次式 1によって表される.
(1)( ) = ( ( ) (+ ) ( ))ここで , 制御点からの距離は図 32(a)のように表され , 生成領域の境界からの距離

dp i; jdf i; jdf i; jw i; jdf i; jdp i; jw

df

dp

図 31 生成対象領域の境界と制御点との距離の比による重み付けは図 32(b)のように表される. これによって生成された重みマップを用いて, 制御
点の標高値と傾斜具合による地形データの生成処理を行う.

各格子の標高 h(w ) は , 制御点の標高 H ( 0), その格子の持つ重み値 w (0 w 1), 傾斜係数 s による関数式 (2) によって求める.

8
>>
<
( )=>
>:

H

0 (H (1 0 w )) ((1 0 w ))s

s

0

f w

Hw

( ) 0s
w

s <

37

0

(2)

3

2

3

4

5

4

3

2

1

2

3

4

4

3

2

1

0

1

2

3

5

4

3

2

1

2

3

4

5

4

3

2

3

4

5

4

3

4

5

5

4

5

6

(a)

0

0

0

0

0

0

0

1

1

1

1

0

0

1

1

2

2

2

1

0

0

1

2

3

3

2

1

0

0

1

2

2

1

0

0

1

1

1

0

0

0

0

0

制御点からの距離(b)

生成領域の境界からの距離

図 32 距離マップ
この関数をグラフで表したものが図 33となる. 図 33では , 中心の直線が基準値( = 0) の時の関数で, それより上方の曲線は 0 のときに得られる関数, 下方の曲線は  0 のときに得られる関数となる. このとき選ばれた傾斜関数に従って, 各重み値に対する標高が決まる. なお, はユーザ操作によって与えられ , 0 を基準として操作方向と操作量に応じて 01 から 1 の値を取る. 生成領域内の全ての地形データの格子の標高値を, 式 (2) の適用によって求められた標高値で更新することで, 新たな地形が生成される.
s

s <

s

s

4.2 複数の制御図形を利用した地形生成
各生成対象領域に対して , 地形の生成を制御する制御図形は複数個用意できる.

制御点を複数配置することによって, より複雑な地形の生成が可能となる. 以下に , 複数の制御図形の配置による地形の生成に関して説明する.

本生成法では , 各制御図形に対して求めた地形データを用いて, 制御図形が複数個描かれた地形の地形データを求める. このとき, 複数の制御図形に対してそれぞれの地形データが生成され , これらの地形データを各制御図形からの距離の比率に応じて , 地形データを合成する. ここでは , 説明を簡単にするため, 2 つの制御点によって生成された地形の合成を考える. 図 34のように, 2 つの制御点を

38

f(w)
H
s=-10
s=-3

8H/10

s=-1
6H/10

s=0

4H/10

s=1
s=3

2H/10

s=10
w

0
0

0.2

0.4

0.6

0.8

1

図 33 傾斜関数, 1 とし , この 2 つによって生成された地形の合成によって地点 の標高を求めることにする. これら 2 つの制御点のうち, 0 によって得られる標高を 0 , 1
によって得られる標高を 1 とし , 0 と との間の距離を 0 , 1 と との間の距離を 1 とすると, 2 つの地形を合成して得られる における標高 は次式によって求まる.
11 0= 01 1+(3)0+ 1
この処理を全ての地形データの格子に対して行ない生成地形を求める.
このように, 各制御点によって生成された地形のデータを, 合成対象地点からのそれぞれ距離による比に基づいて合成する. 制御点が 3 つ以上の場合も同様に,対象地点と制御点の距離の比に応じた合成を行う.
C0

C

Q

C

h

C

h

Q

d

d

Q

h

d

h

d

d

d

39

h

C

Q
h

C

h0
h

h1
d1
Q
C1
d0

C0

図 34 2 つの制御点によって生成された地形データの合成

4.3 各制御図形における地形生成
本節では , 点の制御図形に加えて , 連続線や閉曲線による制御図形による地形

生成について説明する. 本地形生成法では , 4.1節で示したように , 生成対象領域

内に対し , 制御図形からの距離と, 生成対象領域の境界との距離によって生成される, 重みマップを用いる. 重みマップを生成した後の処理は , 制御図形の種類に関わらず同一の処理によって地形を生成するので, 重みマップの生成法を示すこと

によって, 点, 連続線, 閉曲線の各制御図形を用いたときの処理を示す. ある地点の重み値は, 制御図形からの距離と , 生成対象領域の境界からの距離によって求めるので, これら 2 つの距離を生成領域内に対して求めた距離マップを作成する.

まず, 制御図形からの距離マップを作成する. このデータは, 重みマップと同様の格子データを用い, 各制御図形からの 4 近傍距離によって表す. この制御図形

からの距離マップは以下の手順で作成される.

(1) 制御図形が近似される格子に, 初期値として 0 を格納する. このとき, 制御
40

図形が点であれば格子の 1 点が , 連続線であればその連続線が近似される全ての格子に対して初期値 0 が与えられる. また制御図形が閉曲線であった場
合は , この閉曲線上とその内側に存在する領域が近似される全ての格子に ,同様に初期値 0 が与えられる.

(2) 入力値の格納されている格子に隣接する格子が , まだデータを得られていな
い場合は, その隣接する格子の値に 1 を加えた値をこの格子のデータとする.
(3) (2) の作業を全格子に対して, データの変更が無くなるまで続ける.
(4) (2) の処理によるデータの更新が終了したとき, 各格子に保持されている値が , 入力された制御図形からの 4 近傍距離となる.
このとき生成された制御図形の距離マップは , 連続線の場合は図 35(a)のように ,閉曲線の場合は, 図 35(b)のように表される.

3

3

2

3

4

3

2

2

1

2

3

2

2

2

3

4

2

1

1

1

2

3

4

3

2

1

1

0

1

2

3

2

1

0

0

0

1

2

3

2

1

0

0

0

1

2

3

2

1

0

0

0

1

2

3

2

1

1

1

2

3

2

1

1

1

2

3

2

2

2

3

3

2

2

2

3

3

3

3

4

3

3

3

4

(a)

連続線からの距離(b)閉曲線からの距離

図 35 制御図形からの距離
次に , 生成対象領域の境界からの距離マップも同様に , 重みマップと同様の格子データを用い, 生成対象領域の境界からの 4 近傍距離によって表す. 生成対象領域の境界からの距離マップは以下の手順で作成される.

41

(1) 生成対象領域の内側に近似される全ての格子に, 初期値として 0 を格納す
る. この値の保持によって, 生成対象領域内の格子の識別を行う.
(2) 入力値の格納されている格子の 4 近傍に隣接する全ての格子が, 同一の値を持っていたとき, 現在注目している格子は , 周囲の格子よりもより領域の内側に存在するデータであると判断し , 周囲の値に 1 を加えた値に更新する.
(3) (2) の作業を全格子に対して, データの変更が無くなるまで続ける.
(4) (2) の処理によるデータの更新が終了したとき, 各格子に保持されている値が , 入力された生成対象領域の 4 近傍距離となる.
制御図形からの距離マップの ij 座標における値を dp(i; j ), 生成対象領域からの距

離マップの ij 座標における値を df (i; j ) とすると, 4.1節において説明した式 1によって, 各格子の重みマップが得られる.

4.4 階層構造による地形生成と傾斜具合の調整
前章で示したように , 提案するモデリングシステムでは , 複数の閉曲線の特徴

図形によって, 地形を階層的に定義することができる. これによって, 図 36のように複数の階層構造を持った形状が生成されるが , このときの各々の傾斜具合が接合面で連属性を持っていないために , 急に傾斜具合の変化した地形として生成されてしまう.

そこで , 傾斜係数 s を , 他の階層の傾斜具合の影響を与えた連続的な変数として定義することで , 斜面の傾斜具合が徐々に変化した地形を生成する. 斜面の形
状は , 傾斜係数 s によって, 4.1節で説明した式 2によって与えられている. この式によって生成される斜面の形状は, 図 33で表されるグラフの形状のように , s = 0

に関して対象な形状となる. そのため , 階層構造によって表された地形において,下の階層が傾斜係数 s による傾斜具合によって表されていたとき , この上に位置する階層に対して 0s の傾斜係数による斜面を連続させると連続的な斜面を生成できる. そこで, 上の階層の斜面を表すのに利用する傾斜係数は , この下の階層の傾斜係数に 01 を掛け合わせた値を生成対象領域の境界付近の傾斜係数に , 上の

42

不連続

図 36 傾斜具合の不連続な地形の階層構造
階層の制御図形に近接する形状の傾斜係数を入力された傾斜係数として , その間の値を重み値に対する線形補間によって得た値とすることによって, 次式 4を定義する.

s= ( 1 + 0) 0 0
s

s

w

s

(4)

このとき, s1 はこの階層の斜面の形状を定義するために入力された傾斜係数であり, s0 は , 下の階層のために入力された傾斜係数, w は生成される斜面の重み値である. この処理によって図 37のように, 斜面が滑らかに変化した地形が生成さ

れる.

43

s1
連続

-s0
s0

図 37 階層構造による斜面の滑らかな地形

5. 検証と考察
本研究では , 3 章で提案したモデリング操作に対し , 4 章で述べた処理によって地形生成を実現した. 以下では, 本モデリングシステムで実現した地形生成が , ユー

ザの求める任意形状を効率良く生成できるかを検証する. 前述したように , 任意
形状のモデリングを行うには,(1) 多様な地形を生成可能である(2) ユーザの意志に沿った地形生成ができる(3) 生成された地形の 3 次元形状を即座に確認できる(4) 少ない操作で目的とする地形を生成できる(5) 写実性の高い地形を生成できるといった要求を全て満たすことが重要である. 本章では , 本提案システムを用いて生成した地形の例によって容易に多様な地形を生成可能であることを示し , ユー

ザの意志に沿った地形生成が可能であることを実験によって検証した結果を示す.
また, 提案したモデリングシステムについて考察し , 今後改善すべき課題を提示

する.

44

5.1 モデリング例
本提案手法によって, 様々な地形をモデリングした例を図 38, 39に示す.

これらの各段の左図と右図は同一の地形を別の視点から見た図である. これらの例

より, 本モデリングシステムでは様々な地形をモデリング可能であることが示される.

また, 各地形のモデリングに要した時間を表 1に示し , これらのモデリング例に対して行われたユーザの操作を表 2に示す. これらの結果より, 本提案モデリン
表 1 各例のモデリングに要した時間
モデリングに要した時間 (秒)

例1

例2

例3

例4

210 60 150 60

例5

180

表 2 各例のモデリングに対して行った操作入力された外観の特徴図形 (個)引っ張り上げ操作の回数 (回)傾斜具合の調整の回数 (回)

例1

9
8
7

例2

3
2
1

例3

9
6
3

例4

2
2
2

例5

11
11
7

グシステムでは , 短時間かつ少量の操作で , 多様な地形のモデリングが可能である
ことが確認される.

5.2 任意地形生成の検証
図 40(b)に , 図 40(a)の三宅島の写真 (ASIA AIR SURVEY：" 三宅島 2000 年噴火",http://www.ajiko.co.jp/topics/ct/miyake/miyake.htm より転載) をモデルに ,提案モデリングシステムにおいて生成した地形を示す. この結果, 大体の外観は正しく生成できていると考えられるが , 実在地形を生成地形で忠実に再現できたとは言い難い. この理由として, 以下の問題が挙げられる.

45

(a)

モデリング例 1-1

(c)

(e)

(b)

モデリング例 2-1(d)モデリング例 3-1

モデリング例 1-2

モデリング例 2-2(f )モデリング例 3-2

図 38 モデリング例 1 〜 3

46

(a)

(c)

モデリング例 4-1(b)モデリング例 5-1

モデリング例 4-2(d)

図 39 モデリング例 4 〜 547

モデリング例 5-2

(a)実際の三宅島(b)

生成した三宅島

図 40 三宅島

 写真 1 枚から得られる情報では, 3 次元形状を把握できないので, 地形のモ
デリングが困難である.

 生成されたモデルは実在地形に比べて写実性が低く, 特別な彩色が施されているため 2 つのモデルに差異を感じる.

そこで , これらの問題を取り除き, 本システムでユーザの意志に従ったモデリングが可能であるかを検証する実験を行った. 本実験は , 本システムにおける地形モ

デリングの初心者が , 本システムであらかじめ生成されたある地形を観察し , そのモデルに忠実にモデリングを行えるかを検証する. 本実験では , ユーザに対し ,モデリングの対象とする地形の情報を多く与えるために , 本システムで視点を自由に動かしながらモデリング対象の地形を観察, ならびに 4 方向からの図をモデリング操作時に提示する. また, モデルの写実性を考慮する必要がないように , 本

システムで生成された地形をユーザに対してのモデリング対象とした. それでは ,本実験の詳細を説明する. 以下が本実験の条件となる.

被験者 あらかじめ本システムにおけるモデリング方法を 30 分程度, 学習と練習を行なった, 本システムの初心者見本とする地形 本システムにおけるモデリングの熟練者がモデリングした地形

48

これらの条件下で, 以下の手順で実験を行なった.

(1) あらかじめ, 被験者には本システムで, 見本とする地形を十分に眺めてもらう(2) 被験者は, 見本とする地形の上面図 (図 41(a)), 正面図 (図 41(b)), 側面図 (図41(c), 41(d)) を見ながら, 本モデリングシステムを用いて地形をモデリングする.
(3) モデリングに要した時間を測り, 生成された地形を評価する.
以上の実験をユーザ A とユーザ B の 2 人に対して行なった. 図 41を見本として, ユーザ A によって生成された地形を図 42に , ユーザ B によって生成された地形を図 43に示す. なお, ユーザ A がモデリングに要した時間は 150 秒, ユーザ B

がモデリングに要した時間は 270 秒である.

この結果生成された地形を確認した結果, やや精度が欠けているが , 大きな特徴をもった形状は , 再現できており, ほぼユーザの思い通りの地形生成を行なえたと言える. この実験結果より, 本システムでは, ユーザの意志に従ったモデリングが可能であると言える.

5.3 考察以上のモデリング結果, 実験結果によって, 提案システムにおいて,

 多様な地形を生成可能である
 ユーザの意志に沿った地形生成ができる
 少ない操作で目的とする地形を生成できるであることが言えた. また, 提案システムでは , 視点追従可能な両眼立体視によって, 生成された地形の 3 次元形状を確認可能であり, 対話的に地形生成を行なえることから , 生成された地形の 3 次元形状を即座に確認できることも言える. また, 写実性に関しては , 本研究では 2.2節に示したように , 今回は考慮していない

49

(a)

上面図

(b)

正面図

(c)

側面図 1

(d)

側面図 2

図 41 見本とする地形

(a)

上面図

(b)

正面図

(c)

側面図 1

(d)

側面図 2

図 42 ユーザ A がモデリングした地形

(a)

上面図

(b)

正面図

(c)

図 43 ユーザ B がモデリングした地形

50

側面図 1

(d)

側面図 2

が , フラクタルやテクスチャによって写実性を高めることは可能であると考えられる. よって, 本研究で提案した地形モデリングでは , 精度の高い任意形状の生成や, 写実性の付加に関して課題が残るが , 目標とする地形モデリングをほぼ達成したと言える.

しかしながら , モデリング作業に関してユーザより以下の不満点が挙がっている.

 地形を上から見下ろした状態では生成地形の標高の判断が困難である.
 地形の外観の特徴図形を変更するには削除して描き直すしかなく, 操作が煩わしい.

 作業範囲が狭いために, 思い描いた地形を生成できない.
そこで, これらの改善を今後の課題として , 解決法を以下で考える.
視点位置に関する考察
本システムでは , 傾斜ディスプレ イのディスプレ イ面を地表面として , 地形モ

デリングを行なっている. これは , 地表面とディスプレ イ面を一致させることで ,容易に地形の外観の描画を行なえるようにしているためであるが , これによって,制御図形の引っ張り上げ時に生成される地形の標高の判断が困難になるという問題がある. 図 44(a)が提案システムにおけるモデリング時のユーザの視点であるが , この視点では, 地形の上端と下端が狭い角度内に表されるため, 正確な判断が困難である. そこで, 図 44(b)のような視点で地形の引っ張り上げを行なえば , 生成される地形の標高の判断は容易になると思われる. 一旦, 地形を引っ張り上げ

始めれば , 地平面とディスプレ イ面による 2 次元平面は一致している必要がない

ので , 引っ張り上げ操作に応じて地平面を傾けることによって, この問題は解決できるものと考えられる.

特徴図形の変更に関する考察
本提案システムでは , 一度描いた特徴図形は削除するしか変更する手段がない.

しかし , それでは任意形状を生成するために何度も特徴図形を描き直す必要があ

51

(a)

提案システムの視点(b)

横からの視点

図 44 視点の変更による標高の判断る場合では , 非常に効率が悪い. そこで , 一度描画された外観の特徴図形の点の自由な移動, 変形を可能にし , それに伴った地形生成を行なう必要がある. この際,
本モデリング法では , 特徴図形の変化に伴い, 重みマップを求め直す必要があるの

で , 今まで説明してきた処理よりも, 多くの処理が必要となる. そのため , 処理を高速化することで, これに対応する必要がある.
作業範囲の拡大に関する考察

本提案システムでは , 現在一度にディスプレ イ上に描けるだけの地形しか生成できないが , ディスプレイの大きさの制約があるために, 広大な地形のモデリングは不可能である. そこで, ユーザが仮想空間内を自由に移動したり, ズームを自由に変更することで, より容易に地形のモデリングが行なえるものと考えられる.

52

6. おわりに
本論文では , 効率の良い, 任意地形のモデリングを達成するための必要条件として, 1) 多様な地形の生成が可能である, 2) ユーザの意志に沿った地形生成ができる, 3) 生成された地形の 3 次元形状を即座に確認できる, 4) 少ない操作で目的とする地形を生成できる, という 4 点を挙げ , これらの要求を満たす地形モデリ

ングシステムを提案した.

本研究では , これらの要求を満たすために , 傾斜型ディスプレイによる没入型仮想環境内での, 3 次元操作可能なペン型のデバイスを用いた地形モデリングシス

テムを実装した. このシステムでは , ユーザは地形の外観をディスプレ イ面上に描き, その描いた図形を 3 次元空間に直接引っ張り上げるといった, 容易な操作で多様な地形モデリングを行なうことができる. 外観は点や連続線, 閉曲線による特徴図形として描かれ , これらの組み合わせと, 引っ張り上げ操作や傾斜具合の操作によって, 多様な地形のモデリングが可能である.

また, 本提案システムの有効性を示すために, 様々な地形のモデリング , 検証実

験を行なった. この結果, 本提案システムは , 任意地形のモデリングにとって要求される項目を満たしていることが確認でき , 効率の良い任意地形のモデリングを提供するモデリングシステムであることが言えた.

最後に , まだ本試作システムは改良の余地があるため, 今後の改善の方針を示

した.

53

謝辞
本研究を遂行するにあたり, 数多くの皆様に御協力を頂きました. ここに , その謝意を表します.

ソフトウェア基礎講座 横矢直和 教授には, 本研究の前課程を通じて , 熱意ある御指導, 御鞭撻を賜わり, 心より厚く感謝致します.

像情報処理学講座 千原國宏 教授には有益な御助言を賜わり, 厚く御礼を申し上げます.

ソフトウェア基礎講座 竹村治雄 助教授には , 本研究の前課程を通じて , 懇切丁

寧なる御指導, 御鞭撻を賜わり, 深く心より御礼申し上げます.

ソフトウェア基礎講座 岩佐英彦 元助手, ならびに山澤誠一 助手には日頃より有益な御指導, 御助言を頂き, 深く感謝致します.

ソフトウェア基礎講座 松宮雅俊氏, 佐藤哲氏, 神原誠之氏, 町田貴史氏, ならびにソフトウェア基礎講座の学生諸氏には , 物心両面において常に温かい御支援を頂くと共に, 親身に立った御助言を頂き深く御礼申し上げます.

最後に , 日頃より温かく支えてくださったソフトウェア基礎講座 元事務補佐員

福永博美 女史, 事務補佐員 北川知代 女史に心より感謝致します.
皆様, 本当にありがとうございました.

54

参考文献

[1] 宮腰実, 野尻琢也：\国土地理院の数値地図整備とメタデータ整備", ESTRELA,No. 59, pp. 16-21, February 1999.
[2] Ming Wan, Huamin Qu, Arie Kaufman：\Virtual Flythrough over a VoxelBased Terrain," Proc. IEEE Virtual Reality '99, pp. 53-60, 1999.
[3] 千葉則茂：\自然の CG" 技術の応用化時代", 情報処理学会誌, Vol. 41, No. 4,
pp. 375-381, 2000.
[4] 平井健三郎：\3D グラフィクスを作る Shade Debut による三次元 CG 入門 第26 回：自然の景観を作る 1", パーソナルコンピュータ情報誌 ピーシーユー
ザー, No. 105, July 2000.
[5] 平井健三郎：\3D グラフィクスを作る Shade Debut による三次元 CG 入門 第27 回：自然の景観を作る 2", パーソナルコンピュータ情報誌 ピーシーユー
ザー, No. 106, August 2000.
[6] F.Kenton Musgrave, Craig E. Kolb, Robert S. Mace：\The Synthesis andRendering of Eroded Fractal Terrains," Proc. ACM SIGGRAPH '89, Vol.23,
No.3, pp.41-50, 1989.
[7] Richard Szeliski, Demetri Terzopoulos：\From Splines to Fractals," Proc.
ACM SIGGRAPH '89, Vol.23, No.3, pp.51-60, 1989.
[8] Przemyslaw Prusinkiewicz, Mark Hammel：\A Fractal Model of Mountains
with Rivers," Proc. Graphics Interface '93, pp.174-180, 1993.
[9] Robert Marshall, Rodger Wilson, Wayne Carlson：\Procedure Models for
Generating Three-Dimentional Terrain," Proc. ACM SIGGRAPH `80, pp.
154-162, 1980.
[10] 安生健一, 武内良三, 佐藤武：\自然景観エディタ", 情処学研報, Vol. 93, No.
92, pp 61-68, 1993.
55

[11] 三沢雅一, 千葉則茂, 斎藤伸自：\自然の画像生成 -山の手続き的形状定義法",
情報処理学会論文誌, Vol.28, No.1, pp.35-45, 1987.
[12] \選択肢広がる景観シュミレータ", NIKKEI COMPUTER GRAPHICS, January 1999.
[13] Wolfgang Krueger, Bernd Froehlich：\The Responsive Workbench," Proc.
IEEE Conputer Graphics and Applications, 1994.
[14] Doug A, Bowman, Larry F. Hodges：\User Interface Constraints for Immersive Virtual Environment Applications," Graphics, Visualization and Usability Center Technical Report, GIT-GVU-95-26, 1995.
[15] 清川清, 竹村治雄, 片山善章, 岩佐英彦, 横矢直和：\両手操作を用いた仮想物
体モデラ VLEGO", 電子情報通信学会論文誌 (A), Vol.J80-A, No.9, pp.15171526, 1997.
[16] Ryugo Kijima, Kimiko Shirakawa, Michitaka Hirose, Kenji Nihei：\Virtual
Sand Box:Development of an Application of Virtual Environments for Clinical Medicine," PRESENCE, Vol. 3, No. 1, pp. 45-59, 1994.
[17] 森本龍太郎, 松宮雅俊, 竹村治雄, 横矢直和：\没入型自然景観モデラ", 日本
バーチャルリアリティ学会第 5 回大会論文集, pp.139-140, 2000.
[18] Andrew S.Forsberg, Joseph J, LaViola Jr., Robert C. Zeleznik：\ErgoDesk: A
Framework for Two-and Three-Dimensional Interaction at the ActiveDesk,"
Proc. 2nd International Immersive Projection Technology Workshop, 1998.
[19] 吉森勇人, 松宮雅俊, 竹村治雄, 横矢直和：\2 次元平面と 3 次元空間の組合せ
によるモデリング環境," 電子情報通信学会技術研究報告 (マルチメディア・
仮想環境基礎研究会), No. 99, Vol. 647, pp. 13-18, 2000.
[20] Carol Brooksbank：\TERRAGEN TUTORIAL,"
http://www.soft.net.uk/brooksbank/terratut/index.html, 1999.
56

[21] Hinckley, K., Rausch, R., Goble, J. C. and Kassell, N. F.：\A Survey of Design
Issues in Spatial input," Proc. ACM Sympo. on User Interface Software andTechnology, pp.213-222, 1994.
[22] Robert C. Zeleznik, Kenneth P. Herndon, Jhon F. Hughes：\SKETCH: AN
Interface for Sketching 3D Scenes," Proc. ACM SIGGRAPH `96, pp. 163-169,
1996.
[23] Takeo Igarashi, Satoshi Matsuoka, Hidehiko Tanaka：\Teddy: A Sketching
Interface for 3D Freeform Design," Proc. ACM SIGGRAPH `99, pp. 409-416,
1999.
[24] Ellis, M. A., Stroustrup, B.：\The Annotated C++ Reference Manual,"
Addison-Wesley Publishing Company, Inc, 1992.
[25] Woo, M., Neider, J., Davis, T.：\OpenGL Programming Guide Second Edition," Addison Wesley Developers Press, 1997.

57