引言
上一节我们加入了 Transform 变换,本节来重构着色器接口抽象。
因为每次粘贴代码造成开发效率低下,所以之后可能博文以思路为主,附加遇到的一些问题和解决方案,具体代码更改可参考 Github。
原先 Shader 中包含大量 OpenGL 代码,将其转移到新建的 OpenGLShader.h
和 OpenGLShader.cpp
中。同时对部分接口函数进行修改,主界面添加了一个 GUI 调整颜色。
与此同时对智能指针进行了简单的封装。
调试
在调试过程中出现了无法找到文件 Shader.h
,而 Infinite 本身的生成过程并没有报错,所以我猜想问题出现在 Sandbox 并没有链接文件,对预生成文件进行了一些修改(实际上我的预生成文件一直存在问题,不能完整的包含 src/
中的文件,目前只能用比较笨比较繁琐的方式运行)。
经过修改预生成文件,整个引擎可以正常运行,但保不准哪天需要调用某个库又出现同样的问题。