08/02/27 13:48:20 9wtxnZrA
>>191
[x/32ー1]の結果は、hantei[]の中身なので、例えば[x/32ー1]==1の計算の結果が8だとしたら、hantei[8]となるので、hanteiの八番目に1が入っているか?ってことです。…よね?間違ってたらすみません
193:名前は開発中のものです。
08/02/27 14:42:16 r6hHH13Q
hentai[i]
194:名前は開発中のものです。
08/02/27 14:43:36 2UlhBHC9
わからないならそーゆーコード組むなよ
195:名前は開発中のものです。
08/02/27 20:01:15 tzifsiC4
>>192
63/32-1 がいくつになるのか表示してみろ
196:126
08/02/27 22:03:24 9wtxnZrA
>>194さん
あるサイトを参考にしながらその通りにやっているはずなのですが、こうなっちゃいました…。
>>195さん
多分0だと思います。
197:名前は開発中のものです。
08/02/27 22:32:11 tzifsiC4
ソース丸々貼り付ける馬鹿は放置した方がいいんだろうが、まぁ暇なんで
x/32-1 って部分ををx/32 に書き換えろ
1ドットめり込むが、今よりましだろ
198:126
08/02/27 23:17:08 Lmz6Mp6I
>>197さん
・・・無理でした・・・画像がサイズがおかしいのでしょうか・・分からない・・。右は問題ないのに左がってのがよく分からないです。
別の方法でやってみることにします・・・。手間をかけさせてすみませんでした。
199:126
08/02/28 23:34:59 lrVcbRPz
どうも。結局 } の位置がおかしいだけでした・・・orz・・・
書き込み3回目の16行目の}を19行目の後につけると上手くいきました。本当にご迷惑をおかけしましたm(_ _)m
200:名前は開発中のものです。
08/02/28 23:37:42 lyjUYwSe
なんだそのオチwwwwww
201:名前は開発中のものです。
08/02/28 23:58:39 FQsD2ZWz
#゜盆゜) チッ
202:名前は開発中のものです。
08/02/29 09:49:34 22Ye9aiQ
だまれクソガキ!
203:名前は開発中のものです。
08/03/01 01:30:34 jHbAeu6Y
ママのミソニをガツガツたべるのよ
ママの
204:名前は開発中のものです。
08/03/01 23:51:58 7W3pOYl3
現在メニュー画面を作ってるんですが
カーソルキーを押すとものすごい勢いで下の選択肢までいってしまいとても選択しにくいです;
カーソルキーを押すと選択肢を1個ずつ選択したいのですが、どういう風に制御したらいいのでしょうか?
205:名前は開発中のものです。
08/03/01 23:56:18 JAQ9m5p4
前回のキーの入力状態を覚えておいて、
前回は押されてない、かつ、今回は押されている ならカーソルを移動
みたいにすれば?
206:名前は開発中のものです。
08/03/01 23:57:07 op6e8BAL
キーを押したときにフラグを1にする
キーを離したときにフラグを0にする
フラグが0の時のみキー入力を受け付ける
もしくは
キーを押したときにカウンタをセットする
カウンタが0の時のみキー入力を受け付ける
カウンタが0以外の時は、常にカウンタが減少する
207:名前は開発中のものです。
08/03/02 00:12:44 VhKgaVm5
>>205,206
ありがとうございました
フラグ使えばよかったんですね^^;
208:名前は開発中のものです。
08/03/02 02:30:34 VhKgaVm5
すみません;
もう一つ質問です。
ソースファイルを2つ以上に分けたいのですが
元々のソースファイルで定義した変数などは二つ目以降のほうでは再定義しないと使えないのでしょうか?
209:名前は開発中のものです。
08/03/02 02:42:30 fbxb/49s
それはここで聞くことじゃないだろう。
externでググってみろ。
ちなみに、「定義」は一回しかできない。だっけ?
210:名前は開発中のものです。
08/03/03 15:45:08 EDwm2w/G
DXライブラリスレで聞くことじゃありませんでしたね><
ありがとうございます。
211:名前は開発中のものです。
08/03/04 04:23:07 XzVTChSu
最近プログラミングの勉強を始めたんですが、質問があります
かなり黒に近い画像についてなんですが
ウィンドウモードで起動したときは表示されるのに
フルスクリーンモードで起動したときには表示されない(透明になってしまう)という現象が起きてしまいます
SetGraphModeでカラービット数を16から32にしたところとりあえず解消されたんですが
理屈が気になって夜も寝られないので誰か教えてください
あと直接関係の無いことなんですが
他のソフトに比べて自分の作ったソフトはやたら残像が気になります
どういう条件だと残像がでやすい等、解る方がいたらご教授願えませんか?
212:名前は開発中のものです。
08/03/04 05:54:27 vE/cGK1a
16ビットだと一番近い色になるから透明色の黒と同じになるんだよ
ウィンドウモードはいくら16ビット指定してても
画面モードが32ビットならそっちにひきづられる
あと、教授する気はない
213:名前は開発中のものです。
08/03/04 15:11:44 sCnHkz0D
おちんちんびろ~ん
214:名前は開発中のものです。
08/03/04 16:13:23 sCnHkz0D
投稿先まちがえた すいませんでした
215:名前は開発中のものです。
08/03/04 22:29:59 XzVTChSu
>>212
ありがとうございます
大体解りました
216:名前は開発中のものです。
08/03/05 00:07:48 UpAWpF+1
>>211
60FPSじゃないから?
30とか20だと、3Dだと気にならないけど2Dだとかくかくする。
あるいは描画タイミングを考えてないのでは
垂直回帰線割り込み中に画像を更新しないと。
217:名前は開発中のものです。
08/03/06 13:20:46 BuKXzo6D
>>216
レスありがとうございます
垂直回帰線割り込み中・・・ってのは正直よくわからないのですが、
FPSはScreenFlip()をループの最後に付けてリフレッシュレートと同じにしてあります
DXライブラリ置き場のゲーム開発講座を参考にしてるので問題ないとおもいます
218:名前は開発中のものです。
08/03/09 00:57:39 giCaDUuD
1週間前からDXライブラリを始めた者です。
作っていて思ったのですが、画像を貼り付けるときにどのぐらいの数値を入れたら
どこらへんに表示されるか、というツールがあればいいかなと思ったのですが
そういうツールってありますか?
219:名前は開発中のものです。
08/03/09 01:31:47 9NfoINcs
>>218
paint
220:名前は開発中のものです。
08/03/09 06:09:57 EtSoXOKU
てか、仮にそんなツールがあったとしてもそれで調べて数値入力って手間が面倒
真ん中に表示したけりゃ
x = (640 - width) / 2; y = (480 - height) / 2;
って感じで計算式で書くほうが多いしな
221:名前は開発中のものです。
08/03/11 07:49:34 AU7mnU6+
おれのちんちん3cm
222:名前は開発中のものです。
08/03/11 10:03:18 aX3Pcn7r
もし解像度変わるフルスクリーンだとしたら、そもそもリフレッシュレートが低下してたりしないか
223:名前は開発中のものです。
08/03/13 18:08:40 5nuIPPAq
ウインドウ出すだけのプログラムなのに
デバッグするとPCフリーズする時がある
前はこんな事なかったのになあ
224:名前は開発中のものです。
08/03/15 20:21:52 eLS9geKN
スレチかも知れないけどマップエディタのPlatinumの使い方が分からんorz
16ビットでパーツを指定したら2段目が数字がおかしくなる。
2段目の一番左が259番目・・・
225:名前は開発中のものです。
08/03/18 14:44:04 xohZmW8l
パーツの番号が256*256で固定だからそれでいいんじゃなかったっけ
226:名前は開発中のものです。
08/03/19 19:30:36 xnHHCjpL
2段目の一番左は256の筈。
ウチでは問題なく動くよ。
227:名前は開発中のものです。
08/03/20 14:21:29 A3AMVRXa
DirectX SDKというものを使いたくてダウンロードしようとしたのですが、種類がたくさんあるようでどれをダウンロードすればいいか分かりません。どなたか優しく教えてください。そもそもただのDirectXとどう違うのかも分からないです
228:名前は開発中のものです。
08/03/20 14:31:06 tpvwQlhL
SDKは開発者向けのライブラリやファイル群。(DirectXSDK)
Runtimeがエンドユーザー向けのファイル群。(DirectXRuntime)
とりあえず、最新版・・・といいたいけどファイル削除されてたりするから。
指定されてる日付のSDKが無難。指定なければ最新版でいいと思う。
229:名前は開発中のものです。
08/03/20 20:21:03 A3AMVRXa
親切にありがとう
230:名前は開発中のものです。
08/03/22 22:07:35 uQ9EOL6U
ビルドでエラーが出ても、そのままプログラムが起動して
Run-Time Check Failure #3 - The variable 't' is being used without being initialized.
というエラーが出る事があります(ウインドウモードの場合)。
フルスクリーンでこうなってしまうとキー入力を一切受け付けなくなって電源が切れなくなってしまいます。
どういう理由でこういう事が起こるのでしょうか?Microsoft Visual C++ 2008を使っています。
231:名前は開発中のものです。
08/03/23 00:28:36 gXt17wxp
適当な訳
変数tは初期化されずに使われているぜ
変数tを初期化してから使おうってこった。
なんでフリーズするかはソース見てないからしらね
232:名前は開発中のものです。
08/03/25 14:00:40 K823BI6u
このライブラリ使ってるとstringクラス使えないことない?
233:名前は開発中のものです。
08/03/25 19:47:36 h1ArVFrf
stl使うときは何たらとヘッダに書いてる
234:名前は開発中のものです。
08/03/28 11:39:34 jiphjYhJ
int i ;
for( i = 0 ; i < 300 ; i ++ )
{
ClearDrawScreen(); // 裏画面のデータを全て削除
LoadGraphScreen( i, 0, "×××.png" , TRUE ) ; //裏画面へ画像を描写
ScreenFlip() ; // 裏画面データを表画面へ反映
}
このようにして画像を動かす場合、動かすスピードを遅くする時はSleep関数を使用するのですが、
逆に速く動かしたい場合はどうすれば良いのでしょうか?
235:名前は開発中のものです。
08/03/28 12:16:50 zqWlrSL1
>>234
え?ほんとにプログラマなのか?
236:234
08/03/28 12:23:17 jiphjYhJ
いいえ素人です。
スレ違いでしたらすいません。
237:名前は開発中のものです。
08/03/28 13:05:36 cZZYfOnr
同じく素人の俺が適当にレス
ぱっと見、画像を移動するように俺には思えるのだが、
遅く移動するためにSleepを使うのはどうかと思う。
fps制御をしたりするようになると、酷いことになる。
早く動かすには、i * 2でも i * i * i * i * iでもすればおk
というかもっかい数学でもやっとけ
238:名前は開発中のものです。
08/03/28 14:36:00 Kvv7Pk7V
>>236
DXライブラリとは関係ないんで確かにスレ違い
237の言うとおり i++ を i+=10とかに増やしてやれば早く動く
でもそのやり方でSleepなしだと i を弄らなくても十分過ぎるほどに速いと思う
239:名前は開発中のものです。
08/03/28 14:37:58 nf/wnuhO
もう数学どころか算数レベルだと
240:名前は開発中のものです。
08/03/28 15:28:43 VOhx+Y2g
ベーマガのコードは>>234みたいなやつたくさんあったね。
fpsを気にせずforループでウェイトかけたり。
241:名前は開発中のものです。
08/03/28 15:41:17 cZZYfOnr
iをdouble型にして、
i += 0.5;
とでもして、int型にキャストしたものを座標に入れればいいんじゃね?
forでループかけるとCPUの処理速度に依存とかしないか?
242:名前は開発中のものです。
08/03/28 20:08:54 nZaMbvad
速い遅いの議論とは離れるけど、ループ中でLoadGraphScreenを使って
毎回ファイルから読み込むのはどうかと。
最初にLoadGraphでメモリに読み込んでおいて、
座標を変えながらDrawGraphで描画するのが一般的なやり方だと思う。
243:名前は開発中のものです。
08/03/28 21:39:37 CBraLr7F
LoadGraphScreenって中で一回だけ読み込んで
しばらくキャッシュしとくような実装にはできないのかな
実用にならないことがはじめから明らかな関数なんて何考えて付けたんだろう
244:名前は開発中のものです。
08/03/28 22:50:56 whlEiLTD
れらりんがそばにいるよとささやいてくれると聞いて
245:名前は開発中のものです。
08/03/31 05:50:52 fap41hw9
DXライブラリはサンプル的なものは簡単に作れるけど、実用性低いからな
246:名前は開発中のものです。
08/03/31 21:03:50 i7dQBtHQ
実用性の高いライブラリを教えてくれ
247:名前は開発中のものです。
08/03/31 21:16:40 fap41hw9
>>246
URLリンク(gamdev.org)
248:名前は開発中のものです。
08/03/31 21:47:32 CXMeC6zZ
>>246
DirectX
OpenGL
249:名前は開発中のものです。
08/04/05 10:46:23 IUUENaiS
>>245
そりゃ確かに3Dという弱点はあるけど普通にいいライブラリだと思うよ。
他の高機能だが使いにくいライブラリやDirectXへの入門的な位置づけには十分だと思う。
250:名前は開発中のものです。
08/04/05 10:55:48 IUUENaiS
>>245
それにこういうのだって頑張れば作れるんだし実用性が低いって言うのはあり得ないと思う。
URLリンク(l.huu.cc)
251:名前は開発中のものです。
08/04/05 12:11:12 x08O1Mf7
DXライブラリだと何ができないん?
252:名前は開発中のものです。
08/04/05 12:11:47 vXK+UHY6
春になると変なの湧くな
253:名前は開発中のものです。
08/04/05 12:27:54 VHg9Yq4r
作れない部分だけ掘り下げりゃいいじゃん
254:名前は開発中のものです。
08/04/06 22:10:28 k0L9974C
>>253
その方が難しいとおもうが・・・・。
(中途半端に人のライブラリを改造するのは初心者にこそ大変。
だけど、DXライブラリは非常に優秀だと思うよ。
もちろん自分の主義から観て、ケチつけたくなるような部分がまったくないわけじゃないけど、
255:名前は開発中のものです。
08/04/09 20:19:41 wzxKugzG
どっちにしろ
絵やテキストの必要な段階までたどり着いてorz
256:名前は開発中のものです。
08/04/11 12:36:00 3ac42Qx9
プログラムが完成してればメンバー募集スレ辺りで適当に
257:名前は開発中のものです。
08/04/11 19:45:54 RER4fV/1
C++&DXライブラリ
で、ポーズ機能を実装したいのですが、どういった風にすればよいでしょうか。
簡単な質問でしたらごめんなさいです。
258:名前は開発中のものです。
08/04/11 19:55:16 5xNQ5/qR
while( CheckHitKeyAll() == 0 )
{
//ポーズ機能の完成である。
}
259:名前は開発中のものです。
08/04/11 20:18:15 b791QYZ+
ポーズ中はキャラ移動のプログラムを動かさず
画面描画だけしてやればいいよ
while(1){
キー入力();
if ( pause == 0 ){
自機();
敵();
背景();
}
画面描画();
}
260:名前は開発中のものです。
08/04/11 21:01:32 RER4fV/1
回答ありがとうございました!
参考にさせていただきます。
261:名前は開発中のものです。
08/04/11 23:05:14 Bpsz+O4d
これって、簡単な3Dならできるってあるけど、関数どこにあるんでしょうか?
262:名前は開発中のものです。
08/04/13 23:05:34 OT5S4/B3
あ
263:名前は開発中のものです。
08/04/13 23:40:55 mkP8Ow/2
DrawPolygon3D?
264:名前は開発中のものです。
08/04/14 21:08:06 F5c9NCO3
過疎ってるなぁ
265:名前は開発中のものです。
08/04/17 16:40:35 Z01QL+t5
立ち絵みたいなCGで背景との境界を綺麗に見せる、
いい方法ってあるかどうかはここで聞いてもいいですか?
266:名前は開発中のものです。
08/04/17 17:56:04 KZC2fEfY
アルファチャンネルを使う
267:名前は開発中のものです。
08/04/17 23:17:42 Z01QL+t5
>>266
ありがとうございました。
268:名前は開発中のものです。
08/04/19 00:48:13 EYZpWM/6
DXライブラリ使ったプログラムをUnicode環境にしたいときってどうしてる?
ウィンドウハンドルを取得したりしてTextOutとか使ってみたんだが、うまくいかないし。
画面関係の処理はDXライブラリを使わないでがんばるしかないのかな
269:名前は開発中のものです。
08/04/19 00:58:22 G0TjCggk
やったこと無いがtchar.hをインクルードして
全部_T()マクロで囲んでしまうとか
270:名前は開発中のものです。
08/04/19 11:28:25 EYZpWM/6
TCHAR型とか使っても、DrawString等の関数はchar型なんで、そこでつまづいちゃうんですよね。
IME関係の関数も同じでエラーがでちゃって。
271:名前は開発中のものです。
08/04/19 15:05:14 G0TjCggk
もうそこはライブラリその物を書き換える気概が無いと駄目かも知れん
272:名前は開発中のものです。
08/04/19 15:12:00 G0TjCggk
あーそれか自分でUnicodeをShift-JISに変換するコード書くかだな
273:名前は開発中のものです。
08/04/19 16:35:28 rDKs0OU5
OSがやってくれるけどね。
274:名前は開発中のものです。
08/04/20 00:52:23 YkchCY9h
レスサンクスです。
ライブラリ書き換えは考えて試したりしたのですが、あきらめました。
知識と根性が足りないみたいです。
どうせ糞コードでコードを再利用することもないと思うので、このままマルチバイト文字セットで突っ走ろうかと思います。
275:名前は開発中のものです。
08/04/21 22:49:21 mkIxW9Wq
>>274
DXライブラリ3Dの中にTStringってのが入ってるから使ってみたら?
その中にマルチバイトとUnicodeの相互変換する関数が入ってる。
俺はTSTring型を改良して使ってる。
276:名前は開発中のものです。
08/04/22 17:51:51 OjNC6XlB
音楽読み込むの時間かかりすぎじゃね?
数秒かかるんだが
277:名前は開発中のものです。
08/04/23 08:37:21 SaATaECc
>>275
DXライブラリ3Dはまだベータで仕様変更する可能性があると思って敬遠してたんだが、
見てみたら結構よさそうだな。
ちょっくら使ってくる。
278:名前は開発中のものです。
08/04/24 07:38:22 V1/5gnMN
>>276
つSetCreateSoundDataType( DX_SOUNDDATATYPE_FILE );
279:名前は開発中のものです。
08/05/03 21:00:49 WNI824LE
過疎
280:名前は開発中のものです。
08/05/04 18:15:22 vJ7ltqp0
visual studio 2005でプログラムを作成しているのですが、
waveファイルをリソースにして実行ファイルに埋め込んだ上で再生するにはどうしたらいいですか。
resource.rcファイルに、
WAV01 WAVE "../sound/01.wav"
プログラムファイルで、
se01 = LoadSoundMem(TEXT("WAV01"));
のように記述しコンパイルが通ることを確認したうえで
PlaySoundMem()で再生しようとしたところ何も音がでません。。
281:名前は開発中のものです。
08/05/04 18:20:13 vJ7ltqp0
se01の返り血を調べたところ、-1になっていたので
LoadSoundMem()関数が失敗しているようです。。
282:名前は開発中のものです。
08/05/04 21:14:46 NVb3ZT2+
> 返り血を調べたところ
ビチャビチャ ..`_;:;;::::.::.....
(´:;;..,,゚Д゚) .,.-';;`,;::;;:;:;:;;:'':
283:名前は開発中のものです。
08/05/05 08:40:01 6+vVhwuM
今日のルミノール反応スレか。
284:名前は開発中のものです。
08/05/06 02:03:17 HfsKgZoV
リソースから読み込めねえのかつかえねえなDXライブラリは
285:名前は開発中のものです。
08/05/06 02:53:21 fMYrwNTv
つ int LoadSoundMemByResource( const char *ResourceName, const char *ResourceType, int BufferNum = 1 ) ; // サウンドをリソースから読み込む
286:名前は開発中のものです。
08/05/06 16:26:25 HfsKgZoV
ありがとうございましたできました。
287:名前は開発中のものです。
08/05/06 16:29:27 QOE/ow/d
ID:HfsKgZoVの態度の変わりように吹いたw
288:名前は開発中のものです。
08/05/06 19:15:47 WkMOtNpw
ただの煽りかと思ったら本人だったのかw
289:名前は開発中のものです。
08/05/06 23:51:34 F6wTuFjk
ID:HfsKgZoVに全力で吹いたwwww
ずっとROMってたけどこれだけは書き込まずにはいられなかったwwwww
290:名前は開発中のものです。
08/05/06 23:53:59 FAulgXST
ってか、リファレンスに乗ってない関数ってDxLib.hからみつけてきてるの?
291:名前は開発中のものです。
08/05/07 00:57:20 71Y0MVSA
>>290
そう。後はソースから直接とかかな
292:名前は開発中のものです。
08/05/08 22:23:43 S2HRvK+u
読み込んだ画像をグレースケール化して表示させるとかできないのかな?
293:名前は開発中のものです。
08/05/08 22:25:39 eQ3x57+w
あらかじめ
294:名前は開発中のものです。
08/05/08 22:54:10 L02lWeB7
>>293
正解
295:名前は開発中のものです。
08/05/11 01:41:28 lT34Osvt
Windowモードにしたときにサイズを変更しようとすると、プログラムが終了してしまうのを防ぐにはどうすればいいんですか?
296:名前は開発中のものです。
08/05/15 04:51:23 FY4Aqiot
質問。
DxLib3Dをはじめて入れてみました。
いきなりなんですが、「~は未解決です系のエラー」が出てきてしまいます。
一応このページの説明通りに設定したのですが、まだ出てきます。
URLリンク(fatalita.sakura.ne.jp)
この設定以外でどこかおかしそうなところというと、どこでしょうか?
297:名前は開発中のものです。
08/05/15 04:53:59 FY4Aqiot
VS2008EE
DXライブラリ3D (Ver 08.5.11 BETA48 )
XP sp2
という環境でやってます
298:名前は開発中のものです。
08/05/15 10:46:33 N5DdO6sn
>>297
DirectX9の最新版をインストールしなおしてみたら?
それかPlatformSDKのインストールに失敗してるとか?
299:名前は開発中のものです。
08/05/15 20:28:52 FY4Aqiot
>>298
platformSDKを再インストールしたらうまくいきました。
ありがとうございました。
300:名前は開発中のものです。
08/05/15 20:42:10 TlbymtVz
横レスだがEEでうごくようになたの?
301:名前は開発中のものです。
08/05/15 20:43:31 aaHitA9H
EEで動くようになってる筈
302:名前は開発中のものです。
08/05/16 21:56:45 Tr9iRAu8
>>300
何ヶ月も前から
303:名前は開発中のものです。
08/05/25 16:56:29 3WsNPwhz
C#のDXライブラリを使っているのですが、
タイトルバーのアイコンはどうやって設定すればよいのでしょうか?
アイコンのIDと言うのの調べ方がいまいちわからないのですが……。
304:名前は開発中のものです。
08/05/25 21:14:02 lS7V6yTW
>>303
そういえばDXライブラリ作品でタイトルバーのアイコンが変更されたプログラムって見ない気がする。
できんのかな。とりあえず32x32だけじゃなく16x16の方もちゃんとアイコン描いてる?(VSから直接描けるはず)
305:名前は開発中のものです。
08/05/26 00:59:51 kspnggL4
VSでもExpressは描けないんだよな
ソフトが分かれている性でExpressはVSじゃない、って誤解をうけていそうだが
306:名前は開発中のものです。
08/05/26 03:00:55 9qMTVlR3
>>305
ほんとだ。試してみたらExpressではペイントが起動したよ。
製品版ではVS内部で便利なペイントツールみたいなのが開いていたのに。
.icoに2つの画像もたせるには何かのフリーソフト使うしかないみたいだね。
307:名前は開発中のものです。
08/05/26 12:57:41 eOfkTAJ+
>>304
自分はアイコン変えてるよ?
URLリンク(homepage2.nifty.com)
このやり方で変わってる。
308:名前は開発中のものです。
08/05/26 18:28:24 l0TB74on
>>304
ゲームのアイコンを変えたら、なぜかタイトルバーのアイコンも変わりました。
理屈はよく分かりませんが、とりあえずできました。
>>307
C#でやっているのですが、その方法の仕方がいまいちわかりませんでした。
309:名前は開発中のものです。
08/05/26 23:36:40 9qMTVlR3
>>307>>308
俺も昔VS2003でそのやり方やってたけどそれで代わる時と代わらない時があったんだよな・・。
2005とか2008では分からんけど。俺の勘違いかもしれないから流してくれ。
310:名前は開発中のものです。
08/05/27 00:22:06 yuK+OsBq
最悪SendMessage(hWnd, WM_SETICON, ICON_SMALL, (LPARAM)hIcon)で
C#ならDllImportを忘れずに
311:名前は開発中のものです。
08/05/27 01:20:30 2WZDLKIU
hWndはどこから取ってくるの?
312:名前は開発中のものです。
08/05/27 01:35:54 145798w0
>>310
ああ、明示的にしてやればよかったのか。ありがとう。
>>311
GetMainWindowHandle()でいける。
313:名前は開発中のものです。
08/05/27 09:33:02 2WZDLKIU
>>312
そんなのがあったんですね、ありがとー
314:名前は開発中のものです。
08/05/27 23:01:56 GJjmi+z5
質問
みなさんDXライブラリを知ったきっかけor使ってみようて思ったきっかけって何?
315:名前は開発中のものです。
08/05/27 23:11:16 yZNE8DLZ
プログラミングを始めてゲームでも作ってみたいな
ライブラリ関係のwikiを見て知る
SDLなんて環境依存も少ないし、よさそうだ
ちんぷんかんぷん
次の候補のDXライブラリを使ってみる
これはいいライブラリ
DXライブラリwktk中
316:名前は開発中のものです。
08/05/28 00:16:14 1JvUBrE4
>>314
プログラミング暦は長いんだけど、せいぜい旧世代パソコンでBASICとアセンブラ、
COBOLとか、WindowsパソコンだとVBくらいしか触った事なくて
Windowsでゲーム作りたくてもDirectXもWindowsAPIもさっぱり解らなくてできなかったが
(何で知ったのかは忘れた)DXライブラリを試しに使ってみたら
簡単にそれっぽい事ができたのでそのまま使いつづけてる。
(C言語も初めて使うわけだが、まぁBASIC的な使い方でなんとかやってる)
317:名前は開発中のものです。
08/05/28 03:00:58 GkgEuGoe
>>314
私はネットで偶然見つけて最初は挫折しました。
BBSの人たちとはキット住む世界が違うハイレベルな人たちなんだ・・とか思って。
まぁ今は卒業して次の3Dライブラリに逝ったりしています。
退屈なC言語の勉強が凄い刺激的な遊びに変わったのも全てこのライブラリのおかげです。
318:名前は開発中のものです。
08/05/28 06:57:20 XwHdSPVR
アンケート禁止
319:名前は開発中のものです。
08/05/28 11:56:50 GkgEuGoe
>>318
それでこの過疎レスが盛り上がるならいいジャマイk
320:名前は開発中のものです。
08/05/28 18:11:49 ofV5JpVk
リファレンスにサンプルプログラムが多く載ってたので、これなら使えそうだと思った。
あのサンプルのおかげで、初心者も初期段階で挫折することが少なそう。
321:名前は開発中のものです。
08/05/28 23:56:13 CX3PJDp1
まぁ、扱いやすいライブラリではあるね。2Dのみでもメリットは大きい。
というか、毎度毎度お馴染みの某書籍シリーズがDXライブラリだけでも4冊目に・・・。
それだけでも、教える側・学ぶ側にも初心者向けなのだろうか・・・?
322:名前は開発中のものです。
08/05/28 23:59:05 TPkKrb+x
東方弾幕風でぐぐるといいよ
323:名前は開発中のものです。
08/05/28 23:59:39 TPkKrb+x
誤爆
324:名前は開発中のものです。
08/05/30 01:01:39 NlELBjm8
>>321
フレームワーク組まれてないから、自由度が無茶苦茶に高いと思う1年チョイ使った感想。
Seleneに移行して実感したよ。
ガチガチにフレームごと組まれたライブラリってホントに使いにくい。
325:名前は開発中のものです。
08/05/30 12:06:31 CSCMSheF
>>324
Seleneって自由度低いというか使いにくいの?
試したこと歩けど使い方よう分かんなかった。
326:名前は開発中のものです。
08/05/30 12:37:08 NlELBjm8
>>325
自由度は使う人の知識・技術によるんじゃないかな。
使いにくいかどうかについては、DirectXの基礎知識がないと使うことすら不可能だと思う。
フレームワークで何をしているのかすらわからんと思う。
327:名前は開発中のものです。
08/05/30 12:38:45 NlELBjm8
連投スマソ。
昨日、>>324を書いてからDXライブラリ3Dを試してみたんだけど、死ぬほど楽でワロタwwww
328:名前は開発中のものです。
08/05/30 21:38:13 29G5LbgY
凝ったレンダリングしたいならSelene使えばいいし、
とりあえず手軽に3DやりたいならDX使えばいいってだけの話じゃね。
>>325
自由度が少ないほど基本的に使いやすい。
自由度が多いと何をしていいのか分からない。
329:名前は開発中のものです。
08/05/30 21:51:10 xes6/YUh
DX3Dの作者もSeleneは使い方わかんなかったって言ってた
330:名前は開発中のものです。
08/05/31 00:50:20 pM3Py+fC
しょーもない、意見かもしれんないけど、
Seleneは、サンプルとかリファレンスが理解しにくいからなぁ・・・・・・。
下手すると、Seleneで取り持つよりも、直にDirectXをサンプルとかチュートリアル
見ながら叩いて遊んだほうが分かると、経験から思う。
まぁ、DirectXは資料も多いし、なんだかんだで基礎からちゃんと解説やってるんだよね。
でもDirectXとかは細かい事やりたい時以外には、自分でラッパーするのも面倒だから困る。
そういう点で、DXlibは素晴らしい。適当な実験とか、ちょっとしたプレゼンなんか向けに張りぼてなんかも作りやすい。
331:名前は開発中のものです。
08/05/31 09:42:43 vvR8DG4O
SeleneはDirectXを直接触ったことがないと理解できないお約束が多いからなあ
332:名前は開発中のものです。
08/05/31 23:27:39 JljUGpqP
DXライブラリの3D版、良い感じで進行してるようですね。
>近い将来実現したい機能:
>・.mqoファイルの読み込みと描画
個人的にはこれが楽しみ。
333:名前は開発中のものです。
08/06/01 16:57:53 Paz1Lvkx
DXライブラリ3Dで質問です。
メタセコイアで作成した立方体や球体(Xファイル)を表示させようとすると、崩れてしまいます。
(たとえば立方体の場合、6つの面がばらばらになって、それぞれ座標がずれて表示されてます。)
原因はどこにあるのでしょうか?
自作したモデルは、DirectX Viewer上ではちゃんと表示されてます。
(メタセコからXファイルに出力する時、ちゃんとUVのところにチェックを入れてあります。
テクスチャの設定もしてあります。)
プログラムはリファレンス&サンプルのものを、ファイル名だけ入れ替えたものです。
URLリンク(fatalita.sakura.ne.jp)
サンプルについてたxファイルのモデルでためしたところ、viewer上・プログラム上のどちらでも表示されます。
環境
VC++2008 EE
DXライブラリ3D 通常版ダウンロード (Ver 08.5.30 BETA52 )
メタセコ Ver2.4.8
334:名前は開発中のものです。
08/06/01 17:09:11 Vobw4BHh
>>333
こんなとこに書くより配布してるサイトの掲示板に書いたほうがいい
335:名前は開発中のものです。
08/06/01 20:18:09 OqvNhLfk
>>333
メタセコでの保存時にUVマッピングとかスムージングとかちゃんと有効にしてる?
メタセコの設定見直したほうがいいかも。
336:名前は開発中のものです。
08/06/03 01:25:09 71P0U8As
>>335
保存時のUVマッピングは常に有効にしてます。
スムージングはチェック入れてなかったんですが、チェック入れても変わりがありませんでした。
337:名前は開発中のものです。
08/06/03 18:56:41 HgjyOQoI
なぜここで聞くんだ?
338:名前は開発中のものです。
08/06/05 01:10:53 FZ1LXFSC
ひょっとしたらメタセコの超初歩的なミスかなと思って。
他の3Dソフトでも作ってみたけど同じだった。
ちょっと時間を置いてからいろいろ試してみます。
それでだめなら公式へ
339:名前は開発中のものです。
08/06/12 14:25:57 wxJhhB6a
質問なんですが
DX3Dは古いVSでも使えるのでしょうか?
未だにWindows2000を使ってるのでVS2008利用できないんですよ
340:名前は開発中のものです。
08/06/12 17:33:28 6bVucAlr
Direct3Dって12年くらい前からあるよね。
341:名前は開発中のものです。
08/06/12 21:48:35 meeDYGZX
いやDXライブラリ3Dのサンプルのビルドについてなんですが
公式サイトではVS2005以上とかいてあるのを発見したので
おとなしく2005EEを使うことにします
342:名前は開発中のものです。
08/06/13 09:42:47 XTqDBko/
>>339
初期のバージョンではVS2002も使えてたけど今は古いVSだとライブラリファイルでエラーが出るから使えない。
343:名前は開発中のものです。
08/06/17 10:57:42 tV5dUmxs
DXライブラリ3Dの作者も見ていることを祈ってここに。
かなり凄いライブラリになりつつありますね。乙です。
このままLoadDivGraph()も互換性もたせてくれたら過去のソースがほぼ流用できるので、
身勝手なお願いですが、頑張ってください。
344:名前は開発中のものです。
08/06/20 05:09:08 fPNKmbya
まだDXライブラリ3Dの宣伝か
なぜ開発元の掲示板に書かないのか・・・
345:名前は開発中のものです。
08/06/20 13:32:27 Er3syzY2
>>343
多分ここ作者も見てない。公式も更新とまってるし
346:名前は開発中のものです。
08/06/20 16:43:44 7pPPZp+T
そりゃ、本家に気軽に書けたら書きますよ。
でも、開発元の掲示板が使いにくい(検索すらできない旧世代極まるシステム)
だから、単なる応援を書いて掲示板汚しをする雰囲気ではない。
さらに、メルアド非公開だからメールで応援することもできない。
ここに書くことも許されないのならスレでも立てましょうか?
でも、そしたらそしたで、DXライブラリと共用しろとか煽られたりするんですよね?
やっとれんわ。
347:名前は開発中のものです。
08/06/20 21:17:27 h3TPvdBn
気が向いたら専用スレを建てることにしました。
普段ろくに動きもないスレのくせに、姉妹品の話題だしただけで嫌味かよと、
ちょっとイラッとしてしまいました。
すいませんでした。消えます。
348:名前は開発中のものです。
08/06/20 21:27:14 W5qtUln9
>>346
メアドは一応公開されてる。以前よくやり取りしてたけど、最近は返事が直ぐに返ってこないからイライラする
349:名前は開発中のものです。
08/06/21 10:36:00 JnkYVaUa
C#版だとDrawFormatString系統が使えないなんて・・・
何とか代用できるものは無いものかしら
350:名前は開発中のものです。
08/06/21 11:45:01 GX14nWKq
触った事無いから分からんが普通にSystem.Stringで文字作ればいんじゃないの?
351:名前は開発中のものです。
08/06/21 21:33:04 JUrwHwGu
String.Formatの方が便利
352:名前は開発中のものです。
08/06/22 21:15:48 PdqU/TQ3
>>346-347
脳内あぼーん
353:名前は開発中のものです。
08/06/25 22:58:15 mX3h6Gxe
GetJoypadInputState()がボタン押しっぱの状態でたまに0返しちゃうんだけど、俺だけ?
354:名前は開発中のものです。
08/06/25 23:08:35 9Wx6yKuH
そこまで押しっぱなしを多用した事ないからわからないけど
どんなプログラムでチェックしたの?
355:名前は開発中のものです。
08/06/25 23:21:21 fuI9KJ5C
ジョイパッドの不具合に10ゼニー
356:名前は開発中のものです。
08/06/26 00:32:57 NfLt9gol
どうやら認識が処理に間に合ってなかっただけらしい
多少のウエイト入れたら問題なかった
357:名前は開発中のものです。
08/06/26 23:14:36 ZpjvmS04
DXライブ来3D開発停止なのか・・・
358:名前は開発中のものです。
08/06/27 00:09:49 Ouq2aiKc
> しばらくライブラリ開発は休止します。
> 大変申し訳ありませんが私生活でそれどころではなくなってしまいました・・・。
> 一応コンテンツは残しておきますので自由に使ってくれて構いません。
だそうで、どうしたものか。
359:名前は開発中のものです。
08/06/27 00:57:29 ovz20LE+
何もしてないのにー!何でこんなに重いんだと思ったら
ScreenFlipのせいだったのか…
360:名前は開発中のものです。
08/06/27 01:06:04 D2/CSn6V
なんで?
ScreenFlipが垂直同期信号待ちしてるせい?
361:名前は開発中のものです。
08/06/27 11:42:28 XC7SG82L
DXライブラリ3D開発停止キタコレ
362:名前は開発中のものです。
08/06/27 16:34:01 R30hbcbu
そらそうだ
363:名前は開発中のものです。
08/06/28 08:14:39 7eoOLImo
真偽はともかく、パソコン壊れたに次ぐ、辞める時の言い訳ベスト3だな
あと一つは脳内嫁に離婚されたか?
364:名前は開発中のものです。
08/06/28 08:34:27 WDd+KucR
タダでやってる以上、こうなるのは別におかしい事じゃない。
そういう意味で、本家の方はかなり頑張ってらっしゃる。
365:名前は開発中のものです。
08/06/28 11:21:50 HmzEmemy
開発が一段落してサポートが面倒臭くなるまでは続くと思ってたんだが・・・早かったな
366:名前は開発中のものです。
08/06/28 11:58:58 5+ZirPmZ
本家って更新自体はもうしてないんじゃないっけ?
367:359
08/06/28 19:29:20 xOOHiRHZ
ScreenFlipを使うのをやめて
SetDrawScreen と GetDrawScreenGraph と DrawGraph
を組み合わせたらCPUへの付加が30%から5%に激減した!!
今までこれで苦労してたから嬉しさで涙が出そう
>>360
理由はわからないな…
368:名前は開発中のものです。
08/06/28 19:34:13 Z7/K5uB7
そうなる前にやめるのは投資家としては正しい判断
369:名前は開発中のものです。
08/06/28 19:35:08 xOOHiRHZ
WaitVSyncもつけたら負荷が戻ったorz
でも垂直同期を取る・取らないの選択ができるようになったということで我慢しよう…
370:名前は開発中のものです。
08/06/28 20:09:56 UA0XbkFG
Wait()挟んだら負荷下がるよ
371:名前は開発中のものです。
08/06/28 22:11:08 z6I/MJXK
>>369
ScreenFlipでも撮る撮らないの選択が出来るよ
372:名前は開発中のものです。
08/06/28 22:22:10 WDd+KucR
これだね。
宣言 int SetWaitVSyncFlag( int Flag ) ;
概略 ScreenFlip関数 実行時にCRTの垂直同期信号待ちをするかのフラグセット
>>369
念のために訊くけど、ウィンドウモードでやってないよね?
373:名前は開発中のものです。
08/06/28 23:46:16 ZECO6Ry9
>>366
2008/3/23までの更新履歴はあるな。
まぁ、DXライブラリも2001年から始まっているから3Dの人も、いつでも再起おk。
374:名前は開発中のものです。
08/06/28 23:52:55 wEkVBZPc
中の人が大学留年したり 生活もままならないような人だから全然驚かん
375:名前は開発中のものです。
08/06/29 10:08:01 PPCk3LCp
やっぱ大学関係だったようね
376:名前は開発中のものです。
08/06/29 12:24:07 m21VzqQv
>>371-372
フルスクリーンだとモニタの関係でアスペクト比が狂うからウィンドウモードでやってた
そんな関数があったんだ、ありがとう
377:名前は開発中のものです。
08/06/29 12:26:18 m21VzqQv
マイナー関数のとこにのってたんだ
そんな関数あるわけないと決め付けてたから気がつかなかった
せめてリファレンスくらい目を通しておくべきだった。すまん
378:名前は開発中のものです。
08/06/29 12:46:12 agzt01kM
リファレンスにも乗ってない関数があったりするから
DxLib.hの中身を検索してみたりするといいかもわからんね
379:名前は開発中のものです。
08/06/29 12:49:02 OsnqiwUH
ウィンドウモードだと垂直同期信号は関係ないらしいから、そこらへん自分で色々やらんといかんかもね。
ただ俺は、その後もそれ関係で色々問題が発覚して、
そのたびに対処療法的にさまざまな対応を取ってきてるから
今実際自分がどういう処理にしているか自分でも把握できてないw
380:名前は開発中のものです。
08/06/29 13:57:46 m21VzqQv
すご、DxLib.hに関数の使い方書いてあるんだ
いいこと知ったお
381:名前は開発中のものです。
08/06/29 14:00:20 m21VzqQv
>>379
そうなの?
でも垂直同期オフにしたら特有の波みたいな境目みたいなのが
現れて負荷が数分の一になったお!
俺も対処療法しまくってスパゲッティ化してきた
382:名前は開発中のものです。
08/06/29 15:39:32 1BMnqLhH
>でも垂直同期オフにしたら特有の波みたいな境目みたいなのが
ティアリングだね。
それをなくすための垂直同期信号待ちなんだけど、色々別の問題が出るんだよね。
例えば、FPSがモニタのリフレッシュレートに依存するから
60Hzのモニタに合わせてゲーム作ってると70Hzのモニタ使ってる時にスピードアップする事にw
あるいはPC環境によっては垂直同期信号待ち自体が完全に無視されてしまって
スピードが最高速になったりw
383:名前は開発中のものです。
08/06/29 16:02:58 Ml+ywIah
普通はVSYNC待ちした上でさらにタイマーで調整するだろ
384:名前は開発中のものです。
08/06/29 16:06:40 1BMnqLhH
うん、だから今はそうしてる。
385:名前は開発中のものです。
08/06/30 01:36:07 eE4aJ60w
俺の場合は、ドローとコントロールを完全に分けてる
コントロールは50fpsで作るなら、20ms経過するごとに呼び出す
前回と比べて100ms経ってたら5回連続して呼ぶ、と
ドローはこれだけを何度呼んでも同じ画面が描画される
要するに処理落ちを目立たなくする方法だけど、
よっぽどボロで無い限りあんまり違和感ないから重宝してる
386:名前は開発中のものです。
08/06/30 15:51:22 /MYKvXiy
みんなどんなゲームつくってるのか見てみたいな
387:名前は開発中のものです。
08/07/03 17:19:34 4FdUt6R0
俺も、別に嫌味じゃなくて純粋に>>386がどんなゲームつくってるのか見てみたい
388:名前は開発中のものです。
08/07/03 18:17:34 pOqq1JU4
俺も興味あるなぁ。スクショとかあげてみて欲しい。
389:386
08/07/03 19:14:30 mE8d2cG3
あんま期待しないで
ペイント丸出しのグラフィック
URLリンク(www.vipper.net)
390:名前は開発中のものです。
08/07/03 19:23:00 mE8d2cG3
ついでに動画もうpする
391:名前は開発中のものです。
08/07/03 19:39:16 mE8d2cG3
↓動画
URLリンク(kissho1.xii.jp)
DLパスはel
392:名前は開発中のものです。
08/07/03 21:42:13 am1gyKK/
BGMワロタ なんか敵キャラかわいいなw
393:名前は開発中のものです。
08/07/05 21:11:05 cnwLCfKM
おお、すごい
普通に面白そうだな
394:名前は開発中のものです。
08/07/05 22:33:08 oPSFKEuG
グラフィックはいかにも間に合わせという感じだが、
ゲーム性はなかなかのものとみた。
395:名前は開発中のものです。
08/07/05 23:25:58 aGAA/Y1Y
結構おもしろそうだな
それに動画綺麗すぎ
どうやってキャプチャしてるの?
396:386
08/07/06 09:46:08 XkJcW/kb
>>392
グラフィックをほめてもらえるとはw
>>393
まじ?うれしいな
>>394
いや、これでもかなりグラフィックは力いれてるぞw
でも絵が描けないのはどうしようもない
>>395
エンコーダでビットレート高めで画面を取り込んだ
397:名前は開発中のものです。
08/07/06 19:59:53 Ayw8ouCy
横スクロールアクションの面白いところを知ってるって感じる作りだな。
それが面白くもあり、手堅く無難でもある。
あとはストーリー性を前面に押し出してキャラを立ててやれば、そこそこ売れるんじゃね。
売る気なのかは知らんが。
フリーなら、ぱっと見悪いが隠れた名作と言われそう。
こんなんでましたー。
398:387
08/07/07 12:42:59 vFVo4BdD
見せて欲しいと言っておきながら、仕事ラッシュあけて戻ってきたら既にタイムアウトでスクショみれない俺涙目
言い出した手間、自分もじきにスクショうpしま。
ってそういうスレじゃなかったっけ。すまん。
399:名前は開発中のものです。
08/07/07 12:52:28 XBTjCSRv
>>391の動画まだ残ってるよ
>>398も期待
400:388
08/07/08 17:10:01 RLAQs28z
俺もあげてみる…
URLリンク(www.vipper.net)
401:名前は開発中のものです。
08/07/08 23:25:57 o/K3GAco
これもなかなか興味深い
402:名前は開発中のものです。
08/07/08 23:30:56 gy2iNnCl
世界観がいいね
403:名前は開発中のものです。
08/07/09 17:58:32 86rWJoht
>>400
すでに見えない・・・・。
404:名前は開発中のものです。
08/07/14 13:19:40 6+UKwK/G
URLリンク(kurotama.sakura.ne.jp)
これもDxLibなのか。すごすぎる
405:名前は開発中のものです。
08/07/14 13:59:33 EI7ck19t
へー、これDXライブラリ使用してたのか。
406:名前は開発中のものです。
08/07/14 14:56:12 8WryyQH6
DXライブラリ作品では東方のやつが一番すごいと個人的に思う
407:名前は開発中のものです。
08/07/14 16:21:47 6+UKwK/G
龍神録?
あの人のプログラミングに対する執念はすごすぎる
東方、ぷよぷよ、魔界村、ボンバーマンと何でもつくれるんだよな
でも何でDxLib使ってるんだろう
DxLibでここまでできるってことを示したいのかな
408:名前は開発中のものです。
08/07/14 16:34:55 XThHbypQ
なんつーか・・・
このスレのやつらのレベルが知れるな
409:名前は開発中のものです。
08/07/14 16:41:58 8WryyQH6
>>407
DirectXとかWinAPIは底は深いけどそれやりだすとなかなか作品作れなくなるんだよな。
それにDirectX自体プロになるにしてもゲーム関係で無い限りそこまで必要なものでもないし。
将来DXよりいいのが出たときに乗り換えればいいだけだし作品製作に集中するのはあるべき姿のひとつだと思う。
410:名前は開発中のものです。
08/07/14 17:16:03 avDAWHJ8
DXライブラリは、余計なフレームワークがついてこないただのラッパだからね。
煩わしい部分以外全部自分でやってしまいたい時には都合がいい。
411:名前は開発中のものです。
08/07/14 17:17:53 6+UKwK/G
>>408
もともと初心者向けのライブラリだからな
でもあれだけつくれれば十分すごいと思うぞ
>>409
たしかにゲーム本体に労力を注ぐのが一番いい
HSPとかならまだしもDXライブラリなら初心者向けとはいえ
市販の2Dゲームに劣らないものがつくれそうだし
でもああいう人たちならわりと早くDirectXを使いこなせるようになりそうな気もする
412:名前は開発中のものです。
08/07/14 18:37:44 cTEttVhV
龍神録知らなかったので見てきた
ここまで再現できるのはプログラマー的に尊敬せざるを得ない・・・
まあ批難だらけになるのは致し方なしw
413:名前は開発中のものです。
08/07/14 19:14:46 2fRsRjz9
東方クローンなんてdxライブラリで一番作りやすいジャンルじゃないか?
神威みたいなのを作ったっていうなら凄いと思うが
414:名前は開発中のものです。
08/07/14 19:35:52 8WryyQH6
>>413
確かにDXライブラリが2Dのシューティングにかなり向いてるとは思うけど
あそこまでやるならもはやライブラリの力はあんま関係ないと思ったw 純粋に作者がすごすぎるw
多分あの人はRPGツクールとかでも他に圧倒的な差をつけたすごいのを創れるタイプだと思う。
同じ土俵であんなものができるなんて驚きを通り越して憧れたよ。
415:名前は開発中のものです。
08/07/14 19:47:03 6+UKwK/G
龍神録をすごいと思わない>>413は相当凄腕のゲームプログラマ
416:名前は開発中のものです。
08/07/14 21:45:41 55b1ZCZV
むしろゲームオタク……いや俺もか。
417:名前は開発中のものです。
08/07/14 22:00:50 5QQzrnLs
龍神録すげぇな
でもあれはプログラムっつーよりゲームデザインの領域では・・・・
2D弾幕もう供給過剰だしそろそろ3D弾幕欲しいぜ
418:名前は開発中のものです。
08/07/14 22:14:27 8WryyQH6
>>417
3Dで本格的な弾幕やろうとすると重いし動く環境限られるし何より面倒だと思う。
まぁシューティングとかは3Dの中では比較的作りやすいものではあると思うけど
3Dにするメリットってあんまないきがする。画面酔いしやすくなったとか言い出す人いるだろうし。
419:名前は開発中のものです。
08/07/14 22:17:22 yio38x9Q
龍神録は滅茶苦茶重い点を除けばかなり良い出来
420:名前は開発中のものです。
08/07/14 22:21:07 EI7ck19t
俺は当たり判定とかかなりいいかげんに作ってるから
弾幕シューを作ろうとしたらめちゃ重になるだろうな……。
421:名前は開発中のものです。
08/07/14 22:28:17 8WryyQH6
そういえばDXライブラリ作品だと公言しているものの各部門の非有料モノでの最高傑作ってなんだろう。
シューティングはあんま詳しくないけど龍神録しかないかなと思ってる。
アクションはしょぼんが個人的に最高に楽しかった。
アクション:しょぼんのアクション
シューティング:龍神録
RPG:シラネ
アクションRPG:これもシラネ
レーシング:あるのか?
格闘:確かあったけど有料だった気がする
パズル:シラネ
シミュレーション:あるのか?
422:名前は開発中のものです。
08/07/14 22:59:55 6+UKwK/G
しょぼんはくそ面白いけどゲームの楽しさとは違うだろw
ニコニコで見たときは最高だった
でもフリーのアクションといわれると思いつかないな
アクションかパズルかわからんがこれもすごい。本家に掲載されてるけど
URLリンク(pbsweb.jp) プリンセスラナ
423:名前は開発中のものです。
08/07/14 23:17:10 8WryyQH6
>>422
それ面白そうだな。確かにしょぼんはゲームとしての面白さというよりパロディとかセンスが秀逸という感じかもな。
どうでもいいけどあの作者が公開してるソースはマジで天才的すぎて絶叫したぜ・・。
そういえばRPGって多いかと思ったけどちゃんと作品として完成させてる人って意外と少ないんだな。
シミュレーションとかは存在すらなさそうだし。
424:名前は開発中のものです。
08/07/14 23:28:19 6+UKwK/G
あのソースはまじやばい。カオス
なぜかタブをつかわない
1つのファイルにだらだらだらだら書いてて…それで動く
自己流の最終形態
425:名前は開発中のものです。
08/07/14 23:33:05 6+UKwK/G
一部引用
//ブロック描画
for (t=0;t<tmax;t++){
xx[0]=ta[t]-fx;xx[1]=tb[t]-fy;
xx[2]=32;xx[3]=xx[2];
if (xx[0]+xx[2]*100>=-10 && xx[1]<=fxmax){
xx[9]=0;
if (stagecolor==2){xx[9]=30;}
if (stagecolor==4){xx[9]=60;}
if (ttype[t]<100){
xx[6]=ttype[t]+xx[9];drawimage(grap[xx[6]][1],xx[0]/100,xx[1]/100);
}
if (ttype[t]==100 || ttype[t]==101 || ttype[t]==102 || ttype[t]==103 || ttype[t]==104 && txtype[t]==1 || ttype[t]==114 && txtype[t]==1 || ttype[t]==116){
xx[6]=2+xx[9];drawimage(grap[xx[6]][1],xx[0]/100,xx[1]/100);
}
if (ttype[t]==112 || ttype[t]==104 && txtype[t]==0 || ttype[t]==115 && txtype[t]==1){
xx[6]=1+xx[9];drawimage(grap[xx[6]][1],xx[0]/100,xx[1]/100);
}
略
426:名前は開発中のものです。
08/07/14 23:36:47 P8xVGuHc
見難いにも程があるw
427:名前は開発中のものです。
08/07/15 00:42:40 sanH/T6d
>>425
それでバグがあるかというと全くないんだよなw
ソースも数千行で関数はほぼmainだけなのにw
そういうソースなんて他にはみたことないぜ。マジで狂気の沙汰
428:名前は開発中のものです。
08/07/15 00:49:20 sanH/T6d
そういえば友達が授業でいやいやソース書いてたときもしょぼんの人みたいなタブ使わない強引に1行で済ませる書き方だった。
それで分かるからいいらしい。ある意味間違ってはいないがw
やたら文法とか構造化とか声高に叫ぶばかりで何も完成させられない人には
しょぼんのソースを突き出してやりたいぜ。あれはほんと革命的なオープンソースだと思う。
俺も初心者のころはインデントしなくても読めてたけどいつの間にかそれができなくなった。
ああいうのは子供が自然とジャイロボール投げるのと似てる。
429:名前は開発中のものです。
08/07/15 00:54:31 7yk0deRV
>>425
すげえとしか言いようがねえぞ!w
確かにバグが出ず、本人が分かるならそれ以上のものはないんだろうけど・・・w
430:sage
08/07/15 01:58:59 OyoJDlsv
N88-日本語BASIC(86)のプログラムに比べれば可愛いもんだ
ところで
>>421
RPGならSTARGAZERがあるぞ
というか無料ソフトに拘るのはなんでだ?
431:名前は開発中のものです。
08/07/15 02:00:10 OyoJDlsv
すまん上げちまった・・・
432:名前は開発中のものです。
08/07/15 02:39:04 4QjKnr7J
龍神録は凄いと思うが、作者はDXライブラリのBBSで自演してたりしたから好きではない
433:名前は開発中のものです。
08/07/15 03:21:45 Z/XJU3We
DXライブラリ使用ソフトだと、夜行蛾4とかGalshell2の合体・変形・多関節は凄いと思う
434:名前は開発中のものです。
08/07/15 03:28:54 sanH/T6d
アクション: しょぼんのアクション
シューティング: 龍神録、Galshell2、夜行蛾4
RPG: 星を見る人
アクションRPG:
レーシング:
格闘:
パズル:プリンセスラナ
シミュレーション:
今んとこ候補はこんな感じか。まぁ有料は入れなくていいと思う。買った人にしかわかんないし。
435:名前は開発中のものです。
08/07/15 12:06:52 hKPgrkB+
誰かジョイスティック対応した斜め移動のコードを教えてください。
シューティング作ろうとプログラムを始めたばっかりの初心者なんでなかなか上手くいかないです。
keyでのキー入力の場合だとちゃんと斜め移動するんですが、GetJoypadInputStateを使うと上下左右移動しか出来ず、斜め移動を入力するととまってしまいます。
int plx = 200;
int ply = 400; //プレイヤー初期x.y座標の取得。
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_RIGHT ) { //右ボタンが押されたら
plx++;
plx++;
plx++;
plx++;
if(plx >= 385){ //画面右端から左端へワープ。
plx=0;
}
}
こんな感じのコードを上下左右分作っています、これだと斜め移動は実装できないんですか?
こんな初歩的な事でつまずいてるとか完成まで物凄い時間かかりそう。
436:名前は開発中のものです。
08/07/15 12:28:17 fI2aJQcd
プログラム的には問題ないように見える。
キーボード入力でうまくいくのに、ジョイスティック入力でうまくいかないのなら、
ジョイスティックが斜め入力に対応してないんじゃないかと思えるが……どうだろう。
普通のゲームをそのジョイスティックで操作してちゃんと斜めに動く?
もしそうならDXライブラリが対応してないジョイスティックがあるって事になるのかな。
437:名前は開発中のものです。
08/07/15 12:29:53 fI2aJQcd
あ、GetJoypadInputStateはキーボード入力も同時に対応してくれるけど
キーボードならちゃんと動くって事だよね?
438:名前は開発中のものです。
08/07/15 12:41:35 hKPgrkB+
>>436
logicoolの
URLリンク(www.logicool.co.jp)
コレ使ってるけど、斜め移動は普通に他のゲームではできます。
それとGetJoypadInputStateを使うとキー入力、ジョイスティック操作での斜め移動をしようとするとキャラがその場で止まってしまい。
GetHitKeyStateAll( Key );を使ってキー入力のみの場合だとちゃんと斜め移動が出来ます。
もしかしたらどっかのコードが違うのかなぁ
439:名前は開発中のものです。
08/07/15 12:45:14 fI2aJQcd
んーじゃ、コードをどっか間違ってるんでしょうね。見てみないとわかんないけど。
例えば計算を間違ってて座標がプラスマイナス0になってるとか、
斜め入力した時に処理が別のとこに飛んでるとか。
440:名前は開発中のものです。
08/07/15 12:46:35 fI2aJQcd
あ~でもGetHitKeyStateAllだと上手くいってるのか……なんだろうね。
441:名前は開発中のものです。
08/07/15 12:47:35 hKPgrkB+
初心者とは言えコードが幼稚すぎて晒すの恥ずかしいけど、一通り晒してみます。
void player_move(){ //プレイヤーの移動
GetJoypadInputState( DX_INPUT_KEY_PAD1 ) ; //ジョイスティックの状態を監視
char Key[256]; //キー状態の取得。
GetHitKeyStateAll( Key ); //ループ、キーの状態を取得
if(GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_R ){ //低速移動
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_RIGHT ) { //シフトと右が同時に押された場合。
plx--;
plx--;
}
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_LEFT ) { //シフトと左が同時に押された場合。
plx++;
plx++;
}
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_UP) { //シフトと上が同時に押された場合。
ply++;
ply++;
}
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_DOWN ) { //シフトと下が同時に押された場合。
ply--;
ply--;
}
}
ply++;
ply++;
ply++;
if(ply >= 430){ //画面下部へ戻す(ハミ出ないようにする。)
ply=430;
}
}
442:名前は開発中のものです。
08/07/15 12:48:45 hKPgrkB+
//ここから高速移動。
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_RIGHT ) { //右ボタンが押されたら
plx++;
plx++;
plx++;
plx++;
if(plx >= 385){ //画面右端から左端へワープ。
plx=0;
}
}
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_LEFT ) { //左ボタンが押されたら。
plx--;
plx--;
plx--;
plx--;
if(plx <= 0){ //画面左端から右端へワープ。
plx=385;
}
}
if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_UP) { //上ボタンが押されたら。
ply--;
ply--;
ply--;
ply--;
if(ply <= 0){ //画面上部へ戻す(ハミ出ないようにする。)
ply=0;
}
}
文字制限があり、下ボタンが書けないですが、上記のコードと同じ感じです。
443:名前は開発中のものです。
08/07/15 13:23:58 Y9twlXWg
>> if( GetJoypadInputState( DX_INPUT_KEY_PAD1 ) == PAD_INPUT_UP)
これなんだけど、
==で判定するんじゃなくて、
&で判定したら良いと思うんだけど、どうだろ。(他も同様に)
DX使ったこと無いんで知らないんだけど。
444:名前は開発中のものです。
08/07/15 13:24:35 ui07eI/H
== で判定している時点でおかしい。
GetJoypadInputState() が斜めという状態を返すのに、
「斜め==右」と「斜め==上」の両方を満たしたりすることがあると思う?
445:名前は開発中のものです。
08/07/15 13:31:28 hKPgrkB+
>>443-444
ありがとおおおお!
そうか、「==」で両方の条件を満たすモノかと思ってたけど検討違いだったみたいだ。
これで一つシューティングに近づけた!
敵移動ルーチンもがんばって作ります。
446:名前は開発中のものです。
08/07/15 13:45:15 pBagc6XR
つーかDxlib.hくらいは読め
447:名前は開発中のものです。
08/07/15 13:48:18 epOoFIz5
plx++;
plx++;
plx++;
plx++;
ここ何で plx += 4; て書かないの?
448:名前は開発中のものです。
08/07/15 13:52:26 hKPgrkB+
>>446
リファレンス読んだんですけど、関数の使い方がまだ慣れていなくて。
>>447
そういう書き方もあったんですね、本当勉強になります。
449:名前は開発中のものです。
08/07/15 14:03:28 epOoFIz5
URLリンク(homepage2.nifty.com)
まずこういうとこで勉強しる。ゲームをつくるのに必須な事柄ばかり
450:名前は開発中のものです。
08/07/15 15:46:09 EwmM+mgV
14歳シリーズ読む前に上の奴は目を通しておいたほうがいいね
451:名前は開発中のものです。
08/07/15 23:47:36 kClkDntU
DXライブラリ3Dのひと大学やめたって・・・
信用できなさすぎてワロタ
452:名前は開発中のものです。
08/07/16 00:58:20 i3IZPEwK
自キャラが動いている画面部分に、ステータス表示などのウィンドウを開くには
どうしたらいいのでしょうか?ウィンドウを描画する部分は作ってみたのですが、
うまく消すことができません・・・どう考えてプログラムを組んだらいいのか教えてください
453:名前は開発中のものです。
08/07/16 02:02:25 sIK7J7gQ
意味がわからん。
ウィンドウ描きたきゃ描けばいいし
消したきゃ描かなければいいだけでは。
毎回全部描き直してればこれですむが……?
454:名前は開発中のものです。
08/07/16 08:44:26 jVP8P/rT
>>452
毎回、画面をクリアして(あるいは、色、画像で塗りつぶして)から、
キャラクタとかを描くようにしたらいいよ。
つまり、消す=表示しない
ウィンドウに関しても、表示する/しないのフラグを作るなり何なりして、
表示する/しないを切替えられるようにする、というのが一つの考え。
画面のちらつきが気になるならダブルバッファリングでもググッて頂戴。
455:名前は開発中のものです。
08/07/16 12:47:22 Hdj1AvWV
>452
すぐ上の>449くらいは見てから聞きなさい。
456:名前は開発中のものです。
08/07/16 12:48:19 fyzf+eW+
俺も>>452と同じ所が微妙に分からないんだけど。
メインループが書いてあるコードで
while(ProcessMessage() == 0 && GetHitKeyStateAll(Key) == 0){ //メイン処理
RefreshTime = GetNowCount(); //今の時間の取得
ClearDrawScreen(); //裏画面のデータの削除
img_01(); //背景の表示
img_s1(); //スコアボードの表示
player_move(); //キャラクター移動
enemy_move_01(); //下がって来きて、一定時間止まり上に上がる敵の移動
enemy_move_02(); //右から来て左に消える敵の移動
ScreenFlip() ; //裏画面のデータを反映
while(GetNowCount() - RefreshTime < 17); //1周の処理が17ミリ秒になるまで待つ
if (Key[KEY_INPUT_ESCAPE]==1) break;
このコードだとどうしてもenemy_move_main_01と02が画面外に消えたとしてもClearDrawScreenでは消えないし、もしenemy_move_main_01内でClearDrawScreen使ったとしても違うものが消えちゃう。
そうなると画像を選択してその画像だけを消すコードを追加した方がいいの?
457:名前は開発中のものです。
08/07/16 13:03:06 Q6JHVI1A
>画面外に消えたとしてもClearDrawScreenでは消えないし
なんで?
画面外ならそもそも消す必要すらないのでは。
というか画面外なら最初から表示しなけりゃいいんじゃないのか……?
俺なにか勘違いしてる?
458:名前は開発中のものです。
08/07/16 13:08:46 fyzf+eW+
>>457
書き方が悪かったのかな。
敵が画面上部の外から出てくる(表示されてない)
↓
画面中央ぐらいまで下がってきて止まる(表示されている)
↓
一定時間止まったら画面上部の外に出る(表示されていない)
ここで3番目の処理の時に画像を画面外で消さないと重くなって仕方ないんだけど、効率が良い消し方も分からん。
もしかしたら画像が残っている以前に移動のコードがアレなのかも分かんないけど。
459:名前は開発中のものです。
08/07/16 13:29:57 5ZyV7TA5
敵の座標が0未満なら描画しなければいい
実際は敵の大きさを考慮しなければいけないが
460:名前は開発中のものです。
08/07/16 13:31:50 Q6JHVI1A
うーん?
俺は「画面外のキャラ」はそもそも表示しないようにしてるんだが、そういう問題じゃない?
あるいは「画面外にでたら不要になるキャラ」なら、キャラ自体を消してしまえばいいんだし。
461:名前は開発中のものです。
08/07/16 13:38:11 Q6JHVI1A
例えばこんな感じで ↓
//画面内だったら表示する
if( x + GH.width >= 0 &&
x < SCREEN_WIDTH &&
y + GH.height >= 0 &&
y < SCREEN_HEIGHT )
DrawGraph( x , y , GH , TRUE ) ;
# x と y はキャラの座標。
# GH.width GH.height はキャラの幅と高さ
# SCREEN_WIDTH SCREEN_HEIGHT は画面のサイズ
こうすれば画面外のキャラは描画処理を省く事ができるからその分処理は軽くなる。
描画処理は時間掛かるからね。
462:名前は開発中のものです。
08/07/16 14:49:40 i3IZPEwK
452です。。。描画の仕組みがちゃんとわかってなかったようです
通常はループ処理の中で秒間何コマも書き換えを行ってるですよね、
それを忘れてフォトショップのレイヤー表示・非表示みたいな発想をしてました
463:名前は開発中のものです。
08/07/16 15:13:16 jVP8P/rT
>>462
レイヤーを重ねて画面を作るという発想は間違ってないと思うよ。
それに画面外の画像についてはライブラリ側が勝手に判断して、描画する/しないを判断してくれるものだと思ってた。
(キャンバスのサイズ
そもそも、敵の数がハードコーディングできる位の量で、処理がそこまで遅くなるとも思えないので、
消えてる/消えてないとは別に理由があるような気がする。
もしかして、毎回LoadGraphScreenで画像を読み出していないか?とか。
URLリンク(homepage2.nifty.com)
464:名前は開発中のものです。
08/07/16 15:38:24 Q6JHVI1A
スピードうんぬん言ってるのは>>456でしょ?
465:名前は開発中のものです。
08/07/16 15:59:40 jVP8P/rT
ぐはw間違えたwww
466:名前は開発中のものです。
08/07/16 16:08:27 uDKC+hAb
DXライブラリ3D
復活
467:名前は開発中のものです。
08/07/16 20:59:46 5P2SX/d6
>>466
URLリンク(fatalita.sakura.ne.jp)
>大学はやめることにしました。
( ゚д゚ )
468:名前は開発中のものです。
08/07/16 21:22:19 MuiAAeME
これは予想外といわざるを得ない
469:名前は開発中のものです。
08/07/16 23:10:22 xs6cjDc7
大学を辞めるにいたった理由は他の事にのめり込んだせいか?w
470:名前は開発中のものです。
08/07/17 00:47:50 s5cW2pVU
大学やめる人間がライブラリ制作つづけられねぇだろ
471:名前は開発中のものです。
08/07/17 00:49:37 Ap/EhYGH
トラブルがあって金が払えなくなると言う涙なしに語れない話かもしれないぞ
472:名前は開発中のものです。
08/07/17 00:50:27 uimy9tns
なんでおまえらそんなに攻撃的なのw
473:名前は開発中のものです。
08/07/17 00:57:00 oEwgGZIt
良くも悪くも一度でもコースから外れたやつには厳しいのが日本だからな
474:名前は開発中のものです。
08/07/17 01:53:00 +mkSl9PA
まあ今何言われても機能とサポートが充実した状態を数年保てれば自然と利用者は増えるさ
というわけで作者頑張れ
475:名前は開発中のものです。
08/07/17 01:55:32 uimy9tns
まあ犯罪者ですってんでもなければ、
成果物を利用させてもらうことには何の躊躇いも無いな
大学出るだけが人生じゃないしな
476:名前は開発中のものです。
08/07/17 07:13:32 SZKqta3R
でも折角はいったんだから頑張って卒業した方がいいと思うなぁ。
477:名前は開発中のものです。
08/07/17 08:14:59 tmKiyq5R
作者頑張れ
478:名前は開発中のものです。
08/07/17 11:20:01 TlwjY+uU
処理速度が画面上に敵を4~5体表示するだけで致命的にガクガクになるんだけどなんでだろ?
479:名前は開発中のものです。
08/07/17 11:28:27 FcrOhhAY
>>478
1. 毎回ファイル読み込みしてる
2. 裏でソフトのアップデートが始まっている
3. 敵の画像サイズが3200x2400フルカラーのビットマップ
4. 一つの座標に同じ敵を何十回も描画してる
5. 以前に開始したゲームが終了できていない。(タスクマネージャを確認)
6. 同時起動してるソフトが重い
480:名前は開発中のものです。
08/07/17 11:34:48 TlwjY+uU
1. この記述が悪いのかな?やっぱりメモリから読み込んだ方がいいの?
LoadGraphScreen( move02.enx , move02.eny , "date/img/enemy.bmp" , TRUE ) ;
2.3は無い、画像は仮の画像だけど50*50のpngでやってる
4.ClearDrawScreen();で消す→画像の描写→ScreenFlip() ;って感じでやってるから多分大丈夫?だと思う
5.6も無いです。
やっぱり1番の問題なのかな?
481:名前は開発中のものです。
08/07/17 12:14:25 TqjgJuyg
>裏でソフトのアップデートが始まっている
あるあるww
482:名前は開発中のものです。
08/07/17 12:52:18 pdRWIRiu
>1. この記述が悪いのかな?やっぱりメモリから読み込んだ方がいいの?
当たり前だw
表示するたびに、いちいちディスクから読んでたらガクガクになるに決まってるだろ。
483:名前は開発中のものです。
08/07/17 17:24:34 d7rd6QL5
マップの表示をいちいちファイルからやってたら死ねる
484:名前は開発中のものです。
08/07/17 20:10:57 2so4oodo
ごく初歩のサンプルプログラムでもなければ、LoadGraphScreenの利用価値はまったくない。
LoadGraphScreenなんて関数はないと思っていた方がいい。
485:名前は開発中のものです。
08/07/17 20:23:27 s5cW2pVU
作者さん乙
486:名前は開発中のものです。
08/07/17 20:34:39 HJmpynoy
LoadGraphScreenって、例外的な使い方しかしないよな。
487:名前は開発中のものです。
08/07/17 21:13:47 uAQ9zE97
俺のPCはハイスペックだからLoadGraphScreenでも問題ないよ
488:名前は開発中のものです。
08/07/17 21:24:59 WlLz+UQE
どれだけアクセスの早いHDDなんだ。
489:名前は開発中のものです。
08/07/17 21:29:56 4zPgFuV4
だからって使うメリットもあまり無いと思うが
490:名前は開発中のものです。
08/07/17 21:31:24 TlwjY+uU
move01.eny++;
counter++;
if(counter > 100) move01.eny--;
if(counter > 300) move01.eny-=2;
if(move01.eny > 0)
DrawGraph( move01.enx , move01.eny , enemy_img , TRUE ) ;
アドバイス通りに書いたら安定した。
このスレはプログラム上級者が揃ってて初心者の俺にとってはありがたい
491:名前は開発中のものです。
08/07/17 21:42:01 d7rd6QL5
いつの間にかプログラミングの館で新しく解説サイトできてるな
しかも結構おもしろそう
読んでくるわ
492:名前は開発中のものです。
08/07/17 21:53:44 d7rd6QL5
DrawRotaGraphFってなんだよ\(^o^)/
493:名前は開発中のものです。
08/07/17 22:08:06 uAQ9zE97
この手のプログラミング解説サイトって絵や図が足りないよな
最後に実行結果を動画にしてるのは評価できるけど
494:名前は開発中のものです。
08/07/17 22:37:18 WlLz+UQE
絵や図を用意しようとすると労力が数倍に跳ね上がるからねぇ……。
495:名前は開発中のものです。
08/07/17 22:44:28 Hb7Xgjfk
本買えよ
496:名前は開発中のものです。
08/07/17 22:46:11 uAQ9zE97
サイト作るなら本買って構成とか真似してわかりやすくしろってことだな
497:名前は開発中のものです。
08/07/17 22:48:53 LH8MqGSK
ってか、そんなに画像が必要か?
498:名前は開発中のものです。
08/07/17 22:53:44 uimy9tns
只で見ておいてすごいことを言ってのけるなw
499:名前は開発中のものです。
08/07/17 23:11:28 uAQ9zE97
>とにかく「わかりやすい」をモットーに紹介しています。
ソースとスクリーンショットだけじゃこれ実現できねーよ
文章も校正してないしな
只で見て何も言わずに帰るのが本当に良い客なのだろうか
500:名前は開発中のものです。
08/07/18 00:09:07 6rtxrGUf
うん みてろ
501:名前は開発中のものです。
08/07/18 00:27:24 R9DZM3Hc
そんなに見づらい、わかりづらいなら
もっと図説が一杯載ってるサイトに行けばいいんじゃね?
502:名前は開発中のものです。
08/07/18 10:08:40 X7knEZGC
書籍買って勉強してるんだが、ベクトルの話がちんぷんかんぷんだぜ・・・ライブラリが使えても
物理計算が理解できないと話しにならんな、、、ナイセキとガイセキって何が違うんじゃ!!!!
503:名前は開発中のものです。
08/07/18 13:49:37 hGQjyaE4
画像消してるのにもかかわらずにページファイルが増え続けるんだけど
なんでだろ
504:名前は開発中のものです。
08/07/18 13:55:56 H/OXxpxC
DeleteGraphしてる?
505:名前は開発中のものです。
08/07/18 14:07:21 hGQjyaE4
してなかった・・・。
してみたら超安定した
506:名前は開発中のものです。
08/07/20 01:47:16 hsVM+X3h
2D横スクロールアクションでキャラと地形のあたり判定を考えてます
背景(地形)に32*16もしくは32*32のマップチップ的なものを配置、
地形のチップの上にキャラが立ち、32ドット単位で移動するようにしたいのですが、
その時の判定で能率の良い方法はないでしょうか?
今はマッピングするときに使う地図情報配列と自キャラの位置を配列座標に変換したものを
比較して、自キャラ[X][Y]に対して、地図情報[X][Y+1]がマップチップなら移動できない・・・・・って手法を考えてますが、
これだと空中に浮かぶチップがあった場合の判定が煩雑になってしまい、
ジャンプしたときなど判別を都度追加しなければならず、効率が悪くて難儀してます
507:名前は開発中のものです。
08/07/20 08:01:47 Rb93SROm
>>506 なんか、微妙にDXライブラリと関係ないけど・・・・・
使っているデータ構造とかがどのようなものか?がわからないから
かなり憶測に基づいての回答だと言う事を念頭に置いてね。
自分が想定してるアクションってのが、聖剣伝説みたいな見下ろし型でのものだけど、
マリオなんか見たいのでも、似たような感じで応用すれば使えると思うよ。
まず、地図情報があると言うことだから、それを若干拡張してください。
例:char DataMap[MAP_MAX_SIZE_X][MAP_MAX_SIZE_Y][MAP_MAX_SIZE_STRUCTURE];
で、一層目に普通のマップ情報、二層目に地上キャラクタの情報、三層目に空中キャラクタの情報
とでもして、check時に、
普通は一層目が進行可なら二層目を調べる。
ジャンプなどの場合は、一層目を調べてさらに三層目を調べる。
みたいなのでどう?
あと、効率が悪いと言っても基本的に変な総当たり式みたいな判定出ない限りは
大した効率さは考えなくていいと思うよ。
508:名前は開発中のものです。
08/07/20 08:54:56 zgBZw03q
>>506
空中に浮かぶチップがあった場合の判定が煩雑になる理由は?
509:名前は開発中のものです。
08/07/20 10:37:50 d2RmswSs
四角形と直線の当たり判定がどうもうまくいかない・・・
この前当たり判定のまとめサイトみたいなの見つけた気がしたんだが
どこにいったんだか
直線を(ax+by+c=0)として表現するっていうのができたらできそうなんだが、
2点の座標からa,b,c全部求めるのって無理じゃね
510:名前は開発中のものです。
08/07/20 11:14:01 Tcsf7iZJ
>>509
直線の方程式を y = Ax + B から展開していけば解けるよ。
511:名前は開発中のものです。
08/07/22 23:59:25 M/E435KZ
>>509
もう出来てるかも知れないが中学数学のお話だぞそれは
直感的に考えても点が二つあれば一本直線が引けるだろ
つまりは方程式も点が二つあれば求まるんだよ
512:名前は開発中のものです。
08/07/23 01:15:20 GLsAu5Iz
龍神録プログラミングの館ってできたのな。
こりゃ確かにコピーが作れる
513:名前は開発中のものです。
08/07/23 11:52:10 82XNmZh+
どこかおかしいと思ったら"r"でfreadしてた
今までうまく動いてたけどいきなり不具合が出たから迷ったぜ
514:名前は開発中のものです。
08/07/25 10:57:45 YGbibhe6
ちょっとしたことなんだけどさ
if( ( GetMouseInput() & MOUSE_INPUT_LEFT ) != 0 ){ 以下略
でマウス左クリックを検出してんだけど、
これペンタブを検出してくれないんだな。
515:名前は開発中のものです。
08/07/25 15:19:27 1Kbo7I82
DXライブラリ3D
大学やめたのか
516:名前は開発中のものです。
08/07/26 06:28:51 L5kt2X8n
大学どころか人生やめました
517:名前は開発中のものです。
08/07/26 13:23:17 IUb0Oqp3
どうせゲ専にでも行くんだろ
業界が大卒以外取らないってのは、決して脅しの言葉じゃないぞ
518:名前は開発中のものです。
08/07/26 13:28:45 YzymVi7X
>>517
JEXさんのこと全然知らないんだな
しかもどこのが会社が大卒以外取らないとか言ってんだよ
519:名前は開発中のものです。
08/07/26 13:43:10 yPJXRj/4
任天堂
520:名前は開発中のものです。
08/07/26 15:43:58 gmVyP22M
誰か、14歳からはじめるC言語ゲームプログラミングでゲーム作っている人いますか?
521:名前は開発中のものです。
08/07/26 15:48:40 gx2oBCiZ
ノシ
とりあえず熊キャラのところまでたどり着いた・・・・
三回読み直してようやく何をやってるのか、少しわかるようになった
良書と思うが、ライブラリの使用を作者の作ったヘルパー関数の利用で賄ってる部分が多いので、
初めての俺にはそこが難しい(かった)な
522:名前は開発中のものです。
08/07/26 15:56:30 gmVyP22M
P82のDXLib_VC2_24b.exeがどこにあるか分からないのですが
どこにあるのですか?
教えてください!
523:名前は開発中のものです。
08/07/26 16:02:26 gx2oBCiZ
ちょっと今手元に本が無いから、なんのことやら・・・スマンネ
524:名前は開発中のものです。
08/07/26 16:09:33 gmVyP22M
そうですか
今、DXライブラリがどこにあるか分からなくてとても困っています。
とりあえず、教えてほしいのですが付属のCDでダウンロードできるんですよね?
525:名前は開発中のものです。
08/07/26 16:12:35 gx2oBCiZ
うろ覚えだが、付属のCDはVisualStudioの奴だけで、
あとはサイトからダウンロードするんじゃなかったかい?
サンプルとライブラリはネットで落とした記憶が・・・
他にもゲーム系入門書を数冊買ったので、ごっちゃになってるかもしれないが・・・
526:名前は開発中のものです。
08/07/26 16:13:53 RMhYO7Z4
>>524
調べる事も勉強になるから、それぐらいは自分一人の力で解決しないと先に進めないよ
DLと使用環境を整えるぐらいは一人でもいけるはず。
出来ないのならプログラムよりも先にパソコンの使い方とかを勉強したほうがいいかもしれない。
527:名前は開発中のものです。
08/07/26 16:49:04 T15EAVrC
「CDでダウンロードできる」と言ってるあたり、まだ何も解ってないみたいだね。
2chくるより先に公式サイト見に行くべきだ。
528:名前は開発中のものです。
08/07/26 18:16:55 gmVyP22M
わかりました、公式サイトに行ってみます
529:名前は開発中のものです。
08/07/26 19:19:12 MaSVBvZq
>>518
悪いけど、まともな企業になってきてる大手は原則大卒しか新卒ではとらないよ。
実績とかなにか、自分の力を証明できるようなもんがあれば別だけど・・・・・
まぁ、どうでもいいか。
530:名前は開発中のものです。
08/07/26 19:28:02 T15EAVrC
それに、仮に大卒以外として採用されたとしても、待遇は天地の差がある。
給料はもちろん、回される仕事も大きく違う。
せっかく大学受かったなら、辞めないほうがいい。
531:名前は開発中のものです。
08/07/26 19:30:34 IJz7tQo6
これが学歴厨か・・・
こっちで色々語られてるぞ
ゲームクリエイターになってみない?
スレリンク(gamedev板)
532:名前は開発中のものです。
08/07/26 19:33:01 YzymVi7X
任天堂受けたけど、90人の枠に何万人もエントリーするあの倍率じゃ
大卒ウンヌンとかって話じゃないよw
とりあえず勉強してない奴は筆記試験からして最初っからすぐ落ちる。
533:名前は開発中のものです。
08/07/26 20:35:44 dHaaAq9w
任天堂の技術系は東大か京大か東工大じゃないと話にもならんよ
534:名前は開発中のものです。
08/07/26 20:38:55 0BMzZt8C
高専は?
535:名前は開発中のものです。
08/07/26 20:42:20 nbFOjXde
>>534
無理ぽ
つか大手だーじゃなくて、好きなもの作ってる所受けてみりゃいいと思う
特にマの人。
536:名前は開発中のものです。
08/07/26 22:08:20 czyUlfmN
任天堂は、面白くないゲームでも面白そうに思わせる宣伝力とか。
企画を工夫して売るとか、
海外相手に日本じゃありえないような言いがかりのような法的トラブルを防ぐ能力とか
凄腕プログラマを育てるのではなく外からスカウトしてきて上手く使いこなす能力とか・・・
そういう感じの人たちが終結してるんじゃないかと想像。
537:名前は開発中のものです。
08/07/26 22:23:47 yPJXRj/4
学歴厨っていうか入り口での足きりをするときに
似たようなレベルの作品&印象だったら学歴高い方を選ぶだろJKってだけの話だよ。
高卒でも大卒のやつらを上回る技術を示せる作品を作って、
剛体力学、流体力学、行列・ベクトル演算、幾何代数を独学でマスターすれば全く問題無い。
538:名前は開発中のものです。
08/07/26 22:53:29 iaDbs620
流れを変える意味でも、ちょっと初歩的な質問をさせてくれ
DrawFormatStringなんだけど、これって実際には
バックにグラフィックの枠のようなものを表示させて、座標はある程度めぼしをつけて、
================== <-グラフィック
ここに点数とか <-DrawFormatStringで書く
ここに名前とか
================== <-グラフィック
みたいにして使うものってことでおk?
ゲームのステータス表示とかで使いたいと思ってるんだが・・・
539:名前は開発中のものです。
08/07/26 23:24:49 tnwbSQld
まぁ、それで出来ないことはないだろうが。
DxLib.h見てないからなんともいえないが、もしかしたら描画した文字列の高さを返す関数があるかもしれんが。
不安だったら、文字を画像にしちゃうとか。
540:名前は開発中のものです。
08/07/26 23:29:39 iaDbs620
文字の中でも固定的なもの(ポイントとかHPとか言う呼称)までは画像にしようかと、、、
以前、画像の読み込みで練習用?の呼び出しがあるとか無いとかって話しになってたので、
もしかしたら見落としてる命令があるかと思って聞いた次第です
541:名前は開発中のものです。
08/07/27 00:03:36 ofRKBqbI
すまないが、何を疑問に思ってるのか解らない。
俺はゲーム中のメッセージ表示や、あるいはデバッグ用の変数値表示に使うくらいだな。
点数とかは、自分で文字画像作ってそれを表示させてる。
フォントのサイズは自分で設定できるんだからそれに準ずればいい。
ただフォントいじる命令、やたら遅いので頻繁に変えるようだったら
最初から複数のフォントを用意しないといけないんだったかな。
文字を画像にしたらフォントのライセンスとかでまずい事になるんじゃないかな。
542:名前は開発中のものです。
08/07/27 00:10:58 6pVtHho2
そうとは言い切れないけど、大抵指定したフォントサイズが
文字のドット幅になるよ。
543:名前は開発中のものです。
08/07/27 10:54:20 tU8sxjgU
幅はDxLib.hのGetDrawStringWidth系関数が使えそうですが、
高さの取得用関数は用意されてないみたいですね。
フォント用の内部構造体FONTMANAGEには高さが含まれているので、
DxLib.hでコメントアウトされているGetFontManageDataToHandle( int FontHandle ) あたりを使えば
文字の高さを取得できそうです。
あるいは文字高さ取得用関数をライブラリに追加するか。
いずれにせよ、要改造になってしまいますが。
544:名前は開発中のものです。
08/07/28 00:27:53 6zw2nRJ7
テキスト表示の件、ありがとうございました、、、何故疑問に?と思う人もいたみたいだけど、
プログラミング始めたばかりなので、「自分がいいと思ってやってることが正解なのかわからん」状態なので
思わず利いてしまいました
で、次のは微妙にスレ違いっぽい質問なのだけど、LaadDivGraphで読み込んだ複数のキャラ画像を
メインキャラの動きに合わせて追従させるにはどうしたらいいと思いますか?
動きとしてはグラディウスのオプションとか、ソーサリアンのパーティキャラみたいな感じのものです
自分が組んだロジックは、
・メインキャラの移動状態を保存用配列に古い記録を破棄しながら随時記録
・配列の情報に基づいてサブキャラの座標を決定して表示
としてるのですが、サブキャラを増やすと記録すべき配列要素の数も増えて
どうも動作が緩慢になってる感じがします・・・自分のマシンではそれほどストレスがないですが、
スペックの落ちるマシンだとストレス溜まりそう・・・なのですが、妙手が思いつきません
545:名前は開発中のものです。
08/07/28 00:35:13 3fAUJGid
横スクロールアクションのサンプルは、結構少ないのな
作ってたら、ごちゃごちゃと長くなったから、先人のを参考にしたかったのに
546:545
08/07/28 00:58:54 3fAUJGid
すまんかった
ただ、俺の検索能力が低かっただけみたい
547:名前は開発中のものです。
08/07/28 01:05:00 ESVO02ow
>>544
俺もそれ、考えた事はあるけどやった事ないから正解はわからんが、
俺なら同じように配列に「座標」を記録していくかなぁ。
にしても100や200追従させたところで
そうそう動作が重くなるとは思えないんだけど
どれくらいの数動かす事が前提なのかな?
548:名前は開発中のものです。
08/07/28 01:52:02 dT1uTere
オプションの最大個数*n(オプションの間隔)
のサイズのリングバッファを作り
自機の座標を記録していくんだ。
で、現在のポインタから、n個ずつ古い座標を取り出してオプションの座標にしる
549:名前は開発中のものです。
08/07/30 12:30:53 I1TOnfGu
typedef struct{
int enx; //敵 x座標
int eny; //敵 y座標
int flag; //フラグ
} ENEMY;
ENEMY move01 = {100,1,0};
ENEMY move02 = {300,1,0};
void enemy_move_02(){
double test = atan2(move02.eny . move02.enx)→ここでエラー。
もしかして構造体とatan2関数って一緒に使えない?
move02.eny . move02.enxを「move02」 「eny」 「move02」 「enx」
って認識してるっぽいんだけど
550:名前は開発中のものです。
08/07/30 12:34:52 jxOLhJk/
","じゃなくて"."になってるのと";"忘れ
551:名前は開発中のものです。
08/07/30 12:38:49 I1TOnfGu
しまったw
こんな単純なミスをずっと気がつかなかったのか。
>>550
下らん質問に答えてくれてありがとう。
552:名前は開発中のものです。
08/07/30 13:27:32 I1TOnfGu
>>550
のミスを修正していざデバッグしたら
'atan2' : オーバーロード関数の呼び出しを解決することができません。
ってエラー出るんだけど、何が悪いの?ENEMY move02 = {300,1,0};で整数がatan2のy.xに代入されてるから?
553:名前は開発中のものです。
08/07/30 13:50:42 BwimhXf8
math.hはincludeしてる?
554:名前は開発中のものです。
08/07/30 13:58:39 I1TOnfGu
>>553
ちゃんとしているよ。
555:名前は開発中のものです。
08/07/30 13:59:38 BwimhXf8
float と double で、、てのもC#ならともかくC++じゃなあ。
とりあえずキャストしてみては?
556:名前は開発中のものです。
08/07/30 14:19:59 I1TOnfGu
static_cast(double)でやってみても普通のキャストでもダメだw
atan2関数って結構クセもんだな
557:名前は開発中のものです。
08/07/30 14:21:08 Lgzy7JPK
まだどこか、カンマとピリオドをうち間違えてるのかも。
フォントが小さいと分かりにくいから要注意。
558:名前は開発中のものです。
08/07/30 14:31:10 5y8IMZn/
atan2といえば、ゲーム実行中にドメインエラーがよく出たなー。
559:名前は開発中のものです。
08/07/30 14:31:57 4++6mc8t
atan2( (double)move02.eny , (double)move02.enx);
でどうですか?
560:名前は開発中のものです。
08/07/30 14:35:07 I1TOnfGu
>>>557
エラーがこれだけだから、多分何かが違うんだと思う
enemy_move.cpp(63) : error C2668: 'atan2' : オーバーロード関数の呼び出しを解決することができません。(新機能 ; ヘルプを参照)
1> d:\c++\vc\include\math.h(547): 'long double atan2(long double,long double)' の可能性があります。
1> d:\c++\vc\include\math.h(499): または 'float atan2(float,float)'
1> d:\c++\vc\include\math.h(110): または 'double atan2(double,double)'
1> 引数リスト '(int, int)' を一致させようとしているとき
多重定義もクソも一回しか使ってないんだけどw
561:名前は開発中のものです。
08/07/30 14:37:25 I1TOnfGu
>>559
あ、今度はうまくいった。
一つ一つにキャストしないといけないのかー。
不便だな結構。
562:名前は開発中のものです。
08/07/30 14:39:13 bDlTbbmG
ちょ、、、どうやろうとしてたんだ?w
563:名前は開発中のものです。
08/07/30 14:42:13 I1TOnfGu
double test = (double)atan2(move02.eny , move02.enx);
これで一気に出来ると信じてた
564:名前は開発中のものです。
08/07/30 14:43:55 Fn2JO3tM
敵の座標や速度は小数にして必要なときに整数にキャストするのがよくね
位置が整数だと2フレームで1px動かすときとか苦労する
>>563
関数のオーバーロードは引数で区別される
565:名前は開発中のものです。
08/07/30 14:45:42 Fn2JO3tM
ちなみにそれだと関数が返した値をdouble型にキャスト変換するだけで関数の評価には関係ない
566:名前は開発中のものです。
08/07/30 16:21:00 I1TOnfGu
atan2を使ってて思ったんだけど。
敵にsin波の動きをさせるだけだったらatan2使わないでsin使ったほうが楽だよね?
567:名前は開発中のものです。
08/07/31 05:31:29 OJUOAbtf
>>556
え!?
static_castとか知ってて普通のキャストの基礎知らなかったりするのはかなり意外なんだけど
>>566
そもそもどうしてatan2を使おうと思ったんだい?
568:名前は開発中のものです。
08/07/31 11:25:29 6cZaCcAX
static_cast(double)じゃなくてstatic_cast<double>だけどな
569:名前は開発中のものです。
08/07/31 18:11:14 r/NTYYBz
返り値をキャストしてもショウガナイですね・・。
math.hの関数はよくint型引数にしようとして失敗したことが昔ありましたねぇ
で、atan2は敵と自機の角度求めたりするのによく使いますけど、
波の表現には使いませんねぇ
math.hの関数はどれも遅いので、なるべく使わないようにしてはどうでしょう
570:名前は開発中のものです。
08/07/31 21:35:59 7gZA2bfW
>>569
math.hの関数を使わないでのsin波の場合だとどうなるんだろう・・・。
sinもmathだと思うし、何を使うべきなんですかね
571:名前は開発中のものです。
08/07/31 21:38:43 DHgf9I5V
fastmath.h
572:名前は開発中のものです。
08/07/31 23:26:36 iw2uu9Rv
neetmath.h
573:名前は開発中のものです。
08/07/31 23:38:05 TL4sUMQR
>>570
まずはmath.hの三角関数を使うべきだと思う。
今どきのPCで三角関数のコストが無視できない状況なんてあまり無い。
もしVCを使っているなら、
#pragma intrinsic
の使用を検討してみるといいよ。
コンパイラのビルトイン関数を使うことで速度向上が期待できる。
gccならデフォルトでビルトイン関数が適用されてる。
574:名前は開発中のものです。
08/08/01 11:40:12 nuMWOD8l
環境はc++とDXライブラリ
#pragma intrinsicってprintfとかのだよね?
c++だとあんまり使ってないや
575:名前は開発中のものです。
08/08/01 16:30:58 GtdXG6pu
画像の拡大縮小、反転などを併用したい場合は、素材側で対応するのが無難でしょうか?
一度描画したものをGetDrawScreenGraph()で取り込んで、別の方法で描画…というのはできましたが、
良い方法とは思えません。
576:名前は開発中のものです。
08/08/01 21:20:18 qPjnEgAD
背景含めて全部まとめて動かすってこと?
577:名前は開発中のものです。
08/08/01 23:31:27 GtdXG6pu
>576
int gHnd=LoadGraph("0002.jpeg"); //0002.jpegは50*50pixelの画像ファイル
int gHnd2 = MakeGraph(100,100);
DrawGraph(300,300,gHnd,true);
DrawExtendGraph(0,0,100,100,gHnd,true);//縦横2倍に拡大して描画
GetDrawScreenGraph(0,0,100,100,gHnd2);//描画されたgHndを読み取る
DrawTurnGraph(100,0,gHnd2,true);//左右反転して表示
めちゃくちゃなことをしているのは分かっています…
578:名前は開発中のものです。
08/08/02 00:38:21 AuP8vB/z
int gHnd = LoadGraph("0002.jpeg");
DrawRotaGraph(50, 50, 2, 0, gHnd, true, true); // 2倍拡大+透過+反転
こういうことかな
579:名前は開発中のものです。
08/08/02 00:52:28 LP1XDt9q
>578
ありがとうございます!
リファレンスの読み込み不足だったようですね…お恥ずかしい限りです。
580:名前は開発中のものです。
08/08/02 02:49:35 yuB/nvf2
自分も>>575の方と似たような事で詰まってるのでお力添えを…。
URLリンク(www1.axfc.net)
と、縦横別倍率で拡大、と、画像の回転を両立させたいんです。
これが背景でしたら>>577と同様の方法で、
DrawExtendGraph→GetDrawScreenGraph→DrawRotaGraphといけそうですが、
エフェクトで使いたい処理なので、既に背景などが描画されているメイン画面は使えないという状況です。
こういった場合は何か作業領域などを作るしか方法は無いのでしょうか…?
581:名前は開発中のものです。
08/08/02 09:44:54 2jU8Dntq
DrawModiGraph
582:名前は開発中のものです。
08/08/02 09:52:10 ejRXzIue
最悪DrawPolygon3Dでどうとでもできるわな
583:名前は開発中のものです。
08/08/03 02:27:17 iWpnfRGq
>>581
あぁ、こんな使い方も出来たんですね…。知識不足ですみません。
これで何とか考えた通りに出来ました。本当にありがとうございます。
584:名前は開発中のものです。
08/08/03 11:03:48 KmvncGNt
DXライブラリ、サンプルプログラムのスクロール基本なんですが
URLリンク(homepage2.nifty.com)
手計算だとどうしても描画用マップチップの配列(座標)が0,0からスタートしてくれません
プログラムは当然ちゃんと想定どおり動いてるのですが、
プレイヤーの初期位置Xが2、Yが2状態で計算すると
DrawMapChipNumX は 11
DrawMapChipNumY は 8
MapDrawPointX は -3
MapDrawPointY は -2
となり、マップの描画を決めるループを手繰っていくと、i が3以上、j が4以上にならないと条件を満たさず、
その条件で計算すると、MapData[ i + MapDrawPointY ][ j + MapDrawPointX ] は[1][1]が代入されると思うのですが・・・
こちらの計算違いではあるのですが、どこがおかしいのか分からないので間違ってるところを教えてください
585:名前は開発中のものです。
08/08/03 12:08:48 S+BsW+Rs
if( j + MapDrawPointX < 0 || i + MapDrawPointY < 0 ) continue; // 描画しない
if( MapData[ i + MapDrawPointY ][ j + MapDrawPointX ] == 0 ) DrawBox();
↓
if( a < 0 || b < 0 ) continue; // 描画しない
if( MapData[ b ][ a ] == 0 ) DrawBox();
どうみても最初の描画は MapData[ 0 ][ 0 ] ですね
586:名前は開発中のものです。
08/08/03 13:09:28 KmvncGNt
回答ありがとうございます、しかし、頭がこんがらがってきました
if( a < 0 || b < 0 ) continue; // 描画しない
これって人間の言葉にすると「aがゼロより小さい、または、bがゼロより小さいときは描画しない」ですよね?
ということは、ループの中で a=0 b=0 が与えられたとする条件を満たしてないと思うのですが・・・
自分が間違ってそうな箇所はわかりました、、どうやら論理演算子と関係演算子をもう一度勉強しないとだめみたいですね
587:名前は開発中のものです。
08/08/03 13:22:36 s3YJPvG5
>ループの中で a=0 b=0 が与えられたとする条件
意味が良くわからないんだが、
どこで与えられた
何のための条件?
588:名前は開発中のものです。
08/08/03 13:46:05 rlVyTzUB
>>213
ありがとうございます
大体解りました
589:名前は開発中のものです。
08/08/03 13:48:13 KmvncGNt
>>587
× (a=0 b=0)が与えられたとする条件
○ (a=0 b=0)が与えられたとしても、条件(を満たしていない)
ですね、編集してるうちに変な文章になってしまってました、すみません
どこで与えられた、というのは多重ループの中で
i + MapDrawPointY //*1
j + MapDrawPointX //*2
を計算した結果だと思っていただければ・・・最終的に欲しい答えが
MapData[ 0 ][ 0 ]
ですから、一行前のエリア外を描画しないための制御文、
if( j + MapDrawPointX < 0 || i + MapDrawPointY < 0 ) continue; // 描画しない
のところで、*1も*2もいずれも0の状態で条件分岐を通過してくれないといけないわけですが、
そこのところが自分の理解では「通過しないはず」なので困っていました
590:名前は開発中のものです。
08/08/03 14:32:28 S+BsW+Rs
if (a < 0 || b < 0) continue;
↓
if (0 < 0 || 0 < 0) continue;
↓
if (false || false) continue;
↓
if (false) continue; // continueは実行されますか?されませんか?
591:名前は開発中のものです。
08/08/03 14:41:23 KmvncGNt
>>590
解りやすい解説ありがとうございます、
自分の誤解が招いた疑問が氷解しました・・・
592:名前は開発中のものです。
08/08/03 15:10:05 Q1RwoYf2
敵を少しでも多く表示しようとするとカクカクになるw
593:名前は開発中のものです。
08/08/03 15:24:02 0ZCECk8O
>>592
解像度(スクリーンの大きさ)を1/4(縦、横ともに半分)にするのです。
それだけで、貴方のアプリケーションの速度は劇的に改善するでしょう。
と言ってみるテスト。
毎回ファイル読み込みとかしてないか注意。
594:名前は開発中のものです。
08/08/03 15:33:45 s3YJPvG5
>>592
このスレの>>478あたりから読み直してみるといい。
595:名前は開発中のものです。
08/08/03 22:37:42 Q1RwoYf2
>>594
悪い、同人物だ。
今度こそはメモリから読み込んでいるのにカクカクだぜ
596:名前は開発中のものです。
08/08/03 22:45:50 +Yq3eKTl
メモリから読み込む、ってのがループ内だと意味ないんだぜ?
つーかソースどころか状況もわからんのに答えられるわけなかろう。
あてずっぽうのアドバイスが欲しいのか?
あてずっぽう考えるのだって大変なんだぜ?
597:名前は開発中のものです。
08/08/03 22:47:35 xylQeBNi
処理ごとの速度を計測すれば、どこに時間食ってるかわかるし、
解決策も自ずと見えてくる
598:名前は開発中のものです。
08/08/04 00:33:29 0yRulxuI
>>596
あーもしかしたらそうなってるかも。
大まかなソース↓
(enemy_move)
typedef struct{
int enx; //敵 x座標
int eny; //敵 y座標
int flag; //フラグ
int counter; //カウンター
} ENEMY;
ENEMY move01 = {100,1,0};
(略)
void enemy_move_02(){ //x100から左寄りのsin波移動
move02.enx+=sin(PI*move02.eny/80)*5;
move02.eny+=1.5f;
enemy_img = LoadGraph("date/img/enemy.bmp");
DrawGraph( move02.enx , move02.eny , enemy_img , TRUE ) ;
DeleteGraph( enemy_img ) ;
}
↑こんな感じのコードをexternでmain.cppの方で動かしてる、main.cppではwhileでこれらをループしてて、エスケープを押すとブレイクするようになってる。
竜神録のサイトを参考にして丸写しじゃツマランから自分で考えて作ってるんだけど、難しいな。
599:名前は開発中のものです。
08/08/04 00:38:34 7CBzeKTD
それだと動かすたびに読み込んで削除してを一々やってる
ゲームループの前に1回だけ読み込んで不要になったら削除
600:名前は開発中のものです。
08/08/04 00:49:06 0yRulxuI
>>599
となると、while文が入る前にexternなりなんなりで読み込みだけを済ませるほうが良いって事?
というか全部の使う素材は全部ゲームループする前にメモリに読み込ませた方が良いって事だよね?
それだと俺大幅な修正が必要になりそうw
601:名前は開発中のものです。
08/08/04 01:02:17 SorplbiK
>>600
やりたくないんならやらなければ良いよ。学校の授業じゃないんだから。
多分分かってるんだろうけど>>599の言ってる事(内容)は適宜だよ。
修正が必要なら修正するだけだろ
戦わなきゃ現実と
602:名前は開発中のものです。
08/08/04 01:10:24 Vp8LYTR0
>>600
外部ファイルの関数を使うときは、普通はexternを使わないで、プロトタイプ宣言を使うらしいよ。
あと、enemy_imgをNULLで初期化されてるなら、
if ( enemy_img == NULL ) { enemy_img = LoadGraph("date/img/enemy.bmp"; }
という怪しげな応急処置で済ますことも可能。