atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
ページ検索 メニュー
FPSを作ってみる@wiki
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
FPSを作ってみる@wiki
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
FPSを作ってみる@wiki
ページ検索 メニュー
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • FPSを作ってみる@wiki
  • 進捗状況(2012
  • 02)

FPSを作ってみる@wiki

02)

最終更新:2012年02月26日 04:20

slice

- view
管理者のみ編集可

(2012/02/26)

進捗(web編)

アコーディオンメニューは実際作ってみたら
正直言って操作性と視認性に疑問を感じたので止めた.入れ子にした所で重いしやはり見づらい.
そもそも当サイトでは項目を畳む程のコンテンツがないという(ログぐらいか?)
という訳でポップアップメニューに切り替え.
最初は既存のソースを参考にしようと探したが慣れないHTML+CSS+Javascriptというのもあってか
読んでもいまいちピンと来なかったのと
大した行数でもなし自分で1から書かなきゃ頭に入らない気がしたので,そうした.
楔形は出来たので後は組み込むだけ.クラス化は・・・するまでもないか.

アクセスカウンタはページビューとユニーク訪問者数を表示させ,更に今日,昨日,週間で集計させる物が出来た.
まぁ普通なので特記事項は無し.

自前web拍手的についてはまだ着手していない.
どうせ作るんなら5段階評価も入れたいよね.
似たようなシステムで投票も出来そうだな.Googleの円グラフAPIでも使ってみようか
等とメモ帳に書き込んでいる段階.

日本語・英語対応についてはHTMLに両方の文面をそれぞれ異なったクラス指定で書き込んでおき
例えばHTMLがこうだとすると
<div class="Japanese">日本語テキスト</div>
<div class="English">English Text</div>
JavaScript側で
$(".English").hide();
とかやって他方を非表示にすればいいんだろうか?
ページ分けるのは管理の手間の観点で避けたい.
デフォルトでどっちにするかはユーザーのブラウザ情報を使えば何とかなりそうだ.
PHPでは確認したがJavascriptでは・・まぁ出来るんだろう.

そしてスクリーンショットギャラリー.
巷ではLightbox2というのが流行のようだが
如何せん自分様がお気に召さないのでサムネイル一覧と詳細ウィンドウを並べた従来タイプ?にする,
現時点で恐らく半分程実装したんじゃないかと思う.詳しくは後ほどという事で.

(2012/02/21)

迷走

ここ最近迷走してるようにしか見えないが,実際そうだろう.

前回「CSSだのjQueryだのAjaxだの沢山あってヤバイ」
と言っておいてアレだが,結局全部手をつけてしまった.だって互いに関連してるから・・
流石にNode.jsだけは止めておく.あれまでやってたらもう一ヶ月吹っ飛ぶ.
ついでに習得したweb関連の技術で作ろうと思っている物リスト.
  • スクリーンショットギャラリー
  • アクセスカウンタ
  • web拍手的な物
  • アコーディオンメニュー又はポップアップメニュー
  • 日本語と英語切り替え

どの言語や機能を使えばいいかは目星ついてるつもり.
正直これだけあったら新規にwebページ作った方がいいんじゃ?と思っている.
というか既にSQLとPHPが使える無料スペースを確保していたり.
本当に移行するかは別として.

ゲームの方も少し書いておこうか.例のRUDPだ.
まず,でかいパケットを自動的に分割して送受信できるようになった.
その際オプションでフラグを指定する事によりファイルをバイナリで送れ,受信側は一時ファイルに保存するようにした.
幾つか数キロバイトのファイルで動作確認したら上手く動いているようだった.

対戦プログラムの方は.
各々の操作を受け付けて同期しつつ2Dスプライトを動かす所まで.
折角だからちゃんとゲームとして動くのかタイルベースのマップを表示して弾でも飛ばしたい(今やってる)

あとこれはゲームとは関係ないがVisualStudio2010に変えてから早速右辺値参照やラムダ関数やauto変数を堪能中.便利の一言.
しかし時たまシンボル検索か何かの処理がハマッってしまってメモリを食い尽くす謎現象が発生するのは何故.

(2012/02/12)

現状

最近,WindowsよりUbuntuの起動時間が長いな・・

さてMySQL, PHPが一段落した所で
昔流行ってたCGIチャットをこさえて懐かしんでみたりした(こんなシンプルに作れたのか!)
とりあえずC++からMySQLに繋ぐ方法がわかれば,今のスキルでオンラインスコアボード位は作れるかもしれない.
逆にwebから何か情報を入力してゲーム側に反映させても面白いかもね.
その他SQL自体は複雑なデータベースから欲しい情報を効率よくクエリする物なんでSQLiteを使えばweb関係なく
ゲームでも使えそうだなあ・・・などと夢は膨らむ.

最早ゲーム作りたいのか何がしたいのかわからんと突っ込まれそうだが折角PHP覚えたのだから
何かwebページを・・と思った時に,PHPだけではどうしても華がないというか.
基本的にサーバから読み出したらリロードかページ移動まで情報変わらないもんなあ.
これも勉強して初めて知ったのだけど.
と言うわけで今度はJavaScriptをやっている.ちょこっと触ってみたらCSSだのjQueryだのAjaxだのと.
この辺はキリがなさそうなんでちょっとした自前のページ作る程度で切り上げないとマズそうだ.
スクリーンショットのギャラリーとアコーディオンスタイルのメニューが作れればそれでいい.

