首页 >>  正文

锁表原因及如何处理

来源:baiyundou.net   日期:2024-09-21

近日《星空》总监Todd Howard证实,这款开放世界RPG新作在Xbox Series X/S主机上仅以30fps运行。虽然有玩家对此倍感失望,但也有人认为,这款游戏锁30fps的理由很充分,而且可能与三明治有关。

Howard接受采访时介绍了这一情况,表示开发商的目标是保持性能稳定并优先考虑画面效果。他说道:“我认为这没什么可意外的,想想我们之前的游戏就知道,我们的目标就是打造巨大的开放世界,完全动态,细节丰富,一切皆有可能。锁30fps就是为了追求精致度,要的就是这个效果。”

然而,很多购买了“次世代主机”Xbox Series X和PS5的玩家感觉高帧率是理所当然的事情,锁30fps有种背刺的感觉。特别是在《红霞岛》宣布锁30fps并首发翻车之后,《星空》的这一消息让部分玩家心中警铃大作,认为这可能意味着本作同样处于一个半成品的状态。

回到开头,为什么说锁帧可能与三明治有关呢?其实这里要说的是包括三明治在内的海量随机物品是决定游戏帧率的重要原因。

在E3 2021的《星空》预告片中,我们可以看到桌子上摆着一个吃了一半的三明治,旁边是一把科幻枪和一支保温瓶,这成为游戏营销的标志性元素,并在今年的发布会上延续下来。

在《星空》直面会上,我们干脆看到了铺满一桌子的三明治。出品人Jamie Mallory向观众表示,她在游戏中最喜欢做的事就是到处偷别人的三明治,然后囤在飞船货舱里。与《上古卷轴》和《辐射》等Bethesda开放世界RPG一样,本作中玩家依然可以拾取大量随机物品,将其放入背包,并稍后囤积在其它地方。但与《上古卷轴》和《辐射》不一样的地方在于,《星空》里面有数以千计可供探索的行星,而不只有一张地图。

Digital Foundry分析师John Linneman在推特上表示:“虽然这是一个视频梗,但这个偷三明治的概念表明了游戏为什么难以实现60fps的原因。与之前的B社游戏一样,《星空》貌似会追踪世界中任意物体的地点和位置。鉴于这些物品分部广泛,情况就会非常复杂。玩家在这方面自由度过高,以至于游戏无法将帧预算控制在16ms以下,就算是降低分辨率也无法解决这一问题。”

索尼圣塔莫尼卡工作室《战神:诸神黄昏》画师Dannie Carlone也发表了类似观点。他不认为锁30fps代表这款游戏是半成品:“在这个规模下以60fps运行会对画面细节产生巨大影响。我感觉他们想要实现无缝画面,减少物体突然载入的现象。”他还推测Xbox Series X/S上的帧率和分辨率是一种刻意的权衡,以此提高图像质量:“他们想要将游戏锁定在4K/30fps,并在这个规模上将画面效果提升到一个高水平。”

Linneman在Digital Foundry最新一期技术分析节目中对《星空》的画面进行了同样论述:“一切取决于开发者的意图,这也是他们能实现自身愿景的最大帧率。”Linneman推测游戏的性能瓶颈可能在于CPU,因为游戏世界里存在这复杂的互锁系统和持续存在的物体,这更像是一种激进的尝试,而不是缺陷下的摆烂。

Xbox游戏工作室负责人Matt Booty承诺《星空》将是B社史上首发bug最少的一款游戏,而且如果首发画面能达到预告片水平的话,玩家应该就会非常满意了。

","gnid":"955c8facd82c7786a","img_data":[{"flag":2,"img":[{"desc":"","height":"889","title":"","url":"https://p0.ssl.img.360kuai.com/t01e4efc7585ba3fd5f.jpg","width":"1586"},{"desc":"","height":"892","title":"","url":"https://p0.ssl.img.360kuai.com/t01822c38e4f4500be0.jpg","width":"1588"},{"desc":"","height":"893","title":"","url":"https://p0.ssl.img.360kuai.com/t01b2404d7e00bf52cb.jpg","width":"1588"}]}],"original":0,"pat":"art_src_3,otherc,fts0,sts0","powerby":"hbase","pub_time":1687053120000,"pure":"","rawurl":"http://zm.news.so.com/12648ed9c4c1799aac55bc50cccc1fe5","redirect":0,"rptid":"0c95f29a29d09d76","rss_ext":[],"s":"t","src":"3DM游戏网","tag":[{"clk":"kgame_1:三明治","k":"三明治","u":""},{"clk":"kgame_1:xbox","k":"xbox","u":""},{"clk":"kgame_1:rpg","k":"rpg","u":""},{"clk":"kgame_1:上古卷轴","k":"上古卷轴","u":""},{"clk":"kgame_1:游戏","k":"游戏","u":""}],"title":"《星空》为何锁30fps?海量三明治或成主要原因

