directx相关内容

DirectX Release build 通过 VS2010 工作,但不是 exe

我已经通过 Google 访问 Stack Overflow 好几年了,但到目前为止还没有问/回答任何问题,所以就这样吧. 基本上我有一个 3D 渲染框架,用于在 DirectX 11 中设置绘图模型和地形.一切正常,通过 Visual Studio 2010 运行调试或发布版本时没有问题. 但是,当我导航到我的文件夹并独立运行可执行文件时,只有调试版本有效.Release 版本显示我 ..
发布时间:2021-11-25 03:07:49 C#

opengl 中的顶点缓冲区

我正在制作一个用于个人学习的小型 3d 图形游戏/演示.我知道 d3d9 并且对 d3d11 了解很多,但目前对 opengl 知之甚少,所以我打算抽象出图形的实际渲染,以便我的场景图和“上面"的所有内容几乎不需要了解如何实际绘制图形.我打算让它与 d3d9 一起工作,然后添加 d3d11 支持,最后添加 opengl 支持.就像学习 3d 图形和抽象的学习练习一样. 虽然此时我对 open ..
发布时间:2021-11-25 02:56:13 C#

OpenGL 或 Directx 中的离屏渲染

我希望能够在没有用户上下文或登录用户的服务器上使用硬件加速来渲染复杂的 2D 和 3D 图像.到目前为止我能做的最好的事情是 Mesa3D,但因为它是纯软件 3D渲染它很慢并且没有利用视频硬件加速.可以是 Windows 或 Linux.到目前为止,我的大部分工作都是在 Windows 中完成的. 有关如何使用 OpenGL 或 DirectX 执行此操作的任何建议? 解决方案 对于 ..
发布时间:2021-11-25 02:43:48 C#

3D 空间(模型/世界、视图/眼睛、投影)

这不是一个问题,但我很困惑什么 3D 空间对应什么.我习惯于听到模型、视图、投影空间,但在我的工作中他们使用世界、眼睛、投影.我没有意识到 World 和 Eye 是模型和视图的同义词,所以如果有人对此有任何困惑,我发现以下说明可以提供帮助(希望它会帮助你). 局部空间:这些是在 3Ds Max 或任何其他渲染程序中构成 3D 模型的坐标.它定义了 3D 模型本身的顶点空间. 模型/世 ..
发布时间:2021-11-25 02:39:13 C#

3D 图形批处理

很多网站/文章都说“批量!批!批!'.有人可以解释一下“批处理"在着色器方面的含义吗? 也就是说,确实 改变纹理 更改任意着色器变量 意思是不能“批量处理"? 解决方案 总结它的最简单方法是尝试尽可能少地调用 API 来绘制您需要绘制的内容.使用顶点数组或 VBO(在现代 API 中甚至不是可选的)、纹理图集和避免状态更改的需要都有助于实现这一点.在您转身并设置下一个绘 ..
发布时间:2021-11-25 02:32:38 C/C++开发

3D 图形批处理

很多网站/文章都说“批量!批!批!'.有人可以解释一下“批处理"在着色器方面的含义吗? 也就是说,确实 改变纹理 更改任意着色器变量 意思是不能“批量处理"? 解决方案 总结它的最简单方法是尝试尽可能少地调用 API 来绘制您需要绘制的内容.使用顶点数组或 VBO(在现代 API 中甚至不是可选的)、纹理图集和避免状态更改的需要都有助于实现这一点.在您转身并设置下一个绘 ..
发布时间:2021-11-25 02:32:19 C/C++开发

双线性插值 - DirectX 与 GDI+

我有一个 C# 应用程序,我为它编写了 GDI+ 代码,该代码使用位图/TextureBrush 渲染来呈现 2D 图像,可以应用各种图像处理功能.此代码是模仿现有 DX9 代码的应用程序中的新路径,它们共享一个公共库来执行所有向量和矩阵(例如 ViewToWorld/WorldToView)操作.我的测试台包含 DX9 输出图像,我将这些图像与新 GDI+ 代码的输出进行比较. 一个简单的 ..
发布时间:2021-11-25 02:31:27 C#/.NET

在 3D 游戏中模拟鼠标移动?

嗨我在 CodeBlocks IDE 中使用 C++ 和 OpenCV 制作了一个人机界面来使用手指控制鼠标http://www.youtube.com/watch?v=-q5aXTg0pVE我想在荣誉勋章之类的3D游戏中使用这个 首先我使用 SetCursorPos(x,y) 它不起作用所以我切换到 SendInput 和 mouse_event.他们确实解决了角色开始指向所有随机方向并自 ..
发布时间:2021-11-25 02:27:51 C/C++开发

在 Windows 桌面上动画 3D 对象

我需要在 Windows 桌面上绘制一个用户可以与之交互的 3D 对象(例如一只狗)并为其设置动画.用户交互假设点击、显示(不规则形状)对话框以供用户输入等. 您知道实现这一目标的具体方法吗? 我想我有几个选择,有什么建议,哪一个最好,最简单? WPF OpenGL DirectX XNA 是否有任何图书馆(免费或付费)可以提供帮助? 解决方案 我做了一些研究 ..
发布时间:2021-11-25 02:26:29 C#

现代 GPU 上的纹理更改(和其他状态更改)成本

我正在编写一个基于场景图的图形引擎用于建模.我正在使用 XNA 4.在我读过的很多地方,在渲染过程中应该最小化纹理变化(和其他状态变化)(所以我必须按材质等对我的图元进行排序). 我在 XNA 4 中创建了一个小型测试应用程序,它使用单个纹理渲染数百个 stanford bunny 模型,然后切换 2 个不同的纹理.渲染时间没有区别(但是我使用了大约 100x100 的小纹理). 所以 ..
发布时间:2021-11-25 02:24:16 C#

