合計 昨日 今日

アバター
Dixq (管理人)
管理人
 
記事: 1552
登録日時: 2010年10月12日(火) 20:16
お住まい: 北海道札幌市
日記: 日記を見る (570)
日記
- 12月 2017
ボーナスで自社製品を買う (2)
   2017年12月10日(日) 20:17
玉藤製と自宅製 (9)
   2017年12月03日(日) 22:01

+ 11月 2017
+ 10月 2017
+ 9月 2017
+ 8月 2017
+ 7月 2017
+ 6月 2017
+ 5月 2017
+ 4月 2017
+ 3月 2017
+ 2月 2017
+ 1月 2017
+ 12月 2016
+ 11月 2016
+ 10月 2016
+ 9月 2016
+ 8月 2016
+ 7月 2016
+ 6月 2016
+ 5月 2016
+ 4月 2016
+ 3月 2016
+ 2月 2016
+ 1月 2016
+ 12月 2015
+ 11月 2015
+ 10月 2015
+ 9月 2015
+ 8月 2015
+ 7月 2015
+ 6月 2015
+ 5月 2015
+ 4月 2015
+ 3月 2015
+ 2月 2015
+ 1月 2015
+ 12月 2014
+ 11月 2014
+ 10月 2014
+ 9月 2014
+ 8月 2014
+ 7月 2014
+ 6月 2014
+ 5月 2014
+ 4月 2014
+ 3月 2014
+ 2月 2014
+ 1月 2014
+ 12月 2013
+ 11月 2013
+ 10月 2013
+ 9月 2013
+ 8月 2013
+ 7月 2013
+ 6月 2013
+ 5月 2013
+ 4月 2013
+ 3月 2013
+ 2月 2013
+ 1月 2013
+ 12月 2012
+ 11月 2012
+ 10月 2012
+ 9月 2012
+ 8月 2012
+ 7月 2012
+ 6月 2012
+ 5月 2012
+ 4月 2012
+ 3月 2012
+ 2月 2012
+ 1月 2012
+ 12月 2011
+ 11月 2011
+ 10月 2011
+ 9月 2011
+ 8月 2011
+ 7月 2011
+ 6月 2011
+ 5月 2011
+ 4月 2011
+ 3月 2011
+ 2月 2011
+ 1月 2011
+ 12月 2010
+ 11月 2010
+ 10月 2010
フォロー
カテゴリー
日常
1 記事

ゲームの設計について考える

パーマリンクby Dixq (管理人) on 2011年6月25日(土) 22:16

私は職業でゲームプログラマーやってる訳ではありません。
学生時代から趣味でやってるだけです。
それゆえ現場でどんな設計が主流になっているのかなどは知りません。

ところで、ゲームの設計にタスクシステムを取り入れることは言わば標準であるかのように称賛されていますが、
私はタスクシステムがどうも好きに思えません。
いや、根本的な設計は自分でやってることと変わりないんですが、わざわざ双方向リストにする必要性が感じられないのです。

普通に、全ての基本となる基底クラスから全てを派生させ、基底クラスのポインタでstlのlistを作って回せばいいだけなんじゃないでしょうか・・。
フリータスクもメモリプールで代用できる気がします。

でも現場でそこまで使われているならきっと自分が知らない利点もあるんだろうということで、今日は書店に行きました。
端からタスクシステム系のことが書いてありそうな本を読んでみたものの、やはり自分の求めていた答えは見つからない(自分の手法で代用できそうなことばかり)

なので、タスクシステムの利点ご存じの方、よければ教えて下さい!
(基底クラスのポインタのリスト、ポリモーフィズムとメモリプールで代用できないタスクシステムならではの利点を)

=============================================================

後、最近自分の知らないデザインパターンをもっと学ぶべきだなと痛感してます。
GoFの提唱した物だけじゃなくても良い物は沢山あるし。
ということで、しらばくデザインパターンの勉強もしてみようと思います。
有用なデザインパターンは館でも紹介したいな。

しかし、最近館を作っているとすごいボリュームになりそうな章があって困ってます・・でも館ほどじゃないし・・。
中間をとって「○○の部屋」位の項目を作りますかね・・w
最後に編集したユーザー Dixq (管理人) [ 2011年6月25日(土) 22:17 ], 累計 1 回

コメント数: 4 閲覧数: 26081
コメント

Re: ゲームの設計について考える

パーマリンクby ISLe on 2011年6月25日(土) 22:27

双方向リストを自前で用意するのはSTL(どころかC++さえも)を使える環境が限られるからです。
スクエニのFFチームみたいな数千人規模のプロジェクトじゃなければPCと同じような環境で開発することできないです。
テンプレート使うとインライン展開されて実行ファイルのサイズが爆発的に増えることがある(というより見積り難い)ので家庭用ゲーム機の開発では嫌われます。
浮動小数点数使えない環境も少なくないですよ。

(追記)
あと優先順位ソートを細かく制御したいときイテレータが邪魔になることがあります。
最後に編集したユーザー ISLe [ 2011年6月25日(土) 22:33 ], 累計 1 回
ISLe
 
記事: 2591
登録日時: 2010年10月16日(土) 22:47
日記: 日記を見る (19)

Re: ゲームの設計について考える

パーマリンクby Dixq (管理人) on 2011年6月25日(土) 23:14

> ISLeさん

情報ありがとうございます。
なるほど、家庭用ゲーム開発という枠組みを超えるか超えないかで設計は変わる可能性がありそうですね。
とりあえず知らない内からあれこれ考えるより一度作ってみて良し悪しを考えてみようと思います。

しかしISLeさんに話を聞くたびにゲームプログラムをちゃんと学びたくなります。
いっそ一度ゲーム会社に転s(ry
いや、あくまでゲームは趣味でやりますが。趣味でどこまで出来るか挑戦です。
最後に編集したユーザー Dixq (管理人) [ 2011年6月26日(日) 11:29 ], 累計 1 回
アバター
Dixq (管理人)
管理人
 
記事: 1552
登録日時: 2010年10月12日(火) 20:16
お住まい: 北海道札幌市
日記: 日記を見る (570)

Re: ゲームの設計について考える

パーマリンクby ISLe on 2011年6月26日(日) 16:59

趣味で始めたのはかなり古いので、時代ごとの特殊な環境を経験してて、いまもプラットフォームを限定しないように最大公約数的なコードを書く癖が付いてます。
過去にどういう経験をしたかというのは個人差があるし、環境は時間とともに変化するので、これがゲームプログラミングのスタンダートだ、と一概に言えるものは無いような気がします。

PCで開発しつつ家庭用ゲーム機で開発する苦労を味わう方法があったのを思い出しました。
CDやDVDからそのまま起動できるようにして、なおかつ遅延無く快適に遊べるように作る、というものです。
快適に遊べる、の基準として最も重要なのは、画面が静止しない、ということです。
このアイデアは10年位前に思い付いたもので、性能の良いドライブだと効果が薄いかもしれません。
#家庭用ゲーム機での開発では光学ドライブのアクセスをエミュレートする装置があったんですよね。
アクセスが遅いだけでなくシークにも時間がかかるメディアで快適に遊べるようにするのは、メモリの少ない環境で快適に遊べるようにするのと共通点も多いのです。
ISLe
 
記事: 2591
登録日時: 2010年10月16日(土) 22:47
日記: 日記を見る (19)

Re: ゲームの設計について考える

パーマリンクby Dixq (管理人) on 2011年6月26日(日) 17:33

> ISLeさん
> 快適に遊べる、の基準として最も重要なのは、画面が静止しない、ということです。

なるほど、まさに次の日記で言っている「同期式」ではダメだということですね。
非同期式に至っても、各クライアントでアクションをとりあえず実行しておいて、定期的に修正する方法と、
サーバー側でクライアントの行動を制御して結果を配信する方法となど考えられると思いますが、
とりあえず実行してしまった方が良いのかもしれませんね。
ただアクション性が高いゲームだとどうなるか・・。
アバター
Dixq (管理人)
管理人
 
記事: 1552
登録日時: 2010年10月12日(火) 20:16
お住まい: 北海道札幌市
日記: 日記を見る (570)

オンラインデータ

登録ユーザー: なし