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


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

【初心者】スレを立てる前にココで質問を【Part16】



1 名前:名前は開発中のものです。 [2008/01/03(木) 04:55:57 ID:29lql27X]
疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。
pc8.2ch.net/gamedev/

>>980 を踏んだ人は次スレ立てをお願いします。
【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
gamdev.org/w/

ゲーム製作技術板公式アップローダ
gamdev.org/up/

ゲーム製作技術板公式掲示板避難所
bbs.gamdev.org/gamedev/

ゲーム製作技術板予備
yy13.kakiko.com/gamdev/

アップローダー予備
gamdev.hp.infoseek.co.jp/

gamdev.orgが落ちるたびにあげてみるスレ
pc8.2ch.net/test/read.cgi/gamedev/1107022166/

471 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 14:41:36 ID:kWblePHM]
おいおい、画面表示とゲーム上の動作をいっぺんにやってんの?

472 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 15:18:36 ID:0x+lQnR3]
>>469

>>471も行ってるように処理と表示は分離したほうがいい。
まずマップ全体を処理。(クライアントサイズが640*480で、ステージ全体が10画面分なら0〜6400程度)

その後描画するための座標を計算する。
例えばプレイヤーの座標のXがウィンドウの中心にくるようにした時はこう。
(プレイヤーのXが2000だとしたら、2000+??= 640/2で、?? = 640/2 - 2000 = -1680)
(そして全ての描画すべきものの座標から-1680を足した値で画面に描画する。)

ステージの端に来たときや、画面の中心ではなく1/3にきたらスクロールさせる場合は多少調整の必要有り。


473 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 15:25:58 ID:bQrJnOH5]
面倒な事しなくてもよい。
これをつかいなさい。
tilestudio.sourceforge.net/

474 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 21:25:44 ID:8UAyYsaI]
初心者におすすめの本はないだろうか?

475 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 21:52:20 ID:5v1It8G+]
シューティングゲームアルゴリズムマニアックス
www.sbcr.jp/books/products/detail.asp?sku=4797327316
アクションゲームアルゴリズムマニアックス
www.sbcr.jp/books/products/detail.asp?sku=4797338954
シューティングゲーム プログラミング
www.sbcr.jp/books/products/detail.asp?sku=4797337214

あとリア厨から始めるゲームプログラミングみたいな本があったな
まぁなんだ、和書はどれも似たり寄ったりのドングリだから好きにしろ

476 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 21:54:12 ID:5v1It8G+]
あと↓のスレのログでも嫁
推薦図書/必読書のためのスレッド in ゲ製作技術 2
pc11.2ch.net/test/read.cgi/gamedev/1136546780/l50

477 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 21:55:25 ID:8UAyYsaI]
>>475
ありがとう
助かる

478 名前:465 mailto:sage [2008/03/06(木) 22:04:13 ID:SXLANzzh]
>>470さん
見てみましたが・・・難しいです・・・。これが分からないのじゃダメですよね。

>>471-472さん
処理と表示を分離したほうがいいとは、例えば 自キャラとマップの計算などは別々のファイルで・・・みたいなことですか?

>>473さん
わざわざどうもです。だけどとりあえず頑張ってみます



479 名前:名前は開発中のものです。 [2008/03/06(木) 22:21:07 ID:qGMGt+Nq]
サイトからダウンロードしたMicrosoft Windows SDKのIMGファイルが1.32GBもあって大きすぎてCDに入らないんですけどどうやってインストールするんですか??



480 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 22:30:12 ID:YC29N94K]
>>479
それだけの容量ならDVDに焼くんだろ?
よく知らんが

481 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 22:35:49 ID:0x+lQnR3]
ファイルは基本的に関係ないと思うが・・・

別に465が既に分離できているかどうかわからんから念を押しただけだ。
とにかく動作周りと描画周りの処理がそれぞれ独立していて、
例えばポーズを実装した時、動作周りの処理を吹っ飛ばすような処理をするだけでいいようにしておくって感じか?

なんというか、あれだ。
余り描画のことは考えず、まずは仮想空間(今回の場合はステージ全体)を作ることを考えるべきだ。
画面への表示方法は、その後考えればいい。


482 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 22:40:07 ID:0x+lQnR3]
>>481>>478へのレスです。

483 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 22:43:13 ID:ELMIEhUQ]
>>479
ttp://pc11.2ch.net/test/read.cgi/gamedev/1106056261/845

2分も経たずにマルチする知的な障害をお持ちの方は、
死んでみてはいかがでしょう?


484 名前:465 mailto:sage [2008/03/06(木) 22:48:08 ID:SXLANzzh]
>>465さん
分離せずに、一つのソースに全部詰め込んでました・・・。アクションゲームの本でも買ったほうがいいのかなぁ・・。
こんな僕になにかアドバイスがあればお願いします。本のことではなくプログラム的なことで・・・。


485 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 23:12:33 ID:0x+lQnR3]
オブジェクト指向でも習ったら?
ゲーム製作なんかでは絶大な効果を発揮すると思ってるから。

486 名前:465 mailto:sage [2008/03/07(金) 00:39:40 ID:wnThCrEt]
ミスです…↑は>>481さんへ です。
オブジェクト指向ですか〜。なんか難しそうですね…。頭に入れておきます

487 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 05:36:15 ID:FB1dgBTz]
分離しすぎると可読性下がるからほどほどに

488 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 09:30:52 ID:JRaOBf7c]
>484
初心者向けのプログラミングの本じゃないかなあ。


489 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 09:35:59 ID:p6REOwiZ]
ソースを分離じゃなくて。
ブロックのスクロール方法を聞くのに、キャラが乗れることを条件にしてるからだ。
乗れるか乗れないかはゲーム内部の動作で、それを表示する部分とは別の話だ。



490 名前:465 mailto:sage [2008/03/07(金) 13:53:34 ID:wnThCrEt]
>>489さん
ではブロックのスクロール方法もマップと同じやり方で…できますよね?でもそのブロックに乗ったりするにはどんなふうにすればいいのでしょうか?質問ばかりすみません…

491 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 14:07:32 ID:pHC5ZqLH]
なんか正直どうしようもないな
キャラの表示と移動とジャンプの処理はできてるんだよな?
ならブロックに当たり判定つけるだけ

492 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 15:18:46 ID:vIB5z87J]
なんか最近壁の判定がどうのこうのってどこかのスレで言ってた気がするなぁ・・・

493 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 16:13:45 ID:5L2Vcymw]
ブロックとマップを別々にスクロールする意味あるのか

494 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 16:17:52 ID:ZcSmZqCn]
>492
このスレの>311以降じゃないかな。
こういう掲示板でも、図表って案外ちゃんと描けるんだなと思った。

495 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 18:44:19 ID:cRszUD3e]
プレイヤーが十字キーを押したり、ボタンを押したり。

毬藻が空中に居れば(擬似)放物線に沿って移動。
地上に居れば歩いたりダッシュ。飛んだら空中扱いに。

毬藻の座標からMAP情報を格納した配列を参照。
水平移動でブロックに当たれば数ドット(移動速度以上)戻して、
水平移動ベクトルをゼロに。

改めて毬藻の座標からMAP情報を格納した配列を参照。
上昇中ならば上向きのベクトルを下向きに反転。
下降中ならば着地して地上扱いに。

毬藻の座標から表示範囲に応じてMAP情報を格納した配列を参照して表示。

議論のたたき台として全部妄想で書いた。
正直毬藻なんて四本指鼠やP課長と同じくらい不快だ。
反吐が出そうだ。


496 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 19:25:12 ID:ZcSmZqCn]
何故かまりもっこりのアクションに脳内変換された

497 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 22:53:36 ID:MGTACdCT]
一度に色んな事をしようとするから混乱するんでは。

(スーパーじゃない方の)マリオみたいに、
まず1画面内で動かせるように作成した後に
表示上の画面サイズより大きなマップで動作させたものを
切り出して画面に表示する。
と段階に区切って進めていったら。


498 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 23:12:54 ID:ZWHO7H0R]
ウィンドウの中を絵が移動し続ける+端っこではねかえる
とかそんなレベルからやった方がいい希ガスw

499 名前:名前は開発中のものです。 mailto:sage [2008/03/07(金) 23:43:29 ID:cRszUD3e]
この流れなら言える!
毬藻厨は非スクロールで作ったら、
まず間違いなくスクロール処理を組み込めないようなコード書くだろうなw
でも、ノウハウ蓄積と割り切って書き直し上等なら、是非お勧めしたい。



500 名前:名前は開発中のものです。 mailto:sage [2008/03/08(土) 09:14:31 ID:S4+z8pGt]
毬藻厨って何だw
言いたいことは分かるがもはや明後日の方向だな!

501 名前:名前は開発中のものです。 mailto:sage [2008/03/08(土) 22:13:45 ID:QPm0iCa6]
昔、PC88版のスクロールしないスーパーマリオがあったが
つくりに関心したな。

502 名前:465 mailto:sage [2008/03/08(土) 22:47:04 ID:oKilN+Ts]
皆さん、アドバイス・・・?どうもです。まず非スクロールで頑張ってみますぜ!!
ブロックとかを設置するときは
{0,0,0}
{0,1,0}
{0,0,0}
の1の部分に・・・みたいな感じでやるのですか??それとも普通にx、yを指定して・・・でしょうか?

503 名前:名前は開発中のものです。 mailto:sage [2008/03/08(土) 23:03:37 ID:AfmtMIjG]
まぁ色々自分でやってみれば

504 名前:名前は開発中のものです。 mailto:sage [2008/03/08(土) 23:41:14 ID:PyUdiT9J]
>502
両方のパターンがあるそうな。

オススメは前者。何よりマップが作りやすい。
本当はマップデータは外部ファイルにするのがいいんだけどね。フリーウェアのマップ作成ツールとか使えるし。

外部ファイルの読み込みっていうのは、凄く勉強になる部分だと思うよ。
ただ、最初はソースファイルにベタ書きしちゃってもいいんじゃないかな。


505 名前:465 mailto:sage [2008/03/09(日) 01:49:19 ID:0SnPZrX2]
>>504さん
自分は前者では、当たり判定?をつけるのには便利だと思うのですが、スクロールなどをするとなると 訳が分からなくなりそうで…。
外部ファイル読み込みですか〜…。別ので作ったマップを読み込んで〜…難しそう(((゜д゜;)))

506 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 02:36:17 ID:PghCttZy]
>505
あのー、前のレス読んでます? レスつけたの僕じゃないけど。

もう一度言います。
内部処理とスクロールは別物。一緒にするな。

507 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 02:49:00 ID:PghCttZy]
ごめん、ちょっとキツい言い方だった。

内部処理と描画処理の分離について、ちょっと説明してみたい。
あくまで例えなので、感覚的に理解してくれると助かる。


まず、マリオ自身は、ステージをどんどん進んでいくわけだよね。
このとき、別にステージ自体が動いているわけじゃない。
基本的にマップは固定されたまま。あくまで進んでいくのは自分自身だ。

で、それとは別に、マリオを映すカメラというものがあるとする。
マリオの動きに合わせて、このカメラは動く。
そのため、プレイヤーから見ると、マップが動いているように *見える*


つまり、マリオの動き、ブロックとの当たり判定などの内部処理の部分と、
カメラの動き(描画処理)とは、全く別の処理だということになる。
極端な話、カメラがなくてもマリオを動かすことはできる。クリアできるかどうかは別として。

なので、カメラが動くと当たり判定が〜ということには絶対にならない。


508 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 03:17:19 ID:Q0It5IKH]
何だろう、ここら辺の話はちょっと 『ゲーム プログラミング』 でぐぐればいくらでも出てきそうな話なのに。
>>505は頭だけで考えずさっさとコード組んで色々試したほうが早いと思う。

509 名前:465 mailto:sage [2008/03/09(日) 10:30:16 ID:0SnPZrX2]
>>507さん
説明ありがとうございます。
僕の頭ではカメラの動きというのは、背景(マップ)を動かして移動しているように見せる…くらいしか考えつきません…。それとはまた違うのでしょうか?わざわざ説明してくれたのにすいません。



