エムゲーム・ジャパン ゲーム ミィア ブログ サークル マイエム Login

兵どもの夢の跡

ブログチャンネル
yuki002さん
 
 ブログトップ   マイブログ   ランダムブログ    
ブログ型ブログ型タイトル一覧タイトル一覧
決してお奨めはしませんが[ブログ]  
詳細/おすすめ(5939/0) | ソーシャルブックマーク(0)  2012/05/16 16:54

カメラワークが!

 

まず印象としてはこれですね。

視界の方向指定を行う時、その動作が異常に早いのです。

そのため特定のゲームでは、あまりにも早く方向が変わり、返ってプレイし難いという印象です。

この現象さえ無ければ殆どのゲームがストレスを感じない程度にプレイ可能です。

 

なぜ?

 

仮想デスクトップの仕様にもよりますが、以下の原因が考えられます。

  • タイマーの調整が不十分
  • エミュレート時のウエイト基準値がホストマシンに適合していない

これは仮想化の仕様そのものに原因があり、「できるだけ高速化する」という部分が裏目に出ている感じです。

 

仮想化を行う場合…

  • 仮想CPUを使う
  • 可能な限り、リアルCPUを使う

…という方法があります。

過去、MACで Windows をエミュレートしていた頃は仮想CPUでした。

それは MAC と Windows ではマシンのCPUが異なっていたからでした。

 

現代ではMACもインテルのCPUを使います。

このため、プログラムコードはインテルCPUが実行可能なのです。

OSに関わる部分だけエミュレートし、なるべくそのままプログラムを実行した方が高速化出来る訳です。

 

最近の仮想デスクトップは Linux にしろ Windows にしろ、MACでさえもインテルCPUです。

だから仮想デスクトップでは2項の【可能な限り、リアルCPUを使う】が定着した訳です。

 

とは言ってもエミュレート上の遅延は避けられず、出来るだけ高速化するのがセオリーと言えます。

このため、遅延の原因となる無駄なウェイトを仮想システム側で排除すると、

本来は必要な処理であっても省かれてしまい、視点移動がとんでもなく早く行われてしまう…

つまりはエミュレート目的の高速化が仇となっていると思われる訳です。

この現象さえ修正できれば、多くのゲームが仮想デスクトップで動作するのでしょう。

 

 

アプリはOSを選ばない?

 

これは言い過ぎかもしれません。

本来プログラムコードは、実行させるCPUに対して書かれます。

つまりCPUが違うと動作しなくて当然なのです。

 

ところが…

現在、一般向けPCのCPUはインテル一色になってしまいMACでさえも中身はインテルです。

という事はOSは違っても、コードそのものはCPUが処理可能なのです。

これがMACで Windows が動作するカラクリです。

またコード的に実行可能なので、完全エミュレートする事なく直接実行すれば高速化して当たり前でしょう。

 

という訳で、Windows 用のアプリが エミュレータを介してMACでも動作するし、

Linux でも動作するようになった訳です。

また Linux 用が Macや Windows でも可能になった…と。

 

特定OS専用アプリであったものが仮想デスクトップによってOSを選ばなくなったとも言えます。

もちろんPC用ゲームソフトも…

 

と言いたいところですが、エミュレートは完全ではありません。

そのせいで実際には動作しないゲームもあります。

実際、ゲームソフトは機種依存性が高く、高機能で特定のハードウェアを要求します。

ルナティアが正常に動作したのは DirectX という規格に従って作られているからです。

言い変えれば、動作しないゲームは裏技的に独自処理を行っていると言えます。

悪く言えば「このハードでなきゃ動かない!」で作られたゲームとも。

 

実際、動かないゲームも多くあります。

その殆どが内部で規約に沿わないコードで書かれていると解釈してよいでしょう。

またエミュレーションは模倣であって実機を完全に再現するものでもありません。

その実機との差で動作しない事もあります。

ただ素人目にはどちらの原因で動作しないのかの切り分けは難しいでしょう。

それでも「仮想デスクトップで動作する」という事はそのアプリはOSを選ばなくなったとも言えます。

 

 

アイデア?

 

これは悪用すれば…という話で、悪用については詳細は書きません。

 

まず仮想環境でプログラムを動作させる意義です。

 

1.既に古くなってしまったOSでしか動作保障されないアプリの動作環境の提供

たとえばMSが互換性を保障するために無償提供しているXPモードです。

残念ながらXPモードではゲームは動作しません。

それでもXPでしか動作保障されていないユーザー作成の

