我目前正在编写和应用以测试人类视觉。由于目前的程序,我使用VB.Net和DirectX 9按需在屏幕上显示激励。根据需要,我只是意味着包含绘制刺激的代码并具有device.present调用的renderscene方法不存在于不断绘制帧的单独线程中。每当我需要改变刺激时,我只需要调用渲染方法,刺激不超过每秒一次,通常甚至更少。这被认为是不好的形式吗?我在弄清楚如何处理DeviceLostExceptions时遇到了一些麻烦(例如在alt-Tab或ctrl-alt-delete之后),因为我发现的大多数示例代码假定程序不断渲染场景。注意:我知道托管代码的DX是折旧的,我计划在有机会的时候用slimdx重写显示代码。
答案 0 :(得分:1)
这种方法本身并没有错。
这很不寻常,因为DirectX通常用于游戏,而在游戏中,你通常需要尽可能快地重绘场景,无论如何。 (事情通常总是在屏幕上移动,游戏必须尽可能地响应。)
但是如果你不需要这种响应,如果你的场景大多是静态的,那么只有当要渲染的内容发生变化时,渲染才会出现问题。