トップページgamedev
996コメント293KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2011/08/18(木) 17:18:15.54ID:vXmrN4yD
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/
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/
03623602011/09/17(土) 23:47:58.06ID:qOn1u84m
>>361
GetPixelSoftImage_Unsafe_ARGB8 ってやつですか!
速攻で回答ありがとう。やってみます。
0363名前は開発中のものです。2011/09/19(月) 12:05:38.10ID:UprzlB4Q
3.06a来てる

画像同士のブレンドと、画像へのフィルタ処理の追加か
ガウスフィルタあたりは使いどころが多そう
0364名前は開発中のものです。2011/09/19(月) 16:13:44.19ID:yhlmksAb
あとはモノトーンあたりも良さそうだな。
まだdxlib.hしか見てないけど
0365名前は開発中のものです。2011/09/19(月) 23:12:41.72ID:3xof7FwU
オーバーライドって処理速度遅いんですか?
結局switchで分岐した方がゲームプログラミングでは良いんですかね
0366名前は開発中のものです。2011/09/19(月) 23:18:39.11ID:Hj9aGvec
そんな変わらんだろ
0367名前は開発中のものです。2011/09/20(火) 00:04:13.34ID:YVZIu0k0
基本的に画像描画より遅い処理は無いと思え
毎フレーム数百数千newするなら別だが
0368名前は開発中のものです。2011/09/20(火) 00:08:30.31ID:eop8gN5D
ディスクアクセス>描画処理>メモリコピー・確保>演算
こんな感じか
0369名前は開発中のものです。2011/09/22(木) 00:44:29.35ID:oNJlPsgN
例えば全部のステージで共通して使う変数はグローバルにした方が余計なメモリ消費しなくて済むのか?
毎回同じ用途の変数使うのに宣言してたら、ステージが2ケタにもなると無駄が多いような気がするんだが・・・
0370名前は開発中のものです。2011/09/22(木) 00:51:01.27ID:Gb81PGK7
メモリがもったいないって複数のステージで同時に遊ぶの?
それとも短いコード作りたいの?
0371名前は開発中のものです。2011/09/22(木) 01:29:51.18ID:QgAJCcfo
変数のメモリはスコープ抜けると解放されるから同じ用途とか気にする必要ない
更に言えばPCゲームで今時変数の百個や千個気にする必要は全く無い
int型1000個で4kbyteだぞ お前のPCメモリ幾つだ
0372名前は開発中のものです。2011/09/22(木) 01:49:07.19ID:oNJlPsgN
同時に遊ぶわけじゃないけど、もったいないと思うのは
変数を使い捨てにしたくないという節約心かもしれない

変数の宣言は、DX初期化前に行ってるんだけど、これってスコープとかあるのか?
グローバルにstatic付けてる
0373名前は開発中のものです。2011/09/22(木) 01:52:47.69ID:zdL/cHx8
なんか根本的なところを理解してないんじゃないか?
0374名前は開発中のものです。2011/09/22(木) 03:28:12.57ID:Q0nBgZIO
言語とかゲーム製作入門の話は別のスレでやろうぜ・・・・
0375名前は開発中のものです。2011/09/22(木) 08:45:40.71ID:Gb81PGK7
for()とか使い捨てもいいところ
0376名前は開発中のものです。2011/09/22(木) 09:39:01.91ID:SNcRrTg+
>二つのグラフィックを特殊効果付きで合成する GraphBlend 系の関数を追加。
>グラフィックに対して特殊効果を与える GraphFilter 系の関数を追加。

ではこのあたりについて語ってくれい!
0377名前は開発中のものです。2011/09/22(木) 23:48:55.68ID:ZNCGNTOq
正直ライブラリそのものについては語ることがない。
仕様に関する質問なら公式に投げるし。
0378名前は開発中のものです。2011/09/22(木) 23:59:36.87ID:yGAEUblL
それをいっちゃおしまいよ
0379名前は開発中のものです。2011/09/23(金) 00:01:02.96ID:lGwo/k10
GraphBlend系関数、作者さん文章で説明するの諦めてるよねこれ
サンプル実行してみると、確かに文で説明するのは面倒そうではあるけど
0380名前は開発中のものです。2011/09/23(金) 01:08:35.25ID:SbkZlyvM
俺のゲーム設計は間違っているのかもしれない
しかし、実行した時は目的の挙動をしてくれるから問題ない
0381名前は開発中のものです。2011/09/23(金) 01:46:03.47ID:00nwAMnR
atan2()の引数のxとyを
yとxにしてしまった。
気づいたのはトライandエラーで
その返り値で正常な動作をするような関数を大量に作ったあとだった。
0382名前は開発中のものです。2011/09/23(金) 02:44:25.14ID:uC6dDDr9
このスレは全員DXライブラリユーザーなので助かる
0383名前は開発中のものです。2011/09/23(金) 04:45:31.77ID:Mjhg78Cy
GraphBlendの感覚を何となくつかむツール
dotnet 2.0位
ぶっ壊れてもいいなら