グラフィックカードを利用していない物は業務プログラムなら

動作可能です。

この再現性をゲームにまで拡張したのが VMware plyer と言えます。

「ユーザープログラムに対する動作環境の保障」とは仮想環境の目的そのもので、

端的に言うと「古いプログラムを動かすため」です。

 

2.セキュリティの確保

仮想化とは言っても、実際にはCPUでコードが処理される訳ですが、

その結果は仮想マシン上で表示・展開され、保存されます。

この保存先はホストマシンから見れば単なるファイルなのです。

そして何らかの圧縮をされ、ホストマシンでは特殊なドライバを用意しないと

中身が読み出せません。

 

これに注目すると、【仮想マシン上での実行結果は仮想マシン内部で完結する】と言えます。

例えばウイルスプログラムがどういう挙動を示すのかの確認に使えます。

ウイルスが実行されてしまうと、仮想マシンは壊れるかもしれません。

しかしホストから見て壊れるのは仮想マシンのHDDファイルのイメージであって、

ファイルとして壊れた訳ではありません。

 

さすがに制作方法は公開しませんが、最近のウイルスプログラムは、

仮想マシン上で開発され、試されます。

それは仮想マシンの実体が単なるファイルだからです。

仮想マシンがウイルスに破壊されたとしても、実際はHDDイメージが壊れるだけなのです。

ファイルとしては外部に影響を与えないため、有害情報の隔離にも使えます。

万が一、障害が発生しても仮想マシンのイメージだけが壊れ、

ホストには何も影響ありません。

だから怪しいプログラムの挙動をチェックするのにも仮想環境が用いられます。

 

で、ゲームとの関わりです。

ある程度メジャーなネットゲームのクライアントには

不正監視タスクがバックグラウンドで動作しています。

これはクライアントの改竄やチート行為、マクロ操作を検出し禁止する目的です。

 

仮想環境でこういうゲームをプレイすると、監視タスクも当然起動されます。

ですが、監視タスクは実行中マシンを仮想マシンだとは認識できないのです。

(厳密には特定コードを確認することで認識は可能ですが)

 

このため、不正行為が行われていない状況では特に反応しない訳です。

けれどもその動作環境は間違いなく仮想マシンです。

という事は、マシン外部については監視タスクの監視範囲外という事なのです。

 

この仮想マシンをマクロ操作すると…

これ以上は公開できませんが、

監視タスクが監視できない部分でチート可能という事になります。

 

そもそもゲームクライアントは仮想デスクトップを実機と判断している訳です。

ところがホストマシンから見れば仮想デスクトップ自体がタスクの一つなのです。

いくら仮想デスクトップを監視したところで、疚しい部分など見つかる筈がありません。

それをよい事に仮想デスクトップ自体を外から操作すれば…という話です。

 

結局は道具です。

その使い方によって良くも悪くもなります。

どう使うかは個人の自由ですが、少なくとも使用する責任は持って頂きたいです。

 

 

 

 

現在 VMwear plyer のバージョンは4.0.3 build-703057です。

まだまだ不十分な点はあります。

それでもゲームが動作するという点では優れたエミュレータです。

ルナティアがプレイ可能であると公開しましたが、今のところ正常に動作しています。

仮に仮想環境で不正が多発するのなら監視タスクで仮想環境を拒否すれば良いのです。

そうなっていないのは理由があります。

一つは仮想環境をタスクから調べられても確定する根拠が示されていないからです。

二つ目はゲームタスクの端末不正操作の証拠となるからです。

これはいわゆるマルウェアと同じでユーザー情報を不正に持ち出すことです。

このような理由から仮想環境の確認は可能でも、それを行えないのです。

また仮に行っていたとしても、メッセージを出さずに異常終了させるのがオチです。

だからこそセキュリティを考えれば、個人情報を置かないゲーム専用の仮想環境も必要だと言える訳です。

本来、ネットゲームこそ仮想環境で動作すべきだと考える点はここにあります。

 

 

 

 

 

PS:

理屈っぽい文章でしたね。

現在、 ルナティアを始めとするMゲームの殆どが仮想環境で動作可能です。

まだまだ仮想環境を操るにはスキルも必要です。

例え動作保障対象外であっても、仮想環境を使う意義はあるのです。

だったら試してみるのも良いかと思います。

当然 自己責任ですが。

 

この記事のURL /  カテゴリ /  コメント  / おすすめ  / 通報
   馬鹿が湧いた?
   お久しぶりです