スタクラのためにVPNサーバー用意しようとした話

受験終わり、浪人もほぼ終わり、合格発表を待つ身の中で書き始めようとして挫折したブログ思い出したので書いてみる。

発端

高校の時、部活でこのようなゲームが流行っていた。

Starcraft & Starcraft Expansion Set(輸入版)

Starcraft & Starcraft Expansion Set(輸入版)

とてつもなく古いゲームのため必要なスペックも低く、今の基準では性能の限りなく低いPCでも満足に動かせることもありかなりの人数がプレイしていた。
基本的にLANで繋げば通信できたので、ケーブルを持ち寄ってジャンクの24口ルーターで繋いで遊んでいたのだが、これを家でもできないかという話が上がった。

VPNというものを知った

LANで繋げばつなぐだけでプレイできるのだから、ネットに繋がってるPCを使えばそのままネットを介してできるのではないか、と一瞬考えたができるはずもなく、物が古すぎるせいでネットにも満足な情報がないので難儀していたところ、VPNなるものの存在を知った。が、VPNルータなんてものを持っている人が居るわけもなく、買おうとしても秋葉原のジャンクショップでもそれなりの値段がするものだったので断念……となりかけたときにSoftEther VPNなるものを発見。

というわけで使った

ソフトウェアでVPNを用意できるとのことなので早速使ってみた。
他のスタクラをやる人にもSoftEther VPN Clientをインストールしてもらい接続してもらおうとしたが、まったくもって繋がらない。localhostへの接続は通っているのでネットへの接続部分に問題がありそう……といじっていたところ、モデムとPCの間に挟んでいたルーターを外してモデムとPCを直接つないだらうまくつながるようになった。
しかしこの方法だともちろんスタクラを動かしている最中は他のネットワーク機器が一切繋がらないので使えない方法に近い。ということで設定とかいじってどうにかルータを挟んで使えないものかと試行錯誤。

その結果、ポートマッピングの設定を弄ったらルータを挟んでもつながるようにできた。
が、そんなことしなくてもVPN azureとやらを使ったらクライアント側がソフトインストール無しで繋ぐことができるらしい。(できた)
こんな簡単にできるのなら自分の苦労は一体…?

しかし動かない

同じようにLANで繋げばできるソフトでも動かないものがあるらしい。
store.steampowered.com
このソフトもやろうとしたがこのVPNでは動かなかった。
こちらはHamachiでは動いたのでなんの違いがあるのやら。

Oculusで出来なかったこと

2、3回どころか一度も投稿せずに放置していた……
やはり自分はブログとかに向いていないんだろうなぁと。
よーし今度こそは続けるぞ。

ここから本題

この頃Oculus Riftなる物をいじっているのですが、必要スペックが高いからかあまりポピュラーでは無いようで、使いやすいライブラリ等も無く困っております。
簡単なFPSのようなものであれば、UnityでもUE4でも使えば簡単に作れるんだが、ゲーム以外のものを作ろうとすると、出来ないことが多くてUnityもUE4も扱いづらい。
自分の知識不足の可能性もあるし、もし本当に出来ないのであれば同じようなことをしようとしている人が同じ轍を踏まずに済むかと思うので書いておきます。

Unity編

始めた時はUE4がまだ無料化されていなかったのでUnityで開発スタート。
借り物のKinect(古い方)があったので3Dお絵かきのようなものを作ろうとノートパソコンでKinectのプログラム書いて家のPCでUnityいじっていました。
Kinectのプログラムは必要な体の部位の座標求めるだけだったから簡単だったのですが、いざ合わせようと思った時にUnityのプログラム中にKinectの制御が書けないことが発覚。
有料版ならアドオンのような形で出来るそうなのですが、これだけのために有料版の200k円近くを払うのも考えものなので他に方法がないか模索していたところnamedpipeと呼ばれるプロセス間通信が使えそうだと思いました。

で、namedpipeを使ってみたんですが、.NETとMonoの差かUnityの仕様か自分のミスかわかりませんが通信がうまく行きませんでした。
どちらをサーバーにしてもダメで、繋がりはするし送信側では例外吐かないのに、受信されませんでした。

一週間くらい不毛な格闘を続け断念。

UE4編

しばらく忘れていたところにUE4無料化のニュースが流れてきたので早速ダウンロード。
外部ライブラリを使うことも簡単なのでKinectを使うことも簡単。
これは便利!と思い少し触ってみたのですが、Unityに比べて動作が非常に重たくて自分のPCでは快適に動かせませんでした。
エディタは動くし作ったプログラムも自分のいじる範囲では動くのですが、ビルドに時間が掛かり過ぎるのとプレビューが重い&微妙に動作が違うので作業になりません。

自分の使っているPCの性能が悪いのが原因なのですが、今のPCから費用対効果が良い変え方が分からない、一応受験生なので買うのは保留。


ちなみにこれが6月最初の辺り。
完全にブログの存在を忘れていました。

これから

続けたい的なことを書いておいてアレですが、受験生なので書くようなことしないと思います。
勉強の合間に少しやったりはすると思うがまとまった時間は取れないし取っていたら浪人ですね。

一体なんでブログはじめたんだろう?

ブログを始めた

最近、いろんな方からブログを作って自分の活動記録を付けたほうがいいと言われたので作りました。自分、こういうものを作った時は2、3回投稿したらその後が続かないタイプですが続けるように頑張ります。

一応自己紹介を。

電子工作からAVR、メカトロを経てパソコンのプログラムを今は書いている凡人です。

途中高電圧とかに寄り道したりしたりもしたので低レイヤの広くて浅い知識とか技術くらいはあるはず。