[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 08/05 07:30 / Filesize : 218 KB / Number-of Response : 867
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Windowsゲームプログラミング 質問スレ



1 名前:デフォルトの名無しさん [05/02/25 05:10:53 ]
※回答する人も、質問する人も必ず読んでください 

【 回答してくださる方 】 
・ できるだけ優しく質問に答えてあげてください。 
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 
 「ググれ」以外の回答でおながいします。 
・ 神ですら理解不能な質問は無視して下さい。 

【 質問する香具師 】 
・ どんな事で躓いているのか明確にしる。 
・ 長くならないなら躓いている部分のコードを晒してみれ。 
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。 


564 名前:名前は開発中のものです。 mailto:sage [2007/05/29(火) 20:48:35 ID:Td/foTJj]
暗号化はそれほど難しくない。やってみたら?
例えば1バイト毎に順番に合わせた数値をプラスすれば簡単に破りにくい暗号ができる。

565 名前:名前は開発中のものです。 mailto:sage [2007/05/29(火) 23:07:41 ID:Wpkok0gr]
>>563-564
やっぱそこまで便利な関数は無いんですね・・
564さんの言った方法で試してみます
ありがとうございました

566 名前:名前は開発中のものです。 mailto:sage [2007/05/29(火) 23:17:14 ID:hB5wgwgA]
Windowsゲームプログラミングって本読みながらコードの練習してるんだけど、
ぶっちゃけゲーム作るうえで図形の描写とか必要なんですかね?

567 名前:名前は開発中のものです。 mailto:sage [2007/05/30(水) 00:54:44 ID:/GYAzSk2]
>>565
1バイトは0〜255だが、オーバーフロー(桁あまり)を起こしても気にしないように。
元に戻す時に同じ数引けばオーバーフローしてても元の数値は同じだから。
2ないし、4バイトごとでも可。

568 名前:名前は開発中のものです。 mailto:sage [2007/05/30(水) 01:53:00 ID:NDg8q1sD]
>>566
それは、「跳び箱って何の役に立つの?」という小学生の疑問と一緒。
跳び箱自体は何の役にも立ちません。
普通に考えて、あの跳び箱動作をおこなう機会はありえません。
それを通じて基礎体力を付けるのが目的なのです。
こんなん楽勝、だるい、というのなら、飛ばしてもさほど問題無し。

569 名前:名前は開発中のものです。 mailto:sage [2007/05/30(水) 01:56:48 ID:IXdPTj4+]
>>568
dクス!地道に基礎作り上げることにします。

570 名前:名前は開発中のものです。 mailto:sage [2007/05/31(木) 12:56:30 ID:Ls8WphjW]
スプライトについての質問なんですけど
スプライトで画像の背景(指定した色)を透過させるじゃないですか
一緒に文字も表示させたくてSetBkMode()とかSetBkcolor()を同じHDCに描いたら
スプライトが上手く働いてないんです
裏画面のHDCもう一個作ってとりあえず問題は解決できたんですけど
なんでスプライトと文字を同じHDCで使うとスプライトがうまく働かないのか分かりません・・・

571 名前:名前は開発中のものです。 mailto:sage [2007/05/31(木) 20:53:10 ID:hFzDJ24v]
これはエスパーさんが必要ですね

572 名前:名前は開発中のものです。 mailto:sage [2007/05/31(木) 21:38:32 ID:YQVdMSSP]
GDIにはスプライト機能はないはずだが?
AND ORを使う方法?



573 名前:名前は開発中のものです。 [2007/06/01(金) 00:12:44 ID:9eIOma0H]
何年前からタイムスリップしてきた?

574 名前:名前は開発中のものです。 mailto:sage [2007/06/01(金) 00:16:28 ID:3iKRUt7p]
タイムスリップなんて言葉自体、久しぶりに聞いた。
まだこんな言葉を使う人がいたなんて。

575 名前:名前は開発中のものです。 mailto:sage [2007/06/01(金) 01:08:48 ID:7OA95gfU]
言葉狩りキター!

576 名前:名前は開発中のものです。 mailto:sage [2007/06/02(土) 01:50:53 ID:XhFUJqg2]
>>572
それです

>>573
自分、Win32APIしか使えないんです

577 名前:名前は開発中のものです。 mailto:sage [2007/06/03(日) 00:18:04 ID:IrLTL70v]
俺もDirectDrawのバージョンに対応して対応してない物はGDIで処理するルーチンを作った
事があるが、GDIよりDirectDrawのHELの方が遥かに早かった。

578 名前:名前は開発中のものです。 mailto:sage [2007/06/03(日) 03:02:23 ID:KgI3Reqv]
マリオみたいなアクションゲームと、
アドベンチャーゲームって、どっちプログラム組むの難しい?

579 名前:名前は開発中のものです。 mailto:sage [2007/06/03(日) 03:21:55 ID:kSspM1Ch]
>>578
アクションの方が難しい。

が、勉強しながら少しずつ作っていく場合、
表示できた!
キャラが動いた!
ブロック配置できた!
ブロックから落ちる処理がうまく行った!
と段階的に進度に満足しながら進めていけるため、
アクションの方が作りやすいかもしれない。

580 名前:名前は開発中のものです。 [2007/06/03(日) 04:03:13 ID:me85IGc1]
オススメの参考書教えてください

581 名前:名前は開発中のものです。 mailto:sage [2007/06/03(日) 04:04:28 ID:KgI3Reqv]
>>579
ありがと!Wiki通り、段階的に進んでやってみるよ。

582 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 13:43:46 ID:lTzILEx1]
メインループ型でゲームを組むと
ウィンドウの上にカーソルが行くとずーっと砂時計状態なんですが、
フリーズはしてなくて普通に動くんですが
ユーザーから見たらフリーズしてると思われそうで・・・
普通の矢印にするにはどうしたら良いんでしょうか?



