2D矢量图形渲染器,用于OpenGL

这个问题在这里已经有了答案:

  • 在OpenGL中渲染矢量图形? [重复] 5个答案

  • 我不打扰任何OpenVG,甚至不用MonkVG,这可能是最现代的,尽管不完整的实现。 OpenVG委员会已于2011年结束,大多数(如果不是所有的话)实施都是弃用软件或最好的遗留软件。

    自2011年以来,最先进的技术是Mark Kilgard的宝贝, NV_path_rendering ,目前它只是一个供应商(Nvidia)的扩展,你可能已经从它的名字中猜到了。 这方面有很多材料:

  • https://developer.nvidia.com/nv-path-rendering Nvidia hub,但着陆页上的一些内容并不是最新的
  • http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/opengl/gpupathrender.pdf Siggraph 2012论文
  • http://on-demand.gputechconf.com/gtc/2014/presentations/S4810-accelerating-vector-graphics-mobile-web.pdf 2014年GTC展会
  • http://www.opengl.org/registry/specs/NV/path_rendering.txt官方扩展文档
  • 现在,Google的Skia库在幕后使用NV_path_rendering。 (Nvidia在2013年底和2014年分别推出了该代码。)

    为了回答评论中提出的更具体的问题,您可以将路径渲染与其他OpenGL(3D)材质混合使用,如演示所示:

  • https://www.youtube.com/watch?v=FVYl4o1rgIs
  • https://www.youtube.com/watch?v=yZBXGLlmg2U
  • 您当然可以加载SVG和https://www.youtube.com/watch?v=bCrohG6PJQE。 它们还支持路径的PostScript语法。

    拥有更少(或彻头彻尾的)供应商支持或学术浮华的新贵是目前开发和维护的NanoVG 。 (https://github.com/memononen/nanovg)考虑到随着时间的推移,OpenGL上2D库的数量有所增加,你用一种不被主要供应商支持的东西进行了一次大的赌注,以我的愚见。


    看看OpenVG。


    很多关于这个Slashdot文章的讨论都是关于SVG渲染器的。 我不知道他们哪些人使用OpenGL,如果有的话。

    这个SO问题也有一些建议,包括在Python中完成的Sauvage。 开罗也显然是一种可能性。

    有几个功能强大的库可以在没有OpenGL的情况下渲染SVG。 我想知道这是不是真的有必要:在大多数系统的显卡上绘制线条已经足够加速了。

    链接地址: http://www.djcxy.com/p/48487.html

    上一篇: 2D Vector graphic renderer for OpenGL

    下一篇: Spring MVC @PathVariable with dot (.) is getting truncated