SepComet
|
73c1d3a21d
|
add TODO.md
|
2026-03-16 22:00:52 +08:00 |
SepComet
|
4ad6349a59
|
MVP 变换 + 补全依赖
|
2026-03-16 16:38:54 +08:00 |
SepComet
|
d550baa11e
|
view matrix + half projection matrix
|
2026-03-16 14:30:57 +08:00 |
SepComet
|
67e4855211
|
step2:model + view matrix
|
2026-03-15 22:18:43 +08:00 |
SepComet
|
e1dd23131c
|
完善 SDL 主循环并收紧三角形光栅化边界处理
- 补齐 SDL 纹理的创建与释放流程,避免纹理资源悬空
- 为主循环加入事件处理,支持通过关闭窗口或按空格正常退出程序
- 为 FrameBuffer 增加宽高访问接口,供光栅化阶段做屏幕范围裁剪
- 去掉越界写像素时的逐次错误输出,将其改为静默忽略
- 将 BoundingBox2D 改为整数像素边界,统一屏幕空间扫描语义
- 在 Triangle2D 中使用 floor/ceil 生成包围盒,避免浮点顶点直接截断带来的扫描误差
- 在 TriangleRasterizer 中将包围盒裁剪到 framebuffer 范围内,减少无效遍历
- 将工程中的 SDL include/lib 路径从绝对路径改为基于 $(ProjectDir) 的相对路径
- 将仓库根目录的 README.md 纳入 Visual Studio 工程项,便于在 IDE 中查看
|
2026-03-15 17:01:48 +08:00 |
SepComet
|
7bd5d7c13d
|
重构项目,为后续开发铺路
|
2026-03-15 16:20:36 +08:00 |
SepComet
|
bd2f846a34
|
Step 1:画一个三角形
- 线框三角形(WireTriangle):布雷森汉姆直线算法
- 填充三角形(FillTriangle):包围盒、叉乘法判断点是否在三角形内
|
2026-03-14 20:34:04 +08:00 |