使用 DirectX 渲染 BMP、JPEG 或 PNG 图像?

如何在 Windows 中使用 DirectX 以 3D 形式呈现 BMP、JPEG 或 PNG 图像文件?(例如,假设我想渲染四个图像,使它们看起来像一个小隔间之类的东西.) 我已经看到使用 Java OpenGL 库轻松完成此操作(我认为是 JME?),但似乎 DirectX 需要纹理,并且不接收常规图像.:( 这是正确的吗?如果是这样,我如何以编程方式将其转换为纹理? 解决 ..
发布时间:2021-11-25 02:22:30 C#

4 元素向量(3D 数学)

为什么很多 3D API 的 Vector 类(即 Vector4(x, y, z, w) )中有 W 项?是否有绝对需要 W 项的数学运算? 解决方案 这是 3D 空间中点的特殊表示,称为 齐次坐标. 它们只是在 3D 空间中描述点的另一种方式.它们在 3D 图形中被大量使用,因为它们有一些优点:它们使一些公式更简单,并且它们允许您表示“无穷远点"(或“无穷远线"等,具体取决于维度 ..
发布时间:2021-11-25 02:20:02 C#

Direct3D中的矩阵多阶

关于在 Direct3D 中乘以矩阵以获得结果,我收到了两个相互矛盾的答案.教程确实说明从左到右相乘,这很好,但这不是我想象的方式. 这是一个例子: OpenGL(从上到下阅读): GLRotatef(90.0f);GLTranslatef(20.0f,0,0); 所以你想象世界轴旋转了 30 度.然后你在现在旋转的 x 轴上平移 20.0,这样看起来你是在世界 y 轴上上升. ..
发布时间:2021-11-25 02:16:30 C#

为球体生成顶点

在 DirectX 移动照明示例中,圆柱体以下列方式生成: for( DWORD i=0; i 是否有类似的方法可以在 DirectX Mobile 中为球体生成顶点(作为三角形条或其他形式)?(AFAIK 没有 D3DMXCreateSphere 方法) 最终的解决方案.感谢四分之一的帮助. void CreateSphere(){const int iFactor = 20;int ..
发布时间:2021-11-25 02:03:35 C/C++开发

在 DirectX 9 中加载 .X 模型

我正在尝试为我的投资组合制作我的第一个 3D 演示,但我在加载多个 .X 文件时遇到问题,因此我可能能够制作一个简单的游戏. 我已经阅读了 msdn 教程和 Frank Luna 的书,这些书展示了如何在一个网格中加载.我什至尝试修改 franks 演示代码,但我发现他的代码只能做他打算做的事情.修改它只是一个完全令人头疼的问题. 我想知道是否有人知道并提供很好的帮助库或带有示例代码的 ..
发布时间:2021-11-25 01:54:56 C/C++开发

WinForms 中的 3D?

如何在 WinForms 中使用 3D 视图? 我应该使用 XNA 吗? 我找到了这个教程:http://create.msdn.com/en-US/education/catalog/sample/winforms_series_1 但我不明白如何将 ContentLibrary 和 Content 添加到我的 WinForms 项目中. 或者可以使用 Scaleform ..
发布时间:2021-11-25 01:32:47 C#/.NET

在 WPF 中绘制 3D 线

我正在开发 CAD 应用程序并考虑使用 WPF 来呈现我的实体. 但是好像 WPF 不支持绘制 3D 线.有没有什么方法可以在 WPF 中绘制 3D 线条? 我不喜欢为我需要绘制的每个线实体创建一个网格,因为我担心,这会对我造成重大的性能问题,因为我必须在我的应用程序中创建许多线实体. 如果通过 WPF 无法做到这一点,是否可以在 DirectX 9 或 10 中做到这一点?我可以在 ..
发布时间:2021-11-25 01:24:22 C#

如何计算像素着色器深度以将在点精灵上绘制的圆渲染为与其他对象相交的球体?

我正在编写一个着色器,通过绘制阴影圆圈来在点精灵上渲染球体,并且需要编写深度分量和颜色,以便彼此靠近的球体正确相交. 我使用的代码类似于 Johna Holwerda 编写的代码:> void PS_ShowDepth(VS_OUTPUT input, out float4 color: COLOR0,out float depth : DEPTH){float dist = length ..
发布时间:2021-11-25 01:21:38 C#

低多边形锥体 - 尖端的平滑阴影

如果你将一个圆柱体细分为一个 8 边棱柱体,根据它们的位置计算顶点法线(“平滑着色"),它看起来很不错. 如果你将一个圆锥细分为一个 8 边棱锥,根据它们的位置计算法线,你会卡在圆锥的尖端(技术上是圆锥的顶点,但我们称之为尖端以避免与网格顶点). 对于每个三角形面,您希望沿着两条边匹配法线.但是因为您只能在三角形的每个顶点指定一个法线,所以您可以匹配一条边或另一条边,但不能同时匹配两者 ..
发布时间:2021-11-25 01:10:55 C#

非交错顶点缓冲区 DirectX11

如果我的顶点位置是共享的,但我的法线和 UV 不是(以保留硬边等),是否可以在 DirectX11 中使用非交错缓冲区来解决此内存表示,以便我可以使用索引用它缓冲吗?或者我应该坚持在交错缓冲区中使用重复的顶点位置? 交错和非交错顶点缓冲区之间是否存在任何性能问题?谢谢! 解决方案 如何 有几种方法.我将描述一个最简单的. 只需创建单独的顶点缓冲区: ID3D11Buff ..
发布时间:2021-11-25 01:07:16 C/C++开发