首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将Direct3D9 CreateSphere与Direct3D11设备结合使用

将Direct3D9 CreateSphere与Direct3D11设备结合使用
EN

Stack Overflow用户
提问于 2015-01-12 13:53:42
回答 1查看 246关注 0票数 0

我是SlimDX新手,在遗留系统中工作。有一个Direct3D11设备正在使用,但我试图使用CreateSphere:

代码语言:javascript
运行
复制
SlimDX.Direct3D9.Mesh.CreateSphere(Direct3D9.Device,...)

有什么方法可以在CreateMesh设备上使用Direct3D11吗?强制转换到Direct3D9. Casting不是有效的强制转换。我不明白为什么一个新的API会删除像创建一个球体这样简单的特性。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-12 15:22:16

你问题的问题是你混淆了两件非常不同的事情。

DirectX API从来没有CreateSphere方法。这包含在帮助程序库DXUT中,该库已被Microsoft终止。

只需自己写或使用预先制作的网格。如果您不知道怎么做,那么您可能太依赖于助手库了。

当然,你的理解水平被这样一种感觉所背叛,那就是创建一个3D球体在某种程度上是一项简单的任务。事实并非如此。生成3D原语有很多不同的方法,这在很大程度上取决于您在做什么,这可能是DXUT最初停止使用的原因之一。有很多方法来排列球体的顶点(UV球面,Icosphere,.),很多方法来索引这些顶点,很多不同的顶点格式需要根据你正在做的事情进行不同的填充。

当这些问题根本不存在的时候--在可编程图形管道出现之前--拥有那些助手库仍然是有意义的。旧的固定管道是为相对简单的任务预先制造的,今天你有了更多的灵活性,因为你需要了解一些事情是如何完成的,比如HLSL,纹理映射,光计算等等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27903558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档