戚鸦倪4202Oracle数据库中为什么一到月初执行过程就会锁表 -
裘委司13049475356 ______ 简单地说,锁是为了保证数据的一致性,锁不止存在于oracle,其他数据库一样有,只不过机制上可能大相径庭.至于什么样的操作会锁表,其实锁的种类很多,你所说的锁表大概说的是行级锁——也就是事务锁吧.比如一个update语句,被update的行上会有锁——能阻塞其他事务对这些行进行修改的锁,虽然这时候这张表上也有表级锁,但这个表级锁并不影响其他事务对表中的其他行进行修改,只是会阻碍对这张表的DDL操作.

戚鸦倪4202oracle 锁表时,怎么查出是哪些SQL语句导致了锁表 -
裘委司13049475356 ______ SELECT S.SID SESSION_ID, S.USERNAME, DECODE(LMODE, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(LMODE)) MODE_HELD, DECODE(REQUEST, 0, 'None', 1, 'Null', 2, '...

戚鸦倪4202mysql存储过程出现锁表锁行的情况怎么解决 -
裘委司13049475356 ______ 首先synchronized不可能做到对某条数据库的数据加锁.它能做到的只是对象锁.比如数据表table_a中coloum_b的数据是临界数据,也就是你说的要保持一致的数据.你可以定义一个类,该类中定义两个方法read()和write()(注意,所有有关该临界资源的操作都定义在这个类中),再定义一个静态变量作为锁就可以了.

戚鸦倪4202oracle表在什么情况下会被锁住 -
裘委司13049475356 ______ 在对指定表做append操作,其他再做truncate时候,会产生锁表,如下验证步骤, 1、创建测试表, create table test_lock(id number, value varchar2(200)); 2、执行append语句;并且不做提交,insert /*+append*/ into test_lock values(1,1); ...

戚鸦倪4202sql server 怎么查找锁表原因 -
裘委司13049475356 ______ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 --查看被锁表: select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_type='OBJECT' --spid 锁表进程 --tableName 被锁表名 -- ...

戚鸦倪4202如何解除Oracle 帐号锁定 -
裘委司13049475356 ______ 查询锁表 SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id = s.sid; 2解锁--释放SESSION SQL: --alter system kill session 'sid, serial#'; ...

戚鸦倪4202sql server 查询哪条语句引起的锁表 -
裘委司13049475356 ______ 1、select * from sys.dm_tran_locks或sp_LOCK 查看request_node 字段中为'X'(排他锁)或'IX'(意向排他锁)2、用sp_who2 + pid(进程ID) 查看进程的详细信息3、用dbcc inputbuffer(pid) 查看一起死锁的语句内容 以上方法应该能解决你的问题.

戚鸦倪4202sqlserver怎么清除死锁 -
裘委司13049475356 ______ 查询语句的表名后加(nolock)少用临时表和group by HAVING.这是与检测死锁相配套的一种措施.当检测到系统中已发生死锁时,须将进程从死锁状态中解脱出来.常用的实施方法是撤销或挂起一些进程,以便回收一些资源,再将这些资源分配给已处于阻塞状态的进程,使之转为就绪状态,以继续运行.死锁的检测和解除措施,有可能使系统获得较好的资源利用率和吞吐量,但在实现上难度也最大.

戚鸦倪4202怎样解锁数据表 -
裘委司13049475356 ______ 方法一:1.首先,利用Excel快捷键"Ctrl + A"全选所以的单元格,然后,右键选择“设置单元格格式”.2.在弹出的“单元格格式”中选择“保护”,取消“锁定”前面的钩去掉.方法二:1.打开文件.2.工具---宏----录制新宏---输入名字,如“...

戚鸦倪4202oracle如何解锁表 -
裘委司13049475356 ______ 一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库.现在提供一种方法解决这种问题,那就是在ORACLE中杀不掉的,在OS一级再杀.1.下面的语句用来查询哪些对象...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024