花了一個多月終于把軟渲染器的整個流水跑通了。
其實也沒多少代碼,就是很多小問題寫的時候腦子沒想的很清楚。
一切都仿照這DX10來的,除了Geometry Shader。
因為我覺得沒啥必要,都是在CPU上工作,還不如讓Client直接做Subdivision一類來得快。
而且GS這玩意以前就覺得不可靠,前段時間GMM也提到了這個問題。
這兩天把程序重構一下就差不多了,改名字,調整一下文件的物理組織,當然還有跨平臺的一些必需要寫的東西。這樣也就差不多了。
現在聲明定義有的都攪和到一起了;Driver的接口也不怎么好用。
近期計劃cube texture和ewa filter,順便把我現在用的數學包擴充一下;
中期計劃Utility部分做起來,主要是Texture Loader和Model Loader、還有Display Driver。反正類似于GLUT一類的;
然后是要修改一下現在的 Rasterizer 和 Shader,讓它和硬件一樣生成一個個的block容易并行也容易差分;這樣就能支持 ddx 和 ddy 了;
再然后就是弄XML做一個材質腳本,shader腳本就不做了,如果要是用micro-thread的話,插件體系都基本上沒戲;
然后就是把并行部分用GPGPU加速。不過估計我目前還沒那個能耐,先放放。