DXライブラリ 総合スレッド その12
レス数が1000を超えています。これ以上書き込みはできません。
0001名前は開発中のものです。
2012/02/23(木) 21:35:32.53ID:Si08WDH/ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
http://homepage2.nifty.com/natupaji/DxLib/
【過去スレ】
DXライブラリ 総合スレッド
http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
DXライブラリ 総合スレッド 2008
http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
DXライブラリ 総合スレッド その3
http://pc11.2ch.net/test/read.cgi/gamedev/1238429676/
DXライブラリ 総合スレッド その4
http://pc11.2ch.net/test/read.cgi/gamedev/1249822550/
DXライブラリ 総合スレッド その5
http://pc11.2ch.net/test/read.cgi/gamedev/1259912953/
DXライブラリ 総合スレッド その6
http://hibari.2ch.net/test/read.cgi/gamedev/1267108154/
DXライブラリ 総合スレッド その7
http://hibari.2ch.net/test/read.cgi/gamedev/1286180687/
DXライブラリ 総合スレッド その8
http://hibari.2ch.net/test/read.cgi/gamedev/1301818631/
DXライブラリ 総合スレッド その9
http://hibari.2ch.net/test/read.cgi/gamedev/1310904069/
DXライブラリ 総合スレッド その10
http://hibari.2ch.net/test/read.cgi/gamedev/1313655495/
DXライブラリ 総合スレッド その11
http://toro.2ch.net/test/read.cgi/gamedev/1322844235/
0910名前は開発中のものです。
2012/05/24(木) 00:14:49.78ID:OTDx3X8F0911名前は開発中のものです。
2012/05/24(木) 00:37:40.90ID:YnP/Ncq+全部アルファブレンドONで描画したほうがいいんだな。
マップタイルだけOFFとか。
0912名前は開発中のものです。
2012/05/25(金) 00:25:55.82ID:rg8OJbTJ頭やわらかいねきみ
0913名前は開発中のものです。
2012/05/25(金) 20:12:45.46ID:9VSOgWxyビットマップでフォントを用意してそれを指定の色で描いたり、
そのシューティングゲームでダメージを受けて一瞬#fffだか#f00だかのシルエットになるときとか使い道があった
0914名前は開発中のものです。
2012/05/27(日) 08:25:16.10ID:/36TiFsh0915名前は開発中のものです。
2012/05/27(日) 11:50:59.78ID:6LUkVEJp0916名前は開発中のものです。
2012/05/27(日) 16:01:26.83ID:jTp1UMkCゲーム外でツールで生成する派とかもいるかもしれんな
要はゲームで実現できればいいし
0917名前は開発中のものです。
2012/05/28(月) 03:51:16.27ID:xvuBoj/+0918名前は開発中のものです。
2012/05/28(月) 05:01:17.17ID:fvu7wQ0B// r, g, bの色を透過色とみなした白マスクを下に繋げて作成。alphacheckを1にするアルファ値0も透過する。
// AllNum以降はLoadDivGraph系と同じ(ただし複製後の画像を想定して指定すべし)。
int LoadDivGraphWhiteMaskDup(const wchar *infile, int r, int g, int b, int alphacheck,
int AllNum, int XNum, int YNum, int SizeX, int SizeY, int *HandleBuf) {
int inhandle = LoadSoftImage(infile);
int w, h;
GetSoftImageSize(inhandle, &w, &h);
int outhandle = MakeARGB8ColorSoftImage(w, h*2);
BltSoftImage(0, 0, w, h, inhandle, 0, 0, outhandle);
for (int y = 0; y < h; y++) {
for (int x = 0; x < w; x++) {
int tr, tg, tb, ta;
GetPixelSoftImage(inhandle, x, y, &tr, &tg, &tb, &ta);
if ((tr == r && tg == g && tb == b) || (alphacheck && ta == 0))
DrawPixelSoftImage(outhandle, x, y+h, 0, 0, 0, 0);
else
DrawPixelSoftImage(outhandle, x, y+h, 255, 255, 255, 255);
}
}
int outgraph = CreateDivGraphFromSoftImage(outhandle, AllNum, XNum, YNum, SizeX, SizeY, HandleBuf);
DeleteSoftImage(inhandle);
DeleteSoftImage(outhandle);
return outgraph;
}
0919名前は開発中のものです。
2012/05/28(月) 06:51:35.69ID:mvM7MJU+色々サイトとか回ってみたけど中々分からない。
誰か教えてくれると幸いです。
0920名前は開発中のものです。
2012/05/28(月) 08:13:51.39ID:fvu7wQ0B0921名前は開発中のものです。
2012/05/28(月) 08:21:05.78ID:IVkwT0S2v=gt
速度の上限を定める
落下しすぎたら戻す
ジャンプで難しいのは着地だけ
どうしてもダメなら最初は加速させずに等速ジャンプでいいと思うよ
押してる間だけ上昇、離したら下降とかね
0922名前は開発中のものです。
2012/05/28(月) 08:40:00.71ID:c9K0Nu9s次の壁は坂道
0923名前は開発中のものです。
2012/05/28(月) 08:52:55.29ID:6YRysOIW0924名前は開発中のものです。
2012/05/28(月) 10:20:42.61ID:rvNFgryvマップチップ並べた床作らなくても地面にする座標決めればキャラの動きは作れる
>>919
てかDXライブラリの公式ページにサンプルあるじゃん
http://homepage2.nifty.com/natupaji/DxLib/dxprogram.html
2.ジャンプ処理
0925名前は開発中のものです。
2012/05/28(月) 10:21:04.96ID:90lU+KxT0926名前は開発中のものです。
2012/05/28(月) 10:32:44.25ID:6YRysOIWさらに言うなら、昔のゲームみたいに(等加速度でなくて)等速直線運動だとしてもジャンプはジャンプだ。
0927名前は開発中のものです。
2012/05/28(月) 11:25:52.97ID:uXHACx8T厚さ1の床をどうやって判定するんだ
0928名前は開発中のものです。
2012/05/28(月) 11:28:20.73ID:9WGXBrjP0929名前は開発中のものです。
2012/05/28(月) 11:53:09.06ID:aojI3MeF{
y++;
if(isAtari())
{
y--;
}
}
0930名前は開発中のものです。
2012/05/28(月) 11:59:48.69ID:b7wzF1nG>>902
これで真っ白な画像を得られました。ありがとうございます。
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int) {
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen(DX_SCREEN_BACK);
int x = 0;
int Handle = LoadGraph("char.png");
while (ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0) {
SetDrawBright(255, 255, 255);
SetDrawBlendMode(DX_BLENDMODE_INVSRC, 255);
DrawGraph( x, 100, Handle, TRUE );
SetDrawBlendMode(DX_BLENDMODE_ADD, 255);
DrawGraph( x, 100, Handle, TRUE );
SetDrawBlendMode( DX_BLENDMODE_NOBLEND , 0 ) ;
x = x + 1;
}
DxLib_End();
return 0;
}
ブレンドモード切替の負荷の重さにはびっくりしたので
ゲームの最初にこれで白い画像を作って表示することにしました。
0931名前は開発中のものです。
2012/05/28(月) 13:04:49.57ID:b7wzF1nGちょっとだけ直して動きました。
ttp://www1.axfc.net/uploader/Sc/so/349786
使えそうです。ありがとうございます。
0932名前は開発中のものです。
2012/05/28(月) 14:53:28.29ID:WnycGPJc横スクロールのアクションゲームを作ってみたいんですが
0933名前は開発中のものです。
2012/05/28(月) 15:02:03.10ID:jUTN7lVOみたいなやつ
0934名前は開発中のものです。
2012/05/28(月) 20:02:07.96ID:GTiho4az俺の結論として本は要らない
Dxライブラリは覚えること余りないから必要なのはサンプルでしょ
ネットで他言語でもなんでも見たらいいと思う
0935名前は開発中のものです。
2012/05/28(月) 21:06:10.30ID:51O+Wupn次に何を勉強すればいいか道が見えてくるかもね
0936名前は開発中のものです。
2012/05/29(火) 01:46:18.53ID:L7O/xZHNそんな半端な場所に床を設置すんな
0937名前は開発中のものです。
2012/05/29(火) 01:50:59.85ID:BLevQqxOすげーな
0938名前は開発中のものです。
2012/05/29(火) 02:00:46.52ID:ajD2ZMcHあれ買うなら東方もどきのサイトの方が1000倍マシ
0939名前は開発中のものです。
2012/05/29(火) 16:38:49.14ID:0ZCTZE5+DXってのはDXライブラリのことを指してるのかな?
DXライブラリ自体は画像の描画や音楽の再生、キー操作の取得なんかを簡単にできるものだと思えばいい。
リファレンスを読めばわかるから、書籍など全く必要ない。
問題は各ゲーム(シューティング、横スクロールアクション、落ち物、パズル、etc...)の構造なんだけど、
この辺は当然ながら言語もDXライブラリも全く関係ないから、ひたすらググればいいと思う。
もちろんシューティングに特化した書籍なんかも売ってるとは思うから、
どうしても本がいいならそういうのを買えばいいと思うよ。
0940名前は開発中のものです。
2012/05/30(水) 23:01:39.68ID:sRt+VGOOhttp://www.youtube.com/watch?v=kN29n-Gnv6A&feature=related
これ見るとゲームのバグのほとんどが地形かキャラ同士の変な判定でめり込むことによって起きてるんだね
横アクションを作るとき注意ですね
0941名前は開発中のものです。
2012/05/30(水) 23:29:00.29ID:RKMJ5hGwしゃがみジャンプで天井ぶつかったら吹っ飛んだとか、
ブロックとブロックの間に挟まって吹っ飛んだとか、
よくある光景ですよね
0942名前は開発中のものです。
2012/05/30(水) 23:38:12.13ID:0DxYP3XJ0943名前は開発中のものです。
2012/05/31(木) 00:16:28.28ID:X2kmab9H0944名前は開発中のものです。
2012/05/31(木) 05:19:34.98ID:LR2h9MNT0945名前は開発中のものです。
2012/05/31(木) 07:52:32.75ID:AnVA06dY0946名前は開発中のものです。
2012/05/31(木) 08:24:03.27ID:xNmKjSKJ0947名前は開発中のものです。
2012/05/31(木) 12:26:15.74ID:vux5Qb/R0948名前は開発中のものです。
2012/05/31(木) 14:24:38.29ID:LR2h9MNTRelease だと駄目みたいだけど
0949名前は開発中のものです。
2012/05/31(木) 14:59:29.76ID:AjXSR+Ssスピードは同じでメモリがいっぱいとれるとかかな?
0950名前は開発中のものです。
2012/05/31(木) 15:35:46.17ID:WauJ0XKH0951名前は開発中のものです。
2012/05/31(木) 18:52:53.60ID:M5YppKNB0952名前は開発中のものです。
2012/05/31(木) 20:19:50.42ID:qSE9w4FD超広大なシムシティでも作るのか?
0953名前は開発中のものです。
2012/05/31(木) 23:26:55.30ID:aJXCPyxU0954名前は開発中のものです。
2012/06/01(金) 00:54:10.39ID:2QrPWAJY0955名前は開発中のものです。
2012/06/01(金) 12:25:56.05ID:MdBdhEQEマインクラフトみたいなマップで
1ブロック4byte 256*256*256*4で65M
1Gで16マップ分4Gで64マップ分
使おうと思ったらすぐじゃね?
0956名前は開発中のものです。
2012/06/01(金) 13:02:28.40ID:xFvEu29Tその64マップ分をメモリに展開しておく理由がないだろう
0957名前は開発中のものです。
2012/06/01(金) 14:29:24.03ID:t4LYu1LPリアルタイムに全タイルを更新するとしたらCPUもハイスペック、
マルチスレッドで効率を落とさないゲーム仕様に工夫する必要がある。
0958名前は開発中のものです。
2012/06/03(日) 19:27:01.91ID:ErglFbvU俺はそれだけの為にx64lib使ってる
んで配布するときはx86libでビルド
0959名前は開発中のものです。
2012/06/05(火) 08:00:34.11ID:5hghPcJi0960名前は開発中のものです。
2012/06/05(火) 08:03:10.54ID:pHV+t2m+0961名前は開発中のものです。
2012/06/05(火) 12:59:37.44ID:s+a7RtxRC99未対応でも、//のコメントアウトやら関数途中での変数宣言が出来るコンパイラは多いけどね・
0962名前は開発中のものです。
2012/06/05(火) 17:33:28.60ID:NAR8NRh/使えるのはFormatの方だけか
0963名前は開発中のものです。
2012/06/05(火) 21:43:16.29ID:rfga7AAZstd::stringの変数に代入して、c_str()メソッドで使ってる
0964名前は開発中のものです。
2012/06/05(火) 22:32:10.63ID:rQvv9pU4でも分かりやすいし俺はFormatだけでいいや…
0965名前は開発中のものです。
2012/06/07(木) 06:57:25.54ID:/OyZ/OLF0966名前は開発中のものです。
2012/06/07(木) 07:51:26.78ID:Jv6ss4Bc0967名前は開発中のものです。
2012/06/07(木) 10:48:51.49ID:BJcvBZeM0968名前は開発中のものです。
2012/06/07(木) 21:30:58.85ID:Kz7+CKZO0969名前は開発中のものです。
2012/06/07(木) 21:34:42.53ID:Krec27v1三日月作って表示するだけでいいのかな?外側にいくほど透明度を高くしたい
事前加工とか必要だろうか
0970名前は開発中のものです。
2012/06/07(木) 21:47:47.85ID:+N/ekzeb0971名前は開発中のものです。
2012/06/08(金) 03:14:22.43ID:9m0hwklYDirectX SDKはいらない。
0972名前は開発中のものです。
2012/06/08(金) 07:58:58.18ID:q3HoT9+Z透明にするのは内側じゃね?
0973名前は開発中のものです。
2012/06/08(金) 12:17:16.75ID:DZv8KWRM0974名前は開発中のものです。
2012/06/08(金) 13:04:25.61ID:c9EZhUJi0975972
2012/06/08(金) 14:04:03.64ID:q3HoT9+Zどういうエフェクトを想定しているかで、三日月の内側と外側のどちらを透明にするか決まるのかもしれない。
http://gmdev.xrea.jp/st/up/775.jpg
そういえばそろそろ次スレか。
0976名前は開発中のものです。
2012/06/08(金) 14:48:43.82ID:j/2x2bX+0977名前は開発中のものです。
2012/06/08(金) 16:39:50.77ID:SmPCWrti0978名前は開発中のものです。
2012/06/08(金) 17:13:50.81ID:T8O66D4gあとはレベル補正でなんとかなるかな?
0979名前は開発中のものです。
2012/06/08(金) 17:28:02.08ID:vKWIOWMy0980名前は開発中のものです。
2012/06/08(金) 21:34:17.48ID:zMZgxXcwそういう内側なのか
ドーナツ状にする方かと思ってた
0981名前は開発中のものです。
2012/06/09(土) 02:23:31.12ID:PDT8+LE/しょっぼー。しょぼしょぼりんwwww
0982名前は開発中のものです。
2012/06/09(土) 08:23:21.97ID:vgner5vs0983名前は開発中のものです。
2012/06/09(土) 12:51:13.15ID:dFKH+tB50984名前は開発中のものです。
2012/06/09(土) 12:53:12.28ID:0k6AwNTO0985名前は開発中のものです。
2012/06/09(土) 14:41:45.94ID:x2dTOO+E0986名前は開発中のものです。
2012/06/09(土) 17:08:19.76ID:6h//v8O2別ライブラリで分けても良さそうだけどね。
0987名前は開発中のものです。
2012/06/10(日) 12:46:20.13ID:ER7Sq7YOSaveDrawScreenを使って640*480の2枚の画像にしてるのですが
この画像を1枚にあわせて保存するにはどうすればいいでしょうか
毎回ペイント開いて合わせるのもなんか気持ちよくないので
0988名前は開発中のものです。
2012/06/10(日) 12:50:20.86ID:2yVVzMFu0989名前は開発中のものです。
2012/06/10(日) 13:18:42.73ID:lZ191AJm二次元配列にそれぞれのマップチップの情報を記録すれば済みそうな物だけど
(1マップチップのサイズが40*40なら、640*480が[16][12]の、1280*480が[32][24]の配列になる)、
画像ファイルで保存する方がやりやすい方法にしてるの?
0990名前は開発中のものです。
2012/06/10(日) 13:52:35.29ID:ER7Sq7YOマップチップを並べる方法です
チームで製作しているのですがお互いまだ慣れておらず絵の担当さんから頂いた画像が細かい座標調整が必要でした
そのためマップエディターで良い感じの位置に調整してスクリーンショットを取る方法にしようと思い至りました
0991名前は開発中のものです。
2012/06/10(日) 15:10:48.73ID:ER7Sq7YOありがとうございました
ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=471
0992名前は開発中のものです。
2012/06/10(日) 21:09:31.17ID:2yVVzMFu1F前のキーをとっておいて判定する方法にしようかと思ってるんだが
0993名前は開発中のものです。
2012/06/10(日) 21:18:35.76ID:SZ2/XFTSついでに押してる長さとかも一緒に数回分の入力履歴をとっておくようにしたら
今は役に立たなくても、今後使えるようになるかもしれない。
(格闘ゲームのコマンド入力みたいに)
0994名前は開発中のものです。
2012/06/10(日) 22:08:56.34ID:/6oGWGHYまず、用途をはっきりさせて、次に、それに合うデータ保存形式を決めた。
あとは、毎フレームで、保存メソッドを呼び出し、データを保存。
判定したい場所で、判定メソッドを呼び出し、保存データを元に判定。
俺の場合はキーリピート的なものが欲しかったので、
ボタンごとに、押しっぱなしになってから何フレ経過しているかをデータで保存するようにした。
保存メソッドでそれを保存。
判定メソッドでは保存したデータを元に、リピート発生の有無などを算出。
流用とか変更がしやすいから楽だったな。
0995名前は開発中のものです。
2012/06/10(日) 22:12:04.25ID:1lLcj/tGgetkeystate?をDxLibのものに変えて
ttp://ponk.jp/cpp/el/
0996名前は開発中のものです。
2012/06/10(日) 23:59:50.33ID:lj7hTC+Qところで次スレ立てないとやばい。が、俺は弾かれたので、テンプレだけ貼っとく。誰か頼む。
----
Cを習得した程度のスキルでも、ゲームのグラフィックを比較的容易に描画する事のできる、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
http://homepage2.nifty.com/natupaji/DxLib/
【前スレ】
DXライブラリ 総合スレッド その12
http://toro.2ch.net/test/read.cgi/gamedev/1330000532/
【過去スレ】
01 http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
02 http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
03 http://pc11.2ch.net/test/read.cgi/gamedev/1238429676/
04 http://pc11.2ch.net/test/read.cgi/gamedev/1249822550/
05 http://pc11.2ch.net/test/read.cgi/gamedev/1259912953/
06 http://hibari.2ch.net/test/read.cgi/gamedev/1267108154/
07 http://hibari.2ch.net/test/read.cgi/gamedev/1286180687/
08 http://hibari.2ch.net/test/read.cgi/gamedev/1301818631/
09 http://hibari.2ch.net/test/read.cgi/gamedev/1310904069/
10 http://hibari.2ch.net/test/read.cgi/gamedev/1313655495/
11 http://toro.2ch.net/test/read.cgi/gamedev/1322844235/
【関連スレ】
C/C++ゲーム製作総合スレッド Part1
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/
0997名前は開発中のものです。
2012/06/11(月) 00:13:05.05ID:vfjk5rjT同時押しとか対応できなくない?
AとBを押して2秒、とか
0998名前は開発中のものです。
2012/06/11(月) 01:25:16.17ID:t2KXIcta0999名前は開発中のものです。
2012/06/11(月) 01:36:44.56ID:KU83wIZ21000名前は開発中のものです。
2012/06/11(月) 02:09:46.59ID:t30FF6fHヾ (●) (●)彡
ミ " □ " ミ クワッ!
彡 ミ
/ソ,, , ,; ,;;:、ヾ`
"'"'"
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。