510 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 11:15:54 ID:rZyz2iIj]
>>507
どうでもいいが、ここではスクロール=描画処理じゃないだろ?
文脈からスクロール=移動処理って気がするんだが・・・
なんかスクロールって単語がゲシュタルト崩壊してきたw


511 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 11:44:02 ID:XpFc7jnL]
>509
だから背景を動かすな。カメラ自体を動かせ。

>510
流石にそれは無いんじゃないかなあ……。

512 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 12:26:41 ID:Q0It5IKH]
>>510
現実世界で考えれば、
左を向いて見ていたものが右を向いたら、見えているものが全て左に移動した、とかそんな話と同じでしょ。
カメラを移動するなり自分の見る方向を変えるなりでおきる現象を実現しようとしてるわけだから極端な話
スクロール→描画処理の一環で問題ないでしょ。Direct3Dならビュー変換に相当する処理だし。

513 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 18:14:54 ID:MSpD9eqR]
ゲーム内の座標と、絵を表示する時の座標は別

内部処理では
PCにしろ他にしろ、動くものはゲーム内座標で移動する
自分で動かないものはゲーム内座標では動かない
当たり判定とかいろいろな処理はゲーム内座標でやる

表示するときは、PCの移動分に応じて
絵を切り取って表示したり(背景とか)、
配列を参照して表示したり(ブロックとか)、
ゲーム内座標からずらして表示したりする(他キャラとか)

この説明でいいかなぁ?

514 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 20:31:41 ID:Q0It5IKH]
PCという略し方はどうだろう。ともあれその説明GJ。丁寧だ。

515 名前:465 mailto:sage [2008/03/09(日) 23:54:31 ID:0SnPZrX2]
最初パソコン(PC)かと思った…。
えと…つまり…キャラ動かすときなどに背景を動かしてキャラが動いてるように…ってことでしょか?けどそれじゃ>>511の言うようにカメラは動かしてないですよね…。あ〜…ほんまにすいません、バカで…

516 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 23:58:15 ID:vd+lTtAq]
どこまで出来てるのかソースあげてみ
コメントいっぱい付けてスクロールの処理書いてやるよ

517 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 00:30:28 ID:XJn4b2mg]
>513-514
ああ、何の疑問もなく普通にプレイヤーキャラクターって読んでた。
そんな僕は卓ゲ民。

>515
あなたが言っている「背景」とは何ですか?
マップのことですか? それとも、例えばマップの後ろに描かれる青空などの絵のことですか?

>516
それが一番早い気がしてきた


518 名前:名前は開発中のものです。 [2008/03/10(月) 02:04:28 ID:06woMqRI]
C++のDXライブラリ使ってますが質問です


void JikiControl::loadFiles() throw(int){
int i ;
ClearDrawScreen(); // 画面に描画したデータを消す
LoadGraphScreen(i,0,"media\\smp1.bmp" , TRUE ); //画像を描画
}


これでsmp1を表示したいのですが真っ暗な状態で何も写りません
なぜでしょうか?

519 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 08:55:39 ID:wSnjsboo]
DXライブラリ知らんけど、とりあえず最後にScreenFlip()入れてみたらどうよ



520 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 11:23:11 ID:/cPILZp3]
>>518
DirectXは二つの仮想画面のどちらかを実際にディスプレイに表示する方式をとっている。
そしてDXライブラリはDirectXをラッピングしたものなので、そこら辺の挙動は変わらない。

DXライブラリの描画系の関数は、表示されていないほうの仮想画面に描画するので、
一通りすべて描画が完了したらFlip(めくる。ぱらぱらマンガのイメージ)する必要がる。
で、結論は>>519の言うとおり。と。

521 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 14:24:58 ID:6ZyWH+j2]
>518
ちなみに、毎回ファイル名を指定する方法は最終的には使わなくなるけどな。


522 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 16:34:44 ID:DUDiXCyp]
3Dのゲーム作っている者ですが質問です。
Quaternion(t; x, y, z)を4x4の行列に変換する方法をおしえてください。

523 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 18:12:16 ID:AKgWS6JK]
>>522
www.google.co.jp/search?q=%E3%82%AF%E3%82%A9%E3%83%BC%E3%82%BF%E3%83%8B%E3%82%AA%E3%83%B3+%E8%A1%8C%E5%88%97+%E5%A4%89%E6%8F%9B

524 名前:465 mailto:sage [2008/03/10(月) 21:58:25 ID:EN6ta6RI]
パソコンから書き込みたいのに アクセス規制中です!!(\.ppp.dion.ne.jp)と出て書き込めない…。
なのでもう少し待ってくださいm(_ _)m

525 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 22:50:33 ID:wYQlT+tc]
ソースを?
それならPCでアップしてURLを携帯で貼ればいい

526 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 01:45:21 ID:5rHfGsEC]
分かってらっしゃる

527 名前:465 mailto:sage [2008/03/11(火) 22:29:50 ID:a7wsupuD]
ttp://gamdev.org/up/img/11187.zip
余分なものがいろいろ入っていますが、どうか気にしないでくださいな。

528 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 23:03:05 ID:niLv8pNa]
初歩で自分でそれくらい調べられんのかと言われたらそれまでなんですが、ゲームプログラミングwikiに書いてあるVisual Studio.net 2003 the Spoke Premium Version 2003が販売終了してるみたいだけど何買ったらいいんですかね?
それと学割ってなんですか?低能でサーセン

529 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 23:14:37 ID:M1ohJJLd]
学割は学割以外の意味は無いと思うぞ。

ところで、2005のアカデミックってまだ売ってたっけ?



530 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 23:30:37 ID:LZ27BAMz]
.Netで作業はすげー辛かった・・・

531 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 23:48:49 ID:NyPYMeiO]
2003は個人的には黒歴史
2008のアカデミック出たから2005はもう売ってないと思うぞ。

532 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 23:53:26 ID:Lkx2ntPb]
つーかVSなら無料のでいいんでわ

533 名前:528 mailto:sage [2008/03/12(水) 00:12:40 ID:nO0rBMCw]
いろいろあるんですね
とりあえずこれ買っとけばおkってのをお教えいただきたいです
それとも初心者なら無料ので十分ですか?

534 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 00:16:31 ID:9Ndfhisy]
うん。
まあ、学生なら5000円くらいで買える気がするけどね。

535 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 00:36:40 ID:y5nIGNe6]
VS2008の無料のを落としてきたので良いんでないかな

536 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 00:44:58 ID:nO0rBMCw]
なるほど、とても参考になりました。ありがとうございます
後は自分で調べてみます。またわからない事があればスレに書き込ませていただきます…

537 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 00:45:14 ID:9Ndfhisy]
>527
7MBくらいあって挫折した

538 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 01:41:45 ID:zZXakek0]
>>527のexe起動したらフリーズしたんだけど・・・

539 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 04:37:19 ID:X9N9Nvyf]
なんかこの板各所で少し活動がみられんだけど
過疎じゃないとおちつかない自分は病気なのか?



540 名前:名前は開発中のものです。 [2008/03/12(水) 07:31:00 ID:NoQutxYE]
春休み終われば元に戻る

541 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 09:35:25 ID:xnQtQJDE]
質問があります。

家庭用ゲーム機の場合、マスターアップしたロムを親元に提出して最終チェックを受けますよね?
PCゲームの場合、それに相応する様な事はやるのでしょうか?

PCあぼんクラスのバグな上、パッチに次ぐパッチで不完全なのに
最終とのたまうメーカーがあってユーザーが困り果ててます。

スレチでしたら誘導お願いします。

542 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 09:43:11 ID:PRQM4QZ3]
商業のPCゲームならPCゲーム板だと思う

543 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 10:14:43 ID:xnQtQJDE]
>>542
ありがとうございます。商業PCゲームです。
ゲーム内容ではなく、製作に関する事なのでこの板かと思ってました。
向こうで該当スレを探してみます。

544 名前:465 mailto:sage [2008/03/12(水) 11:05:20 ID:ds3LdCBF]
>>538さん
なぜでしょう…分からないです。ので、あとでソースを書いてみようと思います。アップしたの初めてだからうまくいかなかったのかなぁ…

545 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 11:52:26 ID:cvXgp7s2]
>>544
最後のほうだけしか見てないが、ダウンロードしてビルドして実行したらとりあえず動いたよ。

546 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 12:42:03 ID:cvXgp7s2]
これをどうしたいんだ?
と思ってレスたどったけどスクロールしたいのか。
動作と描画を分けようね。

これ入れるためにDXライブラリとやらを探してインストールしたけど
DXライブラリのサイトにもサンプルいっぱいあるじゃないか。

547 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 13:09:23 ID:hT3KeN3H]
とりあえず適当だけど、
こんな感じで、完全に分離できるようなコードを書くといいと思う。

//毎フレーム呼ばれる関数
int Frame(void)
{
  //入力、キャラの動き、当たり判定など
  Update();

  //描画
  Draw();

  return 0;
}

548 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 16:12:37 ID:4GMguDGp]
>>465
void PlayerControl(){/*略*/}

void CameraControl{
//とりあえず常にプレイヤーを追従
camera.x = pipu.x + 位置合わせ;
camera.y = pipu.y + 位置合わせ;
}

void PlayerDraw(){
//ゲーム内座標から描画座標に
int x = pipu.x - camera.x;
int y = pipu.y - camera.y;
DrawGraph(x,y,pipu.img,TRUE);
}
混乱しないように最小限の書き換えだけど

549 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 16:40:05 ID:4GMguDGp]
あ、忘れてた
void haikei(){
//ゲーム内座標から描画座標に
int x = 0 - camera.x;
int y = 0 - camera.y;
DrawGraph(x,y,img_haikei,FALSE);
}




550 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 21:12:38 ID:v0/NzbC7]
RPGを作っていて、キャラクタのパターン番号にあわせて、
HP、攻撃力(POW)などの配列からデータを持ってくるようにしています
たとえばキャラクタの番号が5ならeHP=HP[5]、ePOW=POW[5]といった具合に
ただ、この配列を宣言するときはHP[]={x,x,x,x,x...}、POW[]={x,x,x,x,x...}としなければならないので、
どの番号がどれに当たるのか非常に見づらくなってしまっています
HP[n]とPOW[n]など異なる配列の同じ場所をまとめて定義するにはどうすればいいでしょうか

551 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 21:14:14 ID:694Nf0Ns]
enum

552 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 21:18:31 ID:RIa718ax]
#define;
const static int;

553 名前:名前は開発中のものです。 mailto:sage [2008/03/12(水) 21:26:17 ID:DKkVlYQL]
キャラのパラメータまとめたものをクラス化して、そっちを配列にする

554 名前:465 mailto:sage [2008/03/12(水) 22:38:00 ID:71KefxCF]
>>546-549さん
みなさん、本当にありがとうございます。皆さんのアドバイスを参考にがんばってみますぜ!!
>>548さん
位置合わせ というのは、キャラをどこにおいておきたいか・・・のことでしょうか??真ん中なら640/2・・とか・・?
それとこれって(pipuのとき)x、yがマイナスになると思うのですが気のせいでしょうか?完璧には理解できませんでした・・・すいません

555 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 01:24:36 ID:oYvr6THN]
すいませんゲーム作製とはちょっと違うのですがどなたか教えてくださいませんか。
もうかなり昔、2002年に購入した同人ゲームなのですが、最近掘り出してまた
やってみようと思ったらうんともすんとも言わないんです。
壊れてるわけではないとして、できない理由というのはなにが考えられるでしょうか。
確か前やったときは勝手に始まってくれたんですが…
見たら動作環境のところにウィンドウズ95が動作する機種とか書いてありました。
今使ってるのはXPです。これは関係ありますか?

556 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 01:31:22 ID:dpW8sLxf]
>554
質問するなら第三者が見て理解できる文章を書いてくれ

557 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 01:41:35 ID:Bu/r75Um]
>>555
ローカルルールどころか板名すら読めないのか…
とっとと同人ゲーム板の質問スレにでも行けばいいのに