ttp://gmdev.xrea.jp/st/up/498.zip
0384名前は開発中のものです。2011/09/23(金) 11:03:16.28ID:Ivu9H+lh
最新のDXライブラリはすごいなぁ
0385名前は開発中のものです。2011/09/24(土) 12:22:07.70ID:JyuAsgsA
関数呼び出すのと、for文の繰り返しが多くなるのは、どっちが処理速度遅くなる?
0386名前は開発中のものです。2011/09/24(土) 12:35:23.87ID:3ZLlUfYZ
中身によるとしか言えない
基本的にどっちもコスト自体は無視していいくらい小さい 問題は中に書いている処理
0387名前は開発中のものです。2011/09/24(土) 18:53:33.22ID:3ZLlUfYZ
>>383見て驚いた
ライブラリの描画とwinapiの両立ってどうやってるんだ?
0388名前は開発中のものです。2011/09/25(日) 23:57:53.11ID:zhkUxK2c
今までの不細工なコードをほとんど書きなおした
まじ疲れたぜ
0389名前は開発中のものです。2011/09/26(月) 01:16:38.26ID:1rLi+PNr
変数の中身が違うと関連処理もかわるので
「探して判断して書き直す」のが特にだるい
0390名前は開発中のものです。2011/09/26(月) 13:50:33.49ID:kGbsAGnR
デバッグでwarningを非表示にしてerrorだけ表示することってできるの?
0391名前は開発中のものです。2011/09/26(月) 14:42:49.97ID:37x3zgEQ
それはビルド時の話なのか
0392名前は開発中のものです。2011/09/26(月) 14:50:43.24ID:kGbsAGnR
そうです
警告が多すぎてエラーが見にくいです
0393名前は開発中のものです。2011/09/26(月) 14:54:56.36ID:BxADadIW
VSならプロパティの警告レベルをoffにすればいい
もっとも警告を大量に出すようなプログラムを組むこと自体が間違いなのだが
0394名前は開発中のものです。2011/09/26(月) 14:55:25.23ID:8SqAvoOx
>>392
そういうのはコンパイラのオプションで無効化するものじゃないの?
0395名前は開発中のものです。2011/09/26(月) 15:09:09.00ID:2eP//Z1j
warningは本来0であるべき
どうしても無理なものは逐一消す
0396名前は開発中のものです。2011/09/26(月) 15:10:32.22ID:IOBV20+P
でも古いライブラリを組み込んだりとかどうしようもない時もあるからな……
0397名前は開発中のものです。2011/09/26(月) 15:17:37.52ID:s/zDdeSY
#pragma使えば特定の警告消せるよ
0398名前は開発中のものです。2011/09/26(月) 15:58:52.86ID:kGbsAGnR
ありがとう

ほとんどの警告がdoubleからintへの変換と、指定されたストレージクラスはこのコンテキストでは使えません
とかいうやつだけど
0399名前は開発中のものです。2011/09/26(月) 16:04:27.77ID:37x3zgEQ
registerとか使うときに出る警告なのか、はじめて見た
0400名前は開発中のものです。2011/09/26(月) 16:25:04.23ID:TxHEjPqS
registerなんてレジスタ数の少ないx86系じゃ、どうせコンパイラは
良きに計らってはくれないんだろうな、とおもって使わんからなー。

