SALVIA是一款光柵化的軟件渲染器,設計目標是達到Direct3D 10/11的核心功能的實現。我們的設計目的主要包括以下幾點:
- 一個高度可移植的光柵化圖形管線的軟件實現
- 圖形硬件工作原理的展現和教學
- 為下一代Many Core處理器架構的計算設備提供高性能的圖形繪制能力
- 提供在GPU一類的流處理器上難以實現,但在Many Core架構的設備上有著顯著優勢的Features
- 比圖形API更加易于使用的接口
- 與復雜的渲染技術(如輻射度和光線追蹤等)相結合的可伸縮的渲染體系,研究可以提供速度-質量相均衡的渲染架構
SALVIA的接口重點參照了DX10的設計。
以流水線劃分Stage;每個Stage及其相關設施的接口,均采用了Object-Oriented的設計風格。
這種設計與D3D9和OGL的狀態機風格的設計相比更易于使用,同時也降低了流水線前后級的耦合,對于優化或擴展都是有利的。
目前,SALVIA已經具有了完整的D3D9的流水線級,并有了基本的Demo。
在未來,SALVIA將在維持內核穩定的同時,通過擴展提供先進的圖形技術支撐。
同時,我們還將嘗試著將一些不易在GPU上實現的算法,以擴展的形式在SALVIA中實現出來,以期提供高于圖形API的表現和特性。
SALVIA在近階段的主要工作包括:
- Rasterizer的優化
- SALVIA Shading Language語言特性設計及編譯器實現,為SALVIA提供文本化的Shader
- MSAA,并提供可定制的Sampling Pattern(2x 和 4x,目前尚有Bug)
- EWA-based Anistropic Filtering
- 以擴展形式提供的Geometry Shader,Hull Shader和Tesselassion Shader
- 并行優化(持續優化中)
- Intel SCC的移植
- 特性及性能的演示用例
- 文檔撰寫 (已經有成員負責此事)
目前,SALVIA已經作為一個開源項目發布在http://code.google.com/p/softart上,最新的代碼在Mercurial中。
所有代碼除特殊聲明外,均為GPL 2協議,您可以在協議許可的范圍內自由下載或使用。
如果發現了軟件的缺陷,或者有任何好的意見和建議,您可以在項目管理頁面上留言,或者聯系作者
wuye9036@gmail.com
minmin.gong@gmail.com
我謹代表項目全體成員及用戶,對您為本項目的發展做出的獨一無二的貢獻表示敬意和感謝!
作為一款基于GPL2協議的開源光柵化渲染器,SALVIA的目的當然不僅僅是軟件產品那么簡單。
我們也希望以SALVIA為基礎,建設一個充滿智慧與活力的社區。
這個社區里,每一個智慧的閃光,都能夠給其他人以啟迪;每一個智慧的閃光,都能夠使SALVIA向更好的方向邁出一步。
隨著SALVIA框架的完成,SALVIA復雜而有挑戰性的特性擴充工作已經擺在面前。
無論你
- 是喜歡Irregular Z Buffer一類不走尋常路的硬件架構技術,期望實現自己的硬件架構;
- 還是癡迷于運用最新的圖形學理論,制作讓人眼花繚亂,嘆為觀止的Demo;
- 還是希望將SALVIA與商業產品相結合,使其想用戶所想,為用戶所不能為;
我們都以100%的熱忱歡迎您。
為了維持SALVIA核心框架的穩定性,保證代碼質量,我們計劃將全部的Project Members分為核心組和開發者組兩部分。
核心組暫時由 空明流轉(wuye9036@gmail.com) 和 Minmin.Gong(minmin.gong@gmail.com) 組成,主要負責架構設計,Shading Language語言標準的制定,SALVIA內核的開發,設計文檔和接口約定的撰寫,以及主分支的維護工作。
開發者組將按照工作內容大致分為三種:
- 文檔組:主要負責注釋和文檔的撰寫工作等
- 編譯器組:負責編譯器Host特性和Language Bridge的設計和擴充,編譯器維護,性能調優等
- 擴展組:撰寫設備或輔助庫擴展,如Geometry Shader的Host代碼,數學庫等
現有開發組成員均具有6-12年不等的開發經驗,多數在業內著名企業擔任主要開發人員或技術負責人的職位。
我們對開發組成員充分信任,開發組成員將在各自的分支上完成開發工作,在您工作的分支上,您享有完全的寫權限。
我們將按期進行所有分支修改的Review工作,并邀請您參與到Review中來,您既是分支的作者,也是其他分支的審閱者。
如果您的修改通過了Review并采納到主分支中,我們希望能在您的協助下,將您對SALVIA的所思,所想,所為,原原本本的融入到SALVIA主分支中,令它如您所想般的成長。
同時,核心組將會視情況,組織線上或線下的技術交流活動,與大家一起交流技術心得、分享管理經驗。當然,也會分享快樂的人生。
如果您希望加入我們這個團隊當中,為我們的團隊,為SALVIA提供您寶貴的支持,請您準備好您的以下資料:
- ID:常用的ID,最好包括真實姓名
- Google Account:如果沒有,可以申請一個。因為我們的SVN Repository是建立在Google Code上的)
- 聯系方式:IM(QQ,MSN,GTALK)和Email,有手機最好
- 自我介紹:包括擅長的技術啦,項目經驗啦,閑扯也可,呵呵
- 希望參與的工作
- 其他要求:唔。。。隨便什么要求
發送至郵箱 wuye9036@gmail.com,或在此站點以站內信的方式發送與我。我將盡可能的與您聯系并面議。
我們真誠歡迎您的參與,并對您的加盟,表示真心的感謝和由衷的期待!