DirectXMesh

几何处理库
授权协议 MIT
开发语言 C/C++
所属分类 程序开发、 图形/图像处理
软件类型 开源软件
地区 不详
投 递 者 潘向明
操作系统 Windows
开源组织 微软
适用人群 未知
 软件概览

DirectXMesh 是微软开发的 DirectX 的几何处理库。

示例代码:

std::unique_ptr<WaveFrontReader<uint16_t>> mesh( new WaveFrontReader<uint16_t>() );

if ( FAILED( mesh->Load( L"test.obj" ) ) )
  // Error

if ( mesh->hasNormals )
   // Skip next computation

size_t nFaces = mesh->indices.size() / 3;
size_t nVerts = mesh->vertices.size();

std::unique_ptr<XMFLOAT3[]> pos( new XMFLOAT3[ nVerts ] );
for( size_t j = 0; j < nVerts; ++j )
  pos[ j ] = mesh->vertices[ j ].position;

std::unique_ptr<XMFLOAT3[]> normals( new XMFLOAT3[ nVerts ] );
if ( FAILED( ComputeNormals( &mesh->indices.front(), nFaces, pos.get(), nVerts, CNORM_DEFAULT, normals.get() ) ) )
  // Error

if ( !mesh->hasTexcoords )
  // Skip next computation

std::unique_ptr<XMFLOAT2[]> texcoords( new XMFLOAT2[ nVerts ] );
for( size_t j = 0; j < nVerts; ++j )
  texcoords[ j ] = mesh->vertices[ j ].textureCoordinate;

std::unique_ptr<XMFLOAT3[]> tangents( new XMFLOAT3[ nVerts ] );
std::unique_ptr<XMFLOAT3[]> bitangents( new XMFLOAT3[ nVerts ] );

if ( FAILED( ComputeTangentFrame( &mesh->indices.front(), nFaces,
                                 pos.get(), normals.get(), texcoords.get(), nVerts,
                                 tangents.get(), bitangents.get() ) ) )
  // Error
 相关资料
  • 问题内容: 我的动画是从右向左移动的图像,这是一个周期。我想知道如果我必须开始几个周期,如果我想让几个图像一个接一个地从右向左移动,该怎么办。目前,我计算一个周期并更新我的组件的AX值,并以0 +此X值绘制图像。如果我必须处理几个周期,我该如何跟踪我必须绘制的每个图像的x值?谢谢。 问题答案: 例如(达里尔)

  • 问题内容: 在我的一个项目中,我有一个管理多个客户(或客户,如果您愿意的话)的应用程序。对于他们每个人,我在数据库上都有一个专用的架构。但是,应用程序一次只处理一个客户端,即,用户必须从应用程序中的一个客户端切换到另一个客户端(在运行时,不重新启动应用程序),以便从该新客户端访问数据。 您将如何管理此类项目的连接以及持久层? 我想为此使用hibernate。在处理几个数据库/模式时,我必须特别注意

  • 本文向大家介绍Python 处理文件的几种方式,包括了Python 处理文件的几种方式的使用技巧和注意事项,需要的朋友参考一下 在这个世界上,人们每天都在用 Python 完成着不同的工作。而文件操作,则是大家最常需要解决的任务之一。使用 Python,你可以轻松为他人生成精美的报表,也可以用短短几行代码快速解析、整理上万份数据文件。 当我们编写与文件相关的代码时,通常会关注这些事情:我的代码是不

  • 本文向大家介绍批处理生成几乎任何字符,包括Tab,包括了批处理生成几乎任何字符,包括Tab的使用技巧和注意事项,需要的朋友参考一下 One of my early posts on DosTips was a :chr routine that could convert a number into the corresponding character. The final code that

  • 本文向大家介绍python数据预处理之数据标准化的几种处理方式,包括了python数据预处理之数据标准化的几种处理方式的使用技巧和注意事项,需要的朋友参考一下 何为标准化: 在数据分析之前,我们通常需要先将数据标准化(normalization),利用标准化后的数据进行数据分析。数据标准化也就是统计数据的指数化。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。数据同趋化处理主要解决不同

  • 本文向大家介绍C# 后台处理图片的几种方法,包括了C# 后台处理图片的几种方法的使用技巧和注意事项,需要的朋友参考一下 本篇文章介绍了使用c#如何后台处理图片的几种方法,具体代码如下: 第一种: 将上传图片直接保存到本地 第二种:将图片转换为byte 类型 第三种:将上传图片转换为byte 类型 以上所述是小编给大家介绍的C# 后台处理图片的几种方式,希望对大家有所帮助,如果大家有任何疑问请给我留