Skip to content

Commit

Permalink
Make double buffer optional
Browse files Browse the repository at this point in the history
  • Loading branch information
jiegec committed May 22, 2024
1 parent 178e9cc commit fdd6ebc
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion docs/project.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

此部分将内部状态根据需要进行渲染,并写入显存(可以是内部 Block RAM 或者 SRAM / SDRAM)。通常来说渲染可以分成多个阶段或多个层进行,如游戏的渲染可分为背景层、人物层、状态层等,逐层进行覆盖绘制。通常来说,此模块的时钟域也应该与控制逻辑相同,通过显存来隔离不同的时钟。

通常来说,为了防止撕裂和图像抖动,渲染和输出应该使用 **双缓冲**(途中虚线框的部分),即使用两块同样的显存 A 和 B。在渲染模块写入 A 时,另显示模块绘制 B;渲染完成后,立刻交换两块显存,继续下一帧的渲染。
作为进阶功能,为了防止撕裂和图像抖动,渲染和输出可以使用 **双缓冲**(途中虚线框的部分),即使用两块同样的显存 A 和 B。在渲染模块写入 A 时,另显示模块绘制 B;渲染完成后,立刻交换两块显存,继续下一帧的渲染。这样用户不会看到渲染了一半的状态,显示效果会更好

!!! warning "必须使用显存"

Expand Down

0 comments on commit fdd6ebc

Please sign in to comment.