core的类图关系:父--->子
ID3D11DeviceChild---->ID3D11Asynchronous--->ID3D11Query--->ID3D11Predicate
ID3D11DeviceChild---->ID3D11Asynchronous--->ID3D11Counter
ID3D11DeviceChild---->ID3D11BlendState,ID3D11CommandList,ID3D11DepthStencilState,
ID3D11DeviceContext,ID3DDeviceContextState,ID3D11SamplerState,ID3D11RasterizerState,
ID3D11InputLayout
ID3D11DeviceChild :所有数据的父,你可以认为继承了它相当于拥有了数据特性。它拥有两个能力:
1.获取ID3D11Device对象 GetDevice
2.保存数据:GetPrivateData和SetPrivateData
- static const char c_szName[] = "My name";
- hr = pContext->SetPrivateData( WKPDID_D3DDebugObjectName, sizeof( c_szName ) - 1, c_szName );
数据相关:
ID3D11Asynchronous :它用一个方法:GetDataSize 它的子代表着一个集合,存储数据的集合,想想看只有集合需要获取数据的长度。
ID3D11Query :它的成员方法没啥意思,就一个方法GetDesc。有意思的是它的用法:
- D3D11_QUERY_DESC queryDesc;
- ...
- ID3D11Query * pQuery;
- pDevice->CreateQuery(&queryDesc, &pQuery);
- pDeviceContext->Begin(pQuery);
-
- ...
-
- pDeviceContext->End(pQuery);
- UINT64 queryData;
-
- while( S_OK != pDeviceContext->GetData(pQuery, &queryData, sizeof(UINT64), 0) )
- {
- }
它能够获取某区间的数据。
ID3D11Predicate :(未知)
ID3D11Counter :它的用法跟ID3D11Query一样,只不过它是用来获取计数器的,主要用于对性能的检测。
设置状态相关:
ID3D11BlendState :此接口用于混合阶段,对混合的方式进行描述。
ID3D11DepthStencilState :创建深度缓存的时候,对深度缓存的方式进行描述。
ID3DDeviceContextState :对上下文的状态进行描述,次接口没有方法,全部依靠父类。
ID3D11SamplerState :采样器相关的状态描述,这里的采样是对纹理的采样,而不是多重采样 - -。
ID3D11RasterizerState :光栅化程序状态的描述。
1.创建:(都是由ID3DDevice对象进行创建)
- HRESULT CreateRasterizerState(
- [in] const D3D11_RASTERIZER_DESC *pRasterizerDesc,
- [out] ID3D11RasterizerState **ppRasterizerState
- );
2.使用:(都是对ID3DDeviceContext对象的一些状态进行设置,当然了有些状态也可以进行获取)
- void RSSetState(
- [in] ID3D11RasterizerState *pRasterizerState
- );
注:有些状态是设置给着色器的,那么它就会被不只一个方法给用到。
分享到:
相关推荐
JavaFX 3D可视化和组件库 如何建造 该项目由gradle管理。 要构建,请键入 ./gradlew assemble 要将其部署到本地Maven存储库,请输入: ./gradlew publishToMavenLocal FXyz3D Core的使用 FXyz3D具有许多不同的3D...
net.sourceforge.groboutils.groboutils-core:5, 亲测可用
赠送jar包:grpc-core-1.24.0.jar; 赠送原API文档:grpc-core-1.24.0-javadoc.jar; 赠送源代码:grpc-core-1.24.0-sources.jar; 赠送Maven依赖信息文件:grpc-core-1.24.0.pom; 包含翻译后的API文档:grpc-core-...
Oracle.Core:Essential.Internals.for.DBAs.and.Developers
C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition by Mark J. Price English | 24 Mar. 2017 | ASIN: B01N8UG78Q | 594 Pages | AZW3 | 23.26 MB Modern Cross-Platform Development ...
Telcordia GR-63-CORE:2012(Issue 4 ) NEBS Requirements:Physical Protection - 完整英文电子版(190页).zip
pythonocc提供3D建模和数据交换功能。 它旨在与CAD / PDM / PLM和BIM相关的开发。 最新版本: 特征 pythonocc提供以下功能: 从Python到几乎所有数千个OpenCascade C ++类的完整访问。 类和方法/函数共享相同的...
Core3D是用于开发强大的3D可视化和仿真应用程序的轻量级框架。 Core3D库提供了加快应用程序开发的结构和组织。 紧密耦合或相互关联的功能分为几组。 这些小组确保将关注点分离。 例如,场景的形状和视觉特征的描述与...
Bellcore GR-454-CORE:1997(Issue 1) Generic Requirements for Supplier-Provided Documentation - 完整英文版(230页).zip
swagger导出文档所需的jar ... mvn install:install-file -DgroupId=ch.netzwerg -DartifactId=paleo-core -Dversion=0.10.2 -Dpackaging=jar -Dfile=C:\Users\lizz\Downloads\paleo-core-0.10.2.jar
赠送jar包:httpcore-4.4.13.jar; 赠送原API文档:httpcore-4.4.13-javadoc.jar; 赠送源代码:httpcore-4.4.13-sources.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
Telcordia GR-20-CORE:2008(Issue 3) Generic Requirements for Optical Fiber and Optical Fiber Cable - 完整英文版(267页).zip
java jar包 javax.media:jai_core:1.1.3.jar 用于maven下载不下来。。。
核心3D Core3D 是用 Objective-C 编写的自定义 3D 引擎,为游戏 CoreBreach 提供动力
赠送jar包:httpcore-4.4.14.jar; 赠送原API文档:httpcore-4.4.14-javadoc.jar; 赠送源代码:httpcore-4.4.14-sources.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
赠送jar包:httpcore-4.4.10.jar; 赠送原API文档:httpcore-4.4.10-javadoc.jar; 赠送源代码:httpcore-4.4.10-sources.jar;...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
赠送jar包:jackson-core-2.7.3.jar; 赠送原API文档:jackson-core-2.7.3-javadoc.jar; 赠送源代码:jackson-core-2.7.3-sources.jar; 赠送Maven依赖信息文件:jackson-core-2.7.3.pom; 包含翻译后的API文档:...
赠送jar包:assertj-core-3.21.0.jar; 赠送原API文档:assertj-core-3.21.0-javadoc.jar; 赠送源代码:assertj-core-3.21.0-sources.jar; 赠送Maven依赖信息文件:assertj-core-3.21.0.pom; 包含翻译后的API文档...
工作正在进行中3d-camera-core 3D 相机的通用接口。 该模块是一个缓存层,用于从一组生成矩阵中维护坐标系转换和计算相机属性。 该模块旨在用作通用接口,不应直接需要。坐标注意事项按照惯例,我们将定义 4 个不同...