話は変わってUDP通信クラス.大がかりなリファクタリングが終わり現在動作確認中.
web70%, C++30%くらいの力配分なので進行が非常に遅いとはいえソース書き直すだけでこんなに手間取るとは思わなんだ.
完成すればデカいファイルも送れるようになる,筈.(対戦サーバ接続時に持ってないマップを即席ダウンロードだとか)

今まで面倒くさがって開発環境はVC2008を使い続けていたが,ここに来てようやく2010へ.
インテリセンスがガンガン効くかと思いきや特に変わったことは無し.デバッガが若干軽くなったかもしれない.
あとはインクルードパスや参照ライブラリの設定方法が変わってて設定し直したくらいか?
そういやC++0xの右辺値参照とラムダ関数が使えるんだっけか.試してみよう.

(2012/02/05)

ネットワーク関係のあれこれ

取り組み中な事ばかりで
完了したと自信を持って言える項目は残念ながらないのだけど.

現在進行中リスト
  • MySQL
とあるキッカケにより.オンライン要素のあるゲームを作る布石.
  • PHP
これもSQLと関連して.触った感じLuaと似たような物かな.まだ基本的な構文と幾つかの関数を学んだ程度.
  • UDPによる通信クラス
当然対戦したりcoopなゲームを作る為.
前回「ネットワーク関連の~」と書いたのがコレ.

同じく前回「描画関連の~」と書いた物はここ2週間放置気味なので時期が来たら書く.

その他MySQLとPHPの練習のためにUbuntuをVirtualBoxに導入,
所謂LAMPスタックを構築したり文字のアンチエイリアスが気に食わんから切って
新UIのUnityも微妙だからgnome風味にしたり見よう見まねでカスタマイズ.などなど.
PHPを勉強してるとwikiじゃなくて自分でwebページ作りたくなるね.

で,ネット対戦に使う通信クラスだけど
前はTCPで実装していたのをUDPで組み直している.UDPじゃないと駄目って事もないが
TCPではその仕様上「途中でデータをロストしたら再送し,確認が取れるまでは次のデータは送られない」から
さほど重要でないデータ(エフェクト類とか)を送りたい場合に不都合だから.
バイト単位で結合・分割される為にデータの切り分けが面倒だとかもある.

いやいや,尤もな意見を並べてみたが本当の所は「UDPで作ってみたいから」である.

勿論単なるUDPでは送ったら送りっ放し,届いたかの確認も何もあったもんではないのでそれなりの工夫をする.
そこで登場するのがReliable UDPという奴だ.
http://www.4gamer.net/games/105/G010549/20100905002/
実はこの記事を読んでたら実装してみたくてたまらなくなったというのが事の真相.
あんまり詳細については書いてないのだがそこは自分で補完しつつ,つい先日
「ホストに接続・切断」,「同期処理」,「復帰処理」と一通り動くとこまでは来た.
ちなみに通信の形態はP2P,格ゲーやシミュレーションゲームなんかで用いられるキー入力同期方式である.

だが作りながらの仕様変更が祟って案の定スパゲッティコードに.
あと1つ問題が.デカいデータを送れないのだった.
1つのUDPフレーム(一回のsend()で送るデータサイズ)は1500バイト程度に押さえないと経路の途中で分割されて効率が落ちてアレだし
そもそも8000バイト以上送ろうとしたらAPIに拒否される.
解決は単純で,複数のフレームに分けて送ればよいのだがこれがなかなか一筋縄ではいかない.
UDPは届く順序が保証されていないから届いたデータをソートする必要があるし,
前からある(分割されてない)フレームソートの部分はスパゲッティで触りたくないしで八方塞がり.
と言うわけで1から書き直す事にした.動作確認も含めもう2~3日かかるだろうか.

ひととおり通信プレイが出来るようになったら固定画面,2人対戦の簡単なゲームを作る予定.
簡易的なゲームホスト列挙サーバをSQLとPHPで作れる気がしているのだが・・・
「02)」をウィキ内検索
LINE
シェア
Tweet
FPSを作ってみる@wiki
記事メニュー
  • トップページ
  • 参考資料ブックマーク等
  • Tips

Media

  • 頂き物
Screen shot
  • FPS_page1
  • FPS_page2
  • FPS_page3
  • Other_page1
Drawing
  • Drawing(analog)
  • Drawing(digital)
  • Drawing(digital) 2
  • Drawing(digital) 3
  • Drawing(digital) 4
  • Drawing(digital) 5
  • Drawing(digital) 6
  • Drawing(digital) 7
  • Drawing(digital) 8
  • Drawing(digital) 9
  • Drawing(digital) 10
  • Drawing(digital) 11
  • Drawing(digital) 12
  • Drawing(digital) 13
Movie
  • movies-list

