【问题标题】:Per-Pixel Lighting in WPFWPF 中的逐像素光照
【发布时间】:2014-07-14 14:46:36
【问题描述】:

是否可以通过使用它们的着色器效果在 WPF 3d 应用程序 (C#) 中实现逐像素光照?

我有一个在 WPF 中运行的基本 3d 应用程序,但它只显示 Gouraud 着色,通过将顶点之间的着色颜色值插入到多边形的内部。我尝试实现每像素照明方法,例如 Phong,但我意识到我似乎无法访问 WPF 像素着色器效果中的插值法线。 这就是 WPF 的局限,直接用 C++ 和 OpenGL/DirectX 比较好?

【问题讨论】:

标签: wpf shader phong


【解决方案1】:

据我所知,是的,这是 WPF 的限制...与 OpenGL 可以进行逐像素着色相反,WPF 只允许您使用网格几何体。

我认为一种方法是创建包含着色器效果的纹理,然后在每个三角形中应用它。 这将花费更长的计算时间,但应该可以工作。

问候

【讨论】:

  • DirectX 中也提供像素着色器。这是 WPF 的限制。将阴影放在纹理中是一种技巧,它没有考虑光线和运动,并且在移动物体、灯光或视点时会看起来非常错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-11
  • 2012-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多