C言語とは少し関係ないかもしれませんが気になったので質問させていただきます。
こちらで「オンラインゲームをつくるには」系の質問に対する回答にはよくCGIという言葉が出てきます。
Wikiで調べてみた結果、それはいわゆるブラウザゲームというのに使われていると解釈したのですが
ブラウザゲームじゃないゲームはどのように動いているのでしょう?
私はてっきり、
サーバー用のPCがあり、その中でチャット送受信プログラム、ダメージ計算プログラムなどが動いていてその結果をクライアントとやり取りしている
と思っていたのですがどうなんでしょう?
また、上記の考えが正しかった場合、レンタルサーバは可能なのでしょうか?レンタルサーバではCGI可能というのはよく見ますが。
私にとってレンタルサーバというのは仮想のものであり、自分で実際に操作してるわけではないのでCGIが動くことですら実感が全然わきません。
ゲームサーバに関して。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: ゲームサーバに関して。
CGIはApacheなどのWebサーバ上で動作するWEBアプリケーションの仕組みのことです。
HTTPリクエストなどでプログラムが起動して何らかの情報を返却する仕組みになっています。
本格的なMMORPG系ならApacheなどのWebサーバを使わずにC/C++でsocket通信系を使って完全オリジナルのゲームサーバが動いているはずです。この場合は必要に応じてTCP/IPやUDPのプロトコルを使い分けています。
OSレベルからいじれるのなら、どんなオリジナルなサーバでも起動できますね。
オリジナルのゲームサーバを作るならLinuxの設定・運用からセキュリティ、Linuxでのプログラミング、Linuxでのsocketプログラミングまでも思えたほうが良いと思います。
「Geekなぺーじ:Linuxネットワークプログラミング」
http://www.geekpage.jp/programming/linux-network/
【補足】自宅サーバならWindowsでも良いのですが24時間稼働すると相当な電気代になります。夏の冷房代も馬鹿になりません。
それと自宅だとインターネット回線の上り側の速度が貧弱な場合が多いので、光の出来るだけ良い契約に見直さないと速度が出ない可能性があります。上り下りが同等な速度が望ましいです。
そういう事を考えるとレンタルサーバが有利なことが多いです。
HTTPリクエストなどでプログラムが起動して何らかの情報を返却する仕組みになっています。
かばさんの例に上がっているゲームにあるようにCGIはブラウザゲームじゃなくても利用は可能です。他にはオリジナルのWEBAPIとして運用するとか。史上最悪のデスペナ さんが書きました:こちらで「オンラインゲームをつくるには」系の質問に対する回答にはよくCGIという言葉が出てきます。
Wikiで調べてみた結果、それはいわゆるブラウザゲームというのに使われていると解釈したのですが
ブラウザゲームじゃないゲームはどのように動いているのでしょう?
本格的なMMORPG系ならApacheなどのWebサーバを使わずにC/C++でsocket通信系を使って完全オリジナルのゲームサーバが動いているはずです。この場合は必要に応じてTCP/IPやUDPのプロトコルを使い分けています。
チャット送受信プログラム、ダメージ計算プログラムぐらいだったらCGIでも問題ないですね。史上最悪のデスペナ さんが書きました:私はてっきり、
サーバー用のPCがあり、その中でチャット送受信プログラム、ダメージ計算プログラムなどが動いていてその結果をクライアントとやり取りしている
と思っていたのですがどうなんでしょう?
レンタルサーバにも色々有って、CGIのみ可のものとかVPSサーバーやクラウドサーバのようにOSレベルからいじれるものまであります。史上最悪のデスペナ さんが書きました:また、上記の考えが正しかった場合、レンタルサーバは可能なのでしょうか?レンタルサーバではCGI可能というのはよく見ますが。
私にとってレンタルサーバというのは仮想のものであり、自分で実際に操作してるわけではないのでCGIが動くことですら実感が全然わきません。
OSレベルからいじれるのなら、どんなオリジナルなサーバでも起動できますね。
オリジナルのゲームサーバを作るならLinuxの設定・運用からセキュリティ、Linuxでのプログラミング、Linuxでのsocketプログラミングまでも思えたほうが良いと思います。
「Geekなぺーじ:Linuxネットワークプログラミング」
http://www.geekpage.jp/programming/linux-network/
【補足】自宅サーバならWindowsでも良いのですが24時間稼働すると相当な電気代になります。夏の冷房代も馬鹿になりません。
それと自宅だとインターネット回線の上り側の速度が貧弱な場合が多いので、光の出来るだけ良い契約に見直さないと速度が出ない可能性があります。上り下りが同等な速度が望ましいです。
そういう事を考えるとレンタルサーバが有利なことが多いです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。