Updated for CMO model suport

Chuck Walbourn 2021-09-30 13:41:40 -07:00
Родитель 49fde2f471
Коммит 69c07cd7d8
3 изменённых файлов: 5 добавлений и 5 удалений

@ -27,7 +27,7 @@ using namespace DirectX;
* [[GeometricPrimitive]] - draws basic shapes such as cubes and spheres
* [[GraphicsMemory]] - helper for managing graphics memory allocation
* [Keyboard*](https://github.com/Microsoft/DirectXTK/wiki/Keyboard) - keyboard state tracking helper
* [[Model]] - draws simple meshes loaded from .SDKMESH or .VBO files
* [[Model]] - draws meshes loaded from .CMO, .SDKMESH, or .VBO files
* [[ModelMesh]], [[ModelMeshPart]], [[ModelBone]]
* [Mouse*](https://github.com/Microsoft/DirectXTK/wiki/Mouse) - mouse helper
* [[PostProcess]] - set of built-in shaders for common post-processing operations

@ -1,4 +1,4 @@
This is a class hierarchy for drawing meshes with support for loading models from legacy DirectX SDK ``.SDKMESH`` files and ``.VBO`` files. It is an implementation of a mesh renderer similar to the XNA Game Studio 4 (``Microsoft.Xna.Framework.Graphics``) Model, ModelMesh, ModelMeshPart, ModelBone design.
This is a class hierarchy for drawing meshes with support for loading models from Visual Studio 3D Starter Kit ``.CMO`` files, legacy DirectX SDK ``.SDKMESH`` files, and ``.VBO`` files. It is an implementation of a mesh renderer similar to the XNA Game Studio 4 (``Microsoft.Xna.Framework.Graphics``) Model, ModelMesh, ModelMeshPart, ModelBone design.
A Model consists of one or more [[ModelMesh]] instances. The ModelMesh instances can be shared by multiple instances of Model. A ModelMesh instance consists of one or more ModelMeshPart instances.
@ -426,7 +426,7 @@ The ``.SDKMESH`` [Samples Content Exporter](https://aka.ms/dxsdkcontentexporter)
## VBO
A ``.VBO`` file does not contain any material or attribute information.
> ``SDKMESH`` and ``VBO`` are 'uncompressed' formats meaning that all the vertex buffer and index buffer data is the same size on disk as it is in memory. For simple applications, samples, and demos this is perfectly acceptable. For very large models, however, the disk-space usage becomes a concern. For more, see [[Compressing assets]].
> ``CMO``, ``SDKMESH``, and ``VBO`` are 'uncompressed' formats meaning that all the vertex buffer and index buffer data is the same size on disk as it is in memory. For simple applications, samples, and demos this is perfectly acceptable. For very large models, however, the disk-space usage becomes a concern. For more, see [[Compressing assets]].
# Threading model
The ModelMeshPart is tied to a device, but not a command-list. This means that Model creation/loading is free threaded. Drawing can be done on any command-list, but keep in mind command lists are not free threaded. See [[EffectTextureFactory]] for threading restrictions on texture upload.
@ -439,7 +439,7 @@ When ``Draw`` is called, it will set the states needed to render with the Model'
The Model class assumes you've already set the Render Target view, Depth Stencil view, Viewport, ScissorRects, and Descriptor Heaps (for textures and samplers) to the command-list provided to ``Draw``.
# Remark
_DirectX Tool Kit for DirectX 12_ does not implement support for the Visual Studio mesh content pipeline ``CMO`` models or Directed Graph Shader Language (DGSL) effects.
_DirectX Tool Kit for DirectX 12_ does not implement support for Visual Studio Directed Graph Shader Language (DGSL) effects._
The DirectX 12 version of Model explicit separates the creation of the geometry rendering resources from the material setup, and the material setup takes places in two distinct steps. In the DirectX 11 version, this is all done as part of one loading operation. The requirements for the vertex layout were also less strict than in DirectX 12 due to the Pipeline State Object (PSO) design.

@ -64,7 +64,7 @@ The ``.SDKMESH`` format describes input layouts as Direct3D 9 style vertex decls
# Remarks
* The DirectX 11 version of _DirectX Tool Kit_ also defines ``VertexPositionNormalTangentColorTexture`` and ``VertexPositionNormalTangentColorTextureSkinning`` created to support the Visual Studio DGSL/CMO content pipeline which is not implemented for DirectX 12.
* The DirectX 11 version of _DirectX Tool Kit_ also defines ``VertexPositionNormalTangentColorTexture`` and ``VertexPositionNormalTangentColorTextureSkinning`` created to support the Visual Studio Directed Graph Shader Language (DGSL) effects pipeline which are not implemented for DirectX 12.
* *DirectX Tool Kit* built-in [[Effects]] that require a tangent-space compute the tangent/bi-tangent in the shader from the normal and texture coordinates to simplify usage.