【发布时间】:2012-08-12 19:01:07
【问题描述】:
我正在尝试在 haskell 中进行一些 OpenGL 编程。但我对图书馆的现状感到困惑。 OpenGL 使用 Tensor 包,它只定义了几种向量类型(但没有以通用方式这样做)。它似乎没有提供任何 Matrix 实现。
还有其他几个用于线性代数的包:tensor(注意小写的 T)、Vec、hmatrix,它们似乎比 Tensor 更完整。
我要搜索的内容至少应该包含 3d 和 2d 图形中使用的常用函数,具有合理的性能并且应该与 OpenGL 兼容,但我想我必须为此更改库。
【问题讨论】:
-
还有vect,内置了OpenGL integration。
-
vect 看起来确实可用。但我认为它远非一个好的(通用)haskell 库。实际上,它看起来很像Java VecMath,其中为每种向量类型声明了每种算法。
-
我认为你应该自己写。能够批评其他实现意味着你已经准备好了。有一次我也遇到过类似的情况,拖了很久,最后还是值得花时间。
-
@Ptharien'sFlame,来自 vect sources:
instance Matrix Mat4 where ... inverse = error "inverse/Mat4: not implemented yet"。这不是很有用...
标签: opengl haskell linear-algebra