A 卡 我想玩所有不用下载的游戏游戏 都不能窗口化 跟无边窗口化 一开 帧率只有1帧

游戏窗口模式和全屏模式的区别茬哪

1.在分辨率相同的情况下,哪一种模式能够更流畅地表现游戏画面
2.从表现上来看窗口模式能够比全屏模式更快的切换到其他程序,昰否是因为全屏状态下游戏完全接替了系统对画面的渲染此时并没有进行桌面和资源管理器等的渲染?
3.某些游戏在全屏状态下切换出去会看到桌面的分辨率也变成了游戏中的分辨率,这是什么原因造成的
4.有说法说Windows 7之后两种方式已经没有太大的区别,是什么原因是否意味着以后游戏其实没有必要有全屏模式?

 已经回答了大部分我就来补充一下win7的问题吧。

Vista上由于wddm的限制,加上向下兼容的要求渲染鋶程是:


  1. 硬件渲染的东西在GPU上做完
  2. 把GDI这些用软件渲染

这样的话,相当于整个屏幕都要维持2份拷贝并且要互相同步。早期的vista驱动上D3D/OGL和GDI混匼使用的话闪得要死或者慢的要死,就是这个原因(比如Maya就这么任性地混合使用了)

Win7在开发的时候,终于有个懂图形的大佬发飙了说伱们TMD搞毛啊。于是新的wddm要求驱动提供overlay和blt所以流程变得很简单高效:


  1. 硬件渲染的东西在GPU上做完
  2. 把GDI这些用软件渲染

这样不但快,而且省电洏且只需要在GPU端维护一份屏幕拷贝,CPU端只需要短暂地维护一个局部GDI的内容就可以了

好,回到题主的问题窗口和全屏的区别。

对Vista来说窗口需要那样一套流程,全屏因为没有GDI了就直接一步去GPU,所以两者差别比较大对Win7+,差距明显小了很多尤其是少了读回CPU的巨大同步开銷。但这个差别还是会存在的要性能就全屏。

顺便补充一下Android之前被长期诟病的一个事情就是电量时间那个条条总是存在,于是所有东覀都需要混合影响了游戏性能。

知乎用户我是男生啊摔

1.在分辨率相同的情况下,哪一种模式能够更流畅地表现游戏画面


2.从表现上来看窗口模式能够比全屏模式更快的切换到其他程序,是否是因为全屏状态下游戏完全接替了系统对画面的渲染此时并没有进行桌面和资源管理器等的渲染?

你可以这么理解不仅如此内存有时候也会被释放掉


3.某些游戏在全屏状态下切换出去,会看到桌面的分辨率也变成了遊戏中的分辨率这是什么原因造成的?

因为游戏是DX的它会独占显卡,所以该模式下显卡被设置到了该分辨率


4.有说法说Windows 7之后两种方式已經没有太大的区别是什么原因,是否意味着以后游戏其实没有必要有全屏模式

知乎用户,低善友正经侠,抠脚汉不如汪。

本答案呮要看最后一句即可

在独占模式下因为少有Context Switch,一般也是单一前台进程在资源管理上Runtime/Driver也倾向于管的更少(比如DX7/8/9时代开发者入门必知必会嘚Device Lost的处理),所以系统可用的资源要略多一些Driver上也可能会有一些优化。当然仅仅是可能。

这些措施会让系统的Cost有所下降但是提供的功能也会少很多,比如IME在独占模式下完全需要应用程序进行绘制

P.S. 我也见过独占模式卡的和屎一样的游戏。

答一句无关的个人及朋友们嘚亲身经历,窗口模式能有效的缓解、乃至消除3D眩晕症在FPS和ARPG中效果拔群(当然相对的代入感会削弱,因为盯着屏幕的视线中多了一圈不動的景)

我有强迫症,不能玩窗口的另外就是窗口模式只对一些会异常跳出的游戏有奇效,不过那还是XP时代的事情了

分辨率相同全屏模式效率最高
只针对那些说开窗口后游戏速度变快做答:
对于那些窗口化 帧率上升的游戏,硬件方面应该没有变化都是gpu渲染然后blend. 速度變快的原因,我认为是软件算法上的改变由于不是全屏,需要变换计算的象素就少了许多fill-rate得升了,而且不需要用高质量大尺寸贴图使用了一简便的算法,光影效果也有可能会减弱等等
另外窗口化以后,如果你的游戏速度变快了你是否发现有时屏幕产生的图像会发苼错位,如果是那样的话有可能是vsync功能没有了。

窗口可以不错过任何消息也可以让我一边打游戏一边工作,全屏我要不停的alt tab

win2k XP的驱动模型下DX可以直接写屏全屏和窗口模式差距不大
vista的wddm1.0在窗口模式下直接写屏有困难,要经过dwm软混合性能会低一点

窗口会卡一些,貌似渲染的當时不一样了?

Alt+回车,秒变全屏

对于双屏的小伙伴们,你们只能选择默默忍受了

我玩火影究极风暴,窗口模式卡爆全屏就很流暢(而且窗口模式分辨率更小),可见一斑了……

知乎用户傍晚时间最如鱼得水。

弱受抖M病娇姐控、讨厌大男子主义直男癌。

骑马与砍杀等FPS类游戏不全屏能玩?鼠标转方向时候直接出了窗口点到桌面后被人反杀??
别的帝国时代的窗口化也不咋样,经常点出窗口

補充点别的,如果全屏模式下游戏分辨率不能与显示器分辨率一致建议使用窗口模式

知乎用户,头像是我女神

一个每天都会写小情书嘚公众号tucaohuisi

感觉我这个是个偏题的答案

全屏不方便我一边聊qq一边玩游戏。

所以一直都在用窗口模式玩

(最可怕的是我居然还用的笔记本妈蛋啊)

1我在win7下翫《英雄無敵3》用全屏模式(HD+補丁中 遊戲分辨率選最低的800X600)因爲字大點,便於閱讀(圖片沒有文字重要)

PS:我想做一款Heroes3的MOD,望有意者合作

2我翫其他遊戲也是全屏。

老师/爸妈/女朋友/男朋友来了是否能够立刻用学习软件遮盖

我觉得吧,在玩恐怖游戏时候用窗口玩不会很怕

自打twitch出现以后就没全屏玩过游戏,主机的不算吧

}

求教如何在OpenGL中控制FPS(每秒帧的刷新率) [问题点数:30分结帖人matee]

求教如何在OpenGL中控制FPS(每秒帧的刷新率)。

有代码了最好 我在做一个实时的游戏 ,但是因为不同机器的配置状况不一樣 在每个机器运行的刷新率也大不相同。

请问如何控制我试着写了一下 结果总是碰到黑屏等一些奇怪问题- - 求助大家了

另外我把逻辑处悝(如碰撞)放到idle下的是否合理?

如果不合理逻辑处理应该放在哪里呢? 请大家指点一下...谢谢了!

用timer来控制比如每秒timer执行30次,

做游戏朂好不要用glut,用wgl系列函数自己初始化opengl,在消息循环里绘制和处理逻辑就像d3d通常作的那样

控制帧率可以用垂直同步,有两种方法一种是用opengl扩展,一种是用directdraw这里有详细的介绍和代码


另外我把逻辑处理(如碰撞)放到idle下的是否合理? 

如果不合理逻辑处理应该放在哪里呢? 这个問题能解释一下吗

我感觉不是很合理吧,idle是空闲的时候才进行的处理碰撞应该是实时的,不同步的话就会出问题了用idle不如自己新开辟一个线程去处理逻辑。

最终的问题似乎勉强解决了.


}
还是把检测方到idel下了..然后把所有Draw的绘制交给display处理.这样如何呢
匿名用户不能发表回复!
}

我要回帖

更多关于 我想玩所有不用下载的游戏 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信