558 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 10:01:07 ID:oRJNndIA]
>>541
PCゲームのチェック機関は存在しない
あくまで自主チェックのみ
コンシューマと違って、PCはハードがばらばらだから、そもそも完全なチェックはできない

559 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 13:44:23 ID:Vjstmasy]
右クリックしてプロパティかなんかで互換なんちゃらってのがある
それでうごかないならしらね板違い乙



560 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 14:02:51 ID:dJ7riP+5]
>>550
構造体を勉強

561 名前:465 mailto:sage [2008/03/13(木) 19:43:08 ID:j8A5mYXp]
>>556さん
なんかもう自分でもよく分からないです・・・とりあえずすいません・・

562 名前:名前は開発中のものです。 mailto:sage [2008/03/14(金) 18:05:09 ID:x2mkTGmg]
>561
日本語で説明することくらいは出来るはずだ。
言葉で難しいなら絵だっていい。

563 名前:465 mailto:sage [2008/03/14(金) 23:10:55 ID:2CsvdKSM]
>>548にある 位置あわせ というのがマイナスなら問題ないんですが、それ以外ならキャラを表示する x、yがマイナスになってしまうのではないのでは・・・?
と、思ったので・・・。僕の場合この 位置あわせ が何かがよく分からないので何ともいえないというか・・・。
どうでしょう・・・?

564 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 11:44:01 ID:SBIbynAQ]
pipuってなんだろう…

565 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 17:18:22 ID:2A6nkslU]
>>564
エレキバン?

566 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 17:31:12 ID:SBIbynAQ]
ピップ君!

567 名前:名前は開発中のものです。 [2008/03/15(土) 21:51:21 ID:h0L0aXxf]
どうも最近、著作権とかわからない。

プログラムの本等(その本の作者は著作権をかなり強調していた)の
ソースを一部使ってシェアウェアを作る事は著作権上許されないので
すか?その作者は改変も許さないと書いていたからある程度の書き直
しも許されないんだろうか?もうすでに少し売ってしまったプログラ
ムなんで、頭が痛い。

568 名前:名前は開発中のものです。 [2008/03/15(土) 21:53:26 ID:h0L0aXxf]
プログラム関係の著作権関係で詳しいサイトがあったら
教えてください。

569 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 21:54:42 ID:njEcYVlQ]
ソースを公開した場合は問題になる。



570 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 21:55:14 ID:uJQR4RXd]
>>567
ソースコードにも著作権は存在する。
厳密に適応すればそら違反だけど、小数部だったらそもそも作者の目に触れないと思うが。

まあ気になるなら新しく自分で組むしかないな。

571 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 21:58:34 ID:2A6nkslU]
>>567
暗号化アルゴリズムとかあまりにも独創的なロジックのものは問題だけど、
ネットで拾えるようなソースは厳密にはダメだけどそんなに問題になること
はないよ

572 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 21:58:36 ID:h0L0aXxf]
>569-570
ありがとうとざいます。
今後作るソフトは一から作り直すつもりです。出した
部数は80本くらいですが、どうも著作権を違反した
事で自分が許せなくていかんのです。

573 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:00:59 ID:2A6nkslU]
>>572
そんなこと言ってると日本でオープンソースプロダクト使えなくなるぞ?
まぁ確かに大事なことだろうけど

574 名前:571 mailto:sage [2008/03/15(土) 22:02:21 ID:h0L0aXxf]
>571
>暗号化アルゴリズム
そういう難しいものはだめな訳ですね。参考になります。


575 名前:567 mailto:sage [2008/03/15(土) 22:03:01 ID:h0L0aXxf]
間違えました。

576 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:05:00 ID:R/7PAZMx]
実際にそういう事で裁判になったり、揉め事になった
事例ってあるの?

577 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:08:24 ID:okt/6MxE]
>576
小規模のは知らんけど
ICOのGPL違反。
japanese.engadget.com/2007/11/29/ico-gpl/

578 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:08:40 ID:2A6nkslU]
>>576
オープンソース系ではよくあるな。

たとえばLinuxのカーネル部分を変更したら絶対に「公開」しないとダメ。
でも「公開しない」奴が居るからそいつは訴えられる。

そもそも使われたくないソースなんか公開しないからな。

MSはヨーロッパでよくソースを公開しろって訴えられてるなw

579 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:13:55 ID:okt/6MxE]
>571
暗号化アルゴリズムとかもピンきりじゃないの?
でも暗号じゃなくて乱数だけどMersenne Twisterとか、
そのまま使って著作権表記なしってパターンはよく見
かける。著作権ちゃんと書けばお咎めなしなのにさw



580 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:28:22 ID:lDsY0+o2]
あれ、ソースコード自体が著作権になるんだっけ?と思ったので手元にあるので見てみた
・言語自体や凡庸プログラムは著作物には該当しないが、普通は著作物。
・著作物に分類されるプログラムを元に/改変等を行いプログラムを作る場合などは二次著作物に分類される。

581 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:32:35 ID:okt/6MxE]
"Hello, world!"
これは誰の著作物?

582 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 22:35:58 ID:2A6nkslU]
>>581
ブライアン・カーニハンとデニス・リッチー

583 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 23:02:49 ID:Fp6Vk8Jd]
著作権絡みの質問者へのアドバイスに
誤解や嘘が紛れてるので念押ししておく

まずアルゴリズムと著作権についてだが
どんなに独創的だろうが、それがアルゴリズム(ロジック)と認定されれば
著作権は全く存在しない。ゼロだ

ついでに言うと、アイディアにも著作権はない

じゃあ他人の独創的で魅力的なロジックやアイディアを君らがパクるときに何が立ちはだかるかというと

それは特許ね

584 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 23:35:13 ID:Fp6Vk8Jd]
ソースコードと著作権について

どんな糞コードだろうが芸術的コードだろうが
それらには等しく著作権がある
国内法では著作権は放棄もできない
著作権者が丸パクリ無断使用流用改変
好きにしろ承諾メールとかウゼェといっても
著作権はある

コピぺ改変の自由を明記してないソースをパクり、罪悪感を感じ、胸のつかえを取り除きたいのなら
事後でもいいからその旨を作者(無形物の生みの親)に報告するのが最良の手だな

感謝の気持ちがこもっていれば大抵の作者は悪い気はしない
特にウェブや書籍で公開してる作者ならな
自分が発信した情報(無形物)が人の役に立ったと、むしろ喜ぶさ

無形物は複製が幾らでもできるものだから
作者をリスペクトし感謝する気持ちが重要なんだぜ

585 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 00:20:14 ID:j/YQJUQ1]
でも商売だったりすると付け込まれかねない諸刃の剣
流用元のライセンスや公開方法にもよるけど、
入手したことがばれたらまずい、かつばれる可能性の少ないところなら報告しないほうが

終わったことは終わったこととして、これから改善していこうぜ

586 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 00:33:35 ID:C2OYAc31]
「付け込まれかねない」、ってwww
ずいぶん正直というか偽悪的な物言いだなおい

>>567の初心者っぷりから推測するに、学生さんだろ?
学生が個人的趣味で売った同人ソフトとかシェアウェアなら
十分起こりえるミスだし、報告しても咎められることはないだろ

もし>>567がソフト開発を飯種にしてるプロならは今すぐ氏ねばいいけど。
というよりも、新人教育すら満足にできないわコンプライアンスなんて
微塵も意識してない糞会社に勤務してる哀れな奴だから心から同情する

587 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 00:37:49 ID:gvqDw1ay]
パクったコードが原型をとどめない位に開発が進めば問題ない。
パクったコードをそのままで使うくらいなら大人しくツクールでもやってなさい。

588 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 00:38:14 ID:27PyE8AP]
難しい問題だよな。

駄目だと思ったら、自分で作り直してパクっていたモノを
全部廃棄の方が実は相互のストレスが溜まらないような気
もするんだが。恒久的に売るつもりなら、絶対に承諾は必
要だけど、いつでも製作者が気分が穏やかとは限らないし、
知ったためにストレスが製作者に増えるだけだったら意味
が無い。

589 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 01:02:30 ID:C2OYAc31]
あ、日付変わったからID変わってるのか。>>584書いた者だが

まぁ、確かに難しいよな
自分自身ウェブ上に記事の添付ファイルとしてソースも晒していて
個人的な怠慢でライセンスとかいちいち書いてなかったりするが
そもそもパクられても痛くも痒くもない既知・公知の技術情報だから
もし仮に学生さんとかが「同ソフトで使っちゃいました。ごめんなさい」とか
報告してきても「詫び不要。好きに使ってくれ。ミリオンヒットしたら飯を奢ってくれよな」
くらいで基本的に快諾かな

まぁ世の中には公開してる癖にパクられてストレス溜める肝っ玉の小さい奴は
いないとも限らんが、でもその場合は著作権者が「公開中止してくれ」って要求
するのが筋



590 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 02:35:06 ID:DvavTvdV]
プログラマって、頭の回転が早めな割に、偏屈なのが多いわけでして。
そういう連中が何を一番嫌がるかというと、自らを軽視されたと感じる行為。

「コードを黙って盗んでいました」ということになると、それこそ訴訟さえ起こされかねない。
逆に、「先に使用許可を求めて敬意を表しました」ということになると、
自尊心をくすぐられるため、非常におおらかに許してくれる。

仁義は切っておいて損はないさ。

591 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 11:12:16 ID:FIepAb3g]
もう、著作権のスレにいけよ

592 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 12:35:07 ID:KJPb2VOG]
と、珍しく早起きしたニート

593 名前:名前は開発中のものです。 [2008/03/16(日) 12:38:56 ID:5aAreQF1]
……早起きか?

594 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 16:45:37 ID:njo8BXdU]
「ニート達が目覚めた」のやる夫AAが貼られる時刻は早くても14時以降
これ豆知識な

まあなんだ、自治厨の真似事するほど暇があるなら
語るスレにでも凸っていじり廻されて火病ってろってこった

595 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 05:14:49 ID:tw7E4Ni3]
ゲーム製作を含めてプログラムって大学の素養って必要ですか?
当方高校まで理系だったのですが、今は全然関係のない文系です。


596 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 11:06:31 ID:BWoQH8Sr]
理系の大学で叩き込まれるような素養が必須、って分野はそんなにない。
とりあえずやってみたら?

597 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 15:12:13 ID:0KgUDTj0]
高校のときに理系で数学や物理を学んでるなら、たぶん問題はないと思う。
教科書や参考書が手元にあるなら残しておいた方がいい。意外と役に立つ。

598 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 15:18:26 ID:tw7E4Ni3]
>>596
>>597
ありがとうございます。
本屋行ってプログラムの本買ってきます


599 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 18:23:04 ID:IRFVwQIj]
まさしく高校理系で大学文系だがプログラミングもそれなりにできるようになるよ。

複雑な処理なんかでも調べればアルゴリズムが解説されていたりするから、以外と
出来る。もちろんきちんと大学で勉強してるような奴にはかなわないけどね。



600 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 18:43:48 ID:PCJP7SA4]
別に大した差はねーよ
そもそもゲームプログラミングで頻繁に活用するのは
理工系一年次の教養課程レベルの内容がせいぜい

文系だって国公立とか偏差値○○ランク以上の私立なら
理数系科目も受験に必須だから、文系でも理解できる

601 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 00:57:37 ID:541laQI+]
マトリクスの計算って高校でやったっけ?

602 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 01:25:46 ID:h/08ARO0]
少なくとも複素一次変換やってるでしょ
行列を使うか複素数を使うかは単に表記の違いに過ぎない
やってることは一緒

603 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 07:36:06 ID:VFi4hSl4]
少なくともライブラリとか使えばそこら辺の知識はだいぶ吹っ飛ばして作れる気もする。
正直結局のところは三角関数がわかるかどうかが境目。


604 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 12:43:42 ID:SD6rHkRa]
わからんでも使えりゃokだしなw

605 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:23:51 ID:h/08ARO0]
最近、誰かに監視されてる妄想に駆られます
どうすればいいですか

