博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
推荐 OpenGL C Math 数学库
阅读量:6092 次
发布时间:2019-06-20

本文共 820 字,大约阅读时间需要 2 分钟。

hot3.png

我平常自己写点小东西都是用的 GLM(OpenGL Mathematics)数学库。GLM 功能很强大,也很方便用,直接包含在项目中编译即可。但是文件太多,有时候想写个小例子只用到其中个别函数,而不得不把整个库的代码都拉过来,而且最重要的是我个人更喜欢 c ,很多时候因为用 GLM 不得不采用 cpp 语法。所以就从网上搜索了一下,找了三个 c 代码的数学库。

linmath

功能相对很多,我当时搜索时是在 stackoverflow 上找到的,作者在回答时推荐了自己的这个库,还说有奇怪的 bug ,所以我没有用,不过我蛮喜欢这个库中对于 c macro 的使用。

kazmath

功能很全面,作者也是大名鼎鼎。看介绍说 Cocos2d 也参考了这个库。

math3d_h

STB style 。单个头文件即可使用。我用的就是这个库。这个库代码超级简洁。而且包含了完整的单元测试。下面是简单的代码片段。这个文件中只包含了两个类型 vec3_tmat4_t 。矩阵与 vector 相乘时有函数 m4_mul_posm4_mul_dir ,分别对应点坐标和矢量坐标,矢量坐标会忽略 w 分量而点坐标不会,具体可以查看实现。

mat4_t viewmat = m4_look_at(vec3((float)sin(t) * radius, 25.0f, (float)cos(t) * radius),		                        vec3(0, -50.0f, 0),		                        vec3(0, 1.0f, 0));mat4_t persmat = m4_perspective(45.0f, (float)w / (float)h, 0.1f, 1000.0f);

转载于:https://my.oschina.net/iirecord/blog/862693

你可能感兴趣的文章
Erlang教程
查看>>
linux服务器安装weblogic实战
查看>>
PostgreSQL从继承到分区(二)
查看>>
Windows7下彻底卸载MySQL5.5.21
查看>>
MySQL主从失败, 错误Got fatal error 1236解决方法
查看>>
我的友情链接
查看>>
操作系统内核
查看>>
AU14笔记-2
查看>>
Python urllib的urlretrieve()函数解析
查看>>
(FortiGate)飞塔防火墙BYOD网络安全解决方案
查看>>
Mysql 常用函数的 总结 (转)
查看>>
[李景山php]每天TP5-20170116|thinkphp5-Url.php-1
查看>>
jdk与jre的区别
查看>>
弹出菜单
查看>>
高德地图多marker聚合API
查看>>
IPv4 向 IPv6 过渡安全问题不可小觑
查看>>
Linux运维实战之Apache服务器的高级配置(虚拟主机、status)
查看>>
DHCP overview
查看>>
我的友情链接
查看>>
linux 系统无法启动的基本解决方法
查看>>