代码之家  ›  专栏  ›  技术社区  ›  Devon

WebGL是否有二维精灵库?[关闭]

  •  15
  • Devon  · 技术社区  · 16 年前

    我正在寻找建立一个二维游戏使用WebGL。我想要webgl提供的硬件加速,但我无法从canvas标记中的2d画布上下文中获得这一点。

    尽管如此,是否有使用webgl创建2d精灵的教程?或者,更好的是,是否有一个用于webgl的2d sprite库?理想情况下,我要找的是 cocos2d 移植到WebGL。

    毫不奇怪,我为webgl找到的所有演示、教程和库都专注于3d操作。有支持2d精灵的webgl库吗?

    7 回复  |  直到 12 年前
        1
  •  5
  •   Liam    16 年前

    我可能弄错了,但是我认为2dcanvasapi的设计方式使得浏览器可以利用硬件加速,但是他们还没有选择这样做。我希望canvas 2d的实现会随着webgl的发展而显著改进。

        2
  •  5
  •   keheliya    15 年前

    您可以在webgl中找到canvas 2d api here

        3
  •  3
  •   funkaster    14 年前

    我最近向github推送了一个在webgl上编写的简单的2d库,它有一个简单(但功能)的画布回退。它使用与cocos2d相同的场景图,您可以选中它 http://github.com/funkaster/ChesterGL -注意,它不是100%的功能,但你可以用它作为起点来编写一个简单的二维游戏

        4
  •  2
  •   d13    12 年前

    Pixi.js是目前最稳定、最活跃的:

    https://github.com/GoodBoyDigital/pixi.js/

        5
  •  1
  •   aaaaaaaaaaaa    16 年前

    3d中的2d非常容易实现。只需将所有对象放置在一个平面中,并缩放视口即可绘制该平面的所需部分。

    无论如何,大约还有10年的时间,你才能在大多数人的浏览器中找到webgl功能。有了正确的方法,你就可以在不使用画布的情况下获得很长的路,使用图形的预渲染旋转技巧是任何javascript游戏开发人员都必须知道的,除了“sprite”动画之外。

    重要的问题是,你只是在玩工具,还是在做一个人们应该能够玩和享受的游戏?

        6
  •  1
  •   Ray Hulha    13 年前

    请记住,您可以使用gl.points绘制模式,在每个点(而不是点)绘制纹理(精灵)。你只需要使用取样器。它真的很强大。

        7
  •  0
  •   ggmendez    12 年前

    这可能有点即兴,但我认为这是值得的努力,以防有人试图找到一个良好的webgl包装器,用于2d对象操作。我强烈建议 fabric.js ,它在画布元素的顶部提供交互式对象模型。它还有SVG到画布(和画布到SVG)的解析器。这个 demos 官方网站的部分清楚地显示了这个javascript库的潜力。