606 名前:名前は開発中のものです。 [2008/03/18(火) 16:24:20 ID:+i6TATTQ]
ageる

607 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:27:46 ID:h/08ARO0]
うわあああああん

608 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:28:40 ID:+i6TATTQ]
保守

609 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:30:43 ID:TWDDF/Qv]
医者いけ
友人を作れ
たくさん休め



610 名前:名前は開発中のものです。 [2008/03/18(火) 16:33:14 ID:+i6TATTQ]
ID:h/08ARO0が保守とか書き込んでるスレを
俺がageまくってるから、監視されてると思ってるんでしょw

age

611 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:54:12 ID:h/08ARO0]
(つ∀・)なんつって

612 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 16:56:26 ID:h/08ARO0]
gems3のスレは何でageないんだ?まぁいいけど

613 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 18:37:37 ID:UdPg6oix]
ID:+i6TATTQ はIDストーカーやってる暇あったら
FPSのほうのSTALKERでも遊んでなはれ

614 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 18:46:28 ID:+i6TATTQ]
FPSには興味ないわ

615 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 18:48:07 ID:UdPg6oix]
あとティタイムかイリュージョンの3Dエロゲに
ストーカーものがあったぞ

616 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 18:49:16 ID:+i6TATTQ]
エロゲには興味ないわ

617 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 19:12:04 ID:UdPg6oix]
イメクラでストーカー→痴漢コースでも注文して
楽しみなはれ

618 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 19:12:36 ID:+i6TATTQ]
イメクラには興味ないわ

619 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 19:16:34 ID:UdPg6oix]
桜木町のはけっこう良かったぞ



620 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 18:48:11 ID:eITOhnmA]
ゲームの製作ツールを利用して、3DCGソフトで製作した建築物などで
組まれた3Dの都市空間をキャラを動かし内部から観察する景観シュミ
ュレータのようなものをつくりたいと思い、初めてゲ製作関連を調べ
てます。調べてみたところ、高度なプログラムの知識を必要としない
らしい3D Game Studioというオーサリングソフト?を見つけたのです
が、これは一般的ではないのでしょうか。
www.conitec.net/english/gstudio/gallery.php
他のスレを見ますと他の環境で作られているようなので、このソフト
はよくないのでしょうか。

621 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 19:16:48 ID:9xErMuXJ]
C++&DirectXでゲーム製作の基礎を勉強しているんですが、
アマゾンの評価でゲームグラフィックスプログラミングを選んで一通り読んでみましたが、
頂点バッファうんぬんで三角形をグラデーションで表示してみるというのは重要なんでしょうか?
あと、各内容をチャプターごとに説明していますが、結局どういう手順で組んでいくのか、まとめのような部分がないのでこれだけではDirectXを利用できると思えないんですが、他におすすめできる本はありませんか?

622 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 20:33:37 ID:D71qSpFd]
>>620
・フリゲ製作者なんでライセンス云々は肌に合わない。
・ライセンス無しでマルチが使えないとかいみない。
あくまで自分の場合ですまんね


>>621
・現実世界の電子陽子中性子と同じくらい重要。
随分勉強してるみたいだし、後は思いのままにゲームを作れば良いと思うけど、
それでもというなら…

「ゲームグラフィックスプログラミング」はこの板でも評価高いから、
アマゾン評価を信用して「ゲーム開発」で検索してみれば?

…つか、経験の浅いゲーム製作者だと本の評価は難しいし、
経験の長いゲーム製作者だと、古い本しか知らない罠ww

623 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 22:50:03 ID:9xErMuXJ]
>>622 レスありです

本製作者は自分ができるレベルから説明してるから、当然と思って書いていても、読んでいる人には物足りなかったりしますね。

624 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 22:57:23 ID:D71qSpFd]
っていうか、ゲームの作り方はジャンルで違うから、
ジャンル別「ゲーム開発」本調べた方が良いの意。

625 名前:620 mailto:sage [2008/03/20(木) 10:50:49 ID:ntmR45vY]
>>622
お答えくださいましてありがとうございます。
私はゲーム製作が目的ではないので、LightWaveでオブジェクトをつくり、
自然&街の箱庭空間を構築し、キャラを動かし、内部を移動可能にする
ところまでできれば目的のほとんどは達成されます。
調べるといろいろな製作環境があるようですが、このやり方に最適な製作
環境はなんでしょうか。

626 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 14:46:43 ID:/h2Ahy4C]
たとえば、ここでLinuxとOpenGLでObject-Cを使うのが最適だと言ったら
君はその環境でPG組むのか?

自分の得意とする言語で制作が可能かどうか調べた方が堅実的だと思うぞ

627 名前:名前は開発中のものです。 [2008/03/20(木) 14:54:38 ID:JF2Ny0be]
> 自然&街の箱庭空間を構築し、キャラを動かし、内部を移動可能にする

ゲームなんかで簡単そうだけど、実際は泥臭くてごまかしの世界だよ


628 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 16:56:25 ID:apRXl4AL]
自分はそっちの知識はないのでよくわからんのだけど、そんなに簡単にできることなの?

実際、既存のPCゲームだって精緻な空間レンダのためには
ユーザーにハイスペックなPCを要求したりするし
RPGのようにインタラクトできるオブジェクトが無数にあるのか
単に背景として周囲が見渡せればいいのかでもアプローチが違うだろうし
どの程度の費用、手間、技術が可能かでも話が違うだろうし。
少なくとも汎用MODツールとかツクールみたいなわけにはいかないんじゃ?
どうなんすか?

629 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 17:08:11 ID:JF2Ny0be]
市販ゲームのMODツールを使うのが現実的だろう。
ドームとかクォークとかで マップMODを作る事が出来る。

少しやってみなければいい、
何も知らない人に説明しても理解できないだろから





630 名前:名前は開発中のものです。 [2008/03/20(木) 18:49:00 ID:CKzZKrNd]
>620
LGPのサンプルでよくね

631 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 20:22:50 ID:2OaHcvye]
>>620

>らしい3D Game Studioというオーサリングソフト?を見つけたのです
>が、これは一般的ではないのでしょうか。

3D GameStudioのA7エンジンはヨーロッパとかインディーズでは
使ってる人が多いみたいです。
日本では資料はほぼ皆無なので英語の壁以外はあなたの要件は
多分、満足してると思います。

それから、プログラムができなくてもできるようなうたい文句ですが
スクリプトを書かないと3D空間の移動とかは出来ません。

まあ、プログラム言語でガリガリ書かないとダメってレベルではなくて
簡単なスクリプトのコピペでFPSっぽいものは簡単に作れます

あと、レベルエディタ(地形を作る)とモデラー(登場オブジェクトを作る)が付いてますが。
やっぱり専用のCGソフト使って作ったものをコンバートして作ったほうが良いと思います。
それだけで出来なくもないですが。機能的に貧弱なのでちょっと厳しいかもしれません。


632 名前:620 mailto:sage [2008/03/21(金) 04:32:55 ID:noCXj+VJ]
ありがとうございます。
私はグラフィック専門です。やりたい幅が広がってゲーム製作技術に
着目した段階でありまして、この分野に関する製作知識はほぼ無です。
今年中に作ろうというわけではなく、言語も含めて何年もかけて必要
な技能を習得するつもりでいます。
私の拘りはCGソフトで作った地形〜建築物などを使えることだけです。
3D Game Studio が日本では情報を入れにくいとのことなので、別の入
り口を探してみたいと思います。

633 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 06:38:34 ID:PIIhh2/E]
>>620
www.devmaster.net/engines/

3Dゲームエンジンて星の数ほどあって
やりたい事が簡単だとかえって選択肢が多すぎるんだよね
要件にどれが一番合ってるかなんて誰にもわからないと思うよ

でも日本語のドキュメントで選ぶなら Irrlicht 一択かな
それでも英語はある程度読めないとつらいけど


634 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 14:39:40 ID:3lvk9xE+]
>>920
良書かどうかは置いといて、工学社の「DirectX9簡単
プログラミング」や「はじめての3Dゲーム開発」いう本が
LWでキャラクターや建物のデータを作ってそれをDirectXの
X形式で書き出し。
ジョイスティックやキーボードで、その中を歩いて動かす…
というサンプルと解説があるので、C++とか分からなくても
立ち読みすれば作業工程とかは参考になるかも。

規模や用途次第だけど、単純なウォークスルーが作りたくて
プログラムの知識不要なら、他の人も書いてるように市販
ゲームのMODツール使うと一番楽だと思う。
NewtekのチュートリアルにもUnrealEdとかの話があるし。

635 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 20:47:11 ID:uJu69CMQ]
DirectXを薦めてる御仁がいるようだが…

「年もかけて必要な技能を習得するつもり」とあるが、
それはグラフィッカーがいう事であって、
3D技術者の言葉じゃないんだぞw

DirectXはホームセンターにある木材や鉄板みたいなもんで、
戸棚を作ろうと思ったら蝶番は自分で作らなきゃいけないw
蝶番作りに興味が無い限りは、
せめて組み立て家具にしておきなさない。

636 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 21:03:49 ID:Wgm75y6V]
頭の悪い人間にとっては、DirectXすら敷居が高いことを認識した。
木材なんてドライバのレベルだろ。

637 名前:名前は開発中のものです。 [2008/03/21(金) 21:24:02 ID:tOZmyEVY]
ゲーム作ったから、ホムペに載せようと思うが…配布の仕方が分かりません

ホムペは、Yahoo!シティズだったかな…ジオログやらなんちゃらかんちゃらから、作りました…

638 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 21:29:00 ID:/LHtAKyq]
板違い

639 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 21:31:25 ID:+Og0+2LX]
必要なものをまとめてlzhにでもしてHPスペースにFTPなどでうp
規模にもよるけど、テストプレイや報告程度で臨時で配布したいだけなら>1のうpろだ使うとか



640 名前:名前は開発中のものです。 [2008/03/21(金) 21:36:25 ID:tOZmyEVY]
>>639
な、なるほど…返答ありがとうございます
1zhの、やり方が分からない…かも

641 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 21:42:10 ID:+Og0+2LX]
圧縮の解説だけど、こんな感じで
lzhはただの例なんでzipでもいいよ
ttp://river-horse.hp.infoseek.co.jp/faq/compression.html

642 名前:名前は開発中のものです。 [2008/03/21(金) 21:44:25 ID:tOZmyEVY]
>>641
丁寧に教えていただきありがとうございました

643 名前:名前は開発中のものです。 [2008/03/21(金) 23:15:06 ID:HkgEA3Pj]
ゲームプログラミングを始めてみたいのですがどの方法がいいのでしょうか?
吉里吉里、NScripter、C++…と方法が色々あって踏み出せません
それと本屋で吉里吉里でシミュレーションゲームをつくろうとかいうような本があったんですが作りたいものがはっきりしているなら
技術書とかではなく始めはこのようなガイド本に沿ってやってみたほうが初心者には優しいでしょうか?

644 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 23:21:36 ID:myg2wVz/]
>吉里吉里、NScripter、C++

交通手段が欲しいのですが、
普通免許を取るのと、ヘリの免許を取るのと、鉄道やバスの時刻表を暗記するのとではどれが良いですか?

くらい違うんで、そういった例を挙げられても答えようが無い。

645 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 23:27:51 ID:DymLDkTO]
つまり吉里吉里とNScripterは天と地の差と言いたいのか

646 名前:名前は開発中のものです。 [2008/03/21(金) 23:46:30 ID:HkgEA3Pj]
>>644-645
要するに方法によって天と地の差があるということですか…
なんとなくわかりました
とりあえず一番簡単そうなガイド本漁ってきます
ありがとうございました

647 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 00:47:34 ID:qkz8KQo9]
エロゲギャルゲの類作りたいなら前者二つのどっちかでいいんじゃね?
変態的な使い方すればNScripterでも経営シミュ作れるくらいの自由度はある

C++はその二つのエンジンを作るのに使うような物
エロゲ類以外も作りたいんならこっちから使ってもいいけど

648 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 01:44:04 ID:OsiTN+X6]
>645
吉里吉里を調べたからインタプリタって書いてあったから、つい。


