トップページgamedev
990コメント278KB

DXライブラリ 総合スレッド その6

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/02/25(木) 23:29:14ID:hEXp+gEa
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「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/
0488名前は開発中のものです。2010/05/19(水) 18:22:24ID:6JDdAcQa
いやまて各部品を組み合わせた画像を自動生成するシステムを作れという意味かもしれんぞ!
0489名前は開発中のものです。2010/05/19(水) 18:22:58ID:fA7Obr04
>>487
なんでわかったんだよコンチクショー
DXライブラリで髪型変えたいんだがわからないんだよトウヘンボク
0490名前は開発中のものです。2010/05/19(水) 18:45:55ID:fA7Obr04
MV1DrawFrame使えばいけそうな気がしてきた
フレームの座標をMV1GetFrameNumで調べて、そこに指定の髪型なりをブチ込めばいいのかな?(チラッ
0491名前は開発中のものです。2010/05/19(水) 19:38:20ID:gcjFlSAC
悪いこといわんから別のライブラリ使おうぜ
0492名前は開発中のものです。2010/05/19(水) 21:02:08ID:fA7Obr04
うし、出来た^^
これでHUNTER BLADEを超えるゲームを作れる

簡単だし趣味でゲームを作るくらいなら、他のライブラリとかいらんわい
0493名前は開発中のものです。2010/05/19(水) 21:07:29ID:Xopcd8KA
はいはい
できたら来てね
0494名前は開発中のものです。2010/05/19(水) 21:17:09ID:fA7Obr04
>>493
なんでネガキャン野郎がこのスレにいるの?
他の使ってるなら該当スレ行きなよ。俺はDXLibで十分なだけで他のも素晴らしいよ?
HUNTER BLADEは冗談だけど(ggrばわかるよ)、作ったのはもう既に窓の杜に掲載されてるよ
お前もネガキャンやってないで何か作りなよ。反響あると楽しいよ
0495名前は開発中のものです。2010/05/19(水) 21:19:22ID:Xopcd8KA
はいはい
できたら来てね
0496名前は開発中のものです。2010/05/19(水) 21:25:43ID:fA7Obr04
 い い
 きた 

なんだ縦読みか。心の声に気付いてやりなよ
超ガンバレ!応援してるぞ!
0497名前は開発中のものです。2010/05/20(木) 01:02:41ID:bwm4Bwpb
>>494
掲載されてるソフト教えてくれまいか
興味ある
0498名前は開発中のものです。2010/05/20(木) 20:16:19ID:F5MAUXDm
どうしてもLoadGraphってのに慣れない
LoadImageというネーミングの方があっているのではないかと
0499名前は開発中のものです。2010/05/20(木) 20:17:35ID:88R7sKje
#define LoadImage LoadGraph
おすすめ
0500名前は開発中のものです。2010/05/20(木) 20:52:43ID:8m9HwZv7
LoadImage だとWindowsAPIに似た名前のがあるからそれと区別するためじゃないか
0501名前は開発中のものです。2010/05/20(木) 20:54:12ID:3YUJcVw0
DXライブラリは関数名気にしたら負け
SetOutApplicationLogValidFlagとかムチャクチャw
0502名前は開発中のものです。2010/05/22(土) 20:44:13ID:PO6njHeW
GetHitKeyAllStateとか。
0503名前は開発中のものです。2010/05/22(土) 23:06:38ID:5AcZfp/Q
意味分かりゃあいいんだよw
0504名前は開発中のものです。2010/05/23(日) 00:15:32ID:DdTVaoM3
俺みたいなぺーぺーには逆に意味がわかりやすく感じるけどな
0505名前は開発中のものです。2010/05/23(日) 00:41:15ID:fQuY0Z+n
というかコピペするだけだし。
0506名前は開発中のものです。2010/05/23(日) 09:31:26ID:OfEEoSjP
てか、どんなんが普通なの?
命名って結構迷うからちょっと教えて欲しい
俺も割とDXライブラリの命名とおんなじ感じだけど・・・
0507名前は開発中のものです。2010/05/23(日) 09:45:16ID:QeJ8B9MS
英語としてそれなりに正しい用法をしてるのが正しい
まあ分かればいいんだよ 全く不規則だったりローマ字付けるよりはマシ
0508名前は開発中のものです。2010/05/23(日) 09:50:18ID:LJpS5I3f
ちなみに関数名って覚えてる?

いちいちコピペばかりだと使いこなせてる感じがしなくて・・・・・・
0509名前は開発中のものです。2010/05/23(日) 09:56:02ID:QeJ8B9MS
DrawGraphやDrawRotaGraphくらいなら覚えてる
あとはSetDrawBlendMode,SetDrawBrightくらいかな
DxLib_Initとかその周りのフラグは覚えてない

基本的に覚えるのは標準関数程度でいいよ
環境によって関数なんて増えるし、複数人で作業するなら覚えるのも馬鹿らしくなる
0510名前は開発中のものです。2010/05/23(日) 10:02:32ID:xHLrTTXh
自分で作るときは
敵弾の発生がすごい関数名になる
0511名前は開発中のものです。2010/05/23(日) 10:04:02ID:LoEE2Qib
検索する時にいちいちリファレンス引かなくてもいい程度には覚えてるかな。

「えーと、この機能ってどう使うんだっけ?」って時に
ソース内を「DrawFor」で検索するとか。
0512名前は開発中のものです。2010/05/23(日) 10:21:47ID:QeJ8B9MS
どうでもいいけどそれvsなら検索せずともIntellisense(Ctrl+Space)でいけるよ
0513名前は開発中のものです。2010/05/23(日) 14:15:05ID:hV4eDDW6
>>512
すげーーーー
知らなかったけど、コレすごい便利だね
ありがとう!!
0514名前は開発中のものです。2010/05/23(日) 17:12:12ID:XP0kUJvE
MakeGraphで作ったグラフィックに対してたくさんの絵をDrawGraphで描画して
最終的に出来上がった画面を拡大して裏画面に描画とか、
部分的に切り取って裏画面に描画とかしたいんですがどうやったらいいですか。
0515名前は開発中のものです。2010/05/23(日) 21:10:44ID:TdQULIS5
>>506
関数名や変数名で1番大事なのは1意にしか解釈出来ないように付けること
そうしないと未来の自分が困る
0516名前は開発中のものです。2010/05/24(月) 10:42:02ID:D/otAcLg
nsfファイルをゲーム内から再生したいのですがどうやったらいいですか
0517名前は開発中のものです。2010/05/24(月) 16:23:49ID:IwMiHtX+
再生できるファイルに変換すればいいよ
0518名前は開発中のものです。2010/05/24(月) 18:26:35ID:D/otAcLg
例えば何に変換すればいいですか。nsfと同等のファイルサイズになるものじゃないと嫌です。
0519名前は開発中のものです。2010/05/24(月) 18:30:16ID:A96iCl1E
自分で解析して変換でもしてろ
0520名前は開発中のものです。2010/05/24(月) 18:32:56ID:q/GXKGg4
それしか思いつかんな。
0521名前は開発中のものです。2010/05/24(月) 21:05:01ID:R4pRlty4
「嫌です」って小学生か?
人に聞くならそれ相応の態度があると思う。

まぁ2chでそんなこといっても意味ないのかもしれないが。
0522名前は開発中のものです。2010/05/24(月) 21:22:42ID:JugV7rYA
学問板とかで良くある手は
間違った事を偉そうに言って
上級者の教えたい欲をくすぐる作戦だな
0523名前は開発中のものです。2010/05/24(月) 21:31:11ID:wrieHljh
素直にwavに変換してmp3とかoggに圧縮するか
オープンソースのnsfのライブラリやソフトなりを探して自分で調べて研究すればいいんじゃね
0524名前は開発中のものです。2010/05/24(月) 22:17:52ID:lHltmo/8
試しに適当に3分38秒の22050HzMonoの曲をoggでq-1.0で変換したら570KBになった。そんな感じ。
それがいやならnsfを自分で解析するか、どっかからnsf再生するライブラリとか探してくるしかない
0525名前は開発中のものです。2010/05/25(火) 03:19:19ID:ucuBf6Mc
>>522
正しい口の利き方を教えてやる欲をくすぐってしまうのとは別問題だろww
0526名前は開発中のものです。2010/05/26(水) 07:48:21ID:D+zL7oBy
未優「べ・・べつに未優はしりたくていったんじゃないから!」
0527名前は開発中のものです。2010/05/27(木) 15:58:58ID:izCF3c1y
みんなはバックアップってどうしてる?
というのも、先日HDDクラッシュして今までのがパーになってしまったんだ。
CDとかの媒体は信頼性がないし、WEBに上げるのはちょっと・・・
なにかいい方法があったら教えてください。
0528名前は開発中のものです。2010/05/27(木) 16:23:07ID:fWjmNe1i
石版に刻む
0529名前は開発中のものです。2010/05/27(木) 16:40:37ID:0uOPF2xa
dropbox使ってる
0530名前は開発中のものです。2010/05/27(木) 16:51:09ID:4idKX03l
RAID1にする。
外付けHDDにバックアップ。
0531名前は開発中のものです。2010/05/27(木) 16:55:37ID:izCF3c1y
dropbox調べてみます。
合わせ、外付けHDD買ってみます。
ショックでスレチな内容書いてしまった。すまんこ。
みんなはこうならないようにバックアップしっかり取っておくんだぞ!
0532名前は開発中のものです。2010/05/27(木) 16:58:37ID:eu9xfxlK
俺の場合、内蔵HDDが二つあるから、時々互いにコピーしてる。(もちろん大事なファイルだけ)
両方が同時に壊れる事は滅多にないからね。
0533名前は開発中のものです。2010/05/27(木) 17:29:14ID:0cLM2iQp
オンラインストレージもなかなかいいぞ
0534名前は開発中のものです。2010/05/27(木) 17:53:06ID:rpE/Stdj
軽いものだったらフリーメールに添付して下書き or 自分に送って保存
0535名前は開発中のものです。2010/05/27(木) 18:21:34ID:fntJMOdM
>>528
ワロタ
0536名前は開発中のものです。2010/05/27(木) 18:58:21ID:KVPnD1mS
俺も内蔵2個にコピー
ただ、これだと誤操作やウイルスに弱いな
0537名前は開発中のものです。2010/05/27(木) 22:32:31ID:eFUxWmfy
SKyDrive
0538名前は開発中のものです。2010/05/28(金) 00:51:29ID:5ig+3eto
USBメモリに退避してる
0539名前は開発中のものです。2010/05/31(月) 07:04:42ID:EEVGa8CT
にゃーん
0540名前は開発中のものです。2010/05/31(月) 17:21:09ID:+X5ECrbM
作るものなかったら15ゲームだな
FF1のミニゲームのあれ
0541名前は開発中のものです。2010/05/31(月) 21:33:35ID:jddY7bT7
なにそれ?くわしく
0542名前は開発中のものです。2010/05/31(月) 21:55:45ID:3wbd8076
正方形の 4x4 - 1 のピースをずらして揃えるアレ
0543名前は開発中のものです。2010/06/01(火) 02:39:18ID:0HX/qXa8
あれって最初の並べ方でクリアできない問題ができたりするのかな?
0544名前は開発中のものです。2010/06/01(火) 02:51:06ID:d5rKSHjI
確か適当に並べると半々の確率で不可能な並びになったはず
0545名前は開発中のものです。2010/06/01(火) 03:22:23ID:P3j94Wko
最初に正しい状態で並べておいて、そこからランダムで上下左右に何回も動かしていけば不可能な並びはできないでしょ。
そこまでは内部的に処理させておいて、プレイヤーにはそこからスタートさせるんだよ。
0546名前は開発中のものです。2010/06/01(火) 03:23:35ID:lBdA6PAW
545の方法が一般的だね
確か、隣あってるパネルを1回交換すると、クリアできない並びになったような
0547名前は開発中のものです。2010/06/01(火) 11:01:08ID:d1wBZ0vl
http://www.youtube.com/watch?v=HyPsVRgZYjY
0548名前は開発中のものです。2010/06/01(火) 21:55:07ID:RzMPDL/m
http://www1.axfc.net/uploader/Sc/so/119684.zip
pass:dxlib

>>540のゲーム作ってみました。
よろしくお願いします。
0549名前は開発中のものです。2010/06/01(火) 23:10:29ID:8kyobxgs
お見事です。
0550名前は開発中のものです。2010/06/02(水) 00:06:32ID:Rya8rRs+
15パズルって地味に楽しいな。
0551名前は開発中のものです。2010/06/02(水) 06:05:44ID:VXh00IpL
特にエロは
0552名前は開発中のものです。2010/06/03(木) 03:32:23ID:1PpPsQo7
メニューバーは作ることができたけど
ステータスバーに関してはライブラリと相性が悪いみたいだね
http://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=491
どうにかして作ることはできないもんなのか
できた人いるー?教えてください
0553名前は開発中のものです。2010/06/03(木) 05:27:29ID:Ge5JFD2K
SetPanSoundMemとSetNextPlayPanSoundMemってどうやって使うの?

引数のPanPal(音量比率)に10000と-10000を入れても変化が分からん。
もしかするとPC環境やサウンドファイルによって変わるのかもしれないが…。
05545532010/06/03(木) 06:20:35ID:Ge5JFD2K
>553だが、色々試してるうちに原因が分かった。
すまんかった。
0555名前は開発中のものです。2010/06/03(木) 06:26:56ID:YMXxSar8
>>554
何で躓いてたか書くと、他の人も助かるかも
0556名前は開発中のものです。2010/06/03(木) 07:43:10ID:Ge5JFD2K
まだ検証中だけど、たぶんこんな感じ。
DXライブラリのバージョンは3.02d。

 (1) サウンドファイルによってパンが設定できない場合がある。(モノラル音声?)
 (2) SetPanSoundMemとSetNextPlayPanSoundMemが、ともに直後の再生のみに有効

(1)は仕様かもしれない。
そんなに問題ないと思うけど、ユーザがサウンドファイルを指定するようなプログラムなだと不便かも。

流石に(2)はバグかなあ。
0557名前は開発中のものです。2010/06/03(木) 10:24:52ID:k5RaBEyJ
公式行くといいよ
驚くほどのスピードで対応、バグ修正してくれるから。
0558名前は開発中のものです。2010/06/03(木) 18:33:03ID:Ge5JFD2K
よし、じゃあ誰か任せた!
0559名前は開発中のものです。2010/06/03(木) 20:37:41ID:GB8alwKP
はあ?
0560名前は開発中のものです。2010/06/04(金) 02:41:19ID:KDddOKQa
冗談はともかく、もうちょっと調べたら公式に投げてみる。
ありがとう
0561名前は開発中のものです。2010/06/07(月) 15:27:26ID:A0pl8E9h
イメージハンドルの管理ってどうしてる?
自分の場合、グローバルにするのが気持ち悪くて管理クラス作ってたりするんだけど……
0562名前は開発中のものです。2010/06/07(月) 15:50:38ID:vPi+VaEG
シングルトンの管理クラス作ってるけど。
0563名前は開発中のものです。2010/06/07(月) 16:49:26ID:4KPscOCj
ハンドルなどを格納したイメージクラスを作り
各シーンクラスに持たせるってのはどう?
0564名前は開発中のものです。2010/06/07(月) 16:57:25ID:A0pl8E9h
>>563
今組んでるのがそんな感じ
やっぱりそういうのが普通なのかな
05655632010/06/07(月) 17:14:55ID:4KPscOCj
実装途中でめんどくさくなってシングルトンにしちゃったのは内緒だぜ
0566名前は開発中のものです。2010/06/07(月) 17:55:05ID:EN4DZkAk
俺もシングルトンの管理クラス使ってるわ
0567名前は開発中のものです。2010/06/07(月) 18:50:57ID:4KPscOCj
流れをぶった切って。

(1)
例えば、青空の背景で真っ赤な炎を爆発させたいとき、どうしてる?

画像そのものの作り方次第で、ある程度は何とかなるとは思うんだけど、
通常描画やαブレンドだと味気ないし、加算合成だと紫色の炎になっちゃう。


(2)
レーザーとか稲妻などの光を、より眩しくなるように表現するコツってある?

凄く抽象的な表現で申し訳ない。
単に加算合成しても、眩しいっていう印象からは程遠いんだ。

DXライブラリというより、画像の作り方かもしれない。
0568名前は開発中のものです。2010/06/07(月) 18:59:21ID:Ia/YH+my
シューティング製作スレでもいけば?

俺の場合は参考にならんだろうが、

1)普通にドット絵で描いてる。ブレンド等もせずにそのまま。
  もちろん今風じゃないし、さほど上手い絵でもないけど、気にしない。