でもx64だとレジスタ数も少しは増えるから、
将来的には意識していく意味もあるのかも。
0401名前は開発中のものです。2011/09/26(月) 17:43:31.84ID:IQ09PIh4
>>398
YourFuncIntArg( (int)your_double );
0402名前は開発中のものです。2011/09/26(月) 21:40:49.03ID:fSXX0CEo
キャストしろよ
0403名前は開発中のものです。2011/09/27(火) 02:06:25.51ID:XL8JCksP
シェーダー関係かな
0404名前は開発中のものです。2011/09/28(水) 00:09:41.73ID:eH53l4a6
バグ直してたら、知らないうちに直ってしまった箇所があった
こういうの怖い
0405名前は開発中のものです。2011/09/28(水) 01:32:25.81ID:xOWhSu4B
半月くらい寝かせておくと直るよね
0406名前は開発中のものです。2011/09/28(水) 11:23:07.51ID:vNTPmcUH
バグだから、寿命が来ると死ぬのかもね。
0407名前は開発中のものです。2011/09/28(水) 11:27:19.80ID:ijeK3HQt
バグは放置すると作者環境だけで発生しなくなるから困る
バグ報告は来るのに直せNEEEE
0408名前は開発中のものです。2011/09/28(水) 11:29:07.90ID:sBi+x6bM
世にあるいろいろな環境の対応は、個人レベルでは大変すぎて死ねる。
0409名前は開発中のものです。2011/09/29(木) 02:22:12.05ID:jdeGRX1Y
値渡しに、値からポインタを使ったりすると直ったりもする

