EDXRaster
A highly optimized CPU software rasterizer, which implements most of the common D3D pipeline stages.
Install / Use
/learn @behindthepixels/EDXRasterREADME
EDXRaster
Please go to behindthepixels.io/EDXRaster/ for more detailed introduction.
EDXRaster is an highly optimized software renderer based on rasterization, independently developed by Edward Liu. This renderer is written with C++ and SSE and is highly optimized. Most of the D3D11 pipeline is implemented.
The source code of EDXRaster is highly self-contained and does not depend on any external library other than EDXUtil, which is a utility library developed by Edward Liu.
EDXRaster is currently built and tested only on Windows platform. Developer using Visual Studio 2015 should be able to build the source code immediately after syncing. Porting to Linux or macOS should not be difficult since it there is no external dependency.
Technical Details
- The rasterization was parallelized on both thread level and instruction level. Triangles are first binned into 16x16 tiles, before rasterized hierarchically onto 8x8 tiles and then onto pixel level.
- Hierarchical rasterization is done the same way in the larrabee document. 4 wide SSE were used to rasterize a triangle to 4 pixels at a time.
- Basic blinn-phong shading is supported and also accelerated with SSE.
- Key data structure sizes and layouts are highly tuned to reach high performance.
- Implemented pipeline stages include
- Vertex Transformation
- Homogeneous Clipping
- Rasterization
- Perspective Corrected Interpolation
- Pixel Shading
- Depth Test
Related Skills
node-connect
347.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.6kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。