3次元
本ページは、3次元コンピュータグラフィックス(3DCG)の制作技術と応用を体系的に学習するための教材を提供している。
- Blender:モデリング、アニメーション、マテリアル設定、Pythonスクリプト連携
- ゲームエンジン:Unreal Engine 5、Panda3Dによる3Dゲーム開発
- 3次元データ処理:点群データ、ボリュームデータ、MeshLab活用
- 3次元地図:GeoTIFF、高さマップ処理、Cesium、blender-OSM連携
- VR・AR開発:A-Frameによる没入型コンテンツ制作
WindowsおよびUbuntu環境でのインストール手順と操作方法を示し、実践的な技術習得を支援する。
公開資料は クリエイティブコモンズ 表示-非営利-継承 4.0 国際ライセンス(CC BY-NC-SA 4.0) で提供しており,事前の許可なく自由に利用できます.条件は著作者表示(BY),非営利目的のみ(NC),同一ライセンスでの再配布(SA)です.
1. 用語集、読み物・体験
- Blender の概要 [PDF],[パワーポイント]
- Panda3D の機能概要 [PDF], [パワーポイント]
- Panda3D オープンワールドゲーム [PDF], [パワーポイント]
- シミュレーションと3次元コンピューターグラフィックス [PDF], [パワーポイント]
- ply, obj ファイルビューワ(Blender, Pythonを使用)
- ゲームエンジン [PDF], [パワーポイント]
【概要】 ゲームエンジンはゲーム開発のためのフレームワークであり,多くは,3Dオブジェクト(メッシュ,カメラ,光源)と物理シミュレーションの機能を持つ.3次元オブジェクトはメッシュ,カメラ,光源などから構成され,色やx,y,z座標などの属性を持ち,3次元空間内に配置される.物理シミュレーションは衝突検出,力と運動,摩擦と反発などの物理現象を計算によって再現し,オブジェクトの動きや状態を現実世界に近い形で表現する.イベントハンドラはキーボードやマウスなどの入力イベントに対する処理である.
- 3次元地図序論 [PDF], [パワーポイント]
- 用語集
2014年3月14日, クラウドシンポジウムでの発表資料の一部(一部変更しています)
2. Blender
目次:Blender
[詳細リストを展開するには、ここをクリック]
2.(1) Blender のインストール(Windows 上)
- Blenderのインストール,メニューの日本語化,Wavefront OBJファイルのインポート(Windows上)
WindowsにおけるBlenderのインストール手順、メニューの日本語化方法、およびWavefront OBJ形式ファイルのインポート手順について解説する。
- Blender の最新版のインストール(ソースコードを使用)(Windows 上)
Windows環境において、GitやCMake、Visual Studio等の開発ツールを用い、ソースコードからBlenderの最新版をビルドしてインストールする手順を解説する。
- Blender Kit のインストール(Windows 上)
Blenderに3Dモデルやマテリアルなどの資産を簡単に検索・導入できる拡張機能「Blender Kit」のアドオンを有効化およびインストールする手順を解説する。
- Blender 2.79b のインストール(Windows 上)
Windows環境において、過去バージョンであるBlender 2.79b(.msiファイル)をダウンロードしてインストールし、メニューを日本語化する手順を解説する。
2.(2) Blender の基本操作と設定
- Blender の基本操作(立体の新規作成と配置の調整,立体の操作,カメラ視野(カメラビュー)の調整,レンダリング,マテリアル,元に戻す,やり直す)
Blenderの基本操作である立体の新規作成、配置、カメラ視野の調整、レンダリング、マテリアル設定などの手順を詳しく解説する。
- Blender の種々の操作と設定
3Dビューポートでの視点操作や編集モードの切り替え、軸固定、メッシュ細分化のほか、各種初期設定の手順を学ぶ。
- Blender のメニュー等の日本語化
インターフェースやツールチップの表示を英語から日本語に切り替えるため、プリファレンスでの言語設定手順を解説する。
2.(3) Blender のモデリングとオブジェクト操作
- Blender でオブジェクトを配置
球や円柱などの基本図形を配置し、移動・回転・拡大縮小を行う操作や、グローバル座標・ローカル座標の違いを学習する。
- Blender で,ブーリアン演算により,立体を加工
モディファイアーのブーリアン演算を用いて、直方体や円柱などの立体同士の差分による穴あけや、共通部分の抽出を行う。
2.(4) Blender のマテリアル・テクスチャ・シェーダー
- Blender でのマテリアル,スムースシェード
立体のベースカラー、粗さ、メタリック等のマテリアル設定や、滑らかな表面にするスムースシェード、透明化の手順を学ぶ。
- Blenderのマテリアルで色と透過の設定
Blenderでマテリアルの色を設定する方法と、透過による透明化の方法を説明する。
- Blender の画像テクスチャ,テクスチャ座標系
立体の表面に画像テクスチャを貼り付け、UV編集ワークスペースを用いてテクスチャの座標系やマッピング方法を確認する。
- Blender のシェーダー・エディタ(Shader Editor)
シェーダーエディタを用いたノード編集により、テクスチャ座標や表面の粗さ、バンプマップによる凹凸表現を設定する。
- Blender で,テクスチャ・ペインティング (Texture Painting) を行う
テクスチャペイントモードで立体に直接画像をペイントし、写真を元にしたテクスチャの作成や編集を行う手順を学ぶ。
2.(5) Blender のライトとレンダリング
- Blender のライト
ポイント、サン、スポット、エリアの4種類のライトの配置や設定方法と、レンダリングエンジンごとの光の表現の違いを学ぶ。
- Blender で,レンダリングを行う
EeveeやCyclesを用いたカメラ視野設定、反射やデノイズの調整を行い、高品質な画像をレンダリングする手順を解説する。
- Blender 5.2 における煙シミュレーションと Cycles 描画
- Blenderの物理ベースレンダリング(Cycles)の使用
Blenderに標準搭載された物理ベースレンダラーCyclesの使い方を説明する。
Blender 5.2 で煙のシミュレーション(Quick Smoke)を作成し,Cycles レンダラーで描画する手順を解説する。
2.(6) Physically Based Rendering(PBR)と外部レンダリング
- Blender の PBR Materials アセットのインストールと動作確認
物理ベースレンダリング(PBR)に対応したマテリアルアセットをBlenderにインストールし、リアルな質感を適用して動作確認を行う。
- Blender の PBR Materials アセット
PBR Materialsアセットを活用し、ルック開発モードで金属や非金属などのリアルな質感を立体に設定する手順を解説する。
- Wavefront Material形式ファイルにおけるマテリアルの例 [PDF], [パワーポイント]
- BlendLuxCore による物理ベースレンダリングの導入(Blender 5.2 上,Windows)
Blender 5.2上でBlendLuxCoreアドオンを使い、LuxCoreRenderによる物理ベースレンダリングを導入・実行する手順を解説する
2.(7) Blender のシミュレーション・アニメーション
クロス・物理シミュレーション
- Blender で,クロス・シミュレーション(Cloth Simulation)を行う
メッシュの細分化やセルフコリジョン、サブディビジョンサーフェスを用いて、布の自然な変形を物理シミュレーションで表現する。
- Blender で剛体(rigit body) の落下、衝突のシミュレーション
物理演算を用いたリジッドボディ(剛体)設定により、アクティブとパッシブな物体間の落下や衝突シミュレーションを作成する。
アニメーション表現
- Blender でパーティクルアニメーション
パーティクルの数や寿命、出力速度を設定し、コリジョンを用いた衝突や跳ね返りのアニメーションを作成する。
- blender のボーンとアーマチャを用いたアニメーション
アーマチャ(骨格)とボーンの追加、親子関係の設定、自動ウェイトやIKを利用したキャラクターアニメーションの基礎を学ぶ。
- Blender での動きの振り付けとアニメーション作成
複数ボーンの一括制御やスケールによる誇張表現、回転補間で生じる逆回転問題の解決法など、動きの振り付けとアニメ作成を学ぶ。
2.(8) Blender と MakeHuman による人体アニメーション
- 逆力学(MakeHuman 1.3, Blender を使用)(Windows 上)
MakeHuman 1.3とBlender 5.2 LTSを使い、MPFB2アドオンで逆力学(IK)のポーズ付けを行う手順を解説する。
- MakeHuman 1.3 のインストールと機能、Blender との連携(3D人体アニメーション)(Windows 上)
Windows上でのMakeHuman 1.3のインストール手順と主な機能、BlenderのMPFB2アドオンとの連携方法を解説する。
- MakeHumanとBlenderで人体アニメーション(MakeHuman 1.3とBlenderを使用)
CMUモーションキャプチャのBVHデータを使い、MakeHumanとBlenderで人体アニメーションを作成する手順を解説する。
- MakeHuman と Blender の体験例
MakeHumanでリグ付き人体モデルをBlenderに配置し変形させる体験制作を紹介する。
- cgspeed の BVHplay を使ってみる
モーションキャプチャデータであるBVHファイルの入手方法と、それを表示・再生するためのBVHplayの導入・操作を解説する。
2.(9) Blender のファイルのインポート,エクスポート
- Blender で Wavefront OBJ 形式,STL 形式ファイルのインポート,エクスポート
Wavefront OBJ形式やSTL形式の3DモデルデータをBlenderでインポートおよびエクスポートする手順を学ぶ。
- Blender で FBX 形式ファイルのエクスポート
業界標準の3DフォーマットであるFBX形式について、テクスチャファイルのパス設定を含めたエクスポートの手順を解説する。
2.(10) Blender の Python スクリプトとライブラリ
- Blender で Python スクリプトを実行
Blender内でPythonスクリプトを実行し、モデリングや各種操作を自動化するための基本的な使い方を解説する。
- Blender スクリプト例
Blender スクリプト例の紹介。
- Blender 内蔵の Python で Pythonのライブラリのインストール
Blender内蔵のPython環境に対して、pipやaptコマンドを利用して外部のPythonライブラリをインストールする手順を解説。
- Blenderに組み込まれたPythonへのGDALインストール手順
BlenderのPython環境に地理空間データ処理ライブラリであるGDALをインストールし、利用可能にする手順を解説する。
2.(11) Blender のアドオンと関連ソフトウェア
AI ツール
- Blender アドオン「Video Depth AI」のガイド
動画から深度マップを抽出し、3Dディスプレイスメントアニメーションを生成できるアドオン「Video Depth AI」の導入と使い方。
3D Gaussian Splatting
- KIRI Engine 3DGS Render 3.0 インストール・利用ガイド
3D Gaussian Splatting(3DGS)形式のPLYデータをBlenderでインポートし、レンダリングするためのアドオン導入手順を解説。
OpenStreetMap・GIS 連携アドオン
- BlenderのアドオンBlenderGISのインストール
地理情報や標高データをBlenderに取り込み、実際の地形に基づいた3D環境を構築できるBlenderGISアドオンの導入手順を解説。
- Blenderとblender-OSMを使用した3次元地図作成のガイド [HTML],[パワーポイント],[PDF]
3次元地図は実世界を立体的に可視化する技術であり,BlenderとBlenderGISでOpenStreetMapを活用した都市モデルを生成する.
- Blender に標高,建物などのデータをインポート(Blender GIS を使用)
BlenderGISアドオンを使用し、Google Satelliteの航空写真やOpenTopographyの標高データ、OSMの建物データをBlenderにインポートして3D地図を作成する手順。
- BlenderGIS を用いて Blender に GeoTIFF 形式の高さマップ (height map) をインポート
BlenderGISを用いて、位置情報付きのGeoTIFF形式の高さマップ(標高データ)をBlenderにインポートし、地形ポリゴンとして立体的に表示・強調する手順。
- Blender のアドオン,シティ・ジェネレーターをインストーし,使ってみる(Windows 上) [ワードファイル]
3. 3 次元ゲームエンジン Unreal Engine
[詳細リストを展開するには、ここをクリック]
3.(1) Unreal Engine 5 インストール、各種機能
- Windows環境でのEpic Games LauncherとUnreal Engine 5のインストール手順
Windows環境でEpic Games LauncherとUnreal Engine 5をインストールし動作確認する手順を解説する
- ゲームエンジン Unreal Engine 5 の基本機能
Unreal Engine 5のレベル階層・カメラ・ライティング・シャドウ等の基本機能と3D開発の基礎操作を解説する
- ゲームエンジン Unreal Engine 5:視覚効果・物理演算・アニメーション・シーン管理の実装ガイド
Unreal Engine 5のブループリントを用いた衝突判定・物理・アニメーション・サウンド・GUI等8つの基本技術を解説する
- UE 5.8でオープンワールドマップを作成
PCG・Nanite Foliage・Substrate等を用いてオープンワールドマップを作る演習集
3.(2) Unreal Engine 入門
【概要】 Unreal Engineは高度な3次元ゲームエンジンで,C++とビジュアルプログラミングのブループリントで開発できる.ブループリントはコードなしでノード接続によりゲームロジックを構築する.アクターはゲーム内の基本オブジェクトで,簡単に操作できる.物理シミュレーションにより,重力や衝突などのリアルな挙動を実現できる.
- ue-1. Unreal Engine 5 のインストールと基本機能 [PDF], [パワーポイント], [HTML]
Unreal Engine 5のインストール手順から、プロジェクトの作成、エディタの基本操作などの初期設定について解説する。
YouTube 動画: https://www.youtube.com/watch?v=GHThpAbfteA
- ue-2. Unreal Engine 5を用いたC++プロジェクト作成ガイド [PDF], [パワーポイント], [HTML]
C++を用いたUnreal Engine 5のプロジェクトを新規作成し、ソースコードを利用してゲームを開発するための基本手順を学ぶ。
- ue-3. ブループリント・プロジェクトの新規作成 [PDF], [パワーポイント], [HTML]
プログラミングを行わずにノードベースでロジックを組むブループリント・プロジェクトの新規作成手順を解説する。
YouTube 動画: https://www.youtube.com/watch?v=KM0DYyZiydk
- ue-4. アクタの配置(移動,回転,拡大縮小)と複製 [PDF], [パワーポイント], [HTML]
ゲーム内の基本要素であるアクタをレベル上に配置し、移動・回転・拡大縮小や複製を行うエディタの基本操作を学ぶ。
- ue-5. Unreal Engine 5におけるレベルブループリントの基本操作 [PDF], [パワーポイント], [HTML]
特定のレベル(マップ)専用のロジックを構築するための、レベルブループリントを開き、基本的なノードを配置する操作を解説。
- ue-6. アクターの追加,物理シミュレーション [PDF], [パワーポイント], [HTML]
レベルにアクターを追加し、重力や衝突といったリアルな動きを与える物理シミュレーション(Simulate Physics)の設定を学ぶ。
- ue-7. Unreal Engine 5で Simple HMD プラグインを用いた VR サイドバイサイド表示 [PDF], [パワーポイント], [HTML]
Simple HMDプラグインを有効化し、Unreal Engine 5の画面をVRデバイス向けのサイドバイサイド表示にする手順を解説する。
- ue-8. Unreal Engine の中間まとめ [PDF], [パワーポイント], [HTML]
ここまでの学習内容を振り返り、Unreal Engineの基本概念であるアクター、ブループリント、物理演算の知識を中間まとめとして復習する。
- ue-9. Unreal Engine 5 におけるアセットの活用 [PDF], [パワーポイント], [HTML]
外部から3Dモデルやマテリアルなどのアセットをインポートし、Unreal Engine 5のプロジェクト内で効果的に活用する手順を学ぶ。
- ue-10. Unreal Engine 5におけるサードパーソンゲーム開発と物理相互作用の基礎 [PDF], [パワーポイント], [HTML]
サードパーソン(三人称視点)テンプレートを用いたゲーム開発の基礎と、キャラクターとオブジェクト間の物理的な相互作用を学ぶ。
- ue-11. キーボードイベントとテレポート機能を活用した3Dオブジェクト操作の基本 [PDF], [パワーポイント], [HTML]
キーボードの入力イベントを取得し、対象の3Dオブジェクトをテレポート(瞬間移動)させる基本的な操作ロジックの実装手順を解説する。
4. 3 次元ゲームエンジン Panda3D
[詳細リストを展開するには、ここをクリック]
- Panda3D 3次元ゲームエンジン入門
Pythonで3次元空間の生成・配置・操作をPanda3Dで学ぶ10演習の入門教材。
- Panda3D 3次元ゲームエンジン基礎
Python用3次元ゲームエンジン「Panda3D」の基礎を10項目に分け、環境構築から波動シミュレーションまで実装例とともに解説する。
- Panda3Dゲームエンジン:システム構築の基礎(演習)
Panda3Dで座標系・シーン管理・衝突判定・物理・カメラ・入力・GUI・シャドウ等の基礎を演習形式で学ぶ。
- シミュレーションと3次元コンピューターグラフィックス
N体シミュレーション,Boids,流体シミュレーションの実装例を示す.
- Panda3D オープンワールドゲーム教材
Panda3Dで手続き的地形生成と三人称カメラを実装し、オープンワールド表現の基礎を学ぶ教材。
5. Ursina ゲームエンジン
6. Open3D ライブラリによる点群データ処理
[詳細リストを展開するには、ここをクリック]
- Open3D のインストール(Windows 上)
Windows環境において、pipを用いたOpen3Dのインストール方法やバージョン確認、Open3DViewerを起動して動作確認を行う手順を解説しています。
- 3次元点群処理の例(Open3D ライブラリ)
PythonとOpen3Dライブラリを活用し、3次元点群データの処理を行うための具体的な8つのパターンのPythonコード例を取り上げ、その実装方法を詳しく解説しています。
- Open3D ML の利用
PyTorchの導入からCMakeによる構成やビルドまで、Open3Dをフルビルドする手順を解説し、色付き点群の表示やボクセルダウンサンプリングなどの検証コードも提供しています。
- 3次元点群データの表示、ダウンサンプリング、外れ値の除去、法線の推定、メッシュ化(Python と Open3D を使用)
PythonとOpen3Dを活用し、3次元点群データの表示、外れ値除去、法線推定からメッシュ化までの一連の処理を解説。MeshLabでのデータ変換手順も扱います。
7. MeshLab
目次: MeshLab
[詳細リストを展開するには、ここをクリック]
- MeshLab のインストール,Wavefront OBJ ファイルのインポート(Windows 上)
- MeshLab でのメッシュの表示モード
MeshLabにWavefront OBJ形式のメッシュデータを読み込み、ワイヤーフレーム、フラット、スムージングなど様々な表示モードで閲覧する手順を解説。
- MeshLab で3次元点群データの表示, 3次元点群データをメッシュデータに変換
3次元点群データをMeshLabに読み込み、Ball Pivotingアルゴリズムを用いて点群からポリゴンメッシュに変換(表面再構成)する手順を学ぶ。
- メッシュ簡略化(MeshLab を使用)
MeshLab を用いて,3次元メッシュデータを簡略化する手順を解説する
3次元データ編集ソフト MeshLab の Windows へのインストールと Wavefront OBJ の読み込み手順
8. 3次元データ(点群・ボリューム・メッシュ)
8.(1) 3次元ボクセルデータ
- 3次元ボクセルデータの Python 実現ガイド
3次元ボクセルデータ(人体CTスキャン等)を用い、Pythonでのデータ取得から断層表示、等値面抽出(Marching Cubes)、平滑化等の可視化処理までを解説。
- 3次元ボリュームデータ[PDF], [パワーポイント]
- 3次元ボリュームデータの処理 [PDF], [パワーポイント]
8.(2) 3次元点群データ
- TUM-Facade・Semantic3D:点群データセットの概要とダウンロード用Pythonコード
建物ファサード(TUM-Facade)や屋外環境(Semantic3D)などの大規模な点群データセットの概要と、Pythonを用いた自動ダウンロード手順を解説する。
- Windows で libPCL 1.15.1, Boost, Eigen, OpenNI 2.2 のインストール
- Python から libpcl を使う(GitHub の davidcaron/pclpy, Python を使用)(Ubuntu 上)
点群処理ライブラリPCLのPythonバインディングであるdavidcaron/pclpyをUbuntu環境でビルドおよびインストールし、動作確認を行う手順を解説。
- Windows で strawlab/MultiCamSelfCam を使ってみる
複数カメラのキャリブレーションを行うstrawlab/MultiCamSelfCalをWindows環境にインストールし、OctaveやPythonラッパーから実行する手順を学ぶ。
9. 3次元のオンラインサービス
3次元モデリング
- Tinkercad を用いて、3次元モデルを表示、公開
Tinkercad を用いて、3次元モデルを表示、公開
- Sketchfab を用いて、3次元モデルを表示、公開
Sketchfabに3次元モデルを登録・アップロードし,Web上で表示・公開する手順を説明する。
3次元地図
- 地理院地図3Dを眺めてみる
国土地理院が提供する「地理院地図3D」サービスを利用し、任意の場所の地形をブラウザで3D表示し、さらにSTLファイルとしてダウンロードして確認する手順。
- オンラインサービスの F4map を使って 3次元地図を見てみる, YouTube 動画: https://www.youtube.com/watch?v=BxWbOwYPRXI
OpenStreetMapのデータを3D表示するオンライン地図サービス「F4map」の機能(天候・時間帯の視覚的再現やカメラ操作)と、指定場所の表示方法を紹介する。
- オンラインサービスの OSMBuilding を使って 3次元地図を見てみる
OSM Buildingsサーバーを用いて、OpenStreetMapの建物データをブラウザ上で3D表示するオンラインサービスの使い方と、地図タイルの仕組みを解説する。
10. 3次元関係のソフトウェアのインストール、利用
Open3D, MeshLab, libpcl のインストールについては、Open3d, Meshlab, 3次元データの節で説明。10.(1) モデラーとレンダラー
目次: 3次元グラフィックスのツール(モデラーとレンダラー)
- Shade 3D 社 Shade 18 Standard 体験版を使ってみる
Shade 3D 18 Standard体験版をインストールし、The Stanford 3D Scanning RepositoryのデータをBlender経由で読み込んで表示確認する手順。
- irrEdit でファイルのインポート,エクスポート
3次元モデラー「irrEdit」を使用し、Alias Wavefront Maya(.obj)やSTL(.stl)形式の3Dメッシュファイルをインポートおよびエクスポートする手順を学ぶ。
- Maya を用いた人体アニメーション
3DCGソフトMayaを用いて、シーンの読み込み、スケルトンのインポートとモデルへのバインド、モーションの編集、カメラ設定とアニメーションレンダリングを行う手順。
- Maya を用いた 8 視差画像のレンダリング
MayaでX3D Maya Cameraを作成・設定し、立体視(3Dディスプレイ)向けの8視差画像シーケンスをバッチレンダリングする手順を解説する。
- AVI4D を用いた 8 視差画像からの立体視用画像の生成
AVI4D Creatorを使用し、レンダリングされた8方向からの視差画像シーケンスを読み込み、立体視用(X3Dディスプレイ等向け)の動画ファイルを生成する手順。
- aqsis のインストールとテスト実行(Ubuntu 上)
RenderMan互換のレンダラーであるaqsisをUbuntuにソースコードからインストールし、サンプルのRIBファイルを描画してテスト実行する手順。
- RIB ファイルの文法と機能
RenderMan互換のシーン記述言語であるRIBファイルの基本文法(カメラ、球・円柱などのプリミティブ形状、マテリアル色、平行移動等)と機能について解説する。
- Linux で TooL のビルド
OBJ形式ファイルの読み込みと描画機能を持つOpenGLベースのC++ライブラリ「TooL」を、Linux環境(Fedora等)でソースコードからビルドする手順。
- Linux で glm のビルドとインストール
OBJ形式ファイルの読み込み・描画機能を持つOpenGLベースの「glm」ライブラリをLinux環境でビルドし、付属のビューワープログラムで動作テストを行う手順。
10.(2) Windows の 3次元関係
目次: Windows でのインストールと動作確認(3次元関係)
地形生成
3次元コンピュータグラフィックスのモデラー,ビューワー
- k3D のインストール(3次元のモデラー)(Windows 上)
- Easy View for 3D のインストール(Windows 上)
- Hira 3D Viewer のインストール(Windows 上)[PDF版], [ワード]
- CopperCube のインストール(Windows 上)
3次元コンピュータグラフィックスのレンダラー
- Mitsuba 3 のインストール(Windows 上)
- 非商用版 RenderMan のインストール(レンダラー)(Windows 上)
- aqsis のインストール(レンダラー)(Windows 上)
- Indigo レンダラー 4.4 のインストール(レンダラー)(Windows 上)
3次元ボリューム(ボクセル)データ
ゲームフレームワーク,ゲームエンジン(2次元,3次元)
- cocos2d, pygame, pyglet のインストール,サンプルプログラムの実行(ゲームエンジン)(Python を使用)(Windows 上)
- Cocos2d-x 3.17.2 のインストール(Windows 上)
- Godot エンジンのインストール(3次元のゲームエンジン)(Windows 上)
- Panda3D SDK のインストール,サンプルプログラムの実行(3次元のゲームエンジン)(Python を使用)(Windows 上)
- CryEngine のインストール(3次元のゲームエンジン)(Windows 上)
- Open3D Engine のインストール(Windows 上)
地理情報システム
- OSGeo4W 64ビット版 (OSGeo4W64) のインストール(Windows 上)
- GISInternals の gdal Windows 版のインストール(Windows 上)
- FZKViewer のインストール(Windows 上)
OpenStreetMap,ESRI Shape
- Merkaartor のインストール,OpenStreetMap データのダウンロード(Windows 上)
- OSM2Worldのインストール(Windows 上)[PDF版], [ワード]
OSM2Worldは,OpenStreetMapのデータを .obj 形式に変換するソフトウェア
10.(3) Ubuntu でのインストールと動作確認
目次: Ubuntu でのインストールと動作確認(3次元関係)
その他
- NDW オープンデータ
- テクニカルレポート: 人工知能を用いた渋滞予測技術(国外での先行事例)の再現
- クラマーの V
- AI技術を用いたステレオ画像からの深度推定と特徴点マッチングによる奥行き推定
- ステレオマッチングによりステレオ画像から距離画像を求める(OpenCV,Python を使用)
- Python で Selenium を使ってみる
- Python で Playwright を使ってみる
11. A-Frame と AR
[詳細リストを展開するには、ここをクリック]
- A-Frame を使ってみる
ブラウザで手軽にVRを扱える「A-Frame」の基本を紹介し、HTMLファイル内に立方体や球などの3Dオブジェクトを配置してブラウザ上で表示・操作する手順を学ぶ。
- A-Frame で3次元オブジェクト表示,アニメーション,パノラマ表示,クリッカブルに設定
A-Frameの拡張機能を利用し、パーティクルやアニメーション、波の動き、空のグラデーション、360度パノラマ画像、クリック操作への反応を実装する手順を解説する。
- パソコンで,マーカーベースの AR システムを動かしてみる(A-Frame, AR.js を使用)
A-FrameとAR.jsを利用し、PCのカメラで所定のマーカー(hiro)を読み取り、ブラウザ上に3Dオブジェクトを表示するマーカーベースのARシステムを構築する。
- パソコンで,Web サーバを立ち上げ,Web でマーカーベースの AR システムを動かしてみる(A-Frame, AR.js, Python を使用)
PythonでローカルWebサーバーを立ち上げ、AR.jsとA-Frameを用いて、Blenderで作成した3Dモデル(.obj形式)をマーカー上にAR表示するWebアプリの作成手順。
11. 高さマップ、標高タイル地図
- 高さマップ (height map) とは [PDF], [パワーポイント]
- terrain.party から高さマップ(height map)の png ファイルをダウンロード, [PDF], [ワード]
- 国土地理院標高タイルの数値データのダウンロードと画像表示, [PDF], [ワード]
国土地理院が提供する標高タイルの仕組みを解説し、指定したタイル座標の標高データをダウンロードしてPythonで画像や3Dグラフとして可視化する手順を学ぶ。
- 3次元のテライン (3D Terrain)(書きかけ)
GeoTIFF ファイルの処理
- コマンドで GeoTIFF ファイルを扱う
GeoTIFF 情報の取得, 投影座標系への投影, GeoTIFF ファイルの拡大, GeoTIFF から png へ変換,png から GeoTIFF へ変換, EPSG コードを用いた座標系の変換
- GeoTIFF ファイルを 16 ビットpng ファイルに変換
OSGeo4WのGDAL(gdal_translate)を使用し、GeoTIFF形式の画像をスケールやデータ型を指定して16ビットのPNGファイルに変換する手順を解説する。
- Python で GeoTIFF を使ってみる
PythonのGDALライブラリを使用し、GeoTIFFファイルの読み込みや画素値の確認、座標参照系(EPSG)を変換して緯度・経度を取得する方法を解説する。
高さマップデータのダウンロード,GeoTIFF への変換
- 国土数値情報 土地利用細分メッシュ ラスタ変換ツール RASTERTOOL の紹介
エコリス社の「土地利用細分メッシュラスタ変換ツール RASTERTOOL」を導入し、国土数値情報の土地利用メッシュデータをGeoTIFFに変換する手順。
- terrain.party から高さマップ (height map) をダウンロード, GeoTIFF に変換
terrain.partyから指定範囲の高さマップ(png形式)をダウンロードし、GDALを用いてGeoTIFF形式に変換する手順を学ぶ。
- 基盤地図情報標高DEMデータ変換ツール DEMTOOL の紹介,基盤地図情報・数値標高モデルのデータを GeoTIFF に変換
エコリス社のDEMTOOLを導入し、国土地理院の基盤地図情報サイトからダウンロードした数値標高モデル(XMLファイル)を結合してGeoTIFFに変換する手順。
高さマップデータのインポート
- Unreal Engine 4 で高さマップ (height map) をインポート
Unreal Engine 4のエディタ上で、作成またはダウンロードした高さマップ(height map)データをインポートし、地形として適用・確認する手順。
- Python の pypng パッケージのインストール手順
純粋なPython実装のPNGライブラリ「pypng」をインストールし、画像の新規作成や読み込み、16ビットPNGの処理などを行う基本的な使用例を解説する。
13. 3次元地図システム Cesium
目次: 3次元地図システム Cesium
[詳細リストを展開するには、ここをクリック]
- Cesium を使ってみる
JavaScriptライブラリ「Cesium」をローカル環境に導入し、ブラウザ上で3D地球儀や航空写真、地形の起伏、OpenStreetMapを表示・操作する手順。
- NICTA/cesium-simple-photogrammetry を使ってみる
NICTA/cesium-simple-photogrammetryを利用し、3次元オブジェクトファイルをCesiumの地図上に簡単に取り込んで表示する手順を解説。
- Cesium の機能
Cesiumのチュートリアルを参考に、Terrain Tilesetを用いた地形の起伏表示や、光と水面(波)の視覚効果を有効にするHTMLとJavaScriptの実装を学ぶ。
- Cesium + Firefox の VR モード
workingDog/webvrtestを用いて、FirefoxブラウザのWebVR機能によりCesiumの3D地図をVRデバイス向けのモードで表示する手順を解説する。
- 3次元地図のソフトウェア Cesium を Python から使う
PythonからCesiumを操作できるライブラリ「cesiumpy」をインストールし、Jupyter Notebook上で3D地図をインタラクティブに表示・操作する手順。
14. 地図データ
目次: 地図データ
オープンデータ
- 国土地理院基盤地図情報・数値標高モデルのダウンロード,CSV ファイルへの変換
国土地理院の基盤地図情報サイトから数値標高モデルをダウンロードし、CプログラムやRを用いてCSVファイルへの変換やプロットを行う手順。
- 国土交通省・位置参照情報ダウンロードサービスのデータ(Ubuntu を使用)
国土交通省の位置参照情報ダウンロードサービスから街区レベル・大字レベルのデータをダウンロードし、Ubuntu上のSQLite3データベースに投入する手順。
自作データ
- 福岡市バス停データ
- 九州大学伊都キャンパス巡回バス地図
九州大学伊都キャンパスの巡回バス路線図から手作りしたCSVデータ(ノード・ウェイ等)を、SQLite3データベースやRを用いてリレーショナルデータベースとして構築・処理する手順。
Cocos2d ゲームエンジン
目次:ゲームエンジン
- Cocos2d ゲームエンジン [PDF], [パワーポイント]
【概要】 Cocos2dゲームエンジンは,ディレクターによるゲーム全体の管理,シーンによる表現,複数のレイヤによる画面構成,アクションによるオブジェクト属性の動的な変化軒のjを持つ.これらの要素を組み合わせることで,ゲーム開発を行う.
旧バージョン等の資料(歴史的価値があると判断し公開)
Blender 3.0 アニメーション入門(動画による説明)
目次:Blender 3.0 アニメーション入門(動画による説明)
- Blender 3.0 のキーフレームアニメーション [PDF], [パワーポイント]
ドクセルの URL: https://www.docswell.com/s/6674398749/KELDQ5-2021-12-27-210037
- Blender 3.0 の液体のアニメーション [PDF], [パワーポイント]
ドクセルの URL: https://www.docswell.com/s/6674398749/KV63E5-2021-12-28-143452
Blender 2.79(旧バージョン)
目次: Blender 2.79
Blender 2.79
- Blender 2.79 の設定例
Blender 2.79におけるインターフェースや操作環境の基本的な設定例を解説する。
- Blender 2.79 の画面構成と基本操作
Blender 2.79の画面構成や、視点変更、オブジェクト選択などの基本操作を学ぶ。
- Blender 2.70 のライト、マテリアル
Blender 2.79におけるライトの配置や、オブジェクトの質感を変えるマテリアルの設定手順を解説する。
- Blender 2.79 の剛体の落下、衝突のシミュレーション
Blender 2.79の物理演算機能を用い、剛体(リジッドボディ)の落下や衝突をシミュレーションする手順を解説する。
- Blender 2.79 のパーティクルアニメーション
Blender 2.79のパーティクルシステムを利用し、粒子の発生や動きを制御するアニメーションの作成方法を学ぶ。
- オブジェクトの変形で使う Blender 2.79 の機能の例
オブジェクトの変形処理を中心に、Blender 2.79で頻繁に利用されるモデリング機能の具体例を解説する。
- BlenderVR システムを使ってみる
Blenderで作成した3D空間をVRデバイスで閲覧するためのBlenderVRシステムの導入および基本的な使い方を解説する。
- BlenderVR システムのインストール
BlenderVRシステムの手動インストール手順を、Python環境の準備からblendervrの起動確認まで図解で示す。
- BlenderXR のインストール
VRやAR環境でBlenderのシーンを直接確認・操作できるBlenderXRアドオンのインストールと初期設定の手順を学ぶ。
Blender 2.79ゲームエンジン
- Blender 2.79 ゲームエンジン (2分54秒, 説明音声つき) [mp4 版], [パワーポイント]
- Blender 2.79 ゲームエンジン
Blender 2.79に搭載されていたBlender Game Engine(BGE)の概要と、ゲーム作成の基本概念を解説する。
- Blender 2.79 ゲームエンジンのロジックエディタ
Blender 2.79のロジックエディタを使用し、ノードの組み合わせでゲームの動作をプログラミングする手順を学ぶ。
- Blender 2.79 ゲームエンジンで剛体シミュレーション
Blender Game Engineを利用して、リアルタイムで剛体の物理シミュレーションを実行・確認する方法を解説する。
- Blender 2.79 ゲームエンジンでマウスクリックやマウスオーバーによるオブジェクトの表示・非表示の変化
マウスクリックやマウスオーバー等の操作に応じて、オブジェクトの表示・非表示を切り替えるBGEのロジック構築を学ぶ。
Blender 2.7 の動画による説明
- Windows で Blender のインストール (3分4秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender 2.7 の主な機能概要 (3分53秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender の種々の操作と設定 (3分53秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender のマテリアル (4分6秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender の作業視野とカメラ視野 (3分20秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Make Human のインストールと Blender 関係プラグインの組み込み (9分12秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender でパーティクルアニメーション (2分42秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender でパーティクルアニメーションの設定 (4分24秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender での剛体シミュレーションの再生 (2分40秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
- Blender での剛体シミュレーションの作成 (2分42秒, 説明音声つき) [mp4 版], [パワーポイント], [PDF]
機器類(歴史的価値があると判断し公開)
VR デバイス(仮想現実デバイス) Oculus
目次: Oculus を使ってみる(歴史的価値を考慮して保存している資料)
- Oculus のセットアップ
Oculus Rift Runtimeのインストールからアカウント登録、PCの設定、Oculus公式アプリでのコンテンツのダウンロードと起動までの初期セットアップ手順。
- Oculus で WebVR システムを見てみる
Oculusの「Unknown Sources」を有効にし、FirefoxのWebVR機能を用いて、A-Frameで作成されたブラウザ上のVRコンテンツをOculus Riftで閲覧する手順。
3次元スキャン装置 vivid(歴史的価値を考慮して保存している資料)
- vivid 使用法
3次元スキャナ「vivid 9i」のドライバインストールから、Rapidform XORを用いた複数方向からのスキャンデータの取得、位置合わせ(対応点設定)、ポリゴン合成までの手順。
- vivid を用いた 3次元顔画像の作成手順
3次元スキャナvividを用いて、顔の複数方向(正面・左右)を撮影し、不要部分の除去や穴埋め、鼻や目尻を基準とした位置合わせと合成により3D顔画像を作成する手順。
説明動画 [MP4]