问题标签 [direct3d10]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
direct3d - Direct3D9ex 和 Direct3D10 资源共享
使用 Direct3D9ex,可以在设备之间共享资源。是否也可以将这些共享资源与 Direct3D10 设备一起使用?
c++ - Direct3D10:没有 32 位 ARGB 格式?
我开始添加 d3d10 支持以配合我现有的 d3d9 图形后端。
问题是所有现有代码(在几个应用程序中......)都使用 ARGB 格式的颜色,但是我找不到与 d3d10 匹配的格式模式。d3d10 根本不支持 ARGB 颜色格式还是我错过了什么?如果我没有错过什么是在它们之间进行转换的好方法,它只需要将第一个字节移到末尾,这似乎是一个非常简单的概念,但是除了将颜色分解成它的组件之外,我无论如何都看不到这样做并重建它......例如:
graphics - D3D9 中对应的 CopyResource 方法
我知道使用 IDirect3D10::CopyResource(...) 接口在 D3D10 中复制顶点/索引缓冲区很容易。
如何在 D3D9 中做同样的工作?有没有类似的API?
c++ - 将值传递给着色器的问题
我在将值传递给我的着色器时遇到问题。我的应用程序编译得很好,但我的立方体对象不会着色。以下是我的大部分代码。
我与着色器通信的大部分代码都在 createObject 方法中
我的游戏.cpp
下面是我的着色器
效果.fx
c++ - 在 D3D10 的着色器常量缓冲区中设置纹理
好的,我在 D3D10 下编译了一个着色器。
我正在获取着色器反射以获取着色器中所有常量/全局变量的详细信息。但是我对某些事情有点困惑......如何将纹理设置为常量缓冲区?
我假设我不只是映射常量缓冲区并将 ID3D10Texture 指针复制到其中...我假设我使用 ID3D10ShaderResourceView 但我只是不确定如何在常量缓冲区中设置它。
任何帮助将非常感激!
directx - SlimDX 与 DX10 共享资源
我正在尝试 DX10 的共享资源功能,因为我的一个项目需要这个功能。但我找不到太多示例或代码,尤其是使用 SlimDX。根据 DX10 文档,我只需要将资源指定为共享,然后我可以使用来自另一个应用程序的 OpenSharedResource() 打开它。在 SlimDX 中使用一个简单的测试应用程序,我做了以下
但我不断收到此错误
我似乎无法弄清楚出了什么问题,因为 tex.ComPointer 可能不是 OpenSharedResource 的正确指针或 Texture2D 不受支持(没有明确提到它不在文档中)
通过指定 pHandle 传递给 CreateTexture 函数的另一种替代方法在 SlimDX 中不可用,或者我不知道。
有没有人成功尝试过这个?一些帮助将不胜感激。
谢谢
c++ - D3D10 HLSL:如何通过反射将纹理绑定到全局 Texture2D?
好的,假设我在着色器的某处有如下声明(注意我启用了旧版支持以在 DX9 和 DX10 之间共享着色器):
我可以毫无问题地编译着色器,但我对如何将 ShaderResourceView 绑定到“DiffuseMap”有点茫然。当我“反射”着色器时,我宁愿假设它会出现在常量缓冲区的变量中。它没有。事实上,我似乎无法在任何地方识别它。那么我怎么知道我应该绑定 ShaderResourceView 的纹理“阶段”(使用 DX9 术语)呢?
编辑:我发现我可以使用“GetResourceBindingDesc”来识别采样器名称。我不确定这是否对我有帮助:(
Edit2:同样我没有注意到它在 DX9 下也是一样的......即我只能得到采样器。
Edit3:我的 Texture2D 和 Sampler 看起来像这样:
现在在效果框架中,我可以通过语义“DiffuseTexture”获得 Texture2D。然后我可以将 ResourceView(D3D10)/Texture(D3D9) 设置为 Texture2D。唉,似乎没有任何方法可以使用沼泽标准着色器来处理“语义”(很高兴知道 D3D 是如何做到的,但是研究 D3D11 效果框架让我到目前为止一无所获。它似乎正在阅读它从二进制文件中,即编译后的数据中,我自己只能在其中看到“DiffuseSampler”)。
opengl - OpenGL/D3D:如何获取在 Windows 中全屏运行的游戏的屏幕抓取?
假设我有一个全屏运行的 OpenGL 游戏(Left 4 Dead 2)。我想以编程方式获取它的屏幕截图,然后将其写入视频文件。
我已经尝试过 GDI、D3D 和 OpenGL 方法(例如 glReadPixels),要么接收到空白屏幕,要么在捕获流中闪烁。
有任何想法吗?
就其价值而言,与我想要实现的目标类似的典型示例是 Fraps。
directx - 直接3D 10 & 11
direct3d sdk 10 和 11 之间是否存在很大差异(在编码方式上,...),例如 direct3d 9 和 10 之间的“它是”?
谢谢
c++ - 创建具有所有语义类型的 Direct3D 顶点是否会降低性能?
在 Direct3D 中,您可以创建您喜欢的任何类型的顶点。您可以拥有一个仅包含位置信息的简单顶点,也可以添加颜色信息、纹理信息等。创建输入布局时,您可以定义已实现的顶点的哪些部分:
我的问题是,我是否应该使用所有输入类型(位置、颜色、纹理等)定义一个顶点结构。或者我应该创建几个顶点结构,每个都有不同类型的输入。
使用多个类的缺点是您必须创建和维护多个类,并且知道要使用哪种类型的顶点可能会令人困惑。具有 1 个顶点结构的缺点是什么?