rendering - 在 VTK / Paraview 渲染中关闭透明对象的阴影
问题描述
我正在寻找一种方法来防止透明对象在使用 VTK(或 Paraview)和 OSPRay 渲染时投射阴影。正如您在右侧的屏幕截图中看到的那样,这种效果非常烦人。
当然,它仅在存在地面时发生,如右图所示。在左图中,该地表不存在,因此不会出现这些令人不安的阴影。原则上看起来不错的东西。唯一的问题是,不透明物体的阴影也无法投影,看起来不太真实。因此这种方法失败了。
我想要实现的是两个示例图像的混合:
- 不透明的物体应该投射阴影
- 透明物体不应投射阴影,尤其是不要在两个物体之间的边界表面(在此示例中为地表块的底面)。
据我所知,没有办法在 VTK 中取消选择单个对象的阴影投射。只能控制整个渲染场景。我也尝试过使用 Paraview,希望 UI 中可以使用此功能。但它在这里也不起作用。
解决方案
我还不知道有什么方法可以做到这一点,因为 OSPRay 还没有公开这个控件。免费向 ParaView (gitlab.kitware.com/ParaView) 和 OSPRay (github.com/ospray/ospray) 提交功能请求,以帮助我们将其保留在我们的开发计划中。
推荐阅读
- flutter - 如何修复启动自定义启动画面时生成的错误?
- python-3.x - Python & Tensorflow & CUDA 环境设置问题
- unity3d - 在 Unity 中构建 Mapbox
- sqlite - 如何将 Ubuntu 18.04 sqlite3 从 3.13 升级到新版本 3.25
- ios - 使用“执行segue”传递错误返回nil?
- c - 如何在C中获取整数字节?
- javascript - 在 HTML5 Canvas 中将 eventListeners 与对象一起使用(无法在函数中获取对象属性)
- spring-boot - HaProxy 具有用于 Spring Boot 应用程序的负载平衡器
- python - 使用 sqlalchemy 连接到 sqlite3.Connection
- r - 使用 `rle` 函数和 `dplyr` `group_by` 命令映射分组变量