649 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 09:22:25 ID:sqAio9uG]
インタプリタとコンパイラに天と地ほどの差があるわけじゃないからな



650 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 09:36:45 ID:0wT8djkm]
NScripterの腐ったBASICのような文法はいまどきの
プログラミングを学ぼうとする人間にはいただけない

651 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 11:02:55 ID:E2YwtpoU]
RPGツクールXPオススメ
Rubyも限定的に使えるし

652 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 12:56:12 ID:U4FLWBhC]
作った(というか改造した)ゲームが動くかどうかテストしてくれるスレってありますか?
ちなみにブラウザゲーです

653 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 13:00:27 ID:QYE4+His]
土日スレとか人は多そうでも話題がないスレでやったら
どこでもいいと思うけど、まぁあまりに話題がずれるのはまずい
別にここでも貼ればやってくれるかもしれない

654 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 13:31:03 ID:qkz8KQo9]
>>652
自作ゲーム評価スレ
ttp://pc11.2ch.net/test/read.cgi/gamedev/1010018331/

655 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 22:42:29 ID:zDA2fauG]
戦術級のシミュレーションを作りたいんですが、
その手のものの本格的なエディターのようなものは存在しないんですか?
ツクールとかwww.hitpoints.net/shop/tc3.htmlこれ、もしくは一からプログラミングしないとだめですか?

656 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 22:51:41 ID:vdUDtgoh]
>>655
SRCとか。

ぶっちゃけ特殊なことをやりたいと思ったらツールを作ることから始めないと駄目。

657 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 23:03:48 ID:U4FLWBhC]
>>653
土日スレ見てみましたが、スレ違いと言われそうです
しばらくROMって様子を見ます。

>>654
恐ろしく長寿なスレですね…
しかし完全に向こうのテンプレ違反になってしまうのでやめておきます。

お二人ともありがとうございました

658 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 01:51:38 ID:mPEw2+w/]
>>650
言っていることには同意できるが、ゲームを作ろうする人間に
必ずしもプログラミングが必要なわけでもないでしょ。
作りたいものによっては既存のエンジンのスクリプトがかければ
十分ってこともありえるわけだし。

旅行にかならず車の免許が必要なわけないようにね。

659 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 06:29:37 ID:eLZdz9mC]
PS3とかは開発コストがかかり過ぎて大手メーカー位しか
ソフト出せない状態で、DS・PSPの方が盛り上がってる(PSPは?)らしいけど
実際開発コストってどれくらいかかるの?



660 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 06:42:18 ID:+F+RSyfx]
鼬GUY

661 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 12:58:25 ID:2zNLBPZ3]
何年も前に、安いPCゲーム(エロゲ)で数百万、コンシューマだと安くても1千万とは聞いたなあ。


662 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 18:19:21 ID:2zNLBPZ3]
具体的な作品を挙げながら、ゲームのジャンル(アクションとか)ごとに
基本的なデザイン論をまとめているようなウェブサイト、書籍などをご存知でしたらお願いします。

できれば日本語で。
対戦格闘ゲームについて調べてたのですが、うまく見つからなかったもので。

663 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 18:37:37 ID:cSZJpRcF]
>>662
出来れば日本語でなんてそんな消極的なこと言ってどうするんだよ。
確かに日本語があればそっちの方がいいだろうけど・・・
インターネット上の殆どの情報は英語だぞ?

664 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 18:46:58 ID:2zNLBPZ3]
英語の文書の場合、というかアメリカ人が書いたテキストの場合なんだが、
自分の知らないゲームを例に挙げてることが多くてな……。

プログラミングの本なら英語でもまだ読めるんだが、それ以外だとさっぱりだ。

665 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 00:17:03 ID:+0T08afk]
対戦格ゲーで探したら、必然的に日本語の文章がヒットしそうだが

666 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 00:37:59 ID:tkEWMZpB]
格ゲーの場合だが、
「基本は三すくみ:みたいなことを書かれてるページはあるんだけど、それくらいだった。

667 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 12:07:19 ID:nPahSoi8]
>>662
とりあえず入力周りの整備として、
キーコンフィグ機能とコマンド入力を処理できる機能を作ってから考えれば?

668 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 14:53:56 ID:kALgXEvY]
ああ、すまん。実際に格闘ゲームを作るわけじゃないんだ。
学校の宿題ってわけでもないけどさ。そんな年齢でもない。

669 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 16:23:05 ID:sI3+U67E]
敵オブジェクトが死ぬと削除するからデストラクタが処理されるけど、
デストラクタに敵の爆発エフェクトオブジェクトを生成するコードを書くのは、
プログラム的に正しいと思う?




670 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 16:25:44 ID:sd47Pckk]
爆発処理してる間って他の処理されなくならね?
別に作ったほうがいいと思うな常識的に考えて

671 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 16:28:12 ID:kALgXEvY]
構築→解体のコストが軽いならいいんじゃねー?とか思った。

672 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 18:45:55 ID:3dfB7YLZ]
>>669
正しい正しくないは他人に判断付かないでしょ
ただひとつ言えることは、キャラクタの
  コード上の死(インスタンス破棄、メモリ解放)と
  ゲーム上の死(HPゼロ、破壊)が
同一(or同時or同フレーム)でないとか、順序があるとか
そういう実装もあり得るということ。その場合
ゲーム上の死=即delete(デストラクタ呼び出し)とはならないわな

>>700
naze?

673 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 19:00:52 ID:nPahSoi8]
オブジェクトが消滅するからと言って、爆発が発生するとは限らんじゃないか。

画面外に行って消えた時とか、シーンが移行して現在のシーンを全て破棄する時とか。

674 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 19:05:20 ID:6FTHtViB]
>>669
そのオブジェクトを他所のリストかなんかに加えて、
爆発処理が終わったら自身をdeleteできれば問題無い様な気がする。

が、爆発処理の頻度が高いようなら生成/deleteを繰り返すより、
どっかに十分な数を確保して使いまわすのが良いと思う。

>>700
俺にはちょっと理解できないので、
ヒントかなんかでももらえるとありがたいです。

675 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 19:14:58 ID:3dfB7YLZ]
アンカー間違えてたw
>>700じゃなくて>>670

676 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 21:06:25 ID:C1IXlTqK]
C++は、小規模なオブジェクトの構築・解体を繰り返すことを前提として設計されていません。
newとdeleteが頻発するようなコードは、セオリーを外したダメコードです。

まぁ、マシンスペックでカバーできる程度の、軽度の駄目さですが。

677 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 21:15:50 ID:6FTHtViB]
>>675
は本当につまらない奴だ。そう思うだろ? >>700

678 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 23:29:50 ID:kALgXEvY]
newそのものではなく、new相当のフラグを立てて使えってコトかな

679 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 23:39:55 ID:6FTHtViB]
爆発処理なら、その状態を示す変数がフラグ代わりになりそうだ。



680 名前:名前は開発中のものです。 [2008/03/25(火) 20:10:15 ID:U303z/Vz]
winAPIだけ使ってゲーム作るときって、バックバッファから画面への描画はどうやってるんでしょうか?
今は描画ごとにInvalidateRectしているんですが、重すぎて、とてもじゃないけど60FPSとか無理です。

681 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 22:58:08 ID:KONWzfSh]
CreateDIBSectionとかBitBlt使ってソフトレンダが基本だろ
GDI+とかよく知らね

つか、今時GDIでゲーム製作ってどんなマゾプレイだよ

682 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 23:36:13 ID:KKItpC1w]
HBITMAP hbmpOff;
HBITMAP hbmpOffOld;
HDC hdcImg;
HDC hdcOff;
HDC hdc
hdc = BeginPaint(hWnd,&ps);
//ダブルバッファ準備
hdc = CreateCompatibleDC(ps.hdc);
hbmpOff = CreateCompatibleBitmap(ps.hdc,YOKO, TATE);
hbmpOffOld = (HBITMAP)SelectObject(hdc, hbmpOff);
hdcImg = CreateCompatibleDC(ps.hdc);

//ここから描画処理

//ダブルバッファ片付け
BitBlt(ps.hdc, 0, 0,YOKO,TATE, hdc, 0, 0, SRCCOPY);
SelectObject(hdc, hbmpOffOld);
DeleteObject(hbmpOff);
DeleteDC(hdc);
DeleteDC(hdcImg);

683 名前:680 mailto:sage [2008/03/26(水) 21:56:32 ID:oXPjkMU8]
>>682
こんな感じのをRender();としてゲームループにぶち込んでるんですが、InvalidateRectしないと描画がされないです。

684 名前:名前は開発中のものです。 mailto:sage [2008/03/26(水) 22:06:42 ID:bqtpJoF6]
それは当たり前
描画ごとにInvalidateRectっていうのがどういう意味か分からんけど
PAINTに描画を全部書いて、TIMERで定期的にInvalidateRectを呼ぶとか
InvalidateRectの第3引数をFALSEにするとか
ダメならDirectX使え

685 名前:680 mailto:sage [2008/03/26(水) 23:26:01 ID:oXPjkMU8]
第三引数はFALSEにしてます。
描画ごとに、というのはゲームループ内のRender();の上にInvalidateRectを置いている状態です。
ちょっと重すぎてどうにもならないので、DirectXを使うことにします。ありがとうございました。

686 名前:名前は開発中のものです。 mailto:sage [2008/03/27(木) 04:43:00 ID:Zl00DOrU]
>>682
描画のたびに描画バッファを再構築してたら重いのは当たり前だよ。
会議で言えば一人が発言するたびに社屋を建て直してるようなもの。

CreateCompatibleDC、CreateCompatibleBitmap、SelectObjectはウィンドウ構築時に、
Deleteはウィンドウ破棄時にやるべき。
必要があるならウィンドウサイズ変更時にもバッファの再確保も行う。

687 名前:名前は開発中のものです。 mailto:sage [2008/03/27(木) 16:46:02 ID:OF5Tw2Sb]
>686
せめて会議室くらいにしておこうぜw

688 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 00:07:35 ID:smCTpwfB]
どんな会社やねんw

689 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 15:14:23 ID:ADjvgne4]
C++とDXライブラリ使ってFFDシステムを再現したいのですが、やり方が皆目検討がつきません。
この場合どういうクラス設計をすれば良いのでしょうか。
因みにオブジェクト指向初心者です。

FFDシステムについてはこちら
ttp://www.littlewitch.jp/home/special/quartett/pg175.html



690 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 15:37:55 ID:ADjvgne4]
上のリンクじゃちょっと分かりにくいんでゲーム中の動画も貼っときます。

691 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 15:38:27 ID:ADjvgne4]
っと貼り忘れた。
ttp://www.youtube.com/watch?v=HMHFCfIdObA&feature=related

692 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 21:52:44 ID:ooKQhOnp]
FFDシステムとやらはゲームデザインぽいので
クラス設計やオブジェクト指向、プログラミングとは直接は関係ないと思う。

とりあえず
1.台本(スクリプト)ファイルを読み込み解析する部分
2.いろんな画面効果(エフェクト)や画像や音を台本の通り表示する部分
3.選択肢ある場合のフラグ管理やその他もろもろ
普通のアドベンチャーゲームと変わりません。

もしかしたら的外れな回答をしてるかもしれない。
なにぶん>>689のレベルがわからないので・・・

693 名前:名前は開発中のものです。 [2008/03/29(土) 09:06:28 ID:qt/2k1bt]
DXライブラリでマリオのような横スクロールアクションを作りたいのですが
なにかオススメの参考書をご存知の方、ぜひ教えていただきたい
14歳から始めるC++ゲームプログラミングという本は誤字脱字満載の糞本で
凄まじいショックを受けました

694 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 09:32:13 ID:CDrfebZX]
>>693
ttp://gamdev.org/w/?%5B%5B%A5%B9%A1%BC%A5%D1%A1%BC%A5%DE%A5%EA%A5%AA%C9%F7%B2%A3%A5%B9%A5%AF%A5%ED%A1%BC%A5%EB%A5%A2%A5%AF%A5%B7%A5%E7%A5%F3%A4%F2%BA%EE%A4%EC%5D%5D

