2ntブログ

VSYNC・リフレッシュレートとは何か?

VSYNC・リフレッシュレートとは何かについて述べたいと思います。

VSYNC

上図は私のPCのグラフィックボード(NVIDIA製)のドライバー付属ツールの画面解像度設定の画面の一部です。
「リフレッシュレート」という所がそうです。
見ると「60Hz」とあります。

「リフレッシュレート」とは、グラフィックボードやディスプレイが全ての画面を書き換えたり表示したりするのに掛かる最短の時間です。
Hz(ヘルツ)は以前に音のウンチクの所でも述べましたが1秒間に1回の振動が1Hzです。
よって私のPCの場合、1/60秒で1920×1080ドットの表示が完了する、又はグラフィックボードがその分のデータをディスプレイに転送できるということになります。

この数値が高いほど、より高速に画面を更新できたり、より多くの(細かい)ドットで表示ができたりします。
テレビゲーム機の画面とパソコンの画面で、表示できるドット数が大幅に違ったのはこれが原因です。
かつてのアナログテレビはパソコンの1/2~1/3程度のリフレッシュレート(テレビ的には垂直同期などと言ったりもした)しかなく、そのためにパソコンの1/2~1/3程度のドット数しか表示できなかったのです。

このように表示できるドット数に影響する他、画面書き換えの頻度にも影響するので、例えば動画とかを再生した場合、リフレッシュレートが高いとより滑らかな動きになり、低いとカクカクした動画になります。

そして「VSYNC」は、この画面書き換えの準備ができた、直前に送られたグラフィックデータの表示がすべて終わったよーという合図の信号です。
これを無視してグラフィックボードやディスプレイにグラフィックデータを送ると、まだ表示途中あるいは書き換え途中のものが表示されてしまいます。
例えば上半分は以前のグラフィックデータ、下半分は書き換え後の新しいグラフィックデータというように。
横スクロールのシューティングゲームなどでこれをやると非常に良くわかります。
画面のスクロールが上半分と下半分で微妙にズレるからです。

これを防止してより完璧なスクロールをさせるために、通常はVSYNCを確認して、おkだったら新しいグラフィックデータをプログラムで更新します。
これがグラフィックドライバーの設定画面などにある「VSYNC」のON/OFFの設定の意味です。

3Dバリバリのゲームなどで、自分のPCのグラフィックカードやディスプレイの性能が不足している場合、このVSYNCをOFFにしてやると、ゲームがスムーズにできるようになることがあります、画面表示は乱れるかもしれませんが。
VSYNCをONにしていると、性能不足で遅い書き換えをプログラムが待ってしまうからです。
CPUは次のプログラムの実行ができるのに、画面表示が終わらないので一時停止状態になってしまう。
だからゲームが遅くなるのです。
VSYNCをOFFにしてやると、画面の表示が終わっていようがなかろうが、お構いなしに画面関係のプログラムが先へ進むので、それ以外の処理も遅れる事無くCPUの能力を100%生かしたスピードで動けるようになるのです。
ただし先にも述べたように、以前の画面データが表示しきれてない、あるいは書き換え終わってないうちに新しいデータが送られるので、画面表示が乱れる可能性があります。
上半分と下半分で画面が微妙にズレるみたいな。
あるいはもっと酷いと、画面がちらついたりします。

まぁそこまで酷くなる事は今のPCだと無いと思いますけど。

ちなみにこのVSYNCですが、割り込み信号扱いです。
よってプログラム的に言えば、画面書き換えの処理をVSYNCの割り込み処理にしてしまえば、他の処理が滞る事はありません。
割り込み処理とは、文字通り今実行中のプログラムに割り込んで、別の処理をさせる事です。
割り込み信号が発生すると、CPUは今実行中のプログラムを一時中断します。
そして指定された割り込み処理を実行し、それが終わったら一時中断していたプログラムの実行を再開するのです。
これは画面更新以外にも、サウンドの処理でも昔から使われています。
この辺はプログラマ、しかもマシン語レベルで作る人以外には必要ない知識かもしれません。

ともかく一般人にとっては以下の事だけ知っていれば良いと思います。
・リフレッシュレートは高いほど細かくて綺麗なグラフィックが表示できるので、ディスプレイやグラフィックボードを購入する際は、なるべくこれの上限が高いものを選ぶ。
・動画が滑らかになる。
・動作が遅いゲームなどは、グラフィックドライバーのVSYNC設定をOFFにすると速くなる場合がある。

そんな感じです。

現在の3Dの欠点・限界

いまやパソコンのみならず、家庭用のゲーム機のゲームでさえフル3Dが当たり前の時代になりました。

しかしながら、まだ架空の小説やアニメや映画の世界の話である「完全な仮想現実」には程遠いものばかりです。
映画「マトリクス」やアニメ・ラノベで有名な「ソード・アート・オンライン」や「.hack」等々と、今の3Dゲームの大きな違いは、人間の脳に直接見せる・聞かせる・感じさせる事ができるというのもそうですが、3Dオブジェクト(3Dで表示される人体や木や水やそういった個々の物の事)の質感がまずぜんぜん違います。

もちろん、高額な3Dソフトで作った画像はものすごくリアルです。
しかしそれらはあくまで光や影あるいは解像度などの見た目だけです。

なぜなのでしょうか?

続きを読む

データベースとはなんぞや?

「EXCEL」は知ってる、使えるけど「Access」は知らない、よく分からない、使えないって人は多いと思います。
しかしあらゆる社会の仕組みがIT化された今日の世界のシステムの殆ど全てが、データベースを中核として作られています。

銀行のATMやコンビニのレジとか、あるいは配送や在庫管理とか、ホテルの予約も全てです。
もちろんネットショップもそうです。
データベースって言うと、よく出てくるのが住所録とか人の管理にしか使われていないと思われがちですが、銀行口座の残高や入出金、レジの売り上げの記録、配送状況や在庫状況、ホテルの予約情報も全てデータなんですね。
そういう大量のデータはEXCELみたいな表計算では管理しきれないんです。
もちろん全国に支店をいくつも持つようなお店の売り上げ管理とかってなると、いくらデータベースとはいえ「Access」でも無理ですから、業務用のものを使うわけです。
有名なのだと、Oracle(オラクル)データベースや、マイクロソフトもSQLサーバーという業務用のデータベースソフトを出しています。

データベースを扱えると、IT企業に居る人はもちろんですが、居ない人でも会社に重宝されます。
先に述べたように「EXCEL」は使えるけど「Access」つまりデータベースは使えない人が多いからです。

そんなわけで、データベースとはなんぞや?ってのを述べたいと思います。

続きを読む

カウンタ
プロフィール

ウホッ!いい男

Author:ウホッ!いい男
異世界転生を待ち続ける中高年のおっさん

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR