mesa阅读第一天
摘要:我们先从main开始,这应该是一个正确的思路。在这里面我个人感觉从debug开始。试一下。打开debug.h文件,最上面的注释是一段版权说明。略过。接下来我们看到一个宏判断。并且下面那几个函数都是在别的地方定义的。所以我有种找错地方的感觉。研究一下那几个函数是在哪定义的。在config.h中我们看到这样#define _HAVE_FULL_GL 1,这说明config会比debug运行更早。所以改变目标。直达config.h。最上面定义了一堆最大缓存的值。这个很有意思。好像我们对opengl的所有配置都可以从这里来实现。等水平深了这个东西需要好好研究一下。看完之后回到我们的debug。继续寻找
阅读全文
mesa导读
摘要:打开mesa代码文件夹。需要声明的是,我看的是7.0.3的代码。drivers应该是驱动相关代码。glapi里面是opengl的实现代码。但是有很多是空的。main里面主要实现的是opengl状态管理机。math是数学工具类。不足为惧。ppc对应的是标准委员会什么的东西。不懂。接下来shader这是着色器的实现。swrast这个是他的软实现。tnl是光照变换处理过程。所以总结起来。我们需要有四个重点看的文件夹。那就是main,glapi,swrast,tnl。
阅读全文