directx相关内容

3D 屏幕空间光线投射/拾取 DirectX9

我需要根据特定深度(用于光线投射)将 2D 鼠标坐标转换为 3D 世界坐标.我没有直接在 C++ 中使用 DirectX,我使用的是专有语言,但如果你用 C++ 或伪代码(首选 C++)给我答案,我可以转换它. 我可以访问世界矩阵、视图矩阵和投影矩阵以及各种矩阵操作功能. 如果需要将 vector4 乘以 matrix4,我唯一可以使用 vector4 和 matrix4 的函数是 t ..
发布时间:2021-11-25 00:59:35 C/C++开发

模型视图投影矩阵的用途

我们使用模型视图投影矩阵的目的是什么?为什么着色器需要模型视图投影矩阵? 解决方案 模型、视图和投影矩阵是三个独立的矩阵.模型从对象的局部坐标空间映射到世界空间,从世界空间到相机空间的视图,从相机到屏幕的投影. 如果您将所有三个组合在一起,您可以使用一个结果从对象空间一直映射到屏幕空间,使您能够计算出需要从传入的可编程管道传递到下一阶段的内容顶点位置. 在旧的固定功能管道中,您 ..
发布时间:2021-11-25 00:35:32 C#

如何实现平滑的切线空间法线?

我正在尝试向我的应用程序添加凹凸贴图功能,但我得到了非常多面的模型: 发生这种情况的原因是因为我正在计算每个面的切线、副法线和法线,而完全忽略了我从模型文件中获得的法线. 计算目前使用三角形的两条边和纹理空间向量得到切线和副法线,然后通过叉积计算法线.模型加载后,这一切都在 CPU 上完成,然后将值存储为模型几何的一部分. vector1 = vertex2.coords - ve ..
发布时间:2021-11-25 00:33:32 C/C++开发

OpenGL 或 Directx 中的离屏渲染

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

在 DirectX 11 中渲染精灵的最佳实践是什么?

