前の記事に続いて、Jitta さんの 「一歩ずつ」 の出題 7 の CRT のにじみについて。
(またまた回答とかじゃありません)
そういや、以前に見かけたなぁ、と思って検索してみた。
A Television Simulator
Atari 2600 VCS エミュレーターの話なんですが、CRT エミュレーションをするにはどういったことをすればいいかといったことが書かれているようです。
すごくいい加減な訳ですが、どうやら
- Texture … 格子を抜けてきた電子ビームによって蛍光物質が光ってるとかそういった構造上の理由から CRT はドットとドットの間にわずかに隙間がある。
- Afterimage … 蛍光物質がわずかな間焼きつくのと、LCD に比べると人の網膜に残像が残りやすい。結果、画像が動いたり変化したりしたあとすぐに消えずに残存したりする。
- Color Bleed … LCD のように輪郭がくっきりせず CRT では周囲ににじみ出すし、色が混じりあったりする。
- Noise … 伝送に RF を使っているのでノイズがそれなりに乗る。普通のテレビと違ってビデオゲームの広くフラットに塗りつぶしたようなところでは、それがわずかなバイブレーションとして見える。
といったところみたいです。
で、2009年春に Stella という Atari 2600 VCS エミュレーターに上記の内容を実装してみたと。
結果は “ファンタスティック” だったそうです。
こちら の June 9, 2009 のところに CRT エミュレーションが追加されたとあります。
Open GL 2.0 以上で GLSL が必要とのことです。
残像とかは以前のフレームの状態とかがわからないとダメそうなので難しいかもだけど、ドット間の隙間やにじみなんかは Silverlight の PixcelShader でもなんとかなるかな?(いや、私は作りませんが。つか、HLSL とかあまりよく知らないし)
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。