無料で俺がRPGを作れるようにするスレ
■ このスレッドは過去ログ倉庫に格納されています
11 ◆SLnV723rxg
03/07/26 20:18ID:PRWX91og やる気だけはあるぞ。
214練習帳著者
04/03/22 22:50ID:8UFWL+KK >>212
>if (GetTickCount()>dwTime+5) dwTime=GetTickCount();
>else return;
これは、一つのif文の中で書けば
if (GetTickCount() > dwTime + 5) {
dwTime = GetTickCount();
ゲームの処理(draw()の中身)
}
という流れ。
「前回処理時間から指定時間(5ms)が過ぎていたら、現在の時間を
処理時間として記録し処理を行う」もので、処理を行わない場合には
そのままメインループ(if文の外にあるメッセージポンプ)に処理が
返るから、処理がそこで停まるビジーループにはなりません(あの
ソースももう5年前・・・。RPG関連の記事はそろそろ全面的に書き
直さないといけないですかねえ)。
>while(GetTickCount()<dwTime+5);
だと「指定時間が過ぎるまで」どうなります?
>if (GetTickCount()>dwTime+5) dwTime=GetTickCount();
>else return;
これは、一つのif文の中で書けば
if (GetTickCount() > dwTime + 5) {
dwTime = GetTickCount();
ゲームの処理(draw()の中身)
}
という流れ。
「前回処理時間から指定時間(5ms)が過ぎていたら、現在の時間を
処理時間として記録し処理を行う」もので、処理を行わない場合には
そのままメインループ(if文の外にあるメッセージポンプ)に処理が
返るから、処理がそこで停まるビジーループにはなりません(あの
ソースももう5年前・・・。RPG関連の記事はそろそろ全面的に書き
直さないといけないですかねえ)。
>while(GetTickCount()<dwTime+5);
だと「指定時間が過ぎるまで」どうなります?
215練習帳著者
04/03/22 22:58ID:8UFWL+KK まあ、実際にRPG作ってみると「一定の周期で処理を行う関数」にゲーム
の処理をすべてまとめるのは無理があるから、メインループよりはゲーム
処理用にスレッド作った方が楽になるかな、という気がしてきたんですが。
特に厄介なのは、戦闘シーンやイベントの待ち時間・・・。 最初はあち
こちでPeekMessege()してたけど、これはちょっと違うかな、と。
スレッド作れば、最悪無限ループにしてもUI停まりませんからね(^^;。
もちろん、最終的なプログラムにするときにはスレッド内からの終了処理
(メインスレッドからの終了指示の監視)は必要だろうけど。
>>214
>ていうか>>211のURLはゲームプログラミング練習帳の作者ジャン。
そうですね。あのページの内容はもうかなり古いものもあったりして
書き直さないとなあ、と思っている部分が多いんですが、あちこちに
URL張られているようでちょっと焦ってます(^^;。
とりあえず、「4方向スクロールのマップ表示とキャラクタの透過描画」
あたりに関しては、もうちょいましなソース上げておくつもり。
の処理をすべてまとめるのは無理があるから、メインループよりはゲーム
処理用にスレッド作った方が楽になるかな、という気がしてきたんですが。
特に厄介なのは、戦闘シーンやイベントの待ち時間・・・。 最初はあち
こちでPeekMessege()してたけど、これはちょっと違うかな、と。
スレッド作れば、最悪無限ループにしてもUI停まりませんからね(^^;。
もちろん、最終的なプログラムにするときにはスレッド内からの終了処理
(メインスレッドからの終了指示の監視)は必要だろうけど。
>>214
>ていうか>>211のURLはゲームプログラミング練習帳の作者ジャン。
そうですね。あのページの内容はもうかなり古いものもあったりして
書き直さないとなあ、と思っている部分が多いんですが、あちこちに
URL張られているようでちょっと焦ってます(^^;。
とりあえず、「4方向スクロールのマップ表示とキャラクタの透過描画」
あたりに関しては、もうちょいましなソース上げておくつもり。
216名前は開発中のものです。
04/03/22 23:27ID:hc5U3G0l 本物キター
217名前は開発中のものです。
04/03/22 23:29ID:mioo0vPT 著者降臨age!
218名前は開発中のものです。
04/03/22 23:33ID:nq9Pmduh 上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
上げ忘れちまったよ。ごめんな上げ忘れちまったよ。ごめんな
21998
04/03/22 23:46ID:qIg3ILGt220名前は開発中のものです。
04/03/23 00:02ID:4auKbf0z >の処理をすべてまとめるのは無理があるから、メインループよりはゲーム
>処理用にスレッド作った方が楽になるかな、という気がしてきたんですが。
この辺は、伝統的には所謂タスクシステムで解決してきたのかな。
スレッドだと同期が大変過ぎるしこういう用途には重すぎると思う。
まぁ、タスクシステムっていってもいろいろなやり方があるみたいだけど…
>処理用にスレッド作った方が楽になるかな、という気がしてきたんですが。
この辺は、伝統的には所謂タスクシステムで解決してきたのかな。
スレッドだと同期が大変過ぎるしこういう用途には重すぎると思う。
まぁ、タスクシステムっていってもいろいろなやり方があるみたいだけど…
221名前は開発中のものです。
04/03/23 00:47ID:9F6tXsaP シナリオスクリプトを実装する時にはスレッドにしたりもする
ファイバー(コルーチン)という手もあるようだけどね
異なるプログラム方式の連携
ttp://www.jah.ne.jp/~naoyuki/Writings/VScheme6.html
ファイバー(コルーチン)という手もあるようだけどね
異なるプログラム方式の連携
ttp://www.jah.ne.jp/~naoyuki/Writings/VScheme6.html
222名前は開発中のものです。
04/03/23 01:05ID:PMWtRlHb シナリオなんかだと、タスクシステムでコールされるタスク関数を
ファイバ(マイクロスレッド、コルーチン、継続でもOK?)にしておくと
効率よく開発できるかな、とかおもったりしたけど全然試してない。
このへんは、やね本2だかに書いてあるらしいけど読んだこと無いです。
ファイバ(マイクロスレッド、コルーチン、継続でもOK?)にしておくと
効率よく開発できるかな、とかおもったりしたけど全然試してない。
このへんは、やね本2だかに書いてあるらしいけど読んだこと無いです。
223名前は開発中のものです。
04/03/23 02:20ID:JCV/36ob 俺もスレッド使わないほうがいいと思う
マルチスレッドを毛嫌いするわけじゃないが、明確な理由なしにスレッド化するのはやめたほうがいい
ゲームで必要になる場面があるとすれば、SLGの思考ルーチンくらいだと思う
で、ちょっとスレ違いの話題になるが、
ファイバってCreateFiber関数とか使う奴のこと?
だとするとあんなの使わなくても関数ポインタ切り替えでいいじゃん、と思うんだが・・・
#少なくともゲームにおいては。なんかいい利用方法あるならスマン
マルチスレッドを毛嫌いするわけじゃないが、明確な理由なしにスレッド化するのはやめたほうがいい
ゲームで必要になる場面があるとすれば、SLGの思考ルーチンくらいだと思う
で、ちょっとスレ違いの話題になるが、
ファイバってCreateFiber関数とか使う奴のこと?
だとするとあんなの使わなくても関数ポインタ切り替えでいいじゃん、と思うんだが・・・
#少なくともゲームにおいては。なんかいい利用方法あるならスマン
224名前は開発中のものです。
04/03/23 02:48ID:PMWtRlHb >だとするとあんなの使わなくても関数ポインタ切り替えでいいじゃん、と思うんだが・・・
その関数を減らすために使うんだよ。
普通はその関数の操作対象のオブジェクト(やシーンなど)の状態が変わったら
関数を切り替えるわけでしょ。ファイバを使うと、その「状態」が「関数をどこまで
実行したか」で表せるようになるから、状態ごとにいくつかに分かれてた関数を
ひとつに出来る、と。
まぁ、でもこういうのは大概スクリプトで実現するような気がしないでもない。
その関数を減らすために使うんだよ。
普通はその関数の操作対象のオブジェクト(やシーンなど)の状態が変わったら
関数を切り替えるわけでしょ。ファイバを使うと、その「状態」が「関数をどこまで
実行したか」で表せるようになるから、状態ごとにいくつかに分かれてた関数を
ひとつに出来る、と。
まぁ、でもこういうのは大概スクリプトで実現するような気がしないでもない。
225223
04/03/23 05:14ID:JCV/36ob >>224
ちょっと待て、その利点は間違ってると思うぞ
ファイバ使っても関数減らすことになるとは思えない
このスレなのでRPGの例で行くが、
RPGにおける「状態」ってたとえば
・マップ移動(キー入力待ち)
・マップ移動(スクロール)
・戦闘中
とかに分かれるよね
ファイバを使う場合、これらの関数をCreateFiber関数で登録し、SwitchToFiberで切り替えるだけだ。
使わなくとも一旦呼び出し元ループに戻って別の状態用関数を呼び出すのと関数の数はほぼ変わらん
#状態の定義が食い違ってるかも?
スレ違い継続&長文スマソ
ちょっと待て、その利点は間違ってると思うぞ
ファイバ使っても関数減らすことになるとは思えない
このスレなのでRPGの例で行くが、
RPGにおける「状態」ってたとえば
・マップ移動(キー入力待ち)
・マップ移動(スクロール)
・戦闘中
とかに分かれるよね
ファイバを使う場合、これらの関数をCreateFiber関数で登録し、SwitchToFiberで切り替えるだけだ。
使わなくとも一旦呼び出し元ループに戻って別の状態用関数を呼び出すのと関数の数はほぼ変わらん
#状態の定義が食い違ってるかも?
スレ違い継続&長文スマソ
226名前は開発中のものです。
04/03/23 08:41ID:PMWtRlHb227名前は開発中のものです。
04/03/23 09:03ID:PMWtRlHb あぁ、でもこの場合、少なくてもマップ移動はまとめられるね。
ヘンテコ擬似コードだけど、こんな感じ?(描画はメインファイバ側でやるという前提)
void MapMove() {
while(1) {
//方向キーが押されるまで待つ
while (!CheckHitCursorKey())
SwithFiber(mainFiber);
MoveMap(GetKeyState());//スクロール方向を決める処理
//ここからスクロール処理
for (int i = 0; i < MAP_CHIP_SIZE; i++) {
ScrollMap();//1ドット分スクロール
SwitchFiber(mainFiber);
}
}
}
この場合にまとめるのが正しいかは議論ありそうだがそれはおいといて、例としてね。
ヘンテコ擬似コードだけど、こんな感じ?(描画はメインファイバ側でやるという前提)
void MapMove() {
while(1) {
//方向キーが押されるまで待つ
while (!CheckHitCursorKey())
SwithFiber(mainFiber);
MoveMap(GetKeyState());//スクロール方向を決める処理
//ここからスクロール処理
for (int i = 0; i < MAP_CHIP_SIZE; i++) {
ScrollMap();//1ドット分スクロール
SwitchFiber(mainFiber);
}
}
}
この場合にまとめるのが正しいかは議論ありそうだがそれはおいといて、例としてね。
228練習帳著者
04/03/23 09:10ID:R4NaancD >>220
別スレッドの利点は、他のスレッドと同期する必要をなるべく生じさせ
ない、ゲームに関する処理を一本道の流れに分離しておくような形式に
できた場合、Windowsのシステムの流れをあまり意識しないでゲームの
処理に集中できるかな、と。
実際、戦闘やスクリプトベースのイベント処理も含めてRPGのデータ処理
やバックバッファ(あとはウインドウのDCに出力するだけのDIBSection)
への描画処理をすべて別スレッド内で行うシステムを作ってみたんですが、
比較的単純なシステムではプログラムも一本道の単純なものにまとめられ
そうで、これはこれでよさそう。
小規模で単純なRPG/ADVでは、こういったタイプの処理もありかも。
まあ、一定時間ごとに呼び出す処理用関数で状態を管理しながら処理して
いく、という形にまとめられればその方がよさそうですけどね(ただ、
ゲーム本体の処理以外の部分でたいしたことをしていなければ毎回状態を
管理しながら一定時間ごとに処理を行う、という流れはスレッドで連続的
に実行しているように書く、というのと流れとしては同じになりそう)。
私もメインループ内で一定時間ごとに状態に応じて振り分け、という設計
を考えていましたが、別スレッドで処理する実験結果を見ると意外にうま
くいきそうだったんで、とりあえず別スレッドを作る方向で作っています。
ゲームの処理の流れを本格的に管理するつもりなら、フレームワークの開発
からやる方がよさそう・・・。
別スレッドの利点は、他のスレッドと同期する必要をなるべく生じさせ
ない、ゲームに関する処理を一本道の流れに分離しておくような形式に
できた場合、Windowsのシステムの流れをあまり意識しないでゲームの
処理に集中できるかな、と。
実際、戦闘やスクリプトベースのイベント処理も含めてRPGのデータ処理
やバックバッファ(あとはウインドウのDCに出力するだけのDIBSection)
への描画処理をすべて別スレッド内で行うシステムを作ってみたんですが、
比較的単純なシステムではプログラムも一本道の単純なものにまとめられ
そうで、これはこれでよさそう。
小規模で単純なRPG/ADVでは、こういったタイプの処理もありかも。
まあ、一定時間ごとに呼び出す処理用関数で状態を管理しながら処理して
いく、という形にまとめられればその方がよさそうですけどね(ただ、
ゲーム本体の処理以外の部分でたいしたことをしていなければ毎回状態を
管理しながら一定時間ごとに処理を行う、という流れはスレッドで連続的
に実行しているように書く、というのと流れとしては同じになりそう)。
私もメインループ内で一定時間ごとに状態に応じて振り分け、という設計
を考えていましたが、別スレッドで処理する実験結果を見ると意外にうま
くいきそうだったんで、とりあえず別スレッドを作る方向で作っています。
ゲームの処理の流れを本格的に管理するつもりなら、フレームワークの開発
からやる方がよさそう・・・。
229名前は開発中のものです。
04/03/23 11:14ID:PfXAGYNf エェー?本当にちゃんと同期できてる?データの整合性もちゃんと保ててる?
マルチCPUの場合は、同じデータをアクセスするコードが「同時に」2つ以上走ることも
あるんだよ?
マルチスレッドは、データの不整合性、デッドロック、抜け出せないロッキング、
優先順位の逆転などなど気をつけないといけない罠が多すぎるので、どうしても必要
なところ意外では使わないことにしてるよ。
スレッドがだめって言ってるわけじゃないけど、初心者向けでは無いよね。
「処理の流れ」を記述したいときは、大概スクリプトにするかなぁ?
マイクロスレッドでもいいと思う。
マルチCPUの場合は、同じデータをアクセスするコードが「同時に」2つ以上走ることも
あるんだよ?
マルチスレッドは、データの不整合性、デッドロック、抜け出せないロッキング、
優先順位の逆転などなど気をつけないといけない罠が多すぎるので、どうしても必要
なところ意外では使わないことにしてるよ。
スレッドがだめって言ってるわけじゃないけど、初心者向けでは無いよね。
「処理の流れ」を記述したいときは、大概スクリプトにするかなぁ?
マイクロスレッドでもいいと思う。
230名前は開発中のものです。
04/03/23 12:01ID:JCV/36ob >>227
んー・・・なんとなく言いたいことは分かった、ありがとう
けどやっぱタスクシステムから乗り換えるほどの理由じゃないっす
#スレ違いすまんがSTGの敵の動き制御部分は特に意味がなさそう
#理由はたとえば同じ種別の敵が10いたら同じ関数を10回実行しなきゃいけない。
#けど同じ関数を回すわけだから結局状態データは外部に置かなきゃいけない
#同じ関数を10個ファイバとして登録して再利用するにしても、
#結局被弾したとかの状況によって初期化するわけだから外部で制御しても大差なし
#そもそも最近のハードだと敵の動きは外部データで持つことが多いので
#違う敵でも同じ関数で処理する
>>228
Windowsのシステムの流れってぶっちゃけメッセージループだよね
なら別スレッドにする必要はないかと
PeekMessage(およびそれに付属する処理)を1タスクとして考えればいいだけ
たとえばバックバッファを作った後でPeekMessageを呼び出せばいい
んー・・・なんとなく言いたいことは分かった、ありがとう
けどやっぱタスクシステムから乗り換えるほどの理由じゃないっす
#スレ違いすまんがSTGの敵の動き制御部分は特に意味がなさそう
#理由はたとえば同じ種別の敵が10いたら同じ関数を10回実行しなきゃいけない。
#けど同じ関数を回すわけだから結局状態データは外部に置かなきゃいけない
#同じ関数を10個ファイバとして登録して再利用するにしても、
#結局被弾したとかの状況によって初期化するわけだから外部で制御しても大差なし
#そもそも最近のハードだと敵の動きは外部データで持つことが多いので
#違う敵でも同じ関数で処理する
>>228
Windowsのシステムの流れってぶっちゃけメッセージループだよね
なら別スレッドにする必要はないかと
PeekMessage(およびそれに付属する処理)を1タスクとして考えればいいだけ
たとえばバックバッファを作った後でPeekMessageを呼び出せばいい
231名前は開発中のものです。
04/03/23 12:25ID:rzkxl8IS >>230
>けどやっぱタスクシステムから乗り換えるほどの理由じゃないっす
いや、タスクシステムと併用するんだよ当然。
タスクシステムからタスク関数を呼び出すと思うけど、それをファイバにするという話。
>#同じ関数を10個ファイバとして登録して再利用するにしても、
>#結局被弾したとかの状況によって初期化するわけだから外部で制御しても大差なし
まぁ、被弾とか非同期で状態が変わる部分は、別関数にせざるを得ないよね。「例外(Exception)」だし。
でも、多数の状態が(ほぼ)シーケンシャルに切り替わっていく状態なんかでは、状態ごとに関数分けたり
状態変数作ってswitchで分けたりするよりは、すっきりしたプログラムになると思う。
まぁ、もちろん、
>#そもそも最近のハードだと敵の動きは外部データで持つことが多いので
なので>>224ではスクリプトでやる場合が多いと書いたわけだけど…
どっちにしろ「使いようによっては便利なときもある」って話だ。
全ての場合で使えると言ってるわけでもない。ファイバはメモリ食うしね。
>けどやっぱタスクシステムから乗り換えるほどの理由じゃないっす
いや、タスクシステムと併用するんだよ当然。
タスクシステムからタスク関数を呼び出すと思うけど、それをファイバにするという話。
>#同じ関数を10個ファイバとして登録して再利用するにしても、
>#結局被弾したとかの状況によって初期化するわけだから外部で制御しても大差なし
まぁ、被弾とか非同期で状態が変わる部分は、別関数にせざるを得ないよね。「例外(Exception)」だし。
でも、多数の状態が(ほぼ)シーケンシャルに切り替わっていく状態なんかでは、状態ごとに関数分けたり
状態変数作ってswitchで分けたりするよりは、すっきりしたプログラムになると思う。
まぁ、もちろん、
>#そもそも最近のハードだと敵の動きは外部データで持つことが多いので
なので>>224ではスクリプトでやる場合が多いと書いたわけだけど…
どっちにしろ「使いようによっては便利なときもある」って話だ。
全ての場合で使えると言ってるわけでもない。ファイバはメモリ食うしね。
232名前は開発中のものです。
04/03/23 16:31ID:cY6fF1y+ マルチスレッドにする利点はタイトルバーをクリックしても処理がとまらないことかな
23398
04/03/23 21:04ID:s4+zR2jB よく分からないんですけど、マルチスレッド使えないとやばいっていうことでしょうか?
今度こそマップスクロール完成版↓
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz78.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a5.zip
・静止状態にCPU100%になっていたのを修正(Sleep(1);をつけた)
・メッセージウィンドウ表示時にCPU100%になっていたのを修正(Sleep(1);をつけた)
・描画関数を2つに分割
なんか処理が重くなったような気がする・・・
今度こそマップスクロール完成版↓
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz78.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a5.zip
・静止状態にCPU100%になっていたのを修正(Sleep(1);をつけた)
・メッセージウィンドウ表示時にCPU100%になっていたのを修正(Sleep(1);をつけた)
・描画関数を2つに分割
なんか処理が重くなったような気がする・・・
234名前は開発中のものです。
04/03/23 21:12ID:PMWtRlHb んじゃ、次は、DrawMapの、「〜スクロール時描画」を「静止マップ表示」ひとつにまとめよう!
これでかなりすっきりするはず。
これでかなりすっきりするはず。
23598
04/03/24 22:18ID:w/FFfgKd すっきりしたかどうか分かりませんが、まとめてみました↓
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz79.txt
・描画方法を少し変更
メッセージウィンドウ表示は置いといて、次はNPCを作ってみる予定
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz79.txt
・描画方法を少し変更
メッセージウィンドウ表示は置いといて、次はNPCを作ってみる予定
23698
04/03/29 19:11ID:hm6pjM86 ログが消えてる(´・ω・`)
NPCの移動をなめらかに描画するのが難しいんですが、
なんかいい方法とかないでしょうか・・・
NPCの移動をなめらかに描画するのが難しいんですが、
なんかいい方法とかないでしょうか・・・
23798
04/03/30 22:16ID:W6u+pmd7 NPCがどうしてもうまく描画できないので、マップ自体の描画方法を
「何か起こったら描画」から「常に一定時間おきに描画」に変更してみた。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz88.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a7.zip
方向性が間違ってるような気がしないでもないんですが、
こういう描画方法でもいいんでしょうか
「何か起こったら描画」から「常に一定時間おきに描画」に変更してみた。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz88.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a7.zip
方向性が間違ってるような気がしないでもないんですが、
こういう描画方法でもいいんでしょうか
23898
04/04/01 21:53ID:xdIEUIEH NPCなめらか移動
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz91.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a8.zip
NPCの移動がランダムではないような気がする。
気のせいかもしれないけれど、ある方向にいったん進んだら、
次に進む方向も同じになる確率が高い。
次は当たり判定をつけようと思う。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz91.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a8.zip
NPCの移動がランダムではないような気がする。
気のせいかもしれないけれど、ある方向にいったん進んだら、
次に進む方向も同じになる確率が高い。
次は当たり判定をつけようと思う。
239200
04/04/02 00:46ID:HxQygUy0 srand((unsigned)time(NULL));
は、最初に一回だけね。ループには入れないで。
srandは乱数ジェネレータの初期値。
rand()関数はsrandを実行しなくても一回一回違う値を返すけど、もう一度プログラムを実行してもまた同じ値を返してきてしまう。
一回目の結果:7,2,5,6,4,1...
二回目の結果:7,2,5,6,4,1...
こんなカンジで。
srandでtime(NULL)を与える理由は、プログラムを起動するごとに違う値を出力するようにするため。
一回目の結果:7,2,5,6,4,1...
二回目の結果:5,1,8,4,3,7...
ってカンジで。
timeは確か秒単位だったから1秒以内ならrandが同じ結果を返すことになる。
って、コレも猫でもわかるプログラミングで説明されていたような・・・
は、最初に一回だけね。ループには入れないで。
srandは乱数ジェネレータの初期値。
rand()関数はsrandを実行しなくても一回一回違う値を返すけど、もう一度プログラムを実行してもまた同じ値を返してきてしまう。
一回目の結果:7,2,5,6,4,1...
二回目の結果:7,2,5,6,4,1...
こんなカンジで。
srandでtime(NULL)を与える理由は、プログラムを起動するごとに違う値を出力するようにするため。
一回目の結果:7,2,5,6,4,1...
二回目の結果:5,1,8,4,3,7...
ってカンジで。
timeは確か秒単位だったから1秒以内ならrandが同じ結果を返すことになる。
って、コレも猫でもわかるプログラミングで説明されていたような・・・
240200
04/04/02 00:49ID:HxQygUy0 あ、別のサイトだったっぽいです。
24198
04/04/02 20:19ID:RjQBCx/D おまじない程度の認識しかなかったので、ここが原因とは思いませんでした。
ランダムに動くようになりました。
ふと思ったんですが、WINAPIなら timeGetTime()%10; でも0~9のほぼ乱数ができるような
気がするんですが、これって邪道でしょうか。
ランダムに動くようになりました。
ふと思ったんですが、WINAPIなら timeGetTime()%10; でも0~9のほぼ乱数ができるような
気がするんですが、これって邪道でしょうか。
24298
04/04/02 22:26ID:OS/Q3nYt ↑自己レス 同時に複数の乱数を得たいときに不便なのでやっぱりだめ
当たり判定をつけた。ついでに歩行アニメーションもつけた。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz94.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a9.zip
次はマップエディタを作る予定。
当たり判定をつけた。ついでに歩行アニメーションもつけた。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz94.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a9.zip
次はマップエディタを作る予定。
24398
04/04/03 22:19ID:eDSQOtXr マップエディタセーブ機能なし
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz2.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_1.zip
マップエディタ作る時間 > テキストでマップを作る時間
な気がしてきた。
APIのファイル操作はできれば避けたいんですが、
#include <window.h>をすると#include <fstream>できなくなるんでしょうか?
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz2.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_1.zip
マップエディタ作る時間 > テキストでマップを作る時間
な気がしてきた。
APIのファイル操作はできれば避けたいんですが、
#include <window.h>をすると#include <fstream>できなくなるんでしょうか?
244練習帳著者
04/04/03 23:40ID:ClmmNDdO >>243
マップエディタはイベント配置機能なども含めRPG開発では必須
になるけど、開発するのは本体よりも大変かもしれませんね。
まあ、開発自体が良い練習になるしマップの仕様はゲーム設計で
いくらでも変わるから、時間はかかっても独自のマップエディタ
を作るのも良いでしょう。
あと、バイナリファイルは、特に理由がなければAPIで扱うのが
一番楽な気がw
マップエディタはイベント配置機能なども含めRPG開発では必須
になるけど、開発するのは本体よりも大変かもしれませんね。
まあ、開発自体が良い練習になるしマップの仕様はゲーム設計で
いくらでも変わるから、時間はかかっても独自のマップエディタ
を作るのも良いでしょう。
あと、バイナリファイルは、特に理由がなければAPIで扱うのが
一番楽な気がw
245名前は開発中のものです。
04/04/04 00:10ID:8gkVG1Fa 私も参戦してよいでしょうか。
環境はVC++6だけど、DirectX(8or9)つかうかWinAPI(SDK)だけで行くか悩み中。
SDKだけでいけそうだけど、勉強のためにDX使おうかなぁとも。
覚えたほうが後々いいですかね。。(どうでしょう?)
とりあえずマップチップ表示してその上を歩き回れるようなものを作ろうと思ってるんですが。
環境はVC++6だけど、DirectX(8or9)つかうかWinAPI(SDK)だけで行くか悩み中。
SDKだけでいけそうだけど、勉強のためにDX使おうかなぁとも。
覚えたほうが後々いいですかね。。(どうでしょう?)
とりあえずマップチップ表示してその上を歩き回れるようなものを作ろうと思ってるんですが。
24698
04/04/04 19:29ID:mMmF0Gyi24798
04/04/04 23:33ID:t/HUZNZd 右クリックすると、直前に描画したマップの種類をテキストに出力するようにした。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz3.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_2.zip
保存の仕方がいまいちよく分からないので、
配列で記録しておいて、こぴぺでソースに貼り付けれるようにする予定。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz3.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_2.zip
保存の仕方がいまいちよく分からないので、
配列で記録しておいて、こぴぺでソースに貼り付けれるようにする予定。
248245
04/04/05 00:00ID:Exj/seSL ども。
では最初の目標として、
なんか表示してキーボードで動かせる奴を作ってうpします。
DX使うかまだ未定。訳わかんなかったらSDKでやります。
では最初の目標として、
なんか表示してキーボードで動かせる奴を作ってうpします。
DX使うかまだ未定。訳わかんなかったらSDKでやります。
249名前は開発中のものです。
04/04/05 12:22ID:qkWA7QuF SDK -> Software Development Kit
250245
04/04/05 13:40ID:Exj/seSL WinAPIどぅえす。
どっかのサイトでAPIのみでつくるのをSDKって言ってんの見て変な癖ついちゃいました。
それで、やっぱDirectXはこのくらいの規模の2Dもので使うにはめんどいだけで
恩恵無さそうな気がしてきたので使わないかもしれません。
(突っ込みが欲しい所であります。)
どっかのサイトでAPIのみでつくるのをSDKって言ってんの見て変な癖ついちゃいました。
それで、やっぱDirectXはこのくらいの規模の2Dもので使うにはめんどいだけで
恩恵無さそうな気がしてきたので使わないかもしれません。
(突っ込みが欲しい所であります。)
25198
04/04/05 20:25ID:jO2LaB8o 俺はDirextX使えないけど、将来的にすごいもの作ろうとしたら
避けて通れない道な気がするから、敢えて使ってみるのもいいかも
避けて通れない道な気がするから、敢えて使ってみるのもいいかも
252245
04/04/06 14:51ID:I/KdK9GY 実は超最終的な目標は3Dのネットゲー作りたいんですよねぇ。
だからDXは絶対覚えないと・・・
でもCのプログラミング自体基本ができてないから
とりあえず難しいDXは抜きに多少使った事があるAPIでやって、
C自体の基本的なところの習得に集中してからDXに移ろうかなぁ
なんて気分になってきました。
だからDXは絶対覚えないと・・・
でもCのプログラミング自体基本ができてないから
とりあえず難しいDXは抜きに多少使った事があるAPIでやって、
C自体の基本的なところの習得に集中してからDXに移ろうかなぁ
なんて気分になってきました。
25398
04/04/06 20:50ID:VKrLl24Q >>252
教材が見つからなかったんで、俺は諦めたけどELっていう手も。
でもAPIの知識が必要だった気がするから、結局APIだけでやってみるのが
一番いいのかもしれません・・・
初期化ファイル(MapDataAlpha.ini)にセーブするようにした。操作方法はソースの上のほうに書いてあります。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz8.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_3.zip
・WM_RBUTTONDOWN時に
POSITION[0][0] = ...
POSITION[1][0] = ...
POSITION[2][0] = ... のように記録させたいんですが、どうすればいいんでしょうか?
教材が見つからなかったんで、俺は諦めたけどELっていう手も。
でもAPIの知識が必要だった気がするから、結局APIだけでやってみるのが
一番いいのかもしれません・・・
初期化ファイル(MapDataAlpha.ini)にセーブするようにした。操作方法はソースの上のほうに書いてあります。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz8.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_3.zip
・WM_RBUTTONDOWN時に
POSITION[0][0] = ...
POSITION[1][0] = ...
POSITION[2][0] = ... のように記録させたいんですが、どうすればいいんでしょうか?
254名前は開発中のものです。
04/04/07 03:10ID:6G2QeT26 RPG製作に興味あってこのスレきますた。
後半部を流し読みしかしてませんが、なにやらAPIやDXベースで話がすすんでるようですが
それらを学習しながらはたしてモノが完成するのかなぁと思ったので。
最初は253氏が触れてるようなEL等のライブラリを使用するのがいいかと思います。
ゲームの中身の処理以外で悩むのつまんないし。
後半部を流し読みしかしてませんが、なにやらAPIやDXベースで話がすすんでるようですが
それらを学習しながらはたしてモノが完成するのかなぁと思ったので。
最初は253氏が触れてるようなEL等のライブラリを使用するのがいいかと思います。
ゲームの中身の処理以外で悩むのつまんないし。
255245
04/04/07 05:36ID:RS4YRj4625698
04/04/07 20:26ID:MMz7Nn2x >>255
一応、目安ということで見ておくといいかも↓
http://gamdev.org/w/?%5B%5BFF%C9%F7RPG%A4%F2%BA%EE%A4%EC%5D%5D
最低限の機能しかないけどマップエディタ完成
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz8.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_3.zip
次はメッセージウィンドウを表示させようと思う。
一応、目安ということで見ておくといいかも↓
http://gamdev.org/w/?%5B%5BFF%C9%F7RPG%A4%F2%BA%EE%A4%EC%5D%5D
最低限の機能しかないけどマップエディタ完成
http://www.geocities.co.jp/SiliconValley-Bay/2736/zzz8.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/map_ed_3.zip
次はメッセージウィンドウを表示させようと思う。
25798
04/04/07 20:27ID:MMz7Nn2x258245
04/04/08 05:12ID:rdLQdFbl >>256
おぉそこは知りませんでした。凄く参考になります。
現状ですがテキストファイルからマップデータを読み込み、
表示することができました。
http://gamdev.org/up/img/426.zip
本当はバイナリにして暗号化したりした独自形式にしりたいんだけど
よくわかんないのでとりあえず放置。
次はキーボードでキャラを移動して画面をスクロールさせてみようと思います。
しかし98さんは進歩早いですね。私も早く追いつけるようにがんばります。
おぉそこは知りませんでした。凄く参考になります。
現状ですがテキストファイルからマップデータを読み込み、
表示することができました。
http://gamdev.org/up/img/426.zip
本当はバイナリにして暗号化したりした独自形式にしりたいんだけど
よくわかんないのでとりあえず放置。
次はキーボードでキャラを移動して画面をスクロールさせてみようと思います。
しかし98さんは進歩早いですね。私も早く追いつけるようにがんばります。
25998
04/04/08 20:18ID:GQOUbMkn 2ヶ月前からやっててまだこの程度なので、かなり遅いと思われます・・
保存形式ですけど、
XML→難しい割りにメリットなさそう バイナリ→シラネ レジストリ→怖い
ってことで、消去法で初期化ファイル使ってます。
データ書き換えが簡単で、ゲームとして成り立たなくなりそうですが。
保存形式ですけど、
XML→難しい割りにメリットなさそう バイナリ→シラネ レジストリ→怖い
ってことで、消去法で初期化ファイル使ってます。
データ書き換えが簡単で、ゲームとして成り立たなくなりそうですが。
260245
04/04/08 22:58ID:rdLQdFbl ファイル操作の辺りって結構でかい壁ですよね。(俺だけかも)
いずれ絶対やらなきゃなんないし、かなり面倒くさそう。。。
今回はPCを矢印キーで操作して画面をスクロールできるようにしました。
ついでに当たり判定もつけました。
ttp://gamdev.org/up/img/439.zip
現状はまだ隣のマスへワープしてる状態なので、
つぎは滑らかに移動できるようにしたいと思います。
いずれ絶対やらなきゃなんないし、かなり面倒くさそう。。。
今回はPCを矢印キーで操作して画面をスクロールできるようにしました。
ついでに当たり判定もつけました。
ttp://gamdev.org/up/img/439.zip
現状はまだ隣のマスへワープしてる状態なので、
つぎは滑らかに移動できるようにしたいと思います。
26198
04/04/09 00:11ID:vWYKL39D 俺もファイル操作で何回も挫折してます。
バイナリでの保存方法教えて。エロイ人。
>ついでに当たり判定もつけました
ダウソしてみたんですが、実行前の注意必読.txt読んだら
怖くて実行できなくなってしまったorz
バイナリでの保存方法教えて。エロイ人。
>ついでに当たり判定もつけました
ダウソしてみたんですが、実行前の注意必読.txt読んだら
怖くて実行できなくなってしまったorz
262200
04/04/09 00:16ID:PDI25ArR うぃっす。そのうち暇になったら俺も晒そうかな。今は忙しいが。
>>259
XMLはHTMLと同じようなマークアップ言語のことじゃないん?
だから出力形式としてはテキストorバイナリになると思うんだけど。
あと、ツール関係もC言語で作るって言うのはどうかと。
ツールは他の言語で作って出力データだけ使うのが良いと思われる。
テキストで出力するのであれば、マップチップ番号をカンマで区切って出力したり
すればいいんじゃない。
コレが有名なCSVファイルね。
ちょうど245の晒しているマップデータをカンマで区切ったような形式。
もちろん、出力するデータの桁が決まっていれば区切る必要はない。
バイナリはただ単に数値をそのまま出力しただけのデータ。
通常のテキストファイルは文字コードによって人間の理解できる文字になっているが、
コンピュータで扱っている数字はそのまま出力した場合、テキストファイルのように
数字を読み取ることは出来ない。
しかし、プログラムから読み込む場合は余計な数字>数値変換を行わなくて済むのと、
サイズが小さくなると言うメリットがある。
>>259
XMLはHTMLと同じようなマークアップ言語のことじゃないん?
だから出力形式としてはテキストorバイナリになると思うんだけど。
あと、ツール関係もC言語で作るって言うのはどうかと。
ツールは他の言語で作って出力データだけ使うのが良いと思われる。
テキストで出力するのであれば、マップチップ番号をカンマで区切って出力したり
すればいいんじゃない。
コレが有名なCSVファイルね。
ちょうど245の晒しているマップデータをカンマで区切ったような形式。
もちろん、出力するデータの桁が決まっていれば区切る必要はない。
バイナリはただ単に数値をそのまま出力しただけのデータ。
通常のテキストファイルは文字コードによって人間の理解できる文字になっているが、
コンピュータで扱っている数字はそのまま出力した場合、テキストファイルのように
数字を読み取ることは出来ない。
しかし、プログラムから読み込む場合は余計な数字>数値変換を行わなくて済むのと、
サイズが小さくなると言うメリットがある。
263200
04/04/09 00:23ID:PDI25ArR 発言が前後しちまったーヨ。
出力・・・猫でもわかるミレ
出力・・・猫でもわかるミレ
264245
04/04/09 06:14ID:PD92y+NK >>261
何があるかわかんないので、一応、免責事項を書いておいたほうがいいかなと思って。
フリーソフトに限らず書いてあるのが多いので見習いました。
多分大丈夫だと思います。多分。。。(でもやっぱり責任はもてませんw)
>>262
CSVにしようと思ったんですけど、まんどくせのでとりあえずあんな感じに。
カンマとかって普通に文字列操作でくっ付けて〜.CSVでWilteFileすれば
出来上がるんですかね。そのうちやってみようと思います。
ちなみに私のほうはVC++でやってるので、
マップツールの方はダイアログベースで作るか
APIでクライアントにコントロール直張りにして作るか、
普通のクライアントウィンドウ+モーダレスダイアログで作る予定。
MFCは使わない。というか使い方知らない。
「猫でもわかる」に「MFCの使い方覚えてるうちにAPIで1000個くらいアプリ作れちゃう!」
とか書いてあるので、それを信じてひとまずMFCは放置しようかな、と。
ところで↓みたいに
ttp://www.nurs.or.jp/~urara/sbo/grp/sbo086.png
チップをスクロールバー付きで並べて表示して、
それを選択したりするようにするのって「リストビュー」をつかうのかなぁ、、、
↑のはどうやってやってんだろう。ここが難関。誰か教えてたもれ。
何があるかわかんないので、一応、免責事項を書いておいたほうがいいかなと思って。
フリーソフトに限らず書いてあるのが多いので見習いました。
多分大丈夫だと思います。多分。。。(でもやっぱり責任はもてませんw)
>>262
CSVにしようと思ったんですけど、まんどくせのでとりあえずあんな感じに。
カンマとかって普通に文字列操作でくっ付けて〜.CSVでWilteFileすれば
出来上がるんですかね。そのうちやってみようと思います。
ちなみに私のほうはVC++でやってるので、
マップツールの方はダイアログベースで作るか
APIでクライアントにコントロール直張りにして作るか、
普通のクライアントウィンドウ+モーダレスダイアログで作る予定。
MFCは使わない。というか使い方知らない。
「猫でもわかる」に「MFCの使い方覚えてるうちにAPIで1000個くらいアプリ作れちゃう!」
とか書いてあるので、それを信じてひとまずMFCは放置しようかな、と。
ところで↓みたいに
ttp://www.nurs.or.jp/~urara/sbo/grp/sbo086.png
チップをスクロールバー付きで並べて表示して、
それを選択したりするようにするのって「リストビュー」をつかうのかなぁ、、、
↑のはどうやってやってんだろう。ここが難関。誰か教えてたもれ。
265練習帳著者
04/04/09 08:53ID:NNIXc1rk >>261
バイナリファイル保存は、CreateFile()でファイルハンドルを作って
バイナリデータ(データを記録したバッファ)をWriteFile()で書き
出し、ファイルハンドルを閉じる、という流れでできます。
lpszFilePathをファイルパス、lpDataをデータの先頭アドレス、dwSize
をデータのバイト数とすればこんな感じ。
HANDLE hFile = CreateFile(lpszFilePath, GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(hFile, lpData, dwSize, &dwWrote, NULL);
CloseHandle(hFile);
ファイル操作は、標準関数よりAPIの方が楽ですね。
バイナリファイル保存は、CreateFile()でファイルハンドルを作って
バイナリデータ(データを記録したバッファ)をWriteFile()で書き
出し、ファイルハンドルを閉じる、という流れでできます。
lpszFilePathをファイルパス、lpDataをデータの先頭アドレス、dwSize
をデータのバイト数とすればこんな感じ。
HANDLE hFile = CreateFile(lpszFilePath, GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(hFile, lpData, dwSize, &dwWrote, NULL);
CloseHandle(hFile);
ファイル操作は、標準関数よりAPIの方が楽ですね。
266200
04/04/09 18:37ID:PDI25ArR >>264
VBとかもっとらんの?
VCしかもってなくて、C言語しかやってないっていうのなら、しょうがないけど。
チップセレクトは多分スクロールバーとBMPをあわせているだけだと思う。
スクロールされたらそれに合わせてプログラム内でBMPの表示位置を変えてるんじゃない?
VBとかもっとらんの?
VCしかもってなくて、C言語しかやってないっていうのなら、しょうがないけど。
チップセレクトは多分スクロールバーとBMPをあわせているだけだと思う。
スクロールされたらそれに合わせてプログラム内でBMPの表示位置を変えてるんじゃない?
267245
04/04/09 21:40ID:PD92y+NK 滑らかにスクロールするようになった。
けど、なんか無理矢理できてる感が強し。やたら重いし、
デバイスコンテキストとかこんなに何枚も作る必要あるのだろうか。。
hdc//一番表。ディスプレイ
hdcMem//一枚裏。ここにいろいろ合成して最終画像を作る。
hdcMap//マップの画像ファイル読み込んでおいておく所。
hdcChr//キャラの画像ファイル読み込んでおいておく所。
hdcFld//マップデータにしたがってマップを描く所。スクロールに備えて一マスでかい。
ttp://gamdev.org/up/img/443.zip
次はNPCを勝手に歩き回らせようと思います。
次回はきつそうだからソース晒して助けを求めることになるかも。
>>266
リストビュー使ってないんですかねぇ。
でも使ってもできそうな感じです。なんとなく。
けど、なんか無理矢理できてる感が強し。やたら重いし、
デバイスコンテキストとかこんなに何枚も作る必要あるのだろうか。。
hdc//一番表。ディスプレイ
hdcMem//一枚裏。ここにいろいろ合成して最終画像を作る。
hdcMap//マップの画像ファイル読み込んでおいておく所。
hdcChr//キャラの画像ファイル読み込んでおいておく所。
hdcFld//マップデータにしたがってマップを描く所。スクロールに備えて一マスでかい。
ttp://gamdev.org/up/img/443.zip
次はNPCを勝手に歩き回らせようと思います。
次回はきつそうだからソース晒して助けを求めることになるかも。
>>266
リストビュー使ってないんですかねぇ。
でも使ってもできそうな感じです。なんとなく。
26898
04/04/09 22:43ID:Hsbv26Yj269245
04/04/10 18:02ID:rQAMSH7v 適当に動くNPCを追加して、キャラの余白は透過するようにしました。
ttp://gamdev.org/up/img/447.zip
次はキャラ同士で当たり判定をつけて、
NPCの数を動的に増やしたり減らしたりできるようにしようかと思ってますが、
めんどいだけで特に得るものは無さそう。。。
でも見た目楽しそうなのでやってみようと思います。
>>つか、あと2,3日で追い抜かれそうな気がしてきたorz
ふぉぉぉぉぉぉおおおお!!!
ttp://gamdev.org/up/img/447.zip
次はキャラ同士で当たり判定をつけて、
NPCの数を動的に増やしたり減らしたりできるようにしようかと思ってますが、
めんどいだけで特に得るものは無さそう。。。
でも見た目楽しそうなのでやってみようと思います。
>>つか、あと2,3日で追い抜かれそうな気がしてきたorz
ふぉぉぉぉぉぉおおおお!!!
27098
04/04/11 21:26ID:ih6xwcUu >>269
左移動・上移動はいいんですが、右移動・下移動の時の画面に現れてくる部分の描画が遅いような感じです。
・エンターキーを押すとコマンドが出るようにした。
・マップデータはバイナリのまま読み込むようにした。
・ソースを修正しやすいように修正した。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz101.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a10.zip
次はスクリプトを使ってNPCと話せるようにしようと思う。
左移動・上移動はいいんですが、右移動・下移動の時の画面に現れてくる部分の描画が遅いような感じです。
・エンターキーを押すとコマンドが出るようにした。
・マップデータはバイナリのまま読み込むようにした。
・ソースを修正しやすいように修正した。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz101.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a10.zip
次はスクリプトを使ってNPCと話せるようにしようと思う。
271245
04/04/11 22:41ID:OD43hm2K 今日はハマリ中でうpできそうにない・・・
>>270
試してみてもらえたようで、ありがとうございます。
起動時のままのウィンドウサイズでも変になってますか?
家でもウィンドウを広げると確かに下とか右の方の描画が変なんですが、
一応起動時のサイズが標準なので、普通だったら見えないところだから
そのままでいいやと思って直してなかったんですが、
標準サイズのままでおかしくなってるとしなら直さないといけませんね・・・
ちなみにソース拝見しましたが、APIのCreateWindowでゲーム内ウィンドウを
作ってるのが新鮮ですた。こういうのって自力で原始的に作んなきゃならないと
思い込んでたので作るのを逃避してきたのですが、
APIのウィンドウを使えるならマウスドラグで位置移動とかサイズ変更とか
もできそうですね。
>>270
試してみてもらえたようで、ありがとうございます。
起動時のままのウィンドウサイズでも変になってますか?
家でもウィンドウを広げると確かに下とか右の方の描画が変なんですが、
一応起動時のサイズが標準なので、普通だったら見えないところだから
そのままでいいやと思って直してなかったんですが、
標準サイズのままでおかしくなってるとしなら直さないといけませんね・・・
ちなみにソース拝見しましたが、APIのCreateWindowでゲーム内ウィンドウを
作ってるのが新鮮ですた。こういうのって自力で原始的に作んなきゃならないと
思い込んでたので作るのを逃避してきたのですが、
APIのウィンドウを使えるならマウスドラグで位置移動とかサイズ変更とか
もできそうですね。
27298
04/04/12 00:16ID:A/n3T6P2 >>245
あ、起動時のままなら問題ないです。
>APIのCreateWindowでゲーム内ウィンドウ
自力で描画っていうのもやってみたんですが、いろいろ問題があったので
子ウィンドウにしました。
ただ、子ウィンドウを使うとウィンドウが無効になったときの処理が
面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
あ、起動時のままなら問題ないです。
>APIのCreateWindowでゲーム内ウィンドウ
自力で描画っていうのもやってみたんですが、いろいろ問題があったので
子ウィンドウにしました。
ただ、子ウィンドウを使うとウィンドウが無効になったときの処理が
面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
273名前は開発中のものです。
04/04/12 00:35ID:4A1duCG6 君らまだまだ先は遠いぞ
274245
04/04/12 01:08ID:+oNLbu0z >>272
環境によってウィンドウの出方とか違うのかと思ってましたが、
よかったです。安心しました。
>面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
そうですか。。。今の課題をクリアしたら私も色々テストしてみるとします。
段階的学習っていうの見てますが、もっと先のレベルも欲しい所ですね。
別に無くてもやらなきゃならないことは山ほど見つかりますけど、、、
環境によってウィンドウの出方とか違うのかと思ってましたが、
よかったです。安心しました。
>面倒だったりするので自力で描画したほうが楽なのかもとか思ってます。
そうですか。。。今の課題をクリアしたら私も色々テストしてみるとします。
段階的学習っていうの見てますが、もっと先のレベルも欲しい所ですね。
別に無くてもやらなきゃならないことは山ほど見つかりますけど、、、
275245
04/04/12 18:29ID:+oNLbu0z キャラ同士に当たり判定をつけ、移動するとき向きを変えるようにした。
NPCをテンキーの+-キーで増減できるようにした。(お遊びで。でも予想外に辛かった。。)
なぜか12,3体辺りでバグるので10体までに制限してあります。
ttp://gamdev.org/up/img/471.zip
ちなみに前回のバージョンでは
キャラの透過転送にGetPixel,SetPixelをつかって原始的にやっていたんですが、
キャラの数が増えるとかなり重かったので今回はTransparentBltなる関数を使うようにしました。
でも環境によっては(Win98とか)リークを起こすいわく付きの関数らしいので
実行時は自己責任でおながいします。うちは2000ですが、特に問題ないです。
NPCをテンキーの+-キーで増減できるようにした。(お遊びで。でも予想外に辛かった。。)
なぜか12,3体辺りでバグるので10体までに制限してあります。
ttp://gamdev.org/up/img/471.zip
ちなみに前回のバージョンでは
キャラの透過転送にGetPixel,SetPixelをつかって原始的にやっていたんですが、
キャラの数が増えるとかなり重かったので今回はTransparentBltなる関数を使うようにしました。
でも環境によっては(Win98とか)リークを起こすいわく付きの関数らしいので
実行時は自己責任でおながいします。うちは2000ですが、特に問題ないです。
277とおりすがりの親父PG
04/04/13 00:14ID:MuenDC6+278245
04/04/13 00:54ID:4GaN7j22279とおりすがりの親父PG
04/04/13 01:19ID:MuenDC6+280245
04/04/13 21:24ID:4GaN7j22 >>279
できました!サンプルをほんのちょっと改造して矢印キーで回転するようにしました。
実行時にカーソルが砂時計なのは何ででしょう。
支障ないみたいだけど激しく気持ち悪い。
ttp://gamdev.org/up/img/480.zip
次の、、次の課題をください!
それまで今までの2Dを改造してます。
できました!サンプルをほんのちょっと改造して矢印キーで回転するようにしました。
実行時にカーソルが砂時計なのは何ででしょう。
支障ないみたいだけど激しく気持ち悪い。
ttp://gamdev.org/up/img/480.zip
次の、、次の課題をください!
それまで今までの2Dを改造してます。
281とおりすがりの親父PG
04/04/13 22:39ID:qfExSMIG >>280
それでは、頂点の数を増やしてみる
あとは5種類ある頂点の種類をそれぞれ試してみる。
次にこのサンプルはSDKが供給する「ライブラリソース」をインクルードしていますが
それを別フォルダにコピー(複製)して、自分用のライブラリファイルとすべし
自分用(スケルトン)フレームを作成する
それでは、頂点の数を増やしてみる
あとは5種類ある頂点の種類をそれぞれ試してみる。
次にこのサンプルはSDKが供給する「ライブラリソース」をインクルードしていますが
それを別フォルダにコピー(複製)して、自分用のライブラリファイルとすべし
自分用(スケルトン)フレームを作成する
28298
04/04/13 23:17ID:eA8EtTKv DirectX早くやりたい(´・ω・`)
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz105..txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a11.zip
・NPCと話せるようにした。
・タイトル画面をつけた
・スクリプトのメリットがよく分からないので使わなかった。
・ソースが多くなったせいか、汚いせいか、自分でも読みにくくなってきた。
次はNPCに話しかけたらエンディング、という流れを作ろうと思う。
あとはごりごり作っていけば完成しそう
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz105..txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a11.zip
・NPCと話せるようにした。
・タイトル画面をつけた
・スクリプトのメリットがよく分からないので使わなかった。
・ソースが多くなったせいか、汚いせいか、自分でも読みにくくなってきた。
次はNPCに話しかけたらエンディング、という流れを作ろうと思う。
あとはごりごり作っていけば完成しそう
283245
04/04/13 23:53ID:4GaN7j2228598
04/04/14 00:54ID:ASstlwbG やっとバグとれた('A`)
lpszClassNameがかぶってるのが原因でした。
今までかぶってても平気だったのは何でだろう・・・
lpszClassNameがかぶってるのが原因でした。
今までかぶってても平気だったのは何でだろう・・・
286通りすがりの親父PG
04/04/14 05:41ID:EE4mRz9N287245
04/04/14 17:34ID:TCeeFkNf >>親父PG
正直に言うであります。
意味が分からないであります! 壁| 〇 =3 | ̄|_
開発にはVCを使ってますが、
現在のソースでは、一つのヘッダファイル(d3dx9.h)を
SDKの入ってるフォルダからインクルードしてまして、
コンパイルしたら「外部依存関係」の所に他のヘッダファイルが色々追加されました。
これらを自分のプロジェクトのフォルダの方などにコピペするってことでしょうか。。。
こんなヘタレですいません。
正直に言うであります。
意味が分からないであります! 壁| 〇 =3 | ̄|_
開発にはVCを使ってますが、
現在のソースでは、一つのヘッダファイル(d3dx9.h)を
SDKの入ってるフォルダからインクルードしてまして、
コンパイルしたら「外部依存関係」の所に他のヘッダファイルが色々追加されました。
これらを自分のプロジェクトのフォルダの方などにコピペするってことでしょうか。。。
こんなヘタレですいません。
288とうりすがりの親父PG
04/04/14 19:01ID:EE4mRz9N >>287
そうです。自分用のライブラリフォルダを作ってそこに複製します。
(元の位置のものは残しておかないと、他のサンプルが動かなくなる)
d3dapp.cppを覗くとフル画面モードの切り替えやウインドサイズの変更
ポーリングループの部分等があり、なかなか面白いものがありますよ。
そうです。自分用のライブラリフォルダを作ってそこに複製します。
(元の位置のものは残しておかないと、他のサンプルが動かなくなる)
d3dapp.cppを覗くとフル画面モードの切り替えやウインドサイズの変更
ポーリングループの部分等があり、なかなか面白いものがありますよ。
289245
04/04/14 22:05ID:TCeeFkNf >>親父PG
できました。一応、画像です。点とか線にもなりました。
d3dapp.cpp見てみましたが、かなりムズイです。そんなレベルです。
ですが、がんばって習得するので課題を、、課題を下さい!
ttp://gamdev.org/up/img/483.jpg
2DPRG、ちょっとだけ改造しました。
「+」キーを押すと適当なHPをもったNPCが発生します。
NPCに向かって「-」キーを押すとHPが減って、0になると倒せます。
けど連射が効いちゃってるので押しっぱで移動してるだけで事がすみます。
ttp://gamdev.org/up/img/484.zip
環境によって速度も一定じゃないし、ソースも描画部分とか入力部分とか
バラバラなのでその辺を一旦綺麗にできたらウィンドウを描画してみようと思います。
できました。一応、画像です。点とか線にもなりました。
d3dapp.cpp見てみましたが、かなりムズイです。そんなレベルです。
ですが、がんばって習得するので課題を、、課題を下さい!
ttp://gamdev.org/up/img/483.jpg
2DPRG、ちょっとだけ改造しました。
「+」キーを押すと適当なHPをもったNPCが発生します。
NPCに向かって「-」キーを押すとHPが減って、0になると倒せます。
けど連射が効いちゃってるので押しっぱで移動してるだけで事がすみます。
ttp://gamdev.org/up/img/484.zip
環境によって速度も一定じゃないし、ソースも描画部分とか入力部分とか
バラバラなのでその辺を一旦綺麗にできたらウィンドウを描画してみようと思います。
290とうりすがりの親父PG
04/04/14 23:45ID:EE4mRz9N291245
04/04/15 23:47ID:DNQtOokO >>とうりすがりの親父PG
テクスチャ張れました。
http://gamdev.org/up/img/488.jpg
もっと、、、、もっと課題をください!
ShadowbaneとかWorcraftみたいなカッチョいいゲームを作りたいのであります!
テクスチャ張れました。
http://gamdev.org/up/img/488.jpg
もっと、、、、もっと課題をください!
ShadowbaneとかWorcraftみたいなカッチョいいゲームを作りたいのであります!
292名前は開発中のものです。
04/04/16 00:28ID:HZnOSJqT 課題
フレームレートを一定に保ち、フレームスキップを実装せよ
フレームレートを一定に保ち、フレームスキップを実装せよ
293245
04/04/16 15:24ID:rC4Ao3Jo とりあえずFPS測ってみました。
前の課題作ってるときから「どうも遅い」と薄々感じてたんですが、
DX9SDKに入ってるチュートリアルの三角が回るやつを改造して測ってみたら
案の定40fpsしか出てませんでした。
試しに、DX8に入ってる同じ三角が回るサンプルに同じ改造をして測ったら
400fpsとか出てる模様・・・
ビデオボードがGF2GTSだからDX9だとダメなのかなぁ。。。
8と9のサンプルで特別違う事をしてるとは思わないんですが、なんでですかね?
前の課題作ってるときから「どうも遅い」と薄々感じてたんですが、
DX9SDKに入ってるチュートリアルの三角が回るやつを改造して測ってみたら
案の定40fpsしか出てませんでした。
試しに、DX8に入ってる同じ三角が回るサンプルに同じ改造をして測ったら
400fpsとか出てる模様・・・
ビデオボードがGF2GTSだからDX9だとダメなのかなぁ。。。
8と9のサンプルで特別違う事をしてるとは思わないんですが、なんでですかね?
29498
04/04/16 18:11ID:Lk4Qkb2j 完成しますた。クソゲーです。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz109.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a12.zip
全然ドラクエじゃねえ・・・・
次はDirectXやります。
http://www.geocities.co.jp/SiliconValley-Bay/2736/zz109.txt
http://www.geocities.co.jp/SiliconValley-Bay/2736/rpg_a12.zip
全然ドラクエじゃねえ・・・・
次はDirectXやります。
295親父PG
04/04/17 01:25ID:N6rYd7aK >>293
テクスチャ貼れましたか。頑張っているようですね。
ではスプライトもついでにやっておきましょう。
DirectXのほうが簡単という私の前の意見に、そろそろ納得していただけると思います。
さてこのサンプルでは高精度タイマーユーティリティが使われています。
どこに在るか確かめ、どのように使われているかを探し出せば、自ずと遅くなっている原因もわかるかもしれません。
テクスチャ貼れましたか。頑張っているようですね。
ではスプライトもついでにやっておきましょう。
DirectXのほうが簡単という私の前の意見に、そろそろ納得していただけると思います。
さてこのサンプルでは高精度タイマーユーティリティが使われています。
どこに在るか確かめ、どのように使われているかを探し出せば、自ずと遅くなっている原因もわかるかもしれません。
296245
04/04/17 15:31ID:UZYSuoQB >>親父PG
ありがとうございます。
fps抑えられてた原因がわかりました。(というか教えてもらいました)
危うくビデオボード買うところでした。スプライトも表示できました。
http://gamdev.org/up/img/498.jpg
楽なのかどうかはまだ慣れてないのではっきりと実感できないのですが、
はやく自由に使いこなせるようにがんがります。ので、ので、何か適当に課題を下さい!
>>294
ふぉおおおおぉおぉぉぉぉぉぉ!!俺も仕上げるぞー!
ありがとうございます。
fps抑えられてた原因がわかりました。(というか教えてもらいました)
危うくビデオボード買うところでした。スプライトも表示できました。
http://gamdev.org/up/img/498.jpg
楽なのかどうかはまだ慣れてないのではっきりと実感できないのですが、
はやく自由に使いこなせるようにがんがります。ので、ので、何か適当に課題を下さい!
>>294
ふぉおおおおぉおぉぉぉぉぉぉ!!俺も仕上げるぞー!
29798
04/04/17 17:56ID:lFucyLLi 三角形って
\Samples\C++\Direct3D\Tutorials\Tut02_Vertices\Vertices.cpp
↑これですか?そのままだとコンパイルできないんですが・・・
エラー E2209 Vertices.cpp 14: インクルードファイル 'd3d9.h' をオープンできない
エラー E2141 Vertices.cpp 22: 宣言の構文エラー あと6行ほど続く。
もしかしてbccだとDirectX使えないっていうオチですか?
\Samples\C++\Direct3D\Tutorials\Tut02_Vertices\Vertices.cpp
↑これですか?そのままだとコンパイルできないんですが・・・
エラー E2209 Vertices.cpp 14: インクルードファイル 'd3d9.h' をオープンできない
エラー E2141 Vertices.cpp 22: 宣言の構文エラー あと6行ほど続く。
もしかしてbccだとDirectX使えないっていうオチですか?
298名前は開発中のものです。
04/04/17 20:44ID:O0XDlP+3299とおりすがりの親父PG
04/04/17 22:47ID:mXcf9nch>>296
245さん お疲れさまでした。
さてここから先ですが、それは作る対象によって異なると思います。
今の状態でBGとスプライトが表示できるわけですから、最低条件である「表示」に関してはクリアできたわけです。
ではこの先何をすべきでしょう?。
純粋に表示能力を学習したいのであれば、3D表示>ピクセルシェーダー>キューブテクスチャ
他にランドスケープのライブラリを設計するなど
またRPG等などスクリプトが必要なシステムであれば、そちらの設計も必要です。
「マウスクリックの場所を検地した後、どのように振舞うか」この部分を内部でインラインで処理するか、
「処理データ-(外部ファイルの読み込み等)」によってコントロールするようにするか? など
また包括的なシステムというのも念頭において、全体のクラス設計も必要になります。
ということで、私が教えた?(実は何も教えていないw)事はここで一旦終了です。
DirectXの導入と実際にPGを組む事ができたという事で、当初の目的は達成できました。
おめでとう!
不詳、私もここの板でスレッドを立てていますので、おひまな時には覗いてみてください。
300245
04/04/17 23:39ID:UZYSuoQB >>親父PG
今までありがとう!
まだまだ先は長そうですががんばります。Shadowbaneみたいなゲームを作るまで!
親父PGさんもたまには私の成長っぷりを見にきてください。
これからはまたシコシコ取り組みます。
とりあえずはハイトフィールドを歩けるくらいになるまでを大きな目標にしようかなぁ。
つうことでモーション無しXファイルを読み込んでみる事にします。
>>297
私が弄ってたのはそれです。DXがんばってマスターしましょう!
今までありがとう!
まだまだ先は長そうですががんばります。Shadowbaneみたいなゲームを作るまで!
親父PGさんもたまには私の成長っぷりを見にきてください。
これからはまたシコシコ取り組みます。
とりあえずはハイトフィールドを歩けるくらいになるまでを大きな目標にしようかなぁ。
つうことでモーション無しXファイルを読み込んでみる事にします。
>>297
私が弄ってたのはそれです。DXがんばってマスターしましょう!
30198
04/04/18 20:41ID:6QlIhFIw302245
04/04/19 00:12ID:3QCXa6Lb ウチはVC++6使ってるんですが、
「ツール」→「オプション」→「ディレクトリタブ」内で、
「表示するディレクトリ」を「インクルードファイル」に指定し、
下のところの「新規作成」でDXSDKのIncludeディレクトリを追加。
同様に「表示するディレクトリ」を「ライブラリファイル」に指定し、
DXSDKのLibディレクトリを追加。
そしてプロジェクト毎の設定として、
「プロジェクト」→「設定」→「リンクタブ」内で、
オブジェクトライブラリモジュールのところに
d3d9.lib d3dx9.lib dxerr9.lib dxguid.lib
などを追加してます。
ウチと環境違ってたら私はヘタレなのでよく分んないです。スマソ。
「ツール」→「オプション」→「ディレクトリタブ」内で、
「表示するディレクトリ」を「インクルードファイル」に指定し、
下のところの「新規作成」でDXSDKのIncludeディレクトリを追加。
同様に「表示するディレクトリ」を「ライブラリファイル」に指定し、
DXSDKのLibディレクトリを追加。
そしてプロジェクト毎の設定として、
「プロジェクト」→「設定」→「リンクタブ」内で、
オブジェクトライブラリモジュールのところに
d3d9.lib d3dx9.lib dxerr9.lib dxguid.lib
などを追加してます。
ウチと環境違ってたら私はヘタレなのでよく分んないです。スマソ。
30398
04/04/19 18:57ID:x8GMNOCf 無料版なので、dos窓でいろいろやらないとだめなんです・・・
VC++ ->DirectXどころか、coutすらまだ使えない状態(printfは使える)
bcc ->三角形をコンパイルしようとすると
Fatal: オプションが必要 : LD:\directx9sdk\Lib\Borland といわれる。
ここを参考にしてみた。↓
ttp://www.geocities.co.jp/Milano/8000/bcc/
VC++ ->DirectXどころか、coutすらまだ使えない状態(printfは使える)
bcc ->三角形をコンパイルしようとすると
Fatal: オプションが必要 : LD:\directx9sdk\Lib\Borland といわれる。
ここを参考にしてみた。↓
ttp://www.geocities.co.jp/Milano/8000/bcc/
304名前は開発中のものです。
04/04/19 20:17ID:eJn0oU39 >303
VCでのライブラリモジュールのリンクは
#pragma comment(lib, "ライブラリ名.lib")
を使うと少し楽できるかも。(正しいやり方じゃないかもしれないけど・・・・)
VCでのライブラリモジュールのリンクは
#pragma comment(lib, "ライブラリ名.lib")
を使うと少し楽できるかも。(正しいやり方じゃないかもしれないけど・・・・)
306親父PG
04/04/19 23:42ID:HvqP5Z0m >>301
Visual Studio 6.0 を使う場合
インクルード ファイルの検索パス
ヘッダー ファイルのパスが正しいこと、DirectX のヘッダー ファイルのディレクトリがコンパイラに最初に検索されるパスになっていることを確認すること。
インクルード パスを確認するには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。これにより、次のようなダイアログ ボックスが表示される。
ここでリストの先頭に表示されているパスが、最新の DirectX のヘッダー ファイルを置いているフォルダになっていなければならない。
このデフォルト パスは、C:\DXSDK\Include である。このパスが表示されていない場合は、それをリストに追加し、[ディレクトリ] タブ内のツールバー コントロールを使ってそのパスをリストの先頭へ移動すること。
↓
エヂエタ|タブ|デバック|互換性|ビルド|ディレクトリ|ワークスペース|||
プラットホーム
「WIN32」
ディレクトリ
C:\DXSDK\Include ←これ
リンカの検索パス
リンカがリンク ライブラリを検索する際に使う検索パスと、その検索順を確認すること。リンクの検索パスのリストも、[ディレクトリ] タブで確認できる。
これを行うには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。ダイアログ ボックスが表示されたら、[表示するディレクトリ] ボックスの [ライブラリ ファイル] をクリックする。
これにより表示されたリストの先頭のパスが、最新の DirectX のリンク ライブラリを置いているフォルダになっていなければならない。このデフォルト パスは、C:\DXSDK\Lib である。
プロジェクトのリンク ライブラリ
サンプルと一緒に提供されたプロジェクト ファイルを使う場合は、この設定を確認する必要はない。この設定値はプロジェクト ファイル内で指定されている。
新しいアプリケーションをコンパイルする場合は、[プロジェクト] メニューの [設定] をクリックする。これにより、次のようなダイアログ ボックスが表示される。
Visual Studio 6.0 を使う場合
インクルード ファイルの検索パス
ヘッダー ファイルのパスが正しいこと、DirectX のヘッダー ファイルのディレクトリがコンパイラに最初に検索されるパスになっていることを確認すること。
インクルード パスを確認するには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。これにより、次のようなダイアログ ボックスが表示される。
ここでリストの先頭に表示されているパスが、最新の DirectX のヘッダー ファイルを置いているフォルダになっていなければならない。
このデフォルト パスは、C:\DXSDK\Include である。このパスが表示されていない場合は、それをリストに追加し、[ディレクトリ] タブ内のツールバー コントロールを使ってそのパスをリストの先頭へ移動すること。
↓
エヂエタ|タブ|デバック|互換性|ビルド|ディレクトリ|ワークスペース|||
プラットホーム
「WIN32」
ディレクトリ
C:\DXSDK\Include ←これ
リンカの検索パス
リンカがリンク ライブラリを検索する際に使う検索パスと、その検索順を確認すること。リンクの検索パスのリストも、[ディレクトリ] タブで確認できる。
これを行うには、[ツール] メニューの [オプション] をクリックし、[ディレクトリ] タブをクリックする。ダイアログ ボックスが表示されたら、[表示するディレクトリ] ボックスの [ライブラリ ファイル] をクリックする。
これにより表示されたリストの先頭のパスが、最新の DirectX のリンク ライブラリを置いているフォルダになっていなければならない。このデフォルト パスは、C:\DXSDK\Lib である。
プロジェクトのリンク ライブラリ
サンプルと一緒に提供されたプロジェクト ファイルを使う場合は、この設定を確認する必要はない。この設定値はプロジェクト ファイル内で指定されている。
新しいアプリケーションをコンパイルする場合は、[プロジェクト] メニューの [設定] をクリックする。これにより、次のようなダイアログ ボックスが表示される。
30798
04/04/20 00:31ID:2oyWdrfK308名前は開発中のものです。
04/04/20 01:42ID:TlrWn8fZ309名前は開発中のものです。
04/04/20 22:55ID:eL87iK8i >307
私の環境では、インストール先のディレクトリに出来る”vcvars32.bat”と言うバッチファイルを実行しただけで、
環境変数がすべて設定されました。
私の環境では、インストール先のディレクトリに出来る”vcvars32.bat”と言うバッチファイルを実行しただけで、
環境変数がすべて設定されました。
31098
04/04/21 18:22ID:bfgLD/fX311名前は開発中のものです。
04/04/21 18:29ID:+YydXBKM 「プロジェクトの設定」のリンクのところで、d3d9.libをリンクすればいいハズ。
あと、必要に応じてほかのLibもリンクしてやる。
関数ごとに必要なLibはドキュメントに書いてある。
あと、必要に応じてほかのLibもリンクしてやる。
関数ごとに必要なLibはドキュメントに書いてある。
312311
04/04/21 18:38ID:+YydXBKM31398
04/04/21 18:56ID:TkqwtIOq >>311
コンパイルできました。
でもVertices.exeをダブルクリックしても何も起きないです。
\Samples\C++\Direct3D\Binのファイルも半分ほど開けないので、
ビデオカードのせいでしょうか?
コンパイルできました。
でもVertices.exeをダブルクリックしても何も起きないです。
\Samples\C++\Direct3D\Binのファイルも半分ほど開けないので、
ビデオカードのせいでしょうか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★2 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に [ぐれ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 【国際】トランプ氏、来年4月に中国を訪問する招待を受け入れる 習氏も国賓で訪米へ 電話会談 [ぐれ★]
- 猟友会ハンター「警察や自衛隊の力を借りてのクマ駆除は大歓迎。肉の加工など 駆除の後についてもしっかりと話を進めてほしい」 [932029429]
- 【悲報】有名配信者さん、公式大会で小学生の前で奇行して炎上して逆ギレwwwwwwwwwwwwwwwwww [856698234]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- フィフィ「外国人だろうが日本人だろうが反日は要らんのよ、この国に…自分にとって住みやすい国に行け。」 [856698234]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- 喫茶店経営してるが毎朝同じ時間に来てモーニングだけで3時間粘る迷惑客がいる
