DXライブラリ 総合スレッド 2008
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/10/25(土) 17:37:53ID:BCFbbKcoGUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。
DXライブラリの詳細ついては
http://homepage2.nifty.com/natupaji/DxLib/
を参照して頂きたい。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
過去スレ:DXライブラリ 総合スレッド
http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
0161名前は開発中のものです。
2008/11/25(火) 22:39:54ID:MBrRa9Zc0162名前は開発中のものです。
2008/11/25(火) 23:02:53ID:EDWbdjkCi < 640/dot
を
i < 160/dot
くらいにまで下げてみる
ぼかすのがゲーム上そんなに大事じゃなかったら
このくらいで妥協するのが一番
0163157
2008/11/26(水) 02:18:18ID:eTjv2Xnvそんなに回数要る?
dotの値がいくら位で何回位描画しているのかとか、コードの意図とかちょっとわからんので
↓とどっちのコードの方が性能良いのかよくわからんけど…
int times = 4;//描画回数:4〜16推奨
int gap = 2;//ギャップ:1〜4推奨。残像拳のような効果を狙うなら大き目に。
SetDrawBlendMode( DX_BLENDMODE_ALPHA , 32 ) ;//描画回数×ブレンド率=128〜256推奨
for (int i = 0; i < times; i++){
DrawGraph( i*gap - times*gap, 0, GHandle, 0);
DrawGraph( times*gap - i*gap, 0, GHandle, 0);
}
0164名前は開発中のものです。
2008/11/26(水) 04:53:23ID:mqCcsZAV本当に速度が必要で、それなりのクオリティーが欲しいなら
LoadSoftImage関数とLoadSoftImageToMem関数を使うといいかもしれない。
自分は近頃、DXライブラリまったく触ってなかったから、どんなもんか
わからんが、説明を読む限りではこっちの関数で処理して
GraphHandleをつけて、表画させる方が高速みたいだし・・・・・
0165名前は開発中のものです。
2008/11/27(木) 05:33:03ID:9lHdy+ssDXライブラリとかの関数を変な使い方すると、めっちゃ重くなったりして(コンパイルエラーが出るわけではない)、
上手く扱わないとたとえ数百行のプログラムでさえ上手く動かないのに
市販されてる3Dゲームとかだとそれこそ想像もつかない量のプログラム書いてると思うんですが
それを全く重くならないように作るというのはまさに神の所業としか思えないんですが・・・
やはり職人的なひとはそれほどすごいってことでしょうか?
それとも単にまだ自分が未熟なだけでしょうか?
なんか抽象的な質問ですみません。
0166名前は開発中のものです。
2008/11/27(木) 07:22:55ID:UFJsiMGy普通に使っている分には問題ないと思うけど…
コード量も関係ないし。
メインのループ(秒間30〜60回くらい回しているとこ)の外で1回やれば済む処理を
ループの中で毎回やってたりしてない?
例えばグラフィックハンドルへの画像の読み込みを毎回やっているとか。
0167名前は開発中のものです。
2008/11/27(木) 12:05:54ID:tLRoJzh6そりゃまぁPCの性能にもよるけど。
市販されてる3Dゲームとかは、俺はヘボプログラマだからそれこそ神の領域にしか思えないけど
同じ市販ゲームでも、すごいグラフィックなのに軽快なのとか、やったらもっさりして重いのとかあるから
そこらへんはプログラマの腕次第でしょ。
凄腕のプログラマは極限まで無駄な処理を省いてるんだと思う。
0168名前は開発中のものです。
2008/11/27(木) 17:02:45ID:HwZNU9zJ0169名前は開発中のものです。
2008/11/27(木) 18:56:41ID:9lHdy+ssなるほどサンクス・・・
確かに無駄に繰り返してるかもしれない・・・。
0170名前は開発中のものです。
2008/11/27(木) 20:46:39ID:GnzSYpCC0171名前は開発中のものです。
2008/11/27(木) 22:41:46ID:LOD/UyCKありがとうございます。
回数がご指摘の通り多すぎました。
>>157のコードと併用して、思っていたぼかしができました。
コードは私の作成したコードと>>157のコードを関数化しただけなので省略させていただきます。
0172名前は開発中のものです。
2008/11/27(木) 22:48:28ID:tLRoJzh6別フォント用意すりゃいいことだが。
0173名前は開発中のものです。
2008/11/28(金) 05:15:28ID:10isJ4oYにしたらドラゴンボールの世界になってワロタ
0174名前は開発中のものです。
2008/11/29(土) 16:25:44ID:BtMciNRd0175名前は開発中のものです。
2008/11/29(土) 22:48:46ID:kaHILOZBいますぐ昔の再放送の刑事ドラマやドラマの
事務所シーンを見るんだ!!!
パソコンのディスプレイあるだろアレみるとわかりやすい
0176名前は開発中のものです。
2008/11/30(日) 02:55:10ID:Kx1+nHAmあれ今見るとなんでそう見えるか理解出来るな
タイヤが逆回転して見えるのとかも
0177名前は開発中のものです。
2008/12/01(月) 09:18:57ID:PQmt2oZjDXライブラリ(3D)で完璧に作ったのと
DirectXで完璧に作ったのだったら動きのサクサクさにどれくらい差が出るのかな?
PCの性能は結構良いのでそれは関係なく
個人的にはマリオ64くらいのクオリティーは出したいと思ってるんだけど
始めての大型ゲームなんで全く想像付かない
0178名前は開発中のものです。
2008/12/01(月) 09:51:01ID:Mqk5OkvC0179名前は開発中のものです。
2008/12/01(月) 10:23:13ID:PQmt2oZj0180名前は開発中のものです。
2008/12/01(月) 16:53:55ID:B+fc1nCX0181名前は開発中のものです。
2008/12/01(月) 16:57:45ID:Mqk5OkvCそのプロセッサ専用のライブラリを熟知してれば
サクサク動くゲームになる
例えばPS2ならEEとかのベクトル計算のためのライブラリの仕様とか
windowsマシンにはそんな計算機能はデフォルトじゃついてないから
どうしてもグラボ依存になる
0182名前は開発中のものです。
2008/12/02(火) 00:02:20ID:zbFv8MtrChangeWindowMode(TRUE);
SetDrawScreen(DX_SCREEN_BACK);
while(ProcessMessage() == 0 && CheckHitKey(KEY_INPUT_ESCAPE) == 0){
ClsDrawScreen();
〜〜
ScreenFlip();
}
}
↑こう書いたとき、〜〜 の部分の処理が毎回変わるモノだった場合でも、よほど〜〜の処理が長くならない限り、
ScreenFlip()があることによって、画面に出力される周期は〜〜の処理時間によらない、と考えていいんでしょうか?
なんか説明下手ですみません・・・。 たとえば、指数関数的に動く物体を作りたいとして、
〜〜の部分を「毎回n=n+1して、x^nの位置に画像を出力」という内容にしたとした場合、
ループが来るたびにnが増えるからx^nの計算の処理が多少だんだん増えていくと思うのですが、
もしその処理時間も画面出力に影響してしまったら、動きが時間の正確な指数関数にならないと思うのですが、
『ScreenFlip()によって、「処理が終わっても、規定時間δtが来るまでは画面出力しない」という仕組みが加わってるので、
処理時間に影響せず一定時間ごとに画面出力される。 ただし、もちろん 処理時間の方がδtを超えてしまったら、重くなるという別の影響は出てくる。』
というものだと解釈していいのでしょうか?
(すみません。アク禁中の代レスなので、返事できないかもしれません。)
0183名前は開発中のものです。
2008/12/02(火) 08:48:55ID:jLo5RDUc本文は読んでいない。
0184名前は開発中のものです。
2008/12/02(火) 08:53:50ID:l3NK/S0H0185名前は開発中のものです。
2008/12/02(火) 09:50:01ID:ptyOGcVX0186名前は開発中のものです。
2008/12/02(火) 21:13:42ID:xSROB0kK0187名前は開発中のものです。
2008/12/02(火) 22:13:19ID:g62jpxUX0188名前は開発中のものです。
2008/12/03(水) 05:14:23ID:Ts8WjI0J#include <stdio.h>
#include <windows.h>
void main (){
int cell=0,jinzo18=2,jinzo17=2,tensinhan=25,seimeiryoku=1;
int hikinobasi=0;
cell+=jinzo17;
for(hikinobasi=0;hikinobasi<30;hikinobasi++){printf("おお\n"); SleepEx(200,TRUE);}
printf("天津飯「まずい17号を吸収しやがった・・・チャオズ俺は死ぬかも知れない\n");SleepEx(2000,TRUE);
printf("セル「天津飯!!雑魚が何をするつもりだ!」\n");SleepEx(4000,TRUE);
printf("天津飯「新気功砲!!ハー」\n");SleepEx(200,TRUE);
printf("セル「(゚Д゚)ぬお!\n");SleepEx(200,TRUE);
while(tensinhan>0){
printf("セル「<`Д´>おのれー」\n");SleepEx(200,TRUE);
printf("天津飯「(; ゚Д゚)ハァー!」\n");SleepEx(500,TRUE);
tensinhan-=seimeiryoku;}
printf("天津飯「化け物め・・・・うう・・・・」\n");SleepEx(5000,TRUE);
printf("セル「むううう」\n");SleepEx(1000,TRUE);
printf("セル「こんな雑魚に足止め食らうとは」\n");SleepEx(4000,TRUE);
cell=jinzo17+jinzo18;
for(hikinobasi=0;hikinobasi<100;hikinobasi++){printf("おお\n"); SleepEx(50,TRUE);}
printf("完全体セル「すばらしい力だ 諸君!!」\n");
SleepEx(10000,TRUE);
}
0189名前は開発中のものです。
2008/12/03(水) 05:38:32ID:ecRDRm37空のサーフェスを作成 → 一旦バックバッファに文字列を描画 → バックバッファから空のサーフェスに文字列の画像を取得
こうして予め文字列を描画しておいたサーフェスから
毎回メイン処理でDrawGraphしているのですが、どうもスッキリしません。
しかもGetDrawScreenGraphの説明にもある通り透過色が使用出来ません。
DXライブラリでは作成したサーフェスに直接描画出来ないのでしょうか?
やりたい事は「同じ文字列を毎フレーム描画する処理を軽くしたい」だけなのですが、
文字グラフィックファイルを用意することは出来れば避けたいので、良い方法があったら教えて下さい1
0190189
2008/12/03(水) 05:45:19ID:ecRDRm37(例えば説明文等の)同一の文字列を毎フレーム描画する処理を軽くしたいが
文字グラフィックファイルを用意する以外で良い方法があったら誰か教えて下さいです。
0191名前は開発中のものです。
2008/12/03(水) 09:09:23ID:Zrkeui/rフォントハンドルを毎回読み込んだりしていない?
0192189
2008/12/03(水) 17:18:45ID:ecRDRm37お返事遅くなって申し訳ありません。
当方の環境ではDrawStringでやった場合のFPSが30くらいでDrawGraphにすると60になりました。
DirectX自体、文字描画にGDIを使っているのでビデオカードで処理できるBitBltの方が高速だと思っていました。数年前の知識ですが。。
低スペックでも快適に動くように作りたいので、DrawStringは極力使いたくないです。
0193189
2008/12/03(水) 17:29:14ID:ecRDRm370194名前は開発中のものです。
2008/12/03(水) 18:07:17ID:o+fnXJLeそれともPC環境が悪すぎる?
俺普通にDrawString使ってるけど別に遅くなった事ないよ?
普通に60FPS出てる。古いノートパソコンで。
最高でまぁ10行程度の表示しかしてないけど。
0195名前は開発中のものです。
2008/12/03(水) 18:30:58ID:JlppSG1I192の知識通り、今も文字列表示は遅いよ。
189の方法が適切だと思うし、他に方法を提示できないのは申し訳ないけど、
少なくとも文字列表示が遅いって前提でレスされると無駄だと思ったので口を出してみた。
0196名前は開発中のものです。
2008/12/03(水) 18:37:18ID:JlppSG1I○少なくとも文字列表示が遅いって前提を否定するレスは無駄だと
0197名前は開発中のものです。
2008/12/03(水) 19:17:52ID:o+fnXJLe別にテストしたわけじゃなくて、普通に使ってるだけなんだが。
文字列表示が遅いってのが前提なら、そもそもグラフィック表示だって遅いだろ。
グラフィック表示が遅いから他の方法はありますか? って質問があったとしたら
まず現在どういう環境でどれだけのグラフィックをどういう方法で表示させてるのか教えろってのは普通の流れだろ?
そこをかっとばしてグラフィック表示処理そのものを早くする方法を考えるのは無駄な話だ。
0198名前は開発中のものです。
2008/12/03(水) 19:27:15ID:zxrZF3eH今与えられた情報だけではなんともいえんな
0199名前は開発中のものです。
2008/12/03(水) 19:41:02ID:RJPTfL79「フォントの変更は行っていない」というのが、フォントの大きさやアンチエイリアス有無の変更は行っているかもしれないとも読める。
0200名前は開発中のものです。
2008/12/04(木) 00:31:01ID:jlPFeEOB文字列表示はグラフィック表示より遅いって常識知らないの?
そこは議論の余地なしだから言ったまで。
それと、テストじゃないなら>>194の報告は不適切。
まあ上記の前提を知らなかった故だからしかたないと言えばしかたないが、ややこしくなるのでなかったほうがよかったな。
情報は少ないが、前提を知っているば容易に共感できるし、解決方法を知っている人ならこの情報量でも回答できるかもしれない。
0201名前は開発中のものです。
2008/12/04(木) 00:33:46ID:GF73/yq8>文字列表示が遅いってのが前提なら、そもそもグラフィック表示だって遅いだろ。
(;^ω^)
0202名前は開発中のものです。
2008/12/04(木) 02:05:10ID:z7drhJqcDXライブラリは文字を描画する前にテクスチャにキャッシュしてるから
同じ文字なら2回目以降はほぼDrawGraphと同じコストで処理は完了する
キャッシュ用のテクスチャは512x512だから画面一杯に異なった文字を
描画するくらいしない限りは文字列描画特有の遅さは発生しないぞ
まあ、毎フレームキャッシュに無い文字を描画したら一般に言うところの
「文字列表示が遅い」ってのに当てはまるけど
0203名前は開発中のものです。
2008/12/04(木) 09:46:46ID:ggjOtlxcみなぎってきた、学校でゲーム作ってくる
0204名前は開発中のものです。
2008/12/04(木) 10:33:56ID:763fKCgi何を言ってるんだ君は。
60FPSで動いてるゲームに、一回のDrawString処理を追加しただけで30FPSにまで落ちたりするか?
普通はしないだろ?
じゃあどういう処理にしてるんだ? っつーレベルの話だぞ?
192が出してる情報はその程度って事。
0205名前は開発中のものです。
2008/12/04(木) 12:47:01ID:GF73/yq8>>202
分からない(・∀・)カエレ!!
0206名前は開発中のものです。
2008/12/05(金) 18:06:46ID:YY5q+8z/どれのことなのでしょうか?
一部のPCだと動かなかったりする時にこれを使えばいいらしいのですが……。
リファレンスを見た限りそれっぽいのがありませんでした。
0207名前は開発中のものです。
2008/12/05(金) 18:19:39ID:MN0oAg79ttp://www.dkut.flnet.org/dxlibwiki/?3D%B5%A1%C7%BD%A4%F2%BB%C8%A4%A6%A4%AB%A4%C9%A4%A6%A4%AB%A4%F2%A5%E6%A1%BC%A5%B6%A1%BC%A4%CB%C1%AA%C2%F2%A4%B5%A4%BB%A4%EB
0208名前は開発中のものです。
2008/12/05(金) 20:49:20ID:YY5q+8z/ありがとうございます。
SetScreenMemToVramFlag( FALSE );
と、
SetUse3DFlag( FALSE );
を使ったらよさそうなのでこの二つを使ってみようと思います。
0209名前は開発中のものです。
2008/12/06(土) 03:56:27ID:5bnbt+Lt垂直同期を使って処理していれば僅かな処理の遅さでFPSは半分になることがある
そしてGDIは遅い
>>189はDrawStringを使用せずに同等の文字描画処理をする方法を模索しているであって
デバッグをしてくれと言っているわけじゃないんだから君がムキになるのは頓珍漢な話
俺を含め解決策が分からない初心者が回答することが間違い
0210名前は開発中のものです。
2008/12/06(土) 04:17:22ID:MshHJhkd>DXライブラリでは作成したサーフェスに直接描画出来ないのでしょうか?
と明確に聞いてるぞ。
それを初心者が関係ない知ったか話をしてるとしか見えない。
「俺は平気だよ?」とか言う話もいらないと思うww
>>202もヒントになると思うけど多分新しい文字列を頻繁に表示しようとしてるんじゃないかな。
毎フレーム更新される数値を表示するって事も多いと思うし。
0211名前は開発中のものです。
2008/12/06(土) 06:11:31ID:VA5mVjgv数字ゲームとかあれ作ると面白そう
0212名前は開発中のものです。
2008/12/06(土) 09:55:12ID:DCsCuBVu0213名前は開発中のものです。
2008/12/06(土) 11:21:34ID:gOAp6PdOまあ任意のオフスクリーンバッファに描いてそれを転送したい、というのはわかるが
できる機能を追加するかDXライブラリをやめるしかないのでは。
0214名前は開発中のものです。
2008/12/06(土) 16:48:54ID:KujsLoK9公式などにクリックイベントのコードがなかったのでここで質問させてください
0215名前は開発中のものです。
2008/12/06(土) 17:16:43ID:t9JSHoeE↑で描画すると30フレームあたりまで落ちるんですが、SetWaitVSyncFlagをFalseにしてても同期するってあるんでしょうか?
待機を16200にすると60フレームになるので、同期でひっかかってるんだと思うのですが……
0216名前は開発中のものです。
2008/12/06(土) 17:19:10ID:KujsLoK90217名前は開発中のものです。
2008/12/06(土) 20:30:15ID:JBa6ugiY0218215
2008/12/07(日) 18:55:49ID:OyZdJ9xq0219名前は開発中のものです。
2008/12/08(月) 00:25:32ID:2qR4Oo16C言語というより、DXライブラリ言語でのプログラミングという印象を受けました。
DXライブラリを使ってプログラミングする場合は、
Cのほうは入門書を一通り読んだだけの知識でよくて、
あとはDXライブラリの使い方をきちんとやるほうがいいんですよね?
0220名前は開発中のものです。
2008/12/08(月) 00:31:03ID:A0APKyuo平行して勉強しなはれ。
0221名前は開発中のものです。
2008/12/08(月) 00:55:25ID:FYgRMyd9もろCで作ってるよ
printfが絵を表示する関数になるだけ
0222名前は開発中のものです。
2008/12/08(月) 03:17:20ID:tsVxmfWH「C言語 = printfやscanf、fopen等の標準関数」だと思ってるんならそれは間違いだ
0223名前は開発中のものです。
2008/12/08(月) 03:37:47ID:ghLgcWkzそれでいいと思うよー。
Cの文法なんて覚える事少ないし、入門書片手に取り掛かっちゃえば大丈夫。
今後も、プログラミングで何かを作る時、基本的にDXライブラリのような、外部のライブラリの使い方を覚えるって作業が大半になるよ。
入門書に書いてあるstdio.hのprintfみたいな標準関数を覚えるみたいに。
0224名前は開発中のものです。
2008/12/08(月) 11:27:49ID:tq0zLS+0>>>202もヒントになると思うけど多分新しい文字列を頻繁に表示しようとしてるんじゃないかな。
>毎フレーム更新される数値を表示するって事も多いと思うし。
それこそ仕様を見直せとしか言いようがないようなw
毎フレーム更新する数値や文章ならプレイヤーに全文しっかり読ませるためものじゃないだろうし。
0225名前は開発中のものです。
2008/12/08(月) 18:07:49ID:ofH1nP7I0226名前は開発中のものです。
2008/12/08(月) 18:55:26ID:dZklSLE80227名前は開発中のものです。
2008/12/08(月) 20:50:58ID:vtoynrkC60フレーム固定のシューティングを作ろうと思ったんですが
公式をみると「グラフィックがぶれがひどくなる」と書いてあって
ttp://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N13
で、実際にサンプル試してみたら
確かに時々ひっかかる感じが。
これって改善はできないものなんでしょうか?
0228名前は開発中のものです。
2008/12/08(月) 20:56:58ID:a6vLxw2w0229名前は開発中のものです。
2008/12/09(火) 01:42:49ID:osPjvukMint Time; を
LONGLONG Time; に、
Time = GetNowCount(); を
Time = GetNowHiPerformanceCount(); に
while( GetNowCount() - Time < 17) {} を
while (GetNowHiPerformanceCount() - Time < (1000000 / 60)) {} に
書き換えてみたら?
0230名前は開発中のものです。
2008/12/09(火) 13:46:02ID:uZqK3QytRPGやアドベンチャーゲームなら
1文字ずつゲーム内Windowに描画され、ゲーム内Windowごと表示非表示を切り替えられるって仕様は普通に有るでしょう
0231名前は開発中のものです。
2008/12/09(火) 15:29:12ID:hNxQdCPd文字表示ぐらいしかないと思うけど・・・
0232名前は開発中のものです。
2008/12/09(火) 15:52:37ID:R5xGo07t前はあったはずなんだが。
0233名前は開発中のものです。
2008/12/09(火) 17:32:59ID:PL50HxGw「スクリプトプレーヤー」の事じゃないかな。
0234名前は開発中のものです。
2008/12/09(火) 18:26:23ID:hNxQdCPdいきなりスクリプトのソースみろとか言われてもなにがなにやらって感じ
0235名前は開発中のものです。
2008/12/09(火) 19:12:36ID:PIQiSLzg見てもわかるの?
という疑問が湧く。
同じ動きをするものを自分で書けるくらいの技量がなければ結局読めない気がする。
他人のソース読むのが超苦手で自分で書いた方が早い俺限定の話だが。
0236名前は開発中のものです。
2008/12/09(火) 19:35:05ID:aLvm7Uo6アルゴリズムは同程度の技量がないと読めないけど、設計はそんなことないよ。
スクリプトプレイヤーのソース見たけどちょっと酷いな。
マジックナンバー、関数長すぎる、グローバル変数使いまくりetc...
たしかにこれ読めとか言われても俺も困る。
自作2Dライブラリ作ってたんだが、画像系の実装が終了したところで
面倒になってきたんでDXライブラリを使うことにした。おまいらよろしく。
0237名前は開発中のものです。
2008/12/09(火) 20:33:33ID:PIQiSLzgああ確かに設計は読みたいかも。
うまい人のクラス構成とかはみてみたい。
0238名前は開発中のものです。
2008/12/09(火) 20:44:39ID:HfON+uiV表面だけ見れば理解できるよね
0239名前は開発中のものです。
2008/12/09(火) 20:59:26ID:MCEWLRF6すいません、内部処理は一定化したかったので・・
>>229
ありがとうございます!
引っかかりが無くなりました。
タイマーの精度の問題だったみたいですね。
0240名前は開発中のものです。
2008/12/10(水) 15:43:30ID:LwDc2Tc0>>221
>>222
>>223
printfなどが関数だということを意識していませんでした。
まさに、C言語=標準関数のつもりで勉強していました。
外部ライブラリを使うのだから、それから提供される関数の使い方を勉強するのは当たり前ですね。
プログラミングに対する疑問が少し解けました。どうもありがとうございました。
0241名前は開発中のものです。
2008/12/11(木) 09:38:29ID:oww0q0NNループ表示する背景の一部分だけを拡大表示したいです。
0242名前は開発中のものです。
2008/12/11(木) 10:38:54ID:qrB4r20jそれをしてから拡大表示させればいいんじゃないかな。
前提条件として矩形範囲のみって事になるけど。
0243名前は開発中のものです。
2008/12/11(木) 11:00:28ID:oww0q0NNなるほど、ありがとうございます。矩形なのでその辺は大丈夫です。
でもアクションゲームみたいに、リアルタイムにバックグラウンドをスクロールさせつつ、
拡大率を変えてバックグラウンド表示するのはその方法ではコストが掛かり過ぎて無理なようですね。
DrawExtendGraphの描画元矩形指定関数があれば一発なのに><
0244名前は開発中のものです。
2008/12/11(木) 11:23:00ID:qrB4r20jそれじゃ無理だね。
それならいっそ、
背景を普通の大きさで書く → 画面の描画範囲を設定(SetDrawArea) → 背景を拡大して書く
ってやってみるのはどうだろう。
背景を二回描くから、やり方によってはコストかかるけど……。
0245名前は開発中のものです。
2008/12/11(木) 12:23:15ID:Otp3maXe0246名前は開発中のものです。
2008/12/11(木) 12:49:25ID:oww0q0NNそうですそうです、元画像の一部分を拡大表示したいんです。
>>245
おお!ありがとうございます。そんな関数があったんですねw
面倒でも自分でDxLib.hをチェックしないと駄目ですねw
0247名前は開発中のものです。
2008/12/12(金) 18:14:48ID:dqaLLhhf800 x 600 ウィンドウモードで作っているんですが
2Dゲームは 640 x 480 が基本だと聞きました。
800x600だと何か不都合でも起こるんでしょうか?
0248名前は開発中のものです。
2008/12/12(金) 19:08:10ID:e0uVhp4S0249名前は開発中のものです。
2008/12/12(金) 20:15:13ID:dqaLLhhf800x600だと特定の環境ではちらつきが酷いとかだったら嫌だなぁと思いまして
0250名前は開発中のものです。
2008/12/12(金) 20:24:18ID:yokHYtBf処理速度の問題とユーザの環境の問題
ちなみにカラーモードも256色パレットモードが基本だった
しかしそれは過去の話
今はPCのスペックは十分だし、800*600の画面モードの無いPCの方が少ないと思うから問題ないかと
0251名前は開発中のものです。
2008/12/12(金) 21:25:42ID:aXKygAOwCRT使いなんでわからないんだけど
液晶の場合、画面サイズに合わない画面モードの表示ってどうなるの?
1)全画面に拡大されてぼやける
2)表示分だけ使われて余白は黒塗りになる
0252名前は開発中のものです。
2008/12/12(金) 21:28:59ID:8ZHcqCMQA.液晶の設定しだい
0253名前は開発中のものです。
2008/12/12(金) 22:00:48ID:J3zydYCSうまく言えないんだけど
player.cpp内でint宣言をして、void player()で増減させる。
そして
「enemy.cpp内」で「player.cppのvoid player()」で増減したint変数を使用して作りたい判定があるんだけど。
こういうのってやっぱり出来ないのかな?
0254名前は開発中のものです。
2008/12/12(金) 22:09:20ID:r3WCUutT0255名前は開発中のものです。
2008/12/12(金) 22:12:35ID:dqaLLhhfenemy.cppの冒頭にextern宣言すれば判定にも使えるようになるよ
0256名前は開発中のものです。
2008/12/12(金) 22:19:36ID:J3zydYCSああそれ忘れてたww
おもいっくそ素材ファイルの読み込みで使ってたのに
ありがと、助かった
0257名前は開発中のものです。
2008/12/12(金) 22:34:39ID:ztObze9Yint i;
void player(){ i += 1; }
-- enemy.cpp --
extern int i;
void enemy(){ if(i) ・・・ ;}
0258名前は開発中のものです。
2008/12/12(金) 22:49:50ID:aXKygAOw即レスサンクス。
じゃあプログラムする側としては
あんまり気にしても意味無いんだ・・
勉強になりますた。
0259名前は開発中のものです。
2008/12/12(金) 23:04:32ID:e0uVhp4S最近流行りの低価格ノートPCとかだと、どんな感じなんだろう?
縦600くらい?
0260名前は開発中のものです。
2008/12/13(土) 01:45:20ID:E/1bppJyDeleteGraph( enemy01 ) ;
}
else if(hitS < hit ){
PlaySoundMem( hit_test , DX_PLAYTYPE_BACK );
shotflag = 0;
enemy01_Life -=1;
}
このコードで、最後のenemy01_Life -=1の判定を一回だけ判定場合ってどうすればいいの?
ダメージ判定だけがどうしても残ってしまう
■ このスレッドは過去ログ倉庫に格納されています