CUI 環境でも 3D アニメーションがしたい!
prime (KMC3 回生 )
@ 第 13 回 KMC 学習発表会
2
動機
「 CUI でゲーム作っといて」で使おうと目論む
結局間に合わなかった…
CUI 環境でそれっぽく表示できたらかっこよさそう !
3
作ったもの
CUI3D
https://github.com/primenumber/cui3d
4
何ができるのか
三次元の物体(ポリゴン)の集合を端末で表示する
カメラの位置・向きを操作可能
物体を回転・移動・拡大縮小可能
物体に色を付けたり文字を貼り付け可能
5
どうやって表示するのか
端末を h×w ピクセルの画面だとみなす
各ピクセルごとにどんな文字を表示するべきか計算する
6
各ピクセルごとの計算
カメラから指定したピクセルに伸びる線分を引く
視
線
カメラ
7
各ピクセルごとの計算
各ポリゴンの各三角形につきその半直線との交点を計算
視
線
カメラ
8
各ピクセルごとの計算
交点のうち最もカメラに近い三角形の情報が描画される
視
線
カメラ
9
現状の問題点
色が 8 色しか使えない
レンダリングが重い(ピクセル数 * 三角形の数)
10
今後の展望
レンダリングの高速化
256 色・フルカラー表示
テクスチャマッピングの充実
ワイヤーフレーム