Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何交换 ;零件 ;三维模型的 ;在 ;OpenGL?_C++_Opengl - Fatal编程技术网

C++ 如何交换 ;零件 ;三维模型的 ;在 ;OpenGL?

C++ 如何交换 ;零件 ;三维模型的 ;在 ;OpenGL?,c++,opengl,C++,Opengl,我想知道是否有人知道如何做到以下几点: 我们有一个角色的3D模型 现在我需要做的是,这个“角色”有可互换的部分 例如,如果要将头盔或盔甲添加到模型中,我想应该将躯干或头部顶点替换为盔甲或盔甲顶点 这就是问题所在,因为我可以知道“部分”从何处开始,以及从何处结束和开始另一部分?(在blender中,所以我将角色分成“组”,手臂、脚、头等 我认为一个可能的解决办法是: 我曾想过为每个“部分”创建一个对象,并作为单独的模型加载(手臂在一侧,头部在另一侧等等),并将所有部分作为“一个模型”处理 但我认为

我想知道是否有人知道如何做到以下几点:

我们有一个角色的3D模型

现在我需要做的是,这个“角色”有可互换的部分

例如,如果要将头盔或盔甲添加到模型中,我想应该将躯干或头部顶点替换为盔甲或盔甲顶点

这就是问题所在,因为我可以知道“部分”从何处开始,以及从何处结束和开始另一部分?(在blender中,所以我将角色分成“组”,手臂、脚、头等

我认为一个可能的解决办法是:

我曾想过为每个“部分”创建一个对象,并作为单独的模型加载(手臂在一侧,头部在另一侧等等),并将所有部分作为“一个模型”处理

但我认为这是不对的…你可以告诉我正确的方法是什么?告诉我你在这种情况下的经验(如果你知道关于这个主题的任何教程。谢谢!)

我在Windows上使用C++和OpenGL 3+
用于使用Blender进行建模。

我从来没有在opengl中从头开始过,但在unity中,你要做的是,如果你想在角色的手上放一把剑,你可以给剑模型角色手上骨骼的位置和旋转,对象(剑)会随着手移动

显然,你也可以对盔甲、头发和各种化妆品做同样的处理


如果你想改变身体部位,如手臂或手,原则是一样的,例如,你可以使用tranparente纹理来切换你想要切换的部位,然后像上面提到的那样简单地放置新的手。

它们被称为连接点。谷歌可以告诉你其余的。谢谢!你可以在谷歌中找到这个“关键字”