我目前正在尝试习惯 DirectX API,我想知道在 DirectX 11 中渲染精灵的常用方法是什么(例如用于俄罗斯方块克隆). 是否有与 ID3DX10Sprite 类似的界面,如果没有,在 DirectX 11 中绘制精灵的常用方法是什么? 编辑:这是对我有用的 HLSL 代码(投影坐标的计算可以做得更好): struct SpriteData{浮动2位置;float2 大小 ..
发布时间:2021-11-24 21:48:20 C#

如何在 C# 中绘制简单的图形?

我只想在 C# 中绘制简单的 2D 对象,例如圆、线、正方形等.我怎么做?回到 Turbo C++ 时代,我记得初始化一些图形库来做同样的事情.我需要在 .NET 中做类似的事情吗?3D 对象有什么不同吗?DirectX 之类的东西会让这更容易吗?非常感谢任何指向教程或示例的链接. 解决方案 正如其他人所说,请查看 系统绘图.(我只是为了完整性而重复这一点.) System.Drawing ..
发布时间:2021-11-24 21:19:03 C#/.NET

用于 DirectX 的 GUI API?

除了MFC、WIN32、Winforms之外,还有没有可以和DirectX一起使用的GUI API和 WPF? 解决方案 如果您要进行自己的 DirectX 渲染,则可以对公开 HWND 的窗口使用任何 GUI 技术. 只需在您想要的任何工具包中使用“面板"等效项,并将其句柄 (HWND) 输入 DirectX 以初始化设备.无论您使用 MFC、Windows Forms、WPF、Q ..
发布时间:2021-11-15 02:02:43 其他开发

将鼠标光标隐藏在 Windows 中的特定客户区上

我将 Directx 嵌入到我的应用程序的子窗口中,并希望仅在它位于该客户区上方时隐藏窗口光标.我知道如何在一般情况下隐藏光标,并且确实设法找到了一个临时示例,如果只在光标不在任何客户区域上方时显示它,但这对此没有帮助.如何仅在光标位于特定客户区(/子窗口)上方时隐藏光标? 编辑:这与我得到的一样接近,但光标在 dx 区域上方不可预测地闪烁(随着鼠标移动) case WM_SETCURSO ..
发布时间:2021-09-25 20:12:06 C/C++开发

是否可以在 VS 代码中使用 monogame?

我使用的是 iball 笔记本,但我没有足够的内存来安装 Visual Studio.我在使用 VS 代码时没有问题,我能够制作和创建控制台应用程序的可执行文件.我需要学习游戏开发,但每个人都说我需要为它安装visual studio 不过,我确实找到了有关该主题的关于 monogame 的 Fourm,并发现可以(至少在 Linux 上)在 VS 代码中使用 Monogame. ht ..
发布时间:2021-09-19 20:03:54 其他开发

DirectX 9至11 OpenSharedResource疯狂地泄漏内存.难道我做错了什么?

我一直在努力解决软件中的内存泄漏问题,其中共享内存会慢慢用尽我的应用程序的虚拟地址空间.从内存泄漏的数量来看,它很明显是纹理对象的形式. 我已将错误隔离到以下代码示例.我创建了一个可共享的DX9纹理对象,从D3D11设备打开它,然后释放它.在此示例中,在Windows 8.1的NVIDIA GeForce 780 Ti上运行,我的32位进程很快用完了VAS,因为这些纹理似乎没有释放. ..
发布时间:2021-04-30 20:25:11 C/C++开发

带有梯度的神秘Direct2D内存泄漏

我有一个基于SharpDX的C#应用​​程序.在某些情况下,允许用户编辑线性渐变,但是由于我没有找到修改 ID2D1GradientStopCollection (又称为 SharpDX.Direct2D1.GradientStopCollection )的方法,我只是在为用户调整渐变光阑的偏移量的每一帧设置并重新创建渐变. 但是,我注意到,如果我将渐变停止调整了足够的次数(即,在每秒重新创 ..
发布时间:2021-04-30 20:24:40 C#/.NET

C2065未声明的标识符

我遇到了问题,但我不知道为什么.我不愿此来学习DirectX.我使用了此来配置解决方案. 这是我的代码: 标题: #include#include#include#include#include#include#include#pr ..
发布时间:2021-04-30 20:24:36 C/C++开发

在Windows游戏全屏模式下覆盖单词/数字(例如在Fraps中)

我认为很多人使用应用程序"Fraps"来录制游戏视频.我用它来显示游戏中的FPS(每秒帧数).游戏运行时,Fraps可以在屏幕的一角显示数字. 我想显示处理器的核心温度.我会发现温度,但我需要知道如何在游戏中显示?(我需要它来测试游戏中的核心温度,因为Everest/AIDA64的压力测试不会给系统带来太大的负担. 想使用C#(但可以收听所有解决方案,C ++,Java) 范例游戏: ..
发布时间:2021-04-30 20:24:28 C#/.NET

Windows 8 SDK中保留哪些DirectX组件?

背景:我正在Visual Studio 2013中进行开发,目标是在Windows 7上运行的.Net 4.5.我一直试图使DirectX在WPF上下文中运行,并被称为SharpDX.,并使用该示例程序: http://sharpdxwpf.codeplex.com/SourceControl/latest#SharpDX.WPF.sln 当我尝试构建它时,出现错误,因为缺少'd3dcomp ..
发布时间:2021-04-30 20:24:25 其他开发

DirectX11非固态线框

我正在尝试使用C ++在DirectX11中绘制100x100网格,但是会发生以下问题: 对于Direct3D 11,您可以使用MSAA(这是常规的抗锯齿选项),或者如果不使用MSAA,则可以使用特定的行算法.请参见 D3D11_RASTERIZER_DESC AntialiasedLineEnable 和 MultisampleEnable . 请参见别名和 ..
发布时间:2021-04-30 20:24:22 C/C++开发

NSight图形调试无法启动

我正在尝试使用NSight在VS2012中调试HLSL着色器,但无法启动. 当我单击“开始图形调试"时,似乎启动了应用程序片刻,然后将其关闭(NSight的输出窗口显示了几行“着色器已加载"/“着色器已卸载"行).Windows事件日志不显示任何内容("NVIDIA Network Service"无法启动,但据我所知,这与更新有关.) 另一方面,如果我开始进行GPU性能分析,那么它将 ..
发布时间:2021-04-30 20:24:12 其他开发