583 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 14:15:09 ID:o0Xt/KlW]
ソース見ないとわからんけど、ウインドウ作る時のhCursorの所がNULLだったら
LoadCursor(NULL,IDC_ARROW);にでもしとけば直るんじゃね?

584 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 16:10:12 ID:lTzILEx1]
矢印になりましたありがとうございます!
hCursorを宣言してなかったのが原因でした・・・・

585 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 17:30:19 ID:c2o1I4ex]
directXはAPIの集まりですか?

586 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 20:50:14 ID:5S7yBdNe]
API
アプリケーション プログラミング インターフェイス

587 名前:名前は開発中のものです。 mailto:sage [2007/06/13(水) 21:55:45 ID:4jg7iVB2]
あまりAPIとは言われない。DirectXはCOMの集まり。
しかし、COMは使う側から見ればインターフェイスの集まり。

588 名前:名前は開発中のものです。 [2007/06/14(木) 04:10:33 ID:3DBleNqG]
COMもAPIなわけだがw

589 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 04:31:49 ID:/qVrkbZK]
COMって何かよく分からんのだが
OOP的に実装したAPIみたいなもん?

590 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 13:00:20 ID:vDThJQJk]
APIってミドルウェアですか?

591 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 14:11:44 ID:a8j008jI]
VisualStudio2005で
ttp://www.nhk.or.tv/kow/program/program_128.php
のソースファイルをペーストして実行しようとしているのですが
随所で「この文字を識別子で使用することはできません」とエラーが発生し
うまく実行できなくて困っていますが、3日前にVSをインストールしたばかりで
打開策がまったくわかりません。
これだけでなにかアドバイスできる方いたらよろしくお願いします。

もしかしたらそうとう幼稚で馬鹿なことを書き込んでるのかもしれませんが
そうだったらスルーしてください・・・

592 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 14:46:28 ID:zbqhZGiZ]
VCは[ ]はいいけど[ ]はエラーが出るので、余白の部分を消せば直る。
例えば

//グローバル変数
int stage[21][12] = {0};   //壁と固定済みブロック用



int stage[21][12] = {0};//壁と固定済みブロック用



593 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 15:07:49 ID:zbqhZGiZ]
知らすに手直しで、全行なおしてしまいそうなので、一応
置換機能で全角スペースを半角スペースにすれば、一発で直るよ。

594 名前:名前は開発中のものです。 mailto:sage [2007/06/14(木) 17:30:16 ID:a8j008jI]
>>592
無事実行まで至ることができました!
置換機能も知らなかったのでとても勉強になりました。
親切にありがとうございます。