それより爆発エフェクトとかで大量の画像を描画したらすぐにパンクしそう
それが怖くてパラパラ使えないから、回転とか拡大縮小とかでごまかしてる
0410名前は開発中のものです。2011/09/29(木) 07:53:50.16ID:sYhPs7jg
お前らjava使えよ
0411名前は開発中のものです。2011/09/29(木) 07:55:02.95ID:rf56/uCo
javaとか……
0412名前は開発中のものです。2011/09/29(木) 14:27:22.53ID:7jD/EXX/
javaでDXライブラリ使えるのなら
別にjavaでもいんだけどねん
0413名前は開発中のものです。2011/09/29(木) 15:42:55.96ID:xD3rCZBd
Javaは止めろ、クラス化の大合唱がおこるぞ。
そんなの作者にメンテさせられん。
0414名前は開発中のものです。2011/09/29(木) 15:55:16.34ID:IaMjBSvc
DXライブラリでやれることって、大体Javaが元から実装していることのような?
0415名前は開発中のものです。2011/09/29(木) 16:17:19.04ID:fnWSU9Yw
Javaの画像描画機能がこんなに多機能だった覚えはないが
どの辺りのことを言っている?
0416名前は開発中のものです。2011/09/29(木) 17:24:57.51ID:vmlhrIjS
Javaって画像の透過色指定描画もできなくね
透過させたい人はpngに透過情報持たせて描画してねみたいな
0417名前は開発中のものです。2011/09/29(木) 20:47:08.77ID:52MH4gJH
VMとかinterprinterじゃなければJAVAでもいい。
0418名前は開発中のものです。2011/09/29(木) 21:05:49.68ID:7jD/EXX/
それじゃjavaの意味ないw
だったらC++でいいじゃんね
てかC#もjavaとおんなじようなもんなんじゃなかったっけ?
0419名前は開発中のものです。2011/09/29(木) 21:22:34.34ID:YHH4/5b1
LLVMつかえばおk
0420名前は開発中のものです。2011/09/29(木) 21:30:40.69ID:Pq8RCP6P
C#、javaはJITですね。実行時コンパイル。
とはいえjavaは(C#は知らん)、もともとがスタック志向のVMなので、
たとえばx86とか個々のCPU最適化とかには向いてなさそう。

JIT出来るんだったら、せめてできたネイティブコードをキャッシュして
二回目以降のコンパイルを無しにしてくれりゃいいのにね。
起動が遅いのは結構イラつく。
0421名前は開発中のものです。2011/09/29(木) 21:51:00.20ID:9ewkcBWW
ttp://sakotsu.jp/blog/?p=507
JavaScriptゲームエンジン『enchant.js』『mario.js』について調べてみました
0422名前は開発中のものです。2011/09/29(木) 22:34:44.54ID:Yt9qgte6
C#にはngenがあるじゃん
0423名前は開発中のものです。2011/09/30(金) 00:44:59.28ID:VQ5Eu/KQ
javaってフラッシュゲーのためにあるようなもん
0424名前は開発中のものです。2011/09/30(金) 01:08:02.69ID:+HCnCGKf
javaとjavascっておんなじものだよね
きっとo(^▽^)o
0425名前は開発中のものです。2011/10/01(土) 00:40:43.63ID:g8jOebqX
結構ゲームいいとこまで出来てきたんだけど、音楽と効果音が全く駄目
だから今のところ全部無音だわ

効果音はまだいいとして、音楽ってフリー素材も限られてるしどうすれば?
自分で作れるようになるには時間がかなり必要になりそう
0426名前は開発中のものです。2011/10/01(土) 00:50:11.61ID:mQ13247+
音楽が限られてるとかどうせ探してる範囲が無料素材だろ
少しくらい金出せ 腐るほどある
0427名前は開発中のものです。2011/10/01(土) 03:40:13.42ID:WuE9nBYo
無料素材すら探し足りてないだろどうせw
0428名前は開発中のものです。2011/10/01(土) 03:49:18.39ID:gUfg3bx8
DXライブラリ製のゲームのBGMって、ほどんどが煉獄庭園だよな……
他にもSHWとかSLOSとかFuttaとかPurplePlanetとかトランキトキシン氷晶とかいろいろあるだろうに
SAM Free Musicは閉鎖しちゃったぽいなー
0429名前は開発中のものです。2011/10/01(土) 08:20:20.16ID:gz7iPU14
さりげなく色々紹介してくれてありがとうw

煉獄庭園は曲多いし、色々パターン揃ってて望みの曲が必ずと言っていいほど見つかるしで
ゲーム内でのBGMの雰囲気を統一しやすいし、なにより規約がゆるいしで使いやすいんだよな。
(俺のゲームの為に作られたんじゃねーかってくらい雰囲気ばっちりのが何曲かあったしw)

今製作中のはフリー曲使えないけど、次に使える作品作る時はまた煉獄庭園と考えてる。
0430名前は開発中のものです。2011/10/01(土) 14:20:59.20ID:650sRgFk
ペイするならnashでも使うとか
0431名前は開発中のものです。2011/10/02(日) 01:21:03.69ID:YGXnx4XN
最終的には自分で作れるようになりたいけどな
0432名前は開発中のものです。2011/10/02(日) 01:43:53.59ID:v/mcIKLS
子供用の安いキーボード買って、よく使うコードを覚えて
鼻歌で思いついたメロディーつけたら、ある程度は聞ける音楽になった
0433名前は開発中のものです。2011/10/02(日) 13:35:40.70ID:eDXjnqt6
クラシック曲も悪くないぞ
0434名前は開発中のものです。2011/10/03(月) 02:05:01.09ID:tJo2ag0o
本当だ、煉獄庭園使える曲かなりあった
ありがとう
0435名前は開発中のものです。2011/10/03(月) 03:23:55.04ID:MCkBwP7R
他のゲームとよくかぶるのが欠点
0436名前は開発中のものです。2011/10/03(月) 05:27:56.85ID:Jo/LgQzu
有料の素材も結構被るけどな。
音辞典とか。
いいな!と思う音って大体被る。
0437名前は開発中のものです。2011/10/03(月) 05:33:42.47ID:T6cLFMMe
かぶるの恐れてちゃフリー素材なんて使えないよ。
むしろ、「ボクが一番この素材を上手く使えるんだ……」くらいのつもりじゃなきゃ。
0438名前は開発中のものです。2011/10/04(火) 01:13:39.87ID:HNZvzShI
やっぱりゲームを最初から一人で全部作るのは難しいんだな
さすがに音楽作りまでやろうと思わない

いや、できればしたいけどさすがにそこまで時間を割けない
0439名前は開発中のものです。2011/10/04(火) 01:20:10.53ID:PQEWyypp
みんなどういうゲーム作ってんの?
平面全方位シューティングならできた。
ロックオン、誘導ミサイル、味方機、感知ボム、ボスはできた

外部テキストファイルから読み込む進行設定のファイル操作関数がよく分からないけど
0440名前は開発中のものです。2011/10/04(火) 11:25:42.63ID:ip8A/Uk9
ちょっと前は4人対戦の出来るTPS作ってた
0441名前は開発中のものです。2011/10/04(火) 13:05:55.17ID:znAGCXQ9
シムシティ系の作ろうかなと思って勉強中
0442名前は開発中のものです。2011/10/05(水) 00:56:34.83ID:qQTQ0VRK
>>439
俺とめっちゃかぶってるやん
0443名前は開発中のものです。2011/10/05(水) 01:00:27.56ID:eJggz0N8
てか敵味方のAIがクソすぎて
機体の後ろ取られて即死ぬか、無限ループするかのどっちかなんだけど
0444名前は開発中のものです。2011/10/05(水) 01:01:55.05ID:eJggz0N8
あ439のことね
特にシューティング系はAIがどれくらいの精度で照準を合わせてくるか考えるのが難しい
0445名前は開発中のものです。2011/10/05(水) 01:27:33.72ID:qQTQ0VRK
俺のも糞だけど・・・
普通に正面で撃ちあうようにすれば、自然と強いほうが勝つからそれでいいのかなって
弾を避けるとか、そういう人間味のあるAIは作ってない

てか無限ループってどんな組み方してんだよ
0446名前は開発中のものです。2011/10/05(水) 01:34:50.14ID:B8J4vrc4
自機と敵機の旋回速度が同じで、ぐるぐる追いかけっこするって意味じゃないの。
0447名前は開発中のものです。2011/10/05(水) 11:58:04.58ID:2xJUnPRI
一騎当千型のシューティングじゃなくて、ドッグファイト的なシューティングなのか。

ある程度以上のAIは正直どうにもならないから、
戦力のバランスを崩したり、地形等を決め打ちで利用したり、勝利条件を変えてしまうのも良いと思うよ。
0448名前は開発中のものです。2011/10/05(水) 12:11:29.88ID:jish8lVx
自機と敵機の旋回性能に差を付ければいいんじゃねえの
0449名前は開発中のものです。2011/10/05(水) 12:19:42.83ID:QRSScb+f
それやるとただの理不尽ゲーに見えると思うけど
0450名前は開発中のものです。2011/10/05(水) 13:26:12.47ID:dtuD7mOx
同じ考えしてるから同じ動作なんだろう
「理由がないなら左を選ぶ」「アクセルon/offだけでブレーキ踏まない」などの癖をバラバラに付けてみるとか
0451名前は開発中のものです。2011/10/05(水) 13:51:03.16ID:XQc3S4RG
つーか最適化するだけでクソゲーになるならそもそも対戦ゲーとしてもクソゲー
まずゲームシステムを見直すべき
0452名前は開発中のものです。2011/10/05(水) 14:04:37.47ID:snghN+1e
>>451
トランプのスピードってゲームみたいなもんだ
適当に弱くしないとゲームにならない
0453名前は開発中のものです。2011/10/05(水) 14:15:35.27ID:QRSScb+f
まあCPUにTASさん並の動きされると困るのはわかるが
0454名前は開発中のものです。2011/10/05(水) 16:01:40.08ID:qQTQ0VRK
>>439
ちょっとやらせてくれよ
URLとか貼ってくれ
0455名前は開発中のものです。2011/10/05(水) 16:13:55.76ID:W5lXVPHd
1回でいいからやらしてほんと1回やらしてくれたらもう言わないからこの通りお願い
0456名前は開発中のものです。2011/10/05(水) 18:15:10.40ID:eJggz0N8
ごめんね
実をいうとボスと感知ボムはないんだ
0457名前は開発中のものです。2011/10/05(水) 18:16:50.04ID:eJggz0N8
あたり判定と描画する画像と各種ステータスが違うだけでAIは同じ
0458名前は開発中のものです。2011/10/05(水) 18:59:59.14ID:XXc7u1Rt
BGMも効果音もPlaySoundMemで多重再生させてるけど
「敵にhit」的な効果音とかを連続でドコドコ鳴らすと、
その間のBGMがしょんぼりになるます。

オンボサウンドだからか・・・。
しかしサウンドカード挿してる人とかあんま居ないよなー。うー。
0459名前は開発中のものです。2011/10/05(水) 19:02:40.90ID:gpE2szES
単純に全体の波形が限界だから
東方とか有名所のゲームでも、同じ効果音が重なって再生される場合は、
一度先に鳴らしてたのを停止してから新しい音を鳴らしてるし、そっちの方がいいと思うんだけどな
0460名前は開発中のものです。2011/10/05(水) 19:21:57.75ID:XXc7u1Rt
>>459
なるほど!
やってみます。ありがとうございます。
0461名前は開発中のものです。2011/10/05(水) 19:22:12.08ID:TYkrNn07
>しかしサウンドカード挿してる人とかあんま居ないよなー。うー

そうなのか。
サウンドカードなんて挿して当たり前だと思ってた。
慣れとは恐ろしい……。

全方位STGは、次に作ろうと思ってたジャンルだけど
おっかけっこでグルグルとかのシミュレーター系は考えてなかったわぁ。
それはそれでおもしろそうだな。
0462名前は開発中のものです。2011/10/05(水) 19:34:37.91ID:Kq8mV6lH
今日初めてDXライブラリ使ってみたのですが
ウィンドウに画像1個表示するだけのテストプラグラムを書いてみたら
exeのサイズが1.4MBもある…サイズを減らす方法は無いのでしょうか?

DxLib.hを覗いてみると DX_NON_PNGREAD 等のような
ライブラリリンクを避ける用と思われる記述が見られたので
試しにdefineしてみたらLNK2001が発生してしまいダメでした
これらを有効にしてダイエットさせるにはDXライブラリ自体をビルドする必要があるのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています