ShivaVG是路径渲染的开源替代方案。有关 OpenVG 实现的列表,请参阅此 Stack Overflow 问题:Best OpenVG Implemenatation
基本上,您有几个选择:使用OpenVG实现(如ShivaVG),使用 OpenGL 实现或扩展(如NV_path_rendering),或完全使用其他东西,如Direct2D。
但是,NV_path_rendering 的其他替代方案甚至无法接近其功能集和渲染质量。NV_path_rendering 可以原生处理字体(这很重要- 没有字体,你是吐司),以真实视角缩放等等(在 Illustrator 中尝试!),与 3D 混合,使用 sRGB,使用片段着色器,并且确实这一切都快得令人难以置信。它还实现了用户交互,OpenVG 没有指定 AFAIK。
独特的是,NV_path_rendering没有发明新标准。相反,它实现了几个行业标准,例如PostScript和SVG,重点是质量和速度(很少同时拥有这两者),这是您目前在其他任何地方都找不到的。
(另外,Mark Kilgard 是项目负责人。来吧。这家伙很聪明。)
会成为标准吗?很难知道。至于使用什么,这实际上取决于您此时的目的/需求。寻找应用程序的高质量路径渲染?NV_path_rendering 肯定。在应用程序(尤其是移动设备)中寻找基本分辨率无关的图形?OpenVG 可能会更好。Nvidia 的解决方案不是完全可移植的,这太糟糕了,但我不会回避使用它。我更喜欢有质量的解决方案;有时可移植性并不是一切。
Nvidia 将他们的解决方案与 OpenVG 进行了比较,不幸的是,OpenVG 并没有提供太多好处。所以,是的,它可能有希望成为一个标准。但是,因为根据 IBM 的说法,未来一切都将被嵌入,也许希望它是开放的,而不是想要更多的标准。
“标准的好处是你有很多可供选择。” ——《计算机网络》,第 2 版,p。254
有关NV_path_rendering 功能的更多信息,我建议您查看:An Introduction to NV_path_rendering。