欢迎光临散文网 会员登陆 & 注册

SDL对接2D渲染库

2023-07-13 02:01 作者:yoooooiko  | 我要投稿

    最近玩了几个2D渲染库,有老牌的cairo,大名鼎鼎的skia,还有blend2d。其中blend2d比较有意思,只支持软渲染,就是只用CPU不用GPU,在现在一堆争着用GPU的渲染库里算是比较奇葩的;还有就是用了asmjit,这点就比较有意思,官网的描述是“利用内置的 JIT 编译器在运行时生成优化的管道,并且能够使用多线程来提升性能”。

    至于对接渲染结果到SDL,我用的方法都是先渲染到内存里的位图缓冲区bitmap里,然后把bitmap复制到SDL的Texture里,最后提交到窗口的Render里显示。因为SDL的Texture缓存貌似是在显存里,读写前还需要先”固定“,不方便跟渲染库对接。而且我想在程序的整个生命周期都只渲染到一个块内存里,不想每次渲染都走[申请内存]-[读写]-[销毁内存]这套流程。


渲染流程

    上图只用了一个Texture,SDL支持多个Texture叠加到窗口,所以可以同时渲染多个Texture,最后图层叠加、拼接或者是切换显示某个Texture。

SDL对接2D渲染库的评论 (共 条)

分享到微博请遵守国家法律