Old Contents

  • トップページ(old)
  • メモ書き
  • 力仕事UP場
  • ゲームシステムとか
  • バグ・動作報告
  • program(twilve)

Progress log

  • (2018/03)
  • (2017/04)
  • (2017/03)
  • (2016/10)
  • (2016/09)
  • (2016/08)
  • (2016/07)
  • (2016/06)
  • (2016/05)
  • (2016/04)
  • (2016/03)
  • (2016/02)
  • (2016/01)
  • (2015/12)
  • (2015/11)
  • (2015/10)
  • (2015/09)
  • (2015/08)
  • (2015/07)
  • (2015/06)
  • (2015/05)
  • (2015/04)
  • (2015/03)
  • (2015/02)
  • (2015/01)
  • (2014/12)
  • (2014/11)
  • (2014/10)
  • (2014/09)
  • (2014/08)
  • (2014/07)
  • (2014/06)
  • (2014/05)
  • (2014/04)
  • (2014/03)
  • (2014/02)
  • (2014/01)
  • (2013/12)
  • (2013/11)
  • (2013/10)
  • (2013/09)
  • (2013/08)
  • (2013/07)
  • (2013/06)
  • (2013/05)
  • (2013/04)
  • (2013/03)
  • (2013/02)
  • (2013/01)
  • (2012/12)
  • (2012/11)
  • (2012/10)
  • (2012/09)
  • (2012/08)
  • (2012/07)
  • (2012/06)
  • (2012/05)
  • (2012/04)
  • (2012/03)
  • (2012/02)
  • (2012/01)
  • (2011/12)
  • (2011/11)
  • (2011/10)
  • (2011/09)
  • (2011/08)
  • (2011/07)
  • (2011/06)
  • (2011/05)
  • (2011/04)
  • (2011/03)
  • (2011/02)
  • (2011/01)
  • (2010/12)
  • (2010/11)
  • (2010/10)
  • (2010/09)
  • (2010/08)
  • (2010/07)
  • (2010/06)
  • (2010/05)
  • (2010/04)
  • (2010/03)
  • (2010/02)
  • (2010/01)
  • (2009/12)
  • (2009/11)
  • (2009/10)
  • (2009/09)
  • (2009/08)
  • (2009/07)
  • (2009/06)
  • (2009/05)
  • (2009/04)
  • (2009/03)
  • (2009/02)
  • (2009/01)
  • (2008/12)
  • (2008/11)
  • (2008/10)
  • (2008/09)
  • (2008/08)
  • (2008/07)
  • (2008/06)
  • (2008/05)
  • (2008/04)



記事メニュー2

Update Log

取得中です。
人気記事ランキング
  1. Drawing_analog
もっと見る
最近更新されたページ
  • 2686日前

    menu_L
  • 2686日前

    進捗状況(2018/03)
  • 2686日前

    Drawing_digital_13
  • 2686日前

    Drawing_digital_12
  • 2686日前

    トップページ
  • 2892日前

    Drawing_digital_11
  • 2973日前

    Drawing_digital_10
  • 3005日前

    進捗状況(2017/04)
  • 3046日前

    進捗状況(2017/03)
  • 3097日前

    頂き物
もっと見る
人気記事ランキング
  1. Drawing_analog
もっと見る
最近更新されたページ
  • 2686日前

    menu_L
  • 2686日前

    進捗状況(2018/03)
  • 2686日前

    Drawing_digital_13
  • 2686日前

    Drawing_digital_12
  • 2686日前

    トップページ
  • 2892日前

    Drawing_digital_11
  • 2973日前

    Drawing_digital_10
  • 3005日前

    進捗状況(2017/04)
  • 3046日前

    進捗状況(2017/03)
  • 3097日前

    頂き物
もっと見る
ウィキ募集バナー
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MadTown GTA (Beta) まとめウィキ
  2. AviUtl2のWiki
  3. R.E.P.O. 日本語解説Wiki
  4. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  5. シュガードール情報まとめウィキ
  6. ソードランページ @ 非公式wiki
  7. ドラゴンボール Sparking! ZERO 攻略Wiki
  8. シミュグラ2Wiki(Simulation Of Grand2)GTARP
  9. 星飼いの詩@ ウィキ
  10. Dark War Survival攻略
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. 検索してはいけない言葉 @ ウィキ
  6. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  7. 発車メロディーwiki
  8. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
  9. オレカバトル アプリ版 @ ウィキ
  10. SDガンダム ジージェネレーションジェネシス 攻略Wiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 過去の行動&発言まとめ - 鹿乃つの氏 周辺注意喚起@ウィキ
  2. マイティーストライクフリーダムガンダム - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  3. 魚拓まとめ - 鹿乃つの氏 周辺注意喚起@ウィキ
  4. 参加者一覧 - ストグラ まとめ @ウィキ
  5. 1103環境(遊戯王) - アニヲタWiki(仮)
  6. 前作からの変更点 - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  7. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  8. コレクター・ユイ - アニヲタWiki(仮)
  9. サーヴァント/一覧/クラス別 - Fate/Grand Order @wiki 【FGO】
  10. 画像倉庫 - 鹿乃つの氏 周辺注意喚起@ウィキ
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.