2)上と同じく、普通に白を使うだけ。
  てかまぶしい画面効果なんて自分でやっててウザいだけなので、やろうとは思わない。
  むしろ目に優しい配色とか考える方がよっぽどいい。
0569名前は開発中のものです。2010/06/07(月) 22:13:31ID:DZ+Xq8Xt
>>567
(2)加算合成で2回同じ画像を描画

ってのはどう?
0570名前は開発中のものです。2010/06/07(月) 22:40:07ID:ZAQ/nx5O
>>567
1. 通常描画でいいんじゃね
2. 普通に描画した後にボカして加算合成
05715672010/06/07(月) 22:57:26ID:4KPscOCj
ありがとう。参考になる。


>>568
STGは全然分からないけど、確かにそういうの詳しそうだ。

(1)は、爆発のドット絵を上手く作れば、スーファミっぽく綺麗にはなるね。
ゲームによっては下手に加算合成せずに、そっちのほうが良いかも。

(2)は、さすがに連発はしないけど、ピンポイントで使うと印象深いかなー?くらい。


>>569
やってみたけど、グラデーション部分がカクカクするだけだった(´・ω・`)
これはこれで面白いエフェクトだけど。


>>560
(2)について、ボカすっていうのが結構良さそう。
試しに画像の時点でボカしを入れてみたんだけど、結構それっぽい。
0572名前は開発中のものです。2010/06/07(月) 23:26:07ID:DZ+Xq8Xt
>>571
ここ参考になるんじゃね?
ttp://marupeke296.com/DXG_No14_BrightnessExpression.html
0573名前は開発中のものです。2010/06/07(月) 23:38:23ID:4KPscOCj
ありがとう、わかりやすいな
0574名前は開発中のものです。2010/06/08(火) 03:23:41ID:XU0SY8KK
シングルトン使う位ならグローバル使っても大して変わらないと思うのだが
0575名前は開発中のものです。2010/06/08(火) 03:30:54ID:7IaY+r1I
シングルトンは機能面で採用するもんじゃなく、ついいい加減に書いちゃうのを抑止する程度の物でしかないね
でもそれが目的だからそれでいいんだよ
0576名前は開発中のものです。2010/06/08(火) 18:03:50ID:WqzuLKVT
具体的にどうシングルトンになってるの?
俺未だにその辺のデザインパターンがよく分からん。
関係する部分だけでいいからソース見せて貰えないだろうか。
シングルトン自体はわかるんだが、でも実際それをどこでどう使えばいいかってわからんのよな。

数学の何らかの公式は覚えてるし解けるが、じゃあその公式をどういう部分で使えば有効なのかってのがわからないみたいな。
0577名前は開発中のものです。2010/06/08(火) 18:27:04ID:apN5BnaM
それは「わかってるけど使い方がわからない」じゃなく、わかってないだけかと。
デザインパターン本には使い方なども書いてあるだろう。
0578名前は開発中のものです。2010/06/08(火) 19:16:55ID:LVU9CPSV
そもそもオブジェクト指向的な書き方の価値が分からん
クラスとか必要なくね
0579名前は開発中のものです。2010/06/08(火) 19:49:28ID:gCQeYNBi
みながわさん乙
0580名前は開発中のものです。2010/06/08(火) 20:06:39ID:apN5BnaM
>>578
なしでいけるなら、使わなくて問題ないよ
小さなソフトを作る場合、便利だと思った機能だけ使うのが賢いと思う
0581名前は開発中のものです。2010/06/08(火) 20:08:30ID:XU0SY8KK
ポリモ便利でしょ
0582名前は開発中のものです。2010/06/09(水) 03:58:21ID:COgxenTn
シングルトンはGemsや「ゲームプログラマになる前に
覚えておきたい技術」に実例と解説がなかったけ。
後者については、たしかゲーム板の参考の書籍の
過去ログで著者本人が意図を解説してくれてたような。

>クラスとか必要なくね
俺はないと無理だ。
クラスないと、複数の種類の敵とかを作っても
敵全部->Move();
敵全部->Draw();
とか一括でやりにくいし、コンストラクタやデストラクタとかないと困る。
昔のSTGみたいにオブジェクトプールと関数ポインタでタスクシステム(
この言葉の定義は別として)を、作っても似たことはできるかもしれないけど。
0583名前は開発中のものです。2010/06/09(水) 09:57:55ID:0uRXgvrI
>>582
敵全部ってのはどうやって指定するの?

クラス使ってない自分の場合それぞれforループで敵情報の構造体の数分回して、
EnemyMove()とか関数に飛ばして基本行動取ったあと行動パターンIDのswitchで固有行動取らせてる
Drawもしかり

敵の作成と削除は専用の関数SetEnemy、DeleteEnemyを用意してあげて、
空いてる敵ナンバーを配列から検索→その番号の構造体に基本情報を代入など一括で行ってる
0584名前は開発中のものです。2010/06/09(水) 10:14:18ID:VCMaahjg
俺も583と同レベルの知識しか持ってないから、583と同じ疑問を持ってるなw
クラスとか、ググれば解説載ってるところはたくさんあるんだけど、
じゃあそれをゲームにどう活かすのか、となるとさっぱりなんだよね。
0585名前は開発中のものです。2010/06/09(水) 10:23:51ID:UtwkxiER
std::vector<Unit*> enemy;

enemy.push_back(new EnemyA() );
enemy.push_back(new EnemyB() );
enemy.push_back(new EnemyC() );

for(int i=0; i < enemy.size(); i++)
{
enemy[i].Move();
enemy[i].Draw();
}

とか、そういう。(上記だとリークしやすいから自作リスト作ってるけど)
初心者ならこういう設計でまず作ってみれば?
0586名前は開発中のものです。2010/06/09(水) 10:30:52ID:0uRXgvrI
>>585
vector遅くね
自分だとその場合EnemyMove(i);とか指定するんだけどどうもメリットが見えてこないな

自分はActionScript2,3からプログラミング入ったタチなんでオブジェクト指向は使えることは使えるが、いまいちそれを便利に使いこなせるかというと謎
0587名前は開発中のものです。2010/06/09(水) 10:36:44ID:zbUE9j/c
スレッドって
どうやればいいの?
■ このスレッドは過去ログ倉庫に格納されています