Managed DirectX 中的的帧率问题

s334207430 2008-08-22 02:21:39
Device device;

...

//初始化Device
PresentParameters parame = new PresentParameters();
parame.Windowed = true;
parame.SwapEffect = SwapEffect.Discard;
graphicsDevice = new Microsoft.DirectX.Direct3D.Device(
0,
Microsoft.DirectX.Direct3D.DeviceType.Hardware,
gameWindow, //一个窗口
CreateFlags.SoftwareVertexProcessing,
parame
);

......

device.BeginScene();
device.Clear(ClearFlags.Target, Color.Black, 1, 0);
device.BeginScene();
device.Present();

什么都不画的情况下, device.Present(); 这句执行要15到16毫秒时间,也就是维持在每秒60帧的速度.
这时CPU很空闲.
请问能不能去掉这个限制, 让帧数到极限, CPU 100%工作
...全文
107 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
s334207430 2008-08-23
  • 打赏
  • 举报
回复
原来是
parame.PresentationInterval = PresentInterval.Immediate;
默认要等待屏幕刷新.

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