695 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 09:51:52 ID:rfMdXcT/]
>>693
ogawapc.myhome.cx/gameprogu2.htm
インデントがしんでるんだけど、VC++で読み込めば、
たぶん、だいじょうぶ。


696 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 16:59:27 ID:wr8ZQT/y]
>>695
おいおい、そこは参考にならんだろう。
ユーザ関数も使わず全部グローバル変数でやってるとこだぜ。

697 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 17:42:21 ID:fkmuI5QI]
オガワンに釣られるなよ


698 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 19:27:44 ID:rfMdXcT/]
>>696
抽象が学べればいいというか、抽象を学ぶということが
学ぶということだろう。

グローバル化の時代っていってなかったか。
(すげーおもしれーこといったおれ)

ユーザー関数を使ってないコードは、クラスを使ってないコードは、論外というのは
かなり素人だな。そもそも、順序として、ベタなコードがまずあって、そして、関数化なり
クラス化するのが、ものの順序というもので、まぁ、おれは関数化もしないけど、
する人はそこからすればいいというだけの話で、なんとも、そんな順序も分からないで
コード書いたら、さっそく、バグのオンパレードなわけで、なんとも、はや。


699 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 20:05:30 ID:xW2ue0td]
>>695
まるでCOBOLだな、時代に適応できてないみたいだ
可読性の低いコードなんて論外



700 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 20:32:12 ID:/Xc/TT61]
コード以前に書き込みの可読性自体が低いなw

701 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 20:41:43 ID:rfMdXcT/]
>>699
何の時代だよw望むものが作れればいいじゃん。
一般的にいって、関数化、クラス化というのは可読性が
落ちるものだよ。そんなこともわきまえていないのか。
驚きだね。

>>700
ユーは自然言語が不自由してるようだね。
「我輩は猫である」でも読んで、まずは、自然言語を
学ばれたい。


702 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 20:49:31 ID:2KYDTduy]
変な方向に盛り上りそうな気配だ

703 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 21:52:10 ID:xW2ue0td]
>>701
広域変数しか使ってない時点で大体理解できたけど
関数化して読みにくくなるって、どれだけヘタレなのよ?
どうせ変な処理を無理矢理まとめたような関数でも書いたんだろ

704 名前:名前は開発中のものです。 mailto:sage [2008/03/29(土) 22:19:43 ID:Zx+40KZU]
>>703
そこは難しいところだよね。
OOPとかだと、ちゃんと設計すれば機能追加・変更には凄く強くなる。
ただし、具体的な処理が見えないからクラス名とメソッド名が上手く
命名されてないと何をしているのか全く分からなくなる。

そうなると実際に呼び出してるメソッドのソースを見に行くけどそこでも
さらに別のクラスを・・・ってことになる。

分かりやすいコーディングって永遠の課題だよな

705 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 02:23:28 ID:ABeNHFQa]
プロトタイプの時点ならクラスとか細かく考えることも無いと思うよ。
クラス設計がどーだこーだ言ってる間があったら、とりあえずさくっと動くもの作って
実際動かしながら細かい仕様を決める→決まったら保守等考えてリファクタリングと。

最初からきれいなコードで作るならリファクタリングなんて言葉生まれてこないでしょ。

706 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 07:00:36 ID:dN2GIaRp]
人生もリファクタリングできねーかなw
樹海行って分解→輪廻転生→再構築とか無しな

707 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 10:33:05 ID:ZglXyMId]
>>692
すいません、こちらの質問自体的外れだったようですね。
丁寧な回答ありがとうございます。

708 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 12:00:56 ID:Zl3XnbJF]
>>704
順を追って読むだけで済むアセンブラ最強

709 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 16:45:11 ID:J/IMcgwF]
プロトタイプを使い回しちゃ駄目っしょ。
それじゃ無計画に作り始めるのと変わらないよ。
一旦破棄してスッキリ再設計がプロトタイピングの基本。



710 名前:名前は開発中のものです。 [2008/03/31(月) 17:52:56 ID:o6thuUMV]
ブロック崩し作ってるんだけど
自機にボールくっついてる状態(bflag=1)から
スペースキー押して(bflag=0)ボールを真上に打ち上げたいんだがどうすりゃいいんだろう・・・・
by=by--; ってやってもボールは微塵にも動かない
ちなみにDXライブラリ使ってます

711 名前:名前は開発中のものです。 [2008/03/31(月) 17:56:50 ID:o6thuUMV]
ちなみにby,bxはボールの座標です

712 名前:名前は開発中のものです。 [2008/03/31(月) 18:00:42 ID:6Xmv80aV]
by -= 1;

713 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:28:42 ID:o6thuUMV]
ダメです・・・・一瞬ほんの数ミリ宙に浮くんですがすぐに戻ります
上のほうまで一定の速度でふわーと浮かんでいくようにするにはどうすればいいんでしょうか・・・・

714 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:32:13 ID:6Xmv80aV]
こんな風にしてないか?
main{
  move();
}

move{
  int by = 100;
  by -= 1;
}

本当はソースうpしてもらったほうが早いんだがな

715 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:34:24 ID:o6thuUMV]
DrawBox(bx,by,bx+10,by+10,GetColor(50,250,250),TRUE);
if(bflag=1){
bx=jx+45;
by=jy-10;
if(key & PAD_INPUT_M ){
bflag=0;
by-=1;
}
}

こんな具合です
スペースを押したらbflag=0になりボールが上に上がっていって、あとは画面内を跳ね回るといったものを今目指してます

716 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:39:08 ID:6Xmv80aV]
これだとスペースを押している間[ if(key & PAD_INPUT_M ) ]だけ
bflag = 0と
by -= 1
が実行されるんじゃないか

717 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:42:53 ID:6Xmv80aV]
if(スペースが押されたら){
    bflag = 0;
}

if(bflag == 0){
    by -= 1;
}

if(ボールがバーに戻ったら){
    bflag = 1;
}

718 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 18:58:21 ID:j8KphFca]
×:if(bflag=1)
○:if(bflag==1)

719 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:05:51 ID:o6thuUMV]
>>717-718
スペースキーのほうも自機の移動と同じ感覚でやってた・・・・
やってみたのですがだめでした・・・・
なにがいけないんだろう、ボタンを押す→ボールが上にずっと移動→天井に当たったら下に移動
この流れになると思ったんえすが・・・・



720 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:31:35 ID:6Xmv80aV]
DrawBox(bx,by,bx+10,by+10,GetColor(50,250,250),TRUE);
if(bflag == 1){
    if(スペース押したら){
        bflag = 0;
}
}else if(bflag == 0){
    if(kabef == 1){
        by -= 1;
        if(by <= 0){
            kabef = 0;
        }
}else if(kabef == 0){
        by += 1;
        if(自機にくっついたら){
            kabef = 1;
            bflag = 1;
        }
    }
}

>>715
一回スペース押すとbflag = 0なんで
if(bflag=1){


by-=1;
}
}
が処理されない。


721 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:32:47 ID:aPwJsVfr]
ボールの移動ルーチンにバグがあるんだろう

722 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:33:47 ID:6Xmv80aV]
        }
    }else if(kabef == 0){
        by += 1;
ずれた

723 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:46:54 ID:o6thuUMV]
みなさんありがとう
移動ルーチンに異常があるんでしょうか・・・?ボールの動きがないというのは
スティッチ見た後にまたやってみます


724 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 19:56:40 ID:aPwJsVfr]
ソース全部出したほうが早い。
壁の判定間違ってたり、変数を毎回初期化してるとか

725 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 21:25:06 ID:PAeYxJr2]
スティッチwwwww

726 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 22:24:16 ID:2PoabXwE]
リロ&スイッチ。

727 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 22:51:34 ID:92M1w2qN]
フローチャート書いて、ちゃんと動くか図を見ながら確認した方が早いんじゃないのか?

728 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 23:08:04 ID:2PoabXwE]
フローチャート…。
何もかもが懐かしい。

729 名前:名前は開発中のものです。 mailto:sage [2008/04/01(火) 14:58:55 ID:9ujhl7+i]
カナダ人の書いた朝鮮人のフローチャートか



730 名前:名前は開発中のものです。 mailto:sage [2008/04/01(火) 21:20:39 ID:NZQeH72J]
シューティング作ってるんですが、

\ | /
 自機

こんな感じで3方向に出るミサイルの処理を書いてて、弾を作る処理と弾の移動の処理はできたのですが、
斜めのミサイルを描画するとき進行方向に傾けさせたいのですが、一つの画像(上を向いたミサイルの絵)だけで可能ですか?


731 名前:名前は開発中のものです。 mailto:sage [2008/04/01(火) 21:36:43 ID:0wOaQ7ZR]
可能です。

732 名前:723 mailto:sage [2008/04/01(火) 21:51:37 ID:AouXDKP/]
>>724
今現在は自機の移動とボールの発射しかプログラムしていないので
間違ってる可能性があるのは変数を毎回初期化してるという点かもしれません
スペースキーを押して発射→ボールちょっと動いて最初に戻る
ただボタンを押してボールを上に移動させるのにもbflagはやっぱ使うべきなんでしょうか?
>>727
一応フローチャートを想定しましたがbflag=0でボールが上に移動という時点でなんらかの
間違いがあるみたいです・・・・・
if(key & PAD_INPUT_M)
これだと押したときだけボールの座標が変わるって意味になるんでしょうか?
押してボールが移動し続けるにはbflag必須?


733 名前:730 mailto:sage [2008/04/01(火) 22:52:06 ID:NZQeH72J]
>>731
WINAPIで作ってるので、画像を描画する関数の引数が 右上X座標、 右上Y座標、 左下X座標、 左下Y座標
といった感じなのですができますか?
できれば具体的な方法を教えてください

734 名前:730 mailto:sage [2008/04/01(火) 22:53:28 ID:NZQeH72J]
どうでもいい訂正ですが、
右上X座標、 右上Y座標、 左下X座標、 左下Y座標 ×
左上X座標、 左上Y座標、 右下X座標、 右下Y座標 ○
です

735 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 07:44:34 ID:yEMc6CZY]
Win32APIはよく分からんけど、これは?
ttp://www.it-engineer.jp/main/programing/sample/vc15.html

736 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 09:30:33 ID:mBhEFyT9]
>>733
ゲーム初期化時に回転済みのビットマップを生成しておくといいよ。
でもドット絵を使うなら手書きで3枚用意した方が綺麗に表示できる思う。

737 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 10:22:20 ID:yEMc6CZY]
三方向に射出した後、うねうね軌道が動かないならそっちの方がいいな。
うねうね動く場合でも8〜16方向くらいあらかじめ用意したほうがいいと思うけど。

738 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 11:20:31 ID:yueRKLvK]
マジかみんな
描画用の関数にラジアン角度を引数に取るよう作ってたんだが、むしろこっちが異端か?

739 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 13:49:35 ID:KHsY3oV1]
太鼓の達人のようなゲームをつくろうと思うのですが、
どのような言語やソフトを使えばよいのでしょうか?
C言語を半年勉強した程度の能力はあります。
どなたか、わかる方答えていただけると幸いです。



740 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 14:51:13 ID:yEMc6CZY]
電子工学だと思う。

741 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 14:53:28 ID:oCV1Xu4/]
C半年だとコンソールアプリになるな

742 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:02:17 ID:Uuvipq4f]
ターゲットを決めるのが先かな
Windows?

743 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:15:16 ID:KHsY3oV1]
真面目に答えていただいてありがとうございます。

>>741
具体的にどのようにしたらよいのでしょうか?
>>742
Windowsです。

こちらに関しては呆れるほどに初心者ですので、燗に触るようでしたら
スルーしていただいて結構です

744 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:35:12 ID:QAuvnuXl]
>>740はスルーかよ
入力デバイスどうすんのって話だと思うが

とりあえず、コンソールでも1キーだけでも動くもの作ってみたら?
BGMは必須だと思うけど、その他のAV的要素ってあとからでもOKだろうから