595 名前:名前は開発中のものです。 [2007/06/15(金) 23:27:38 ID:CsdvdxvB]

SuperCon2007 ― 夏の電脳甲子園
pc11.2ch.net/test/read.cgi/tech/1181916316/

1 :デフォルトの名無しさん :2007/06/15(金) 23:05:16
がんばれっ!天才高校生諸君

スーパーコンピューティング・コンテストSuperConは、
高校生がスーパーコンピューターを使って、プログラミングのアイデアを競う大会です
今年は阪大に今年導入された最新のスーパーコンピューターを使います
プログラミング大好きな高校生諸君!
来たれ阪大・東工大へ!!
諸君のアイデアをスーパーコンピュータ上で実現してみよう!!!
www.gsic.titech.ac.jp/supercon/supercon2007/index.html

596 名前:名前は開発中のものです。 [2007/06/16(土) 20:41:06 ID:TzvWTDdJ]
電脳学園なら行ってもいい

597 名前:名前は開発中のものです。 [2007/06/16(土) 20:57:07 ID:/32v4ha3]
ハーフライフみたいな3Dのゲーム(物理演算含め)を
作りたいんですが、まずは何をすればいいんでしょうか?

598 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 21:05:07 ID:CayqQgPC]
まずは自分の体重を支えられるだけの強度を持った紐を買ってくる

599 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 21:19:23 ID:oslDDmJG]
次に体重を支えられそうな丈夫な突起を探し、そこに輪にした紐をかける
そして最後に



600 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 21:27:02 ID:sm0JyGk/]
。・゜チちワ━━━(*≧∀゚)b━━━ッス☆☆☆

601 名前:名前は開発中のものです。 [2007/06/16(土) 21:35:42 ID:/32v4ha3]
しらねえのかよ 屑だな

602 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 21:49:02 ID:748Opgzu]
>>577
GDIっていうかDDB経由なら遅くなって当然
GDIでもDIB中心に扱えば最近のプロセッサなら問題になることなんてほとんどないし
環境依存無しに好きなようにメモリ扱ってどんな描画だって行える



603 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 22:10:34 ID:gF/YZbrm]
じゃあDIBを使えれば描画に関してはDirectXは不要?

604 名前:名前は開発中のものです。 mailto:sage [2007/06/16(土) 22:59:54 ID:d9g3/K0t]
なんでそういう話になるんだゆとり

605 名前:名前は開発中のものです。 [2007/06/16(土) 23:11:44 ID:VP7vf5FP]
>>597
それを聞いているレベルなら、MODがお勧め。
目指しているレベルが、HL2なら、プログラムからやろうとしたら、まず挫折する。

606 名前:名前は開発中のものです。 mailto:sage [2007/06/17(日) 05:04:22 ID:uvdNaroZ]
>>603
今は3Dに関してはちょっと厳しいけど、今後GPUの汎用化が進めば近い将来そうなるだろうね。


607 名前:名前は開発中のものです。 mailto:sage [2007/06/17(日) 17:01:16 ID:+6o4ZPeJ]
DirectX は Blt 呼び出すまでが茨の道だからな…。

608 名前:名前は開発中のものです。 mailto:sage [2007/06/17(日) 18:31:35 ID:zlwHOE5L]
DirectXの本探すのに手間取って
環境設定に手間取って
本のサンプルがコンパイル通らなくて
Web上のサンプルで学習を始め
やっと三角形が表示できた

ここまでの道のり二週間くらいだお(^ω^#)ビキビキ

609 名前:名前は開発中のものです。 mailto:sage [2007/06/17(日) 22:48:06 ID:yFQqYVDA]
directXを使わずにハードウェア(グラボ)の性能を引き出す描画を行うプログラムは書けないの?

610 名前:名前は開発中のものです。 mailto:sage [2007/06/17(日) 22:56:34 ID:tYVqjDqX]
描けない事も無いけど死ぬよ

611 名前:名前は開発中のものです。 mailto:sage [2007/06/18(月) 18:35:44 ID:Po1HmTYy]
ドライバーをまず書かなきゃいけないからな^^;

612 名前:名前は開発中のものです。 mailto:sage [2007/06/18(月) 20:29:59 ID:ck0GHVH7]
^^;←



613 名前:名前は開発中のものです。 mailto:sage [2007/06/18(月) 20:39:42 ID:7hxc4ww9]
グラフィックボードによってコード異なるんじゃ?
2000以降は直接I/O叩けないからドライバも要るのでは?

614 名前:名前は開発中のものです。 mailto:sage [2007/06/18(月) 20:47:39 ID:12deKwWW]
HALを直接いじればいいが、資料がどこにあるのかは知らん。

615 名前:名前は開発中のものです。 [2007/06/18(月) 21:27:55 ID:YWjxoEbC]
>>613
バカはすっこんでろ^^;

616 名前:名前は開発中のものです。 mailto:sage [2007/06/18(月) 21:47:46 ID:7hxc4ww9]
なんだこのバカは?

617 名前:名前は開発中のものです。 [2007/06/18(月) 22:29:59 ID:75OKzIB0]
      |
      |
      |
      |              /  ̄   ̄ \
     (=)           /、          ヽ
     J >>609       |・ |―-、       |
                   q -´ 二 ヽ      |
                 ノ_ ー  |     |
                 \. ̄`  |      /
                   O===== |
                  /          |
                   /    /      |

618 名前:名前は開発中のものです。 mailto:sage [2007/06/19(火) 00:38:49 ID:h7eQaMoW]
グラフィックボードによってコード異なるんじゃ?←
                       ↑↑↑↑

619 名前:名前は開発中のものです。 mailto:sage [2007/06/19(火) 04:08:11 ID:vN1jkJpZ]
間違いでは無いけど、グラフィックボードによって異なるコードを描いてる人は現代には滅多に居ないと思うw

620 名前:名前は開発中のものです。 mailto:sage [2007/06/19(火) 12:09:53 ID:kM1f5RkT]
>>618
お前、友達いないだろ?

621 名前:名前は開発中のものです。 [2007/06/19(火) 14:03:08 ID:uGgUIjsw]
自己紹介しなくてもいいよ

622 名前:名前は開発中のものです。 mailto:sage [2007/06/20(水) 08:48:06 ID:aGb5AsQ2]
>>608
DIB(メモリ)に自力描画なら、10分でできたのにね・・・。




623 名前:名前は開発中のものです。 mailto:sage [2007/06/27(水) 02:23:55 ID:xlar0aKp]
HRESULT InitApp()
っていう関数があるんですが
intやBOOLを使わずに
この見慣れない
HRESULT
を使う理由ってなんですか?


624 名前:名前は開発中のものです。 mailto:sage [2007/06/27(水) 06:25:10 ID:pzdIaSu3]
InitApp()でHRESULT型を返したいからだろう

625 名前:名前は開発中のものです。 mailto:sage [2007/06/27(水) 11:32:58 ID:2iLolpse]
そういう決まりだからだと思う。
実体は32bitの整数型らしいので long や int (intは環境依存かも) でも差し支えないだろうけど
何か漠然としてる感じ。HRESULT と書いてあれば、成功の場合 S_OK が返るとか、エラーチェックには
FAILEDマクロ使えばいいんだなとか、すぐ分かるんで、見慣れるとどうってことないよ。

626 名前:名前は開発中のものです。 mailto:sage [2007/06/27(水) 12:07:50 ID:xlar0aKp]
なるほど・・エラーチェック。
自分で一からかく時はいつもvoidにしてました


627 名前:名前は開発中のものです。 [2007/06/28(木) 20:47:46 ID:uVd8/gj4]
インテルのアセンブリ言語(たとえば加算、減算、ロード、ストアの命令セッ
トの構成とMIPSの命令セットの構成の違いを教えていただきたいのですが、お
願いします。



628 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 21:17:52 ID:hQKjccMJ]
>>627
たぶん板違いだと思うけど。

知ってる範囲で書くと、インテル製のCPUには
いわゆるMMXという並列演算を行うための命令セットが増えてる。
現在はAMDもMMXを解するため、特にインテルだけの特徴ではなくなったけど。

そこまで低水準の違いは、普段は意識しなくても大丈夫だし、
逆に意識しないといけないようなプログラミングは、
多様なハードウェア構成が考えられるプラットフォーム上では忌避するべきだと思う。

629 名前:名前は開発中のものです。 [2007/06/28(木) 21:25:14 ID:uVd8/gj4]
ありがとうございます。
ていうか板違いでしたか。すみません。
大学のレポートで今日中に書かなきゃいけなくてあせってたもので・・・。
申し訳ないのですが、どこで聞いたらいいのか教えていただけないでしょうか?
パソコンも2ちゃんも素人なもので

630 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 21:37:26 ID:Cz6Vqnkw]

     / ̄ ̄ ヽ,
    /        ',   ほれ
    {0}  /¨`ヽ  {0}',
    l   ヽ._.ノ    ',
   リ   `ー'′   ヽ
  (            )
   |           |
    |           |
www.intel.com/products/processor/manuals/index.htm
www.mips.com/products/resource_library/product_materials/MIPS_Architecture.php

 
\               U         /
  \             U        /
             / ̄ ̄ ヽ,
            /        ',      /    _/\/\/\/|_
    \    ノ//, {0}  /¨`ヽ {0} ,ミヽ    /     \          /
     \ / く l   ヽ._.ノ   ', ゝ \       <   バーカ!  >
     / /⌒ リ   `ー'′   ' ⌒\ \    /          \
     (   ̄ ̄⌒          ⌒ ̄ _)    ̄|/\/\/\/ ̄
      ` ̄ ̄`ヽ           /´ ̄
           |            |

631 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 21:47:26 ID:tkGAdHeB]
>>629
ネットでは素人とか初心者とかを言い訳にしない方がいいよ。
自力かリアル友人に頼れよ。

632 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 21:55:08 ID:3D3A0diS]
>>629
         ,, -──- 、._
      .-"´         \.    ぷぷppp…ダッセー
      :/   _ノ    ヽ、_ ヽ.:
      :/   o゚((●)) ((●))゚oヽ:
    :|       (__人__)    |:  
    :l        )  (      l:
    :` 、       `ー'     /:
     :, -‐ (_).        /
     :l_j_j_j と)丶─‐┬.''´
        :ヽ   :i |:
           :/  :⊂ノ|:



633 名前:名前は開発中のものです。 [2007/06/28(木) 21:55:23 ID:uVd8/gj4]
>>631
そうですか。気をつけます・・でも検索じゃ意外となかなか出てこないです。
やはり掲示板などで人に聞くのが一番いいのですが・・

>>630
英語っすかw
でもありがとうございます!

634 名前:名前は開発中のものです。 [2007/06/28(木) 22:01:07 ID:vsS0UMqm]
これはひどい釣りだな

なんで宿題の調べ物を掲示板で聞くんだよ…図書館行けよ
ゆとり世代の下層階級は噂どおり底無しに深いとこにいるな
どこの四流定員割れ糞大学なのか教えてくれよww頼むww


635 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 22:07:30 ID:T9G7vzX2]
礼を言うだけまだマシだな
ゲー専は更に悲惨らしいぞ

636 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 22:15:44 ID:zowmSccS]
RISCとCISCの違いを述べよ」を意図した設問だと思われる。

637 名前:名前は開発中のものです。 mailto:sage [2007/06/28(木) 22:36:32 ID:XV6Y0O0r]
いい加減スレ違いで板違いだから他所でやってくんね?
IntelのIA32リファレンスマニュアル読んでシコって寝てろ

638 名前:名前は開発中のものです。 [2007/06/28(木) 22:43:27 ID:uVd8/gj4]
皆さんなんだかんだで素人のボケに付き合っていただきありがとうございます。
かなり常識ハズレのことをしていたようで申し訳ないです。
以後気をつけます。
では、本当にありがとうございまそた。

639 名前:名前は開発中のものです。 mailto:sage [2007/06/29(金) 12:16:03 ID:7o6HK2cY]
質問です。
ゲームで再生される動画なんですが、形式はWindows標準のAVI形式で
問題ないでしょうか。コーデック性能いいものがあると思うのですが
著作権等が出そうなので、その辺の問題がクリアされている形式が
良いと思いまして。
後、再生させるプログラムはWindowsAPIに用意されているものを
使う以外に無いのでしょうか。

640 名前:名前は開発中のものです。 mailto:sage [2007/06/29(金) 22:13:56 ID:pUlp9COV]
aviってのはコンテナでコーディックってのはまた別の話だな。
まずその変を理解しないと始まらんと思う。

641 名前:名前は開発中のものです。 mailto:sage [2007/06/29(金) 22:18:22 ID:hk0OK+/n]
>>609-610
OpenGLは?

642 名前:名前は開発中のものです。 [2007/06/30(土) 20:19:07 ID:iuKwnY1+]
>>641
確かにそうだが。質問者のその回答を意図していないのでは?
と、憶測で行っても仕方ないが



643 名前:639 [2007/07/01(日) 09:14:56 ID:kc8wwQPl]
なるほど。初心者だと質問の説明が難しいですね。
調べたところ、IndeoコーデックがWindowsに標準で入っている
コーデックで、特に規制はないように思えますが、実際商業で
売ってるゲームはIndeoコーデックのようなものを使用してるのでしょうか。
それとも独自にプログラムしてるのかな?
APIのMCIを使用して再生させる、で、問題はありますでしょうか。

644 名前:名前は開発中のものです。 mailto:sage [2007/07/01(日) 10:38:31 ID:NX3kqu6Y]
indeoはXP SP1からサポートが切られたらしいと聞いたが・・
いまどきのWindowsならユーザーさんにWindowsMediaPlayerか
MSの配布コーデックを入れてもらってWMVを使うのがいいんじゃないのかなぁ?
OSによってデフォで入ってるコーデックがまちまちでそれに頼るのは
何とも心もとない感じだ
vistaからはMediaPlayerは標準で入るらしいしna

645 名前:639,643 [2007/07/01(日) 18:03:18 ID:kc8wwQPl]
indeoはサポートが切れてしまったとは…
VC++6で、MCIWndCreateでムービー再生プログラム作ってみたのですが、
コーデックをわざわざインストールさせない仕様になるべくしたいので
やはりWMVを使うのが一番かな?
でも、WMVの使用については著作権とか大丈夫なんでしょうか。
ちょっと調べてみます。
エンコードするプログラム以外なら大丈夫かな…

646 名前:名前は開発中のものです。 [2007/07/02(月) 12:29:17 ID:WpUtzDHq]
超ワラタ
MacユーザーはDQN

■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
☆踏み台昇降DEダイエットPart63☆ [ダイエット]
お世辞抜きであなたのマンコを評価するスレ part60 [美容]
チンコだ!ペニスだ! 評価してくれ Part9 [美容]
お世辞抜きであなたのマンコを評価するスレ part61 [美容]
お世辞抜きであなたのマンコを評価するスレ part59 [美容]


Mac OS X初心者質問用スレ 22.3
pc11.2ch.net/test/read.cgi/mac/1181254491/

647 名前:名前は開発中のものです。 mailto:sage [2007/07/10(火) 17:23:40 ID:lbiLLMQB]
RPGなどのキャラ同士の当たり判定で質問させてください。

今わたしはCHARAクラス(キャラの情報や行動を司る)を作り
それを配列にして全キャラの管理を行っています。

で、CHARAクラス内の行動を行う関数内で他のキャラとぶつかりそうなら
移動させないようにしようと思ったのですが、当然CHARAクラス内部からは
他のキャラがどの位置にいるかという情報がわかりません。

結局先の配列をグローバルにしてCHARAクラス内部からその配列にアクセスして
当たり判定を行うようにしてみたのですが、
何となく本来のやり方と違うような気がして気持ち悪いです。

こういう場合、本来はどのようにするのが一般的なんでしょうか?


648 名前:名前は開発中のものです。 mailto:sage [2007/07/10(火) 18:44:46 ID:Lo4rWxgB]
キャラの情報を保持するクラスAと、そのクラスを操作するクラスBに分ける
この時、クラスAはどのキャラの情報を保持するかの識別用にIDを持たせておく
でクラスBはそのIDで操作対象を選ぶわけだな
そうすればBからは全てのAにアクセスできるから移動させたいキャラの情報を操作する事も、
別のキャラの情報を参照する事も可能になる

詳しくはタスクシステムとかイテレータパターンとかで検索してくれ

649 名前:名前は開発中のものです。 mailto:sage [2007/07/10(火) 18:57:52 ID:jXJJ7DBn]
すごく単純な話、CHARAクラスの配列の、リファレンスかポインタを
引数で渡すだけで解決するのでは…。

650 名前:647 mailto:sage [2007/07/10(火) 22:34:49 ID:5A+Ibfs0]
>>648
なるほど、複数のクラスAを所持するクラスBを新たに作って
複数のクラスAの情報に応じて動作が変わるような処理(例えば衝突判定)は
クラスB側で行うようにするわけですね。

タスクシステムで検索してみたらそれ以外にも色んなデザインパターンがあって驚きました。
Factoryというデザインパターンがうまく適用できそうなので
それに衝突判定をうまく組み合わせてみたいと思います。
ありがとうございました。

>>649
そうですね〜、それでも一応解決はするんですがグローバルの場合と同様、
クラスの内部で、自分を含めたその他複数を処理するってのがどうにも気持ち悪く思えまして。
気にせずやっていいものか、それともこう処理するべきというお手本があるのか、
そのあたり判断が付かなかったので今回質問させていただきました。

651 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 06:17:12 ID:aMfewmkG]
ゲームの中の部品ってありますよね
弾だったり自機だったり敵機だったり
それを一つの画像にしてるのを良く見るんですが
ペイントで一々合成させて保存していくのは結構な手間だと思いますが・・
あれは何かツールでも使っているんでしょうか?

652 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 11:45:39 ID:SimSSOx4]
そりゃ順序が逆だ
最初から一つの画像として描いて、ゲーム内で必要な範囲を切り出して使ってる



653 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 14:27:06 ID:/eCnpoPa]
たとえば途中でイメージサイズを変えたくなったりとか、
コマ数(パターン)を増やしたくなったり、あるいは色数やパレットを
変更したいとき、既存の他のイメージが邪魔になるよね。
各イメージを個別に作成しておき、クリックひとつで1枚に
合成してくれるツールでもあるの、ってのが>>651氏の質問だと思う。


654 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 15:04:09 ID:lZuBuicF]
一つの画像にまとめるのって昔のメモリやVRAMが少ないハードで
効率が良いからだと思ってたんだけど今のpcでやる理由って何かあるの?

655 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 15:59:59 ID:O1wYdptZ]
ファイル数が少なくなって管理しやすい、とは思う。

656 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 17:12:18 ID:lZuBuicF]
修正とか考えると画像にまとめるよりはフォルダ単位で管理したほうがましな気がするけど
まあ人それぞれか

657 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 18:23:06 ID:9KwrkefY]
画像を集約するぐらい、自分用にその場で作ればいいだけだろ。
ツールを探し回っている暇があったらその方がよっぽど早い。

658 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 20:18:07 ID:lzYh82TP]
>>654
個々の画像読み込みに掛かるOHを節約するためだと思うよ。

659 名前:651 mailto:sage [2007/07/14(土) 01:25:53 ID:TwnHJrwj]
>>657
あ・・そうですねorz
何のためにプログラミングやってたんだ俺は。。

>>656
小さなゲームはやっぱ一つの画像に収めちゃったほうが気分的に良いので、そうしようと思ってます

660 名前:名前は開発中のものです。 [2007/07/14(土) 10:31:46 ID:P7x7dvCR]
グラフィック用のエディタでまとめるだろ

661 名前:名前は開発中のものです。 mailto:sage [2007/07/14(土) 10:49:06 ID:SLtDgvgB]
馬鹿は単純作業を何度も繰り返すんだよな。

662 名前:名前は開発中のものです。 mailto:sage [2007/07/14(土) 12:04:53 ID:ulr/JRBn]
同じことを二度も三度も繰り返す勤勉な人は、官僚に向いている。
プログラマには向いていない。



663 名前:名前は開発中のものです。 [2007/07/14(土) 13:13:56 ID:MplrYQ6S]
場合によりけりじゃないか?
キャラクターごとに、一枚使うとか、
もしくは、アニメーションごとに一枚とか、
結局は、アニメーション用のエンジンの仕様に合わせることになる



664 名前:名前は開発中のものです。 [2007/07/16(月) 10:03:37 ID:HDTqRGmI]
WMVって、再生プログラム作っても、MP3のように後から
ちゃんと特許権使用料はらえって怒られないですか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<218KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef