OpenGL系列之二十三:渲染3D模型

2023-02-12  本文已影响0人  itfitness

目录

效果展示

相关文章

OpenGL系列之一:OpenGL第一个程序
OpenGL系列之二:绘制三角形
OpenGL系列之三:三角形顶点增加颜色
OpenGL系列之四:绘制四边形
OpenGL系列之五:绘制点和线
OpenGL系列之六:绘制立方体
OpenGL系列之七:纹理贴图
OpenGL系列之八:立方体纹理贴图
OpenGL系列之九:glsl着色器语言
OpenGL系列之十:VAO、VBO、EBO的应用
OpenGL系列之十一:Shader图片转场切换动画
OpenGL系列之十二:Shader燃烧动画
OpenGL系列之十三:实现Shader绚丽动画
OpenGL系列之十四:实现相机抖音特效
OpenGL系列之十五:实现美颜相机
OpenGL系列之十六:实现大眼特效
OpenGL系列之十七:实现人脸贴纸
OpenGL系列之十八:FBO离屏渲染
OpenGL系列之十九:OpenGL人脸贴纸
OpenGL系列之二十:EGL
OpenGL系列之二十一:投影变换
OpenGL系列之二十二:基础光照

参考文章

https://blog.csdn.net/Kennethdroid/article/details/103825593

实现步骤

1.引入渲染代码

这里由于我是参考的https://blog.csdn.net/Kennethdroid/article/details/103825593这篇文章的代码,将里面的关于3D渲染的部分单独抽出来了,具体的话可以看下这篇文章是如何说的,其实主要就是使用了Assimp库进行了渲染,下面我主要说下如何加入自己的3D模型

2.下载3D模型

这里我选择的是https://www.cgtrader.com/,这上面有很多免费的模型,我选择的是这款模型,旁边会显示可下载的资源,这里把.obj格式的模型下载下来,然后还有对应的texture和mtl文件

3.导入模型

这里我为了方便直接把模型拷到SD卡了如下所示



这里我们也需要修改下.mtl文件,里面有texture的对应关系

# 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware
# File Created: 18.02.2019 01:25:07

newmtl wire_143224087
    Ns 32
    d 1
    Tr 0
    Tf 1 1 1
    illum 2
    Ka 0.5608 0.8784 0.3412
    Kd 0.5608 0.8784 0.3412
    Ks 0.3500 0.3500 0.3500
    map_Ka textures/mask_diffuse.tif
    map_Kd textures/mask_diffuse.tif
    map_Ks textures/mask_glossiness.tif
    map_bump textures/mask_normal.tif
    bump textures/mask_normal.tif
4.渲染模型

修改对应的文件位置,即可运行应用,看到渲染效果了


案例源码

https://gitee.com/itfitness/opengl-threed-mask

上一篇下一篇

猜你喜欢

热点阅读