前言:古人云,菜鳥無罪,菜鳥有理。
所有老鳥皆由菜鳥而來,所有菜鳥總有一天皆能成為老鳥。
可是這時間,少則一年兩年,多則十年八年,其中苦味甘甜,
就是三天三夜也說不盡,道不完。前日偶然閒逛,
發現還是有很多新朋友在問一些雖然希奇古怪,
但是卻是非常基本的問題。所以,開辦這個新欄目,專門針對CS1.6,
只講述些最基本的問題,
整理出很多前人嘔心寫出的一些非常出色的文章,
以減少大家反覆使用GOOGLE的痛苦。
也可讓新人少走彎路,老鳥重新安裝完系統後不用重新尋找資料^_^
希望大家喜歡。
下面就是菜鳥開心大課堂的第一講:FPS和垂直同步。
你是否曾經為閃爍的屏幕而痛苦?
是否曾經在關鍵時刻遊戲停頓痛失好局?
你是否面對瀰漫的煙霧而痛苦不堪,卻苦無解決之良方?
你是否總覺得朋友機器運行CS是那麼流暢,屏幕看的是那麼舒服,
而自己電腦卻總無法達到此種功效呢?當然,
這顯然不是武林絕學「還我漂漂拳」所能達到,一切的奧秘,
全部都緣自三個看似普通,
卻不平凡的字母,FPS!而鎖定麻煩的FPS,
幾乎是所有同仁們裝好CS後第一位要解決的問題。
直到今天,相信很多新朋友仍然生活在60HZ的刷新率和70FPS之下。
所以,我們就來好好總結下這個問題。
一:充分瞭解FPS
首先,想打倒敵人就要先充分瞭解敵人。
何謂FPS?現在,請大家一起跟我念FPS,每秒幀數。
測量用於保存、顯示動態視頻的信息數量。
這個詞彙也同樣用在電影視頻及數字視頻上。
每一幀都是靜止的圖像;快速連續地顯示幀便形成了運動的假象。
每秒鐘幀數 (fps) 愈多,所顯示的動作就會愈流暢。
通常,要避免動作不流暢的最低 fps 是 30。
有些計算機視頻格式,例如 AVI,每秒只能提供 15 幀。
這是FPS的定義,可是在我這種外行的眼中,看了這個和沒看有什麼區別?
所以,我們只要理解一點,那就是,
99的FPS比70的爽,而穩定的FPS比不穩定的爽。
知道這點,一切都好辦。那麼,
該如何看自己CS的FPS是多少呢?
先進入CS1.6,用~鍵(就是數字1左邊的那個……什麼!
你用的是傳說中的人體工程學多媒體鍵盤?
那麼我什麼也沒有說過……)呼出控制台。
在控制台中寫下命令:cl_showfps 1,即可看到FPS,在屏幕左上角。
用net_graph 1也可以看到FPS,但是由於影響到視覺美觀,故不推薦。
現在就請大家仔細審視下這個帶有魔力的數字。
如果他穩定在99或者100,您可以完全藐視下文去蒙頭大睡。
如果是慘不忍睹的70或者跳的你自己都沒有辦法審視清楚,
那麼,就請繼續往下看……
二:傳奇的垂直同步
為什麼垂直同步堪稱傳奇?遠在遙遠的1.5時代,
關於垂直同步的問題曾經爭論不休,
而前輩狂楓飛揚也為此專門寫過一篇非常好的文章:誰動了我的垂直同步。
在這裡也把這篇舊文帖出,
希望能對大家有幫助。
--------------------------------------------------------------------------------
誰動了我的垂直同步 (作者:狂楓飛揚)
無論PC也好,CS也罷,道理總是越辯越明,
一些理論究竟是對是錯,剝繭抽絲,層層分析,相信大家都會有結果。
幾年前,看了很多所謂「技術文章」的我走了很多彎路,
今天,我不希望別人繼續走。
1、CS:1個基於HL引擎的MOD,FPS上限100。
每秒種最多只能顯示100個畫面,不會多,只會少。
診斷:
同學們一起來說,這句話說錯了幾處?
首先誰能告訴我什麼是HL引擎?因為我只聽說過HL2引擎,
Quake引擎。Fps上限是100?
在2004年9月說這樣的話我認為是對CS版本無情的蔑視。
希望多研究一下基本的CS理論知識,跟上時代的步伐。
2、顯示器刷新率(Hz):也可以說成是FPS,
根據帶寬與分辨率不同而改變。
帶寬越高,刷新率越高;分辨率越高,刷新率越低。
TIP:高帶寬高刷新率對減輕眼睛疲勞有幫助)
診斷:
刷新率單位為Hz,而Fps的含義是frames per second,單位為楨數。
他們等價了?難道數值可以相等的東西就可以互換麼?
帶寬=水平分辨率×垂直分辨率×最大刷新頻率,
卻遺忘了最重要的兩個字:最大 ,有沒有這兩個字,
意思上天壤之別。
話應該這樣說:帶寬越高,
在某個特定分辨率下,
所能達到的最大刷新率越高。原文的說法,
不知道是不夠嚴謹,還是就是如此錯誤認為。
3、正確安裝顯卡驅動,N卡推薦61.76 whql,A卡推薦最新驅動。
N卡都去用61?G2mx200和5700都推薦用這款麼?
4、推薦:一台帶寬在120MHZ的顯示器,CS分辨率在640X480 或800X600。
如果CS分辨率在1024下,顯示器帶寬要在160MHZ以上,
或是設置遊戲FPS為85。
一塊Geforce2以上的顯卡。
一個1G頻率以上的CPU。256M或512M的內存。
診斷:
推薦大家使用1G以上的CPU(不管是賽揚還是P4?),
G2以上的顯卡(姑且我們說G4mx400)這樣的配置來CS就夠了?
試圖流暢完美運行任何一款3D遊戲 值得玩家注意的是什麼?
毫無疑問,
最重要的兩點:CPU的浮點運算能力,足夠強大的顯示芯片。
推薦竟然完全忽視這些。
所以我和其他菜鳥一樣的驚詫。
5、以個人經驗,在CS中正確設置垂直同步可以使遊戲畫面更加流暢,
對此本人在高低檔配置機器做過實驗,已經得到證實。
診斷:
不夠嚴謹,因為很明顯筆者根本沒有在低檔機器上作過試驗。
我來告訴你,我來告訴大家我是如何識破的。
所謂低檔,必然有較差的顯示器,較差的顯卡,
較差的顯示器根本上不去刷新率100,
超頻刷新率更是會直接導致超出響應範圍的嚴重錯誤,
請問你如何實驗?
較差的顯卡關閉垂直同步尚且步履蹣跚,
請問你在打開垂直的前提下,如何流暢運行CS?
行了,其實一句話就可以概括這個文章,
首先提高了自身的刷新率到100,然後打開垂直同步功能,
自然可以使得fps為100,
但是不要忘記這僅僅是高端顯卡+不錯的顯示器的專利,
既然這樣,就不應該大張旗鼓的,
不分對象的宣佈出來。因為畢竟,
大多數玩家還和垃圾顯卡垃圾顯示器一起生活得很苟且。
附上關於我關於垂直同步的老貼,希望給大家幫助。
垂直同步,到底什麼是垂直同步?
幾乎所有試圖研究CS的fps的朋友,
都將不可避免地面對這樣一個名詞——垂直同步。
到所有的CS專業論壇去問如何提高fps,
得到的絕大多數回答也基本都是——關閉垂直同步。
當大家關閉了垂直同步,得到了較高一些的fps後,
你知道為什麼麼?今天,
飛揚和大家一起探討這個看似簡單的名詞:垂直同步。
本文與CS關係不是非常緊密,請朋友們選擇閱讀。)
1、要知道什麼是垂直同步,必須要先明白顯示器的工作原理。
顯示器上的所有圖像都是一線一線的掃瞄上去的,
無論是隔行掃瞄還是逐行掃瞄,顯示器,
都有2種同步參數——水平同步和垂直同步。
2、啥叫水平同步?啥叫垂直同步?
垂直和水平是CRT中兩個基本的同步信號,
水平同步信號決定了CRT畫出一條橫越屏幕線的時間,
垂直同步信號決定了CRT從屏幕頂部畫到底部,再返回原始位置的時間,
而恰恰是垂直同步代表著CRT顯示器的刷新率水平!
3、關鍵部分
為什麼是否關閉垂直同步信號會影響我們CS中的fps數值?
道理一點都不複雜,首先我們平時運行操作系統一般屏幕刷新率是多少?
大概一般都是在85上下吧,
那麼顯卡就會每按照85的頻率時間來發送一個垂直同步信號,
信號和信號的時間間隔是85的分辨率所寫一屏圖像時間。
如果我們選擇「等待垂直同步信號」
也就是我們平時所說的「垂直同步打開」),
那麼在遊戲中,或許強勁的顯卡迅速的繪製完一屏的圖像,
但是沒有垂直同步信號的到達,顯卡無法繪製下一屏,
只有等85單位的信號到達,才可以繪製。
這樣fps自然要受到操作系統刷新率運行值的制約。
而如果我們選擇「不等待垂直同步信號」
(也就是我們平時所說「關閉垂直同步」),
那麼遊戲中作完一屏畫面,顯卡和顯示器無需等待垂直同步信號,
就可以開始下一屏圖像的繪製,
自然可以完全發揮顯卡的實力。
但是,但是,但是,不要忘記,
正是因為垂直同步的存在,
才能使得遊戲進程和顯示器刷新率同步,使得畫面平滑,
使得畫面穩定。取消了垂直同步信號,
固然可以換來更快的速度,但是在圖像的連續性上,
性能勢必打折扣。
這也正是很多朋友抱怨關閉垂直後發現畫面不連續的理論原因!
--------------------------------------------------------------------------------
看到這裡,你是否對垂直同步有了一定瞭解呢?
總之,事實勝於雄辯,關了垂直同步FPS就是穩定,
而如果不關FPS就是會不停跳動。
那麼,該如何關垂直同步呢?
地球人都知道,現在主流的顯卡分為Nvidia和ATI。
下面將分成兩部分敘述:
Nvidia:第一步:先打開顯示器屬性:(鼠標移到桌面,右鍵→屬性→設置→高級)
第二步:進入NVIDIA的控制面版:(高級→NIVIDIA→性能和質量設置→垂直同步)
第三步:關閉垂直同步和各項異性過濾
(先把在應用程序控制上的勾去處,在把橫條移動高關閉上。
各項異性過濾也和FPS有關,所以也需要關閉)
*在調整前請先正確安裝顯卡驅動,由於各個版本驅動不同,或許有些偏差)
ATI顯卡:第一步:打開顯示器屬性設置(方法應該不用我再說一遍了吧?)
第二步:進入屬性設置,3D選項→OpenGL設置→去處使用自定義設置上的勾→再點自定義按鍵,進入設置頁面。
第三步:關閉垂直同步和各項異性過濾,如果機器性能並不非常出色,
則還可以調低紋理和詳細程度。
三:調整參數鎖定垂直同步
CS另一個吸引人的地方就是Config。經常看到很多朋友說,
用了某某高手的Config覺得非常好用,
槍法增加了很多之類。
很遺憾的是,Config就索那浮雲,這一切都是幻覺而已,
除非所謂的高手用了很多違規參數。關於Config問題,
在以後的課堂中會專門說到,而現在,
只是講解一些和fps有關的參數。
所有的Config參數都可以通過以下兩種方式輸入:
按~鍵呼出控制台,在控制台中寫如以下參數
用記事本打開Config文檔,在其中寫入或者修改。
具體方法如下(這裡用正統STEAM系統舉例,其他1.6版本相似):
先打開安裝的Steam文件夾,再打開SteamApps文件夾
進入自己的用戶文件夾
在cstrick和cstrick_chinese內都有config,
不同的是cs內是一些遊戲系統文件,
而cs_chinese則是個人設置。
所以參數推薦添加在cs_chinese中
找到Config文件,單擊鼠標右鍵,點選打開方式,再調整到記事本上
其他版本CS1.6,直接進入文件夾即可看到
請在控制台,或者Config文件中,添加如下命令:
rate 20000
cl_updaterate 101
cl_cmdrate 101
fps_max 101
*前三個參數請根據自己的網絡情況自行調節,此提供的參數是LAN比賽設置。
最後fps_max參數一定要調整到100以上。
CS默認的fps_max是70,
所以即使所以硬件達到要求,
FPS仍然不能達到99/100。
若機器顯卡等各項配置不高,
請再選擇使用以下命令,
這些命令不推薦使用:(資料來自於網絡)
cl_himodels 禁用高畫質模型,從而提高fps,默認為0
fps_moden 設定在網絡聯機時的最高fps數值。如果設成0,那麼這個參數會使用fps_max的數值。
gl_cull 激活後,只對可以看到的畫面進行渲染。設成0的話將降低fps值。
gl_clear 如果設成1,那麼將會金幣引擎對畫面上各個模型連接的部分的連貫渲染,這樣畫面感覺上會變得斷裂,但可以提高fps值
gl_lightholes 禁用光洞效果,提高fps值
gl_max_size 設定貼圖材質的最大解析度。cs1.1版這個數值默認為512x512,為了fps,還是改成128
吧。
gl_playermip
設定玩家模型的貼圖效果,選擇0 最好效果 (默認值);選擇1為一般效果;
選擇2為最差效果。也可以試試設成2,這只會使玩家的制服看上去有些模糊不清
,而顏色也混成一團,不過這不會影響你的瞄準
gl_picmip 這個參數非常重要,調整它甚至可以帶來20幀的提高,它的默認值為0
gl_round_down 這個參數涉及貼圖尺寸,默認值為3,這個值設得越高,畫質越差,而fps也就越高
gl_smoothmodels 禁用對玩家模型的光滑處理,從而提高fps
gl_texturemodel 此參數用於設置透視效果。它的調節範圍,從最差畫質(最高fps)到最優畫質(最
低fps)依次如下:
gl_nearest_mipmap_nearest
gl_liner_mipmap_nearest
gl_nearest_mipmap_liner
gl_liner_mipmap_liner
只設置gl_nearest,刪除mipmap效果可以大幅提高fps,如果設成gl_liner則可以在稍損fps值的基礎上提
高畫質
gl_wateramp 用來設置水紋效果,改成0以後水面將永遠保持平靜,從而賺取fps
gl_ztrick 擴展渲染參數,只要針對3dfx顯卡及其它一些顯卡,可能會導致舊顯卡出現錯誤。一般來說,設置成1。
mp_decals 用以控制血花四濺和牆上的彈孔效果,設成0
max_smokepuffs 用以控制煙霧表現效果,設成0
max_shells 設定同一時間內出現在屏幕上的彈殼數目,還是設成0
scr_conspeed 調整控制台彈出的速度
r_decals 設定血花或者牆上的彈孔數目,這個值不可高過mp_decals設定值
r_drawviewmodel 設成0可提高fps並增大視野範圍
r_dynamic 動態光影,一定要關閉
r_mirroralpha 反射效果,也要關閉
r_mmx 在遊戲中使用mmx函數,pentumii或者pentumiii的玩家可設置成1。使用賽揚、amd或者cyrix玩家只能設置成0。
violence_ablood、violence_agibs、violence_hblood 這些參數用以控制遊戲中的各種暴力表現效果,例如血花四濺等等,關閉它們可以賺取一些fps。
gl_picmip 數值越高,畫質越差,但是可以大幅提高fps,其數值範圍從0到4。
需要注意的是,在cs裡,如果設定成1,那麼在狙擊模式下畫面會十分難看,
而設定成2則畫面幾乎無法接受。但是在正常模式下則尚能忍受。
*
再次重申:請在實在無法容忍機器的情況下再使用,
強烈不建議使用這些參數
四:網絡速率
網絡速度可以在很大程度上決定CS的流暢程度,畢竟這是一個網絡對戰遊戲。
正因為此,網絡速度也是一個重要問題。
以下片段來自當年非常有名的翻譯文章,
原文來自於俄羅斯人的手筆,只摘錄關於網絡速率一段:
網絡速率
大多數人對於他們需要用到哪種網絡速率並不清楚……那麼,如下方法可以得知哪種速率最適合你:
在不引起網絡阻塞/丟包的前提下,
你能達到的cl_cmdrate和cl_updaterate參數的最高值即為你需要的速率(不高於101)
同樣,把網絡速率設為服務器允許的最大值:
*如果sy_maxrate是10000,
你應該使用「rate 10000」
*如果sy_maxrate是0,sy_lan是0,
你應該使用25000
*如果sy_maxrate是0,sy_lan是1,
你應該使用10000或者9999。
如果sy_maxupdaterate是30(1.6的默認值),
那麼你應該使用30 updaterate。否則你會發出多餘的數據包。
注意:當連接到一個專用服務器
(即服務器上不運行CS客戶端程序)時,
在控制台輸入sy_commands命令不會顯示服務器的速率。
僅僅只顯示假定你要建服務器的話,會使用怎樣的速率。
ex_interp:別太擔心interp參數。他不再給玩家便宜,只是一個基本的與網絡有關的指令,就像cl_cmdrate一樣。
在此我不再贅述ex_interp和cl_updaterate參數。
你只需知道每次你輸ex_interp 0修改interp參數的時候,半條命遊戲都會為你自動設置最優的interp。
要瞭解更多信息,請訪問BDS的文章:
http://www.schroet.com/features....der=0%5b%5b%5b
在這裡再說下ex_interp這個參數。
在1.5時代這是一個嚴重的規軌參數,
而1.6系統會自動調節,所以大可放心,
但是也不推薦修改。
補充說明:有參數可以讓FPS達到99/100以上,
以前很多朋友看到的200-300的FPS皆因為於此,但是此參數會造成遊戲錯誤,
所以在這裡不予說明。穩定99FPS已足以……
四:影響FPS的各種問題
第一號問題:硬件配置。
無論是CPU還是顯卡還是內存還是別的什麼,
都會影響到FPS。
當然,這些都和我們的錢包密切相關。
慶幸的是,CS並不是一個對硬件要求太高的遊戲,
相比剛出的HL2和戰地2這種超級殺手級別的遊戲,CS,真是溫柔啊!
第二大問題:病毒。俗話說病毒不是病,
毒起來真要命。病毒會影響到機器中各種文件的運作,
當然,CS也不能除外。
所以,當FPS變成火星狀態的時候,
您是否應該考慮下要查查殺殺毒呢?
第三大問題:刷新率。如果你完成了以上所有調整,
仍然不能鎖定FPS。
這是為什麼呢?很簡單,
因為你忽視了一個非常重要的問題:刷新率。
關於刷新率,顯卡非常基本的驅動問題,
鼠標外設問題,在下期都將會做一簡要的說明,
請關注菜鳥開心大課堂第二講:刷新率與外設調整
第一講到此結束,謝謝閱讀
菜鳥開心大課堂第二講:刷新率
http://bbs.mychat.to/read.php?tid=540336