问题标签 [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.

0 投票
0 回答
345 浏览

c# - 混合 Direct2D 和 Direct3D (SlimDX) 时 Appcrash

在我的 Direct3D 10.1 应用程序中,我试图混合 D2D 和 D3D 绘图代码。c0000005虽然绘图代码工作正常,但应用程序总是在一段不确定的时间(几分钟,而不是几小时)后崩溃(在模块 d3d11.dll 中,使用 code )。我已经在下面发布了相关的代码部分,请询问您是否想查看任何其他位,我可以将它们添加到这个问题中。

DeviceCreationFlags

设备创建

Direct2D 初始化

绘图代码

提前致谢!

0 投票
3 回答
219 浏览

c++ - C++ 自动问题还是我的错误?!

是自动通用的并且可以与任何 API 一起使用,或者我没有正确使用它我想在这种情况下应该可以工作但是错误,如果我用具体类型更改它会工作,但是为什么呢?

在 IASetVertexBuffers() 函数中应该引用步幅和偏移量,但会弹出错误,如果我用 UINT 更改其中一个步幅或偏移量,它可以工作,但为什么自动不起作用?!

0 投票
1 回答
297 浏览

direct3d - msdn《Direct3D教程Win32示例》教程2

嗨,我正在尝试做https://code.msdn.microsoft.com/windowsdesktop/Direct3D-Tutorial-Win32-829979ef#content的 Tutorial2 。

在教程 1 中,我必须添加 #pragma comment(lib,"d3d11.lib") 才能使其工作。

在教程 2 中,我添加了 2 个 pragma,#pragma comment(lib,"d3d11.lib") 和 #pragma comment(lib,"D3DCompiler.lib")。但我仍然无法构建它。.hlsl 文件产生错误:{Error X1507 failed to open source file: 'Tutorial02.fx'}。我试图在我的计算机中找到 Tutorial02.fx 但找不到。知道这个文件在哪里或如何使它工作吗?我正在使用 Visual Studio 2015 社区版。

0 投票
0 回答
87 浏览

texture2d - Sharpdx Direct3D10 如何编辑纹理中的像素?

我需要使用 Sharpdx 和 dx10 更改纹理(Texture2D)中的某些像素

现在我得到了

Texture.Map(0, MapMode.Write, MapFlags.None, out stream);

但我得到一个“参数不正确”。例外。

我找到的所有解决方案都适用于 dx9 或 dx11 或除 Sharpdx 以外的其他东西,并且使用的方法在 Sharpdx.Direct3D10 中不存在,希望这里有人知道如何完成编辑纹理的简单任务......

0 投票
1 回答
278 浏览

c++ - 如何在 Direct3D 10 中进行纹理混合?

到目前为止,我发现您需要创建一个 ID3D10BlendState 对象,使用 D3D10_BLEND_DESC 结构调用 CreateBlendState(),然后调用 OMSetBlendState()。但我不知道如何调用 Draw() 函数以及如何 Apply() 纹理。我有需要与普通纹理混合的光照贴图纹理。顶点是否需要多个纹理坐标?我是否需要将每个多边形绘制两次,一次用于纹理,一次用于光照贴图?我也不想使用纹理数组。

提前致谢。

0 投票
1 回答
90 浏览

c++ - 语法错误:D3DX10Core 中的标识符“TEXTMETRIC”

我刚刚开始学习 D3D,我的代码运行良好,直到我在我的代码中实现了 D3D Shader Compiler Stuff。

我正在使用DirectXTutorials上的教程。如果我只是将代码从那里复制粘贴到一个新项目中,则程序编译得很好。

但是,与教程不同,我将代码放在不同的类中。当我尝试编译我的说法时,它给了我错误:语法错误:“TextMetrica”(编译 Direct3DRenderer.cpp)。

这是 Direct3DRenderer 文件:

TEXTMETRICA 标识符错误实际上是在 D3DX10Core.h 中。我已经查看了定义,该文件似乎给了我错误。这个标识符的定义应该在 gdi 文件中。

我已将包含路径和 lib 路径添加到 directx(2010 年 6 月)SDK,并尝试在项目对所有配置设置的附加依赖项中指定 d3dx10.lib、d3dx11.lib、d3d11.lib。我是新手,所以我不知道我做错了什么。如果需要更多代码,请对此发表评论。

0 投票
0 回答
19 浏览

alphablending - 如何使用 direct3d9、direct3d10 或 direct3d11 对保存的原始 argb 视频(图像和视频也可以)执行 alpha 混合?

我正在尝试使用 direct3d11 对视频执行 alpha 混合。我编写了下面的代码片段来实现这一点。我试图逐帧读取视频文件out2.argb并将其存储在rawData中。后来,我将该rawData传递给CreateTexture2D,但pTexture在执行 API 后仍然为空。所以我尝试将NULL传递给CreateTexture2D并将rawData传递给UpdateSubresourcepTexture再次保持为NULLDirectX 11 ID3DDevice::CreateTexture2D 初始数据失败 我已经在此处提到了问题和答案以使这项工作正常进行,但 API 返回失败。