在看了很多的球谐相关的理论知识后,发现纸上得来终觉浅呀!!!
怎奈力不从心,技不如人,网上搜搜,还是照搬别人的项目,以了却自己的球谐小欲望。

强烈建议上传源代码的作者,要给出详细的配置方式,以及完整的项目。
这样对于学习者来说,也能少走弯路,但是也不能强求,毕竟是无偿的。

那在这种拙劣的环境下,怎样才能学会一个技术呢?总结如下几点:
1/耐心的配置网上的项目,自己排坑
2/掌握一定的理论知识,即使遇到不完整的项目,也能正确配置;
3/求身边大牛,看是否可以指教。
4/借助网络求大牛;

3/4不建议,因为可靠率基本为0,建议还是自学靠谱。

话不多说,咱们进入配置步骤。

1/使用原项目为:https://github.com/lianera/SphericalHarmonicsLighting
clone下来。不会git的,直接下载zip包也是可以的。但是git的好处是,可以有版本控制,不多说,自己恶补吧。
配置球谐光照项目全过程
2/双击打开.sln文件:
这里我是用的是vs 2017版本
配置球谐光照项目全过程
3/直接编译
这肯定会报错的,一般人,到此就直接劝退了。我没有,继续前行吧。

4/解决报错:
配置球谐光照项目全过程
首先是framework中缺少头文件:glew相关的头文件,
glew库的下载glew-2.1.0.zip
我已经上传百度云:
链接:https://pan.baidu.com/s/10ORggZ4WuDh_i7TITNdMpw
提取码:zaba
其他的库,也上传了。
下载好了这个库之后,解压,设置include文件:
配置球谐光照项目全过程
重新生成,又报错了:
配置球谐光照项目全过程
下载glfw的库:glfw-3.2.1.zip
设置include目录:
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
缺少glm的库:
下载:glm-master.zip.zip
设置include目录:
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
缺少assimp库:
下载:assimp-3.1.1_no_test_models.zip
设置include:
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
缺少opencv的库:
opencv在自己下载安装了:
opencv-4.2.0-vc14_vc15.exe
他是安装,解压的方式,所以也很方便:
配置球谐光照项目全过程
配置球谐光照项目全过程

再次生成解决方案:
配置球谐光照项目全过程
stb_image.h文件下载:
设置include:
配置球谐光照项目全过程
配置球谐光照项目全过程
再次生成解决方案:

配置球谐光照项目全过程
设置sample项目依赖的opencv的库:
配置球谐光照项目全过程
配置球谐光照项目全过程
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
配置球谐光照项目全过程
再次生成解决方案:
配置球谐光照项目全过程
配置球谐光照项目全过程
配置球谐光照项目全过程

再次生成:
配置球谐光照项目全过程
这里需要配置opengl的库,这个安装了vs之后,就会有的,具体目录在:
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x86
配置球谐光照项目全过程
配置球谐光照项目全过程
所以加入这个依赖的库:
配置球谐光照项目全过程
同时加入库所在的目录:
配置球谐光照项目全过程
重新生成解决方案:
配置球谐光照项目全过程
发现可以了。

ok,运行项目:
发现找不到dll,ok,将如下的dll包括到debug目录:
配置球谐光照项目全过程

再次以断点的方式运行:
配置球谐光照项目全过程
发现资源没有,作者呀作者,你到底在干嘛,所以我找了其他的资源代替:
这里我也上传了:
配置球谐光照项目全过程
把图片的改为:
配置球谐光照项目全过程
配置球谐光照项目全过程
把参数该少一点,再次运行:
配置球谐光照项目全过程
好了,到次运行成功了。

接下来补充几点:
1/我是在vs2017上的配置的,并且是x86版本。
2/这里还有很多没有讲到的,就是关于
assimp-3.1.1
boost_1_72_0
glfw-3.2.1
opencv
上面这几个,都需要编译一个x86的库,这个需要安装cmake才能生成sln,然后编译对应版本的lib,才行,详细参考我之前的博客:
https://blog.csdn.net/wodownload2/article/details/77905708

至此已经全部讲解完毕,一路花费了一天的时间,还是蛮耗时的。
究其原因,项目不完整,无配置文档。

接下来,我会细细的研究其中的代码,也会及时的做好笔记,以供分享。

相关文章:

  • 2022-12-23
  • 2021-11-05
  • 2021-05-14
  • 2022-01-15
  • 2021-11-24
  • 2021-11-03
  • 2021-12-01
猜你喜欢
  • 2021-12-18
  • 2021-06-21
  • 2022-01-14
  • 2021-12-16
  • 2022-01-19
  • 2022-01-03
  • 2021-07-02
相关资源
相似解决方案