745 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 15:46:44 ID:KHsY3oV1]
>>744
すみません、前者がよくわかりません。
後者は、要するにプログラムを書いてみろって事ですよね。
BGMについては用意してあります。自分で作曲したもので太鼓の達人ができたらいいなと思って
このスレに書き込んだものですからw

>>740
すみません、違う話だと思ってしまいました。
入力デバイスはキーボードでいこうと思っています。
別に電子太鼓を作ろうとまでは思っていませんのでw



746 名前:744 mailto:sage [2008/04/02(水) 16:59:48 ID:QAuvnuXl]
太鼓の達人ってゲームに必須な要素って多くないと思うから、まずは最低限必要なものを作るところから初めてはどうか、という意味。
さすがにコンソールアプリでは難しいかもしれないけど

音楽鳴らせて、キー入力のタイミングが判断できればOKなのかな?


747 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:13:28 ID:KHsY3oV1]
>>746
そういうことですね、
音楽鳴らせて、キー入力のタイミングが判断できれば成り立ちますね。
言語はCで、Visual C++ 2008 Express Editionを使って
やってみようと思いますがどうでしょうか?


748 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:40:33 ID:oCV1Xu4/]
太鼓の達人ってbm98みたいなもんじゃね?
曲弾きたいだけなら、プログラム作らなくてもあれでも代用できそうな気が
ちょっと古いけど

749 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 17:56:35 ID:KHsY3oV1]
>>748
確かに代用できるかもしれませんが、
太鼓の達人のノートの種類が大まかに2種類なのに対し、BM98は最低5key以上となっています。
数箇所のkeyを使わない設定となると、見栄えが悪いと思います。



750 名前:730 mailto:sage [2008/04/02(水) 19:21:02 ID:5WZMzuoU]
>>735-737
有り難うございます。
大変助かりました。
どちらの方法も試してみて、良い方法を使おうと思います。

751 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 20:24:48 ID:1sA0ZO96]
太鼓の達人は太鼓叩くからおもしろいんであって
太鼓なかったら地味だと思うんだが

752 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 20:36:46 ID:Blss73IL]
DS版が否定された

753 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 22:23:19 ID:Fyx9iI0t]
ひとつ聞きたいんだが

by -= 1;

↑これだと一瞬だけ座標が変わるだけじゃない?
徐々に上に移動って意味はこれでいいのかな?

754 名前:名前は開発中のものです。 mailto:sage [2008/04/02(水) 22:43:45 ID:KHsY3oV1]
>>751
太鼓よりもコントローラの方が得意な人も多いと思いますし、
キーボードで設定しておけば、USBコンバータを使えば太鼓でもプレイが可能なのでは?

755 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 00:41:35 ID:BL3q8jAP]
あの太鼓って、外側は実は木製なんだよな。
分解写真見てびっくりした記憶。

>752
否定していいと思うんだ。(ぼそ)

>753
何の話だ?
ぷちエスパーすると、毎フレームbyが初期化、または定数がセットされるなら一瞬だけ。
描画条件やタイミングによっては動かないかもしれない。

普通は、byはフレームごとに初期化されない(値が保持される)ので
毎フレーム1ドットずつ動く計算になる

756 名前:755 mailto:sage [2008/04/03(木) 00:45:15 ID:BL3q8jAP]
ああ、すまん。ブロック崩しの人か。
>755での暴言は忘れてくれ。

757 名前:名前は開発中のものです。 [2008/04/03(木) 06:18:34 ID:mgvlg8ul]
DXライブラリを使って2次元アクションゲーム作ってるんですが、
なんというか、どうもRPGツクールと同じように
「1から作ってるわけじゃなく、すでにあるものを組み合わせてるだけ感」があって(もちろんRPGツクールほど顕著じゃないですが)、どうにも作ってていまいちノれないんですが

そこで質問なんですが、ウインドウズプログラミングを使って1から作るのと
DXライブラリで作るのでは同じゲームを作るとしたとき、だいたいどのくらい効率や時間は違いますか?
やっぱりウインドウズプログラムの方が極端に時間がかかりますか?


758 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 07:08:17 ID:BL3q8jAP]
これからDirectXとかの勉強をします、とか言うなら半年くらいのオーダーで違う

759 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 11:47:10 ID:bFlfPZb3]
>>757
どうせDirectXを習っても、自由度が高すぎるからDXライブラリみたいなライブラリを自前で作ってると思うよ。
結局のところ3Dモデルや画像読み込んでいじくるのが目的の大半で、
読み込む処理は決まりきってるし、動作と座標はスクリーン座標かワールド座標で管理するだろうし。

仮にC言語周りは完璧でDirectXを覚え始めるとして、スプライト、入力処理、音響処理のラッパーを作るとなると
2ヶ月程度。3D周りに手を出すとさらに2〜5ヶ月。
作った後は、DXより自分好みにライブラリを作ってるだろうから開発効率いいんじゃね?



760 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 14:37:47 ID:u2kemPAd]
DXライブラリにしても、そのまま使うんじゃなくて
さらにラッパを用意したりする人も多いけどな。

761 名前:名前は開発中のものです。 [2008/04/03(木) 14:45:18 ID:mgvlg8ul]
>>758-759
なるほど、だいたい感じはわかりました。
ありがとう。


762 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:12:31 ID:/J2vdBIl]
数百くらいあるオブジェクト同士の当たり判定をしたい場合、総当り以外に何かいい方法ありますか?
総当りでチェックしながら、一回判定したのは外していくという方法以外思いつきません…

763 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:47:20 ID:IqOcn4qg]
1Dなら二分木、2Dなら四分木、3Dなら八分木
という方法で空間を分割することで
当たり判定の最適化ができます

764 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 18:50:56 ID:HifUC8Yv]
【空間分割による最適化】
隣の部屋(room ≒ portal 、block 、area)で誰と誰がどのように触れ合っているか等
毒夫にとっては全く関係のない話なのです

    |                   \
    |  ('A`)           ギシギシ
   / ̄ノ( ヘヘ ̄ ̄        アンアン/

765 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 22:10:07 ID:/J2vdBIl]
>>763-764
ありがとうございます
キーワードがいただけたので、あとは自分で調べて見ます

766 名前:名前は開発中のものです。 mailto:sage [2008/04/06(日) 22:08:08 ID:7HPWr1su]
戦略シミュレーション作ろうとしているのですが、平面座標で
CPUがプレイヤーの駒に対し障害物があった場合、障害物から
左右に走査線を走らせ、反対側にたどり着けば
角(横3px以内、45・90・135)の点を全てストックして、現在の座標より直進で進める
もっとも外側に近い点を目標とし、再びループ。
という仕組みでコードを組んでいますが、障害物の深度から検索しているので
正確なルートを確保できません。
何かアドバイスを頂けないでしょうか。

767 名前:名前は開発中のものです。 mailto:sage [2008/04/06(日) 22:46:38 ID:+JZYHxk+]
「経路探索」といえば「A*」

768 名前:766 mailto:sage [2008/04/08(火) 16:53:31 ID:U0qhjBuH]
>>767
ありがとうございます。難しそうですが、チャレンジしてみたいと思います。

769 名前:名前は開発中のものです。 [2008/04/10(木) 09:03:53 ID:xSsqVcTa]
単発質問スレが乱立しやすいこの板では
この類のスレは常時ageの方がいいのではないかと言ってみるage



770 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 12:30:51 ID:4RKOcDZu]
それもそうだな

771 名前:名前は開発中のものです。 [2008/04/10(木) 12:34:40 ID:nQoNMMIw]
だが断る

772 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 15:29:09 ID:jGCpfgDP]
いやいいこと言ってるかも

773 名前:名前は開発中のものです。 [2008/04/10(木) 16:33:45 ID:kl6WBrXE]
>>770-772
お前ら言ってることとやってることが違うじゃねぇかw

774 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 19:14:58 ID:KzinQoVU]
たしかにいいことだ

775 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 19:17:47 ID:IRGlQQnq]
どうでもいいことだ

776 名前:名前は開発中のものです。 [2008/04/10(木) 19:57:46 ID:xSsqVcTa]
>>770-772
お  ま  え  ら

777 名前:名前は開発中のものです。 mailto:sage [2008/04/10(木) 22:05:07 ID:W5MU10M/]
ローカルルール読め阿呆で十分

778 名前:名前は開発中のものです。 mailto:sage [2008/04/11(金) 19:11:04 ID:8wte2Ya/]
javaでゲーム作成ってスレ落ちたままだけど誰も立てないの?
javaマでゲーム作ってる俺はよく覗いてたのに。

779 名前:名前は開発中のものです。 mailto:sage [2008/04/11(金) 19:26:28 ID:inAxJvIm]
この板でも落ちるのか…w
ひょっとしてもしかすると次の中に無い?

Javaでゲーム作る話してるキチガイがいるよ(藁
ttp://pc11.2ch.net/test/read.cgi/gamedev/1013953851/
むしろjavascriptでゲーム作ろうぜ
ttp://pc11.2ch.net/test/read.cgi/gamedev/1048171505/
JAVAアプリでゲーム
ttp://pc11.2ch.net/test/read.cgi/gamedev/1033926010/
Javaアプレットのゲームの限界は!
ttp://pc11.2ch.net/test/read.cgi/gamedev/1005230153/
【JAVA】2Dアクションゲームを作る【初級】
ttp://pc11.2ch.net/test/read.cgi/gamedev/1094602659/



780 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 04:23:06 ID:bJw5ptYJ]
>>778
みんな誰かが立ててくれるのを待ってたりしてなw
無いのならいっそのこと自分で立てたらどうよ?

781 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 06:54:49 ID:33XEr2k7]
俺のプロバもう久しくスレ立てられないのよ。

782 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 07:18:07 ID:y8iAp7J0]
●買え、●

783 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 07:59:00 ID:5Otwi7xM]
スレ建てできるjava使いがいないなら、
テンプレを用意して頼み込んでみたら良い人(つまり俺以外)が、
建ててくれるかもしれないぞ!

784 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 11:56:34 ID:hx3BYZRW]
おk代行スレ行ってくる

785 名前:名前は開発中のものです。 mailto:sage [2008/04/12(土) 23:45:57 ID:sQo000PS]
pc11.2ch.net/test/read.cgi/gamedev/1208005024/l50
Javaでのゲーム作成 3本目

できたなんかあったら追加してくれ

786 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 00:10:37 ID:sQCOMomw]
●じゃなくて株主優待でもいいんじゃね?
今は暴騰してるけど

787 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 00:19:01 ID:zflyFYlt]
DirectXに関して質問です。

黒のバックに白の点がいくつか描かれているテクスチャがあります。
この白の点の数をカウントし、その数に応じて処理を変えたいです。
シェーダー(HLSL)を使って、このカウント値を取得したいのですが、どのようにすれば良いでしょうか?

788 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 01:09:44 ID:xnDBZw+p]
そのカウント値っては予め数えてある値なのか、それともシェーダー上でカウントするのかどっちなんだ?

789 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 01:20:20 ID:zflyFYlt]
シェーダー上でカウントしたいです。
白の点の数はフレーム毎に変化します。



790 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 01:38:23 ID:N62LMulN]
ピクセルの数をカウントするなら簡単だよね

不定の面積を持った点だと困るな、
画像処理してデジタル化してから
スキャーンして、見付けたら別の色で塗りつぶし
また、スキャンし、終わるまで。
塗りつぶした回数を数える。
誤差がでるだろうな


791 名前:名前は開発中のものです。 mailto:age [2008/04/13(日) 03:09:15 ID:zflyFYlt]
すみません、「その回数を数える」というのは具体的にどうするのでしょうか?
シェーダプログラム内でカウント数を保持する方法があるのでしょうか?

792 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 16:36:05 ID:Z1kaHYoi]
>>790-791
最近のシェーダーの仕様とか組み方とかよく知らんのだけど
俺がRadeon9800でPS2.0使ってた頃は出力はr0のみだった。今は違うのか?
少なくとも当時は、1パスでパーピクセルの処理結果を一箇所に集計して〜
みたいな使い方は出来なかったと記憶してる

793 名前:名前は開発中のものです。 [2008/04/13(日) 16:38:09 ID:zbXHPuUk]
3Dのゲームでよくライフが2Dスプライトでキャラの上に表示されてたりしますが
そのスクリーン座標ってどうやって取得するのでしょうか?


794 名前:793 mailto:sage [2008/04/13(日) 16:58:28 ID:zbXHPuUk]
事故解決しました・・・スレ汚しすみませんでした・・・

795 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 17:02:47 ID:Z1kaHYoi]
>>793
自分でワールド、ビュー、プロジェクション行列を設定してるんだから
その逆を辿ればスクリーン上の任意の点のワールド座標は取得できる
意味が分からないときは是非お買い求めください。      ボーンより
www.borndigital.co.jp/book/program/4-939007-37-5/4-939007-37-5.html

つか素直にID3DXSprite::SetTransform使え
オブジェクトの真上に来るようなワールド行列をぶち込めば済む

796 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 17:04:34 ID:Z1kaHYoi]
ち、営業失敗か

797 名前:793 mailto:sage [2008/04/13(日) 18:13:15 ID:zbXHPuUk]
>>795
レスどもです。後述のやり方使わせていただきます。
本ほしいけど高いです・・・1ヶ月生活切り詰めれば買えそうだけど・・・

798 名前:787 mailto:age [2008/04/13(日) 19:38:00 ID:9OE2EiOk]
>>792
今も基本的に各出力画素に出力ですね。

ピクセルシェーダを以下のようにして、最後の画素(画面右下?)に合計値が出力されるように
試みてみました。

void PS(
float2 in_Tex : TEXCOORD0 ,
out float4 out_Color : COLOR0 )
{
in_Tex.x = in_Tex.x + g_Ofs.x;
in_Tex.y = in_Tex.y + g_Ofs.y;

static float4 SumColor = float4( 0.0 , 0.0 , 0.0 , 1.0 );
SumColor += tex2D( TexSamp , in_Tex );

out_Color = SumColor;
}

結果は、普通にテクスチャの絵がそのまんま出力されてしまいました・・・
ピクセルシェーダ稼動中はSumColorの値は保持されると期待したのですが、
毎ピクセル計算する度にSumColorはクリアされちゃってるってことでしょうか。
staticの存在意義が分かりませんね・・・

799 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 21:16:01 ID:VIYt+noJ]
DirectXの質問ですが
LPDIRECT3DSURFACE9のGetDCで
WinAPIを使用(TextOutなど描画処理)すれば
それでデバイスを使用した高速描画ってことになるんですか?



800 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:29:32 ID:zLBVEijV]
>>799
デバイスのコアな部分までは分からないから言い切れないけど
TextOutなどGDIを使用する限り、ならないって事になってる。
GDIはプリンタにも共通して使用できなければならない。

801 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:44:05 ID:H29I1VXA]
基本的に手抜き用だから性能気にするなら使うの止めた方が良い。


802 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 22:55:49 ID:0WnkT/ZQ]
たまにWinAPI使ってテクスチャーに描いて、
フレーム毎の描画はテクスチャーマッピングで済ますんじゃね?

803 名前:名前は開発中のものです。 mailto:sage [2008/04/13(日) 23:46:57 ID:Z1kaHYoi]
まぁ恥ずかしい長文を画面いっぱいに描画するなら
普通のWindowsアプリ同様に差分描画は必須だろう

毎フレーム全文をTextOutとかは想定外の使い方

804 名前:787 mailto:age [2008/04/14(月) 01:13:34 ID:juYmtKjM]
ttp://www.hsjp.net/upload/src/up15435.jpg
やりたいことはこれです。

「テクスチャを参照する際にピクセルシェーダを活用することが有効です。」

とありますが、具体的にどんなシェーダ処理になるのでしょうか?
だいたいの方針などでも十分ですので、ご助言ください。

805 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 01:17:20 ID:PJR5ohHg]
うわぁ著作物を無断ぽくうpする知的障害者ってまだ死滅していないんだなぁ(棒読み

806 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 03:55:35 ID:EkC361iO]
ここはあくまでゲーム制作の初心者を対象にしているスレ。
平気で無断うpするようなネット初心者はお呼びでない。

807 名前:799 mailto:sage [2008/04/14(月) 20:20:32 ID:acAkUx6Q]
>>800-803
ありがとうございます。
現在SRPGのようなものを製作しているのですが、各キャラのアニメの処理落ちがひどく
DirectXを導入しようと思ったのですが、使い方を誤っていたわけですね;

808 名前:名前は開発中のものです。 [2008/04/14(月) 23:22:29 ID:D8DlEzlI]
>>755
要するにボールの座標(by)を常に保存しとくのに
入れ物がいるってことでしょうか?
「bflag=0の間」って定義じゃ意味として間違ってるんでしょうか?

809 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 23:43:26 ID:1JnIIKqn]
>>808
byに200が入ってたとして、
by -= 1;するとbyは199になる
次にby -= 1;をしたときは200から199じゃなくて199から198になる



810 名前:名前は開発中のものです。 mailto:sage [2008/04/14(月) 23:57:30 ID:jqKpEXH3]
まるまるソースアップすればすぐ解決しそうだけどね
ローカル変数でしたとかありそうだし

811 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 00:27:38 ID:8mjR27PX]
まさかずっと考えてたのか・・・
とりあえず自機は動いてるみたいだし
>>720丸写しで動きそうな気もするんだがね

まあ、>>810だろうな

812 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:34:09 ID:R308PVzI]
敵とか主人公とかアイテムの画像はひとつの配列入れて描いたほうがいいの?
それともべつべつ?

813 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:35:32 ID:VPYFMazR]
大体の場合画像はいっぺんで描いた方が早いよ

814 名前:名前は開発中のものです。 mailto:sage [2008/04/15(火) 23:52:03 ID:805Lw7LR]
>>812
んなもんどっちでやってもゲームは作れるよ。好きにすれ

ところで俺がたった今3秒でひらめいた糞ゲーは
主人公が敵になったりアイテムが仲間になったりするんだ。凄いだろ?
だから敵とか主人公とかアイテムは共通の手続きで取り扱いたいね
ひとつのリスト(配列)に入れるというのは悪くない考えだ

815 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:05:58 ID:4gn/04tn]
オブジェクト指向でのデータ構造に関する質問です。

シューティングゲームの敵オブジェクトを数種つくるとき、

1.親クラスを同じにして種類ごとのクラスをつくる
2.一種類のEnemyクラスのオブジェクトをたくさん作って、種類を表す変数kindの値によって挙動を場合分け
3.一つのEnemyManagerクラスをつくって、必要な変数を配列として保持し、各敵をインデックスによって管理
4.その他俺が考え付かない素晴らしい方法

のどれをすべきなのでしょうか。ご指導頂ければ幸いです。

的外れなこと言ってたらごめんなさい^^;

816 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:11:20 ID:6tcgJhqC]
>ご指導頂ければ幸いです。

先生、手を動かす前から悩む子は嫌いだな
手が使えないなら口を使ってもいいんだよ

とりあえず1〜3を全部やれ。すると人は4に行き着く
でもそれが勘違いだったことに気づくのに時間はかからない

そのときHSPは救いの手を差し伸べるだろう

817 名前:815 mailto:sage [2008/04/16(水) 00:24:52 ID:4gn/04tn]
>>816
一通り試してみたけど違いが分からなかった、という前提でお願いします。
俺が気付かないだけで「これはやっちゃダメだろ」みたいのがあるのかな、って。

つまりHSPから出直せってことですか?

818 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:27:15 ID:1RgW84Mk]
1&2

819 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 00:51:51 ID:HSHLz9Y4]
自分が組みやすいように組めばいいよ
ゲームの規模やシステムによって最善は変わってくるだろうし



820 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 01:14:15 ID:6tcgJhqC]
>>817
>一通り試してみたけど違いが分からなかった、という前提でお願いします。

なら話は簡単だな。どれでやってもゲームは作れるってこと
あとは自分の都合にあったやり方を選択すればいいだけ
作るときの人数構成は。一人で作ってるのか、2〜3人で作ってるのか
ゲーム自体の規模は。敵の数は、種類は、ステージ構成は、2Dなのか3Dなのか
敵やステージのデータを誰が作るのか、誰が調整するのか、自分なのか
それとも仲間なのか、それはプログラマなのか、それとも絵描きなのか
いや絵もプログラムも作れない妹にやらせるのか、などなど

実際に1〜3全部やってみたのにそれぞれの得手不得手、長所短所が
見えないなんてことは絶対にありえないからな

821 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 09:12:06 ID:Fn26u7Ao]
>>815
俺ならこうする。

class Enemy {
  int x;
  int y;
  int life;
  void draw(int x, int y);
  void move();
}

class Enemy1 extends Enemy{
  void draw(int x, int y) {
  ...
  }

  void move(int x, int y) {
  ...
  }
}

1. 敵は共通して現在の座標、ライフ、描画メソッド、移動メソッドを持つ。これを基本クラスとする。
2. 個別の敵オブジェクトは基本クラスであるEnemyクラスを継承して実装する。
3. EnemyManagerは敵オブジェクト(インスタンス)を配列、連結リストなどで保持して一括管理する。


822 名前:815 mailto:sage [2008/04/16(水) 21:13:41 ID:4gn/04tn]
>>820
違いが分からなかった、というのはおかしいですね。すみません。
どれが最適か分からなかった、と言いたかったのです。
>>819さんの言うとおり、結局は個人の好みに行き着くのでしょうか。
>>821さんのように、1+管理クラスでやってみようと思います。皆さん回答ありがとうございました。

823 名前:名前は開発中のものです。 mailto:sage [2008/04/16(水) 22:39:55 ID:8TmMLG1t]
小品ならそれでもいいけど
中作以上だとクラスがあぼーんする

824 名前:名前は開発中のものです。 mailto:sage [2008/04/17(木) 11:28:54 ID:zg8t/6Yz]
>>823
規模や状況によって最適解は変わるってアドバイス受けてるんだから
それくらい作ってりゃ気付くでしょ

825 名前:名前は開発中のものです。 [2008/04/18(金) 19:51:15 ID:rgTpHM1z]
ブロック崩しの者です
あれから試行錯誤してみましたがイマイチ解決に向かいませんでした
ただボールが勝手に浮上していくときもあったのでこれはもしかすると・・・なのでしょうか
www2.uploda.org/uporg1374806.zip.html

いろいろいじって汚くなったのでかなり削ってしまいましたが
間違いなどを指摘していただければありがたいです
ちなみにスペースキーを押したらボールが浮上することだけを考えたので
壁に当たったときの挙動などは考えていません

826 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:28:24 ID:rLjiap3t]
DrawBox(bx,by,bx+10,by+10,GetColor(0,140,140),TRUE);
bx=jx+45;←この行
by=jy-10;←この行
if(bflag ==1){
は要らないんじゃないか?



827 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:34:11 ID:rgTpHM1z]
>>826
それなしでやったところ、ボールが画面左上端に表示されてしまいました
bfag==1にボール座標を書いてるのですが認識されてないんでしょうか?

828 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:38:32 ID:d+O1TZBw]
bx,byが値入れられる前に一度使われてるぜ
あと、
>DrawBox(bx,by,bx+10,by+10,GetColor(0,140,140),TRUE);
>bx=jx+45;
>by=jy-10;   ←ここで上書きされてるから上昇しない
>if(bflag ==1){ (略

上の真中2行削除して、メインループの前の宣言時に
int bx = jx + 45, by = jx - 10;
とでもしとけ

と実行してないけど言ってみるテスト
インデントは綺麗に使おうぜ

829 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:40:46 ID:d+O1TZBw]
ってフラグ類も初期化されてなくね?



830 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:41:19 ID:rLjiap3t]
変数に初期値を入れてないからbflagの初期値は不定じゃないかな?
bx,by,bflagを初期化してみたら?


831 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 20:42:21 ID:JOpRcNIL]
bflag=1もループ前にないといけないな






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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