這篇文章是對"a first person engine in 265 lines"[1]的一個Direct2D版的移植.看到這篇文章我立刻就想到了QUAKE,當然QUAKE使用了比這個更高效的技術.但是這個技術無疑更簡單,更娛樂,同時也算是一種RayCast原理的使用.於是就想到用Direct2D做一個看看.
由於對Html5不熟,同時參考了Fredrik Wallgren[2].
同時也參考了MS提供的Direct2D事例[3].
代碼托管:https://d2dfpsenginedemo.codeplex.com/
基本原理原文已經很好的闡釋,具體細節還是直接看代碼才能看的明白。
(a)完整的一幀
(b1)逐幀更新過程中的一幀
(b2)逐幀更新過程中的一幀
(c)根據橫向分辨率一列一列的繪制
[1]A first-person engine in 265 lines, Hunter Loftis.
[2]Java Port, Fredrik Wallgren.
[3]Direct2D, Microsoft.