【问题标题】:Delphi DX11 Direct3D Vertex and Pixel Shader IssuesDelphi DX11 Direct3D 顶点和像素着色器问题
【发布时间】:2015-10-01 08:52:40
【问题描述】:

我正在尝试将一些 C++ DX11 Direct3d 高度图代码转换为 Delphi。我正处于一个几乎可以翻译整个代码的阶段,没有任何编译错误或运行时错误,但是我一生都无法在屏幕上渲染任何东西——我相信这可能是一个顶点/像素着色器问题。

我要翻译的代码在这里:

http://www.rastertek.com/tertut02.html

我正在使用这里的 JSB DirectX11 接口库:

http://www.jsbmedical.co.uk/DirectXForDelphi/

我知道 Direct3D 子系统工作正常,因为我能够更改渲染表面的背景颜色,但是,我只是没有在显示器上渲染任何多边形。

有很多代码我无法在此处上传,因此为方便起见,这是我的源代码的副本(没有任何目标文件/二进制文件)

https://www.dropbox.com/s/r90jbl6vz9gb3s7/Delphi%20Height%20Map.zip?dl=0

不幸的是,互联网上似乎没有很多 Delphi DX11 或 D3D 示例,所以我没有什么可以对代码进行基准测试。

如果有人能就可能出现的问题提供任何指示,我将不胜感激。就像我说的那样,代码编译并运行没有任何错误,但没有呈现任何内容。

提前致谢, 凯文

【问题讨论】:

  • 不幸的是,这不是 Stack Overflow 的工作方式。您可以在问题中放置多少代码/内容是有限制的,因为它应该尽可能短,以通过 MCVE 隔离您的问题。异地资源的链接在这里是禁止的,因为它们将来可能会被删除,使其对未来的读者毫无用处。更不用说,我们必须经过大量工作才能为您调试代码。
  • 你必须做一些调试。一个程序有效,另一个无效。他们分歧在哪里?这与现有的调试任务一样简单,因为您有一个正在运行的示例可用作模板。

标签: delphi directx direct3d vertex-shader pixel-shader


【解决方案1】:

您可以在这里查看如何使用 Delphi 使用 D3D11 进行基本渲染 - https://github.com/AntonAngeloff/DX11_Examples

不过,这些示例使用了另一种标题翻译。

【讨论】:

    猜你喜欢
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多