DXライブラリ 総合スレッド その10
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。
2011/08/18(木) 17:18:15.54ID:vXmrN4yDGUIのゲームを比較的容易に作成する事を可能にする、
「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/
0946名前は開発中のものです。
2011/11/28(月) 10:50:40.44ID:F666hCcs中身ソース見てないから知らないけど
0947名前は開発中のものです。
2011/11/28(月) 11:04:54.17ID:9PA9AeWaただし、一度やってみる価値はあります
0948943=910
2011/11/28(月) 21:12:59.17ID:9qyN3uEA皆さんレスありがとうございます。
とりあえず試しで、スレッドを追加して、秒間60回程度ProcessMessageしてみましたが、
Windowのタイトルをつかむことすら出来なかったりな状況は変わりませんでした。
画面の更新は出来るし、CPU使用率もほとんど上がってないのですが…。
画面更新してない停止状態のときは、別のウィンドウが上にくると、その色に塗りつぶされちゃいます。わけわかめ。
スレッド自体は10位起動しているが、描画をするしてるのは主に描画用の1スレッドだけなんだがなぁ…。
つд`)
マルチスレッドはだめだ!
いや、そんなばかな。あばばばば。
0949名前は開発中のものです。
2011/11/28(月) 21:42:37.86ID:uCsl9daM=ウィンドウを作成したスレッドでメッセージ処理をしないとならない
Windowsの基本な
0950943=910
2011/11/28(月) 21:51:22.62ID:9qyN3uEA当たり前なのかも知れないですけど、後進の役に立てばとおもい、スレ汚ししていきます。
@DxLib_Init() は、描画を行うスレッドでおこなう。DXライブラリのウィンドウはそのスレのもの。
(これは、Win32APIに詳しい人なら当たり前にわかることなのかも?)
AProcessMessage() は、ウィンドウの持ち主=描画を行うスレ=DxLib_Init()をしたスレが行う必要がある。
(他のスレにやらせても、意味ないくさかった。)
B描画を行う内容がなくても、最新の内容orすっからかん で描画(ScreenFlip()とか)しないと画面更新されないのね。
(そういうものだと言われれば納得だけど、自動で最新を維持してくれるのかと妄想してた。)
C描画スレが管理している裏画面へ別スレッドに書き込みを委譲するのは試していない。
(けど、気になるからそのうちやるかも。)
サーセンでした。ありがとうございました。
0951943=910
2011/11/28(月) 22:05:25.03ID:9qyN3uEAどもです。
ということは、もしかして、
DxLib_Init()したスレで何とかしてMessageProcess()できれば、
描画スレとは別でもいいってことですかね。今度試してみよう、今日は疲れた。
0952名前は開発中のものです。
2011/11/28(月) 22:19:27.20ID:A9iTiZ3Aうろ覚えだけど、それって公式の掲示板の過去ログになかった?
「スレッド」で検索して、、、わしも昔マルチスレッド+DX ライブラリのわなにはまった。
0953名前は開発中のものです。
2011/11/29(火) 00:31:56.08ID:c68IVOZBなんか見たことないオブジェクトとプロパティが多すぎて、使いこなせるわけがない
DXlibでも3dできるからこっちにしようか迷ってる
0954名前は開発中のものです。
2011/11/29(火) 00:45:59.99ID:W1qfXSqu前者はゲームエンジンだし
0955名前は開発中のものです。
2011/11/29(火) 02:00:50.86ID:1OufULBQ迷わずインスコして手を動かしてなんか作れ
言語を選ぶのはそれからだ
0956名前は開発中のものです。
2011/11/29(火) 10:27:01.33ID:6DNMifKqそれさえ出来れば後はなんとかなるんだが
0957名前は開発中のものです。
2011/11/29(火) 10:31:22.65ID:E9cixHcQそもそも選択肢がメタセコイアかブレンダーぐらいしかない
有料でも使えそうなのは高いのばかり
0958名前は開発中のものです。
2011/11/29(火) 12:08:06.95ID:9GvbSTd10959名前は開発中のものです。
2011/11/29(火) 12:12:42.35ID:c68IVOZBメタセコで遊び半分で龍とか妖怪とか色々作れて、モデリングとか楽しいわとか思ってたのに
いざこれをUnityで使うとなると、2Dゲームの様には行かなかった
まあ、でもなんとなく分かってきた感じはあるからもう少し頑張ってみるわ
つかUnityはスクリプトでクラス継承しすぎなんだよ、ボケ
0960名前は開発中のものです。
2011/11/29(火) 12:16:25.82ID:6xrRYLVJ0961名前は開発中のものです。
2011/11/29(火) 12:16:45.40ID:AQofl8BGちょっとしたゲームエンジンとか物理演算いれると難易度上がるし
DXライブラリで利用しずらいけど
0962名前は開発中のものです。
2011/11/29(火) 15:23:27.75ID:Pe8/Zu5Mという質問をしようとして、ヘッダファイルを覗いたところ、SetAlwaysRunFlag()をみつけました。
本当にありがとうございました。
関数の戻り値なんですが、Get系じゃないものは、
正常:0
異常:0じゃない
というくらいでOKですか?
これもヘッダをかなり覚える必要があるのでしょうか?
0963名前は開発中のものです。
2011/11/29(火) 16:10:23.93ID:oCb3GT8y大体は公式サイトにあるだろうし。
0964名前は開発中のものです。
2011/11/29(火) 17:50:44.24ID:woc2O05sあってもよさそうなんだが
0965名前は開発中のものです。
2011/11/29(火) 18:02:57.53ID:OYPVNw+c0966名前は開発中のものです。
2011/11/30(水) 00:49:23.03ID:e5eHbRnzエンジンとかで活かせるものなのかね?
0967名前は開発中のものです。
2011/11/30(水) 00:53:09.43ID:siAw3bpNDXライブラリは描画だけしかしないし、他の環境に移ったときにも身につけた技術を活かせるのをウリにしてる
関数一つで描画できるからライブラリ色が薄い
むしろ他ライブラリで身につけた技術ほど他に活かせない
なぜならガッチガチに独自仕様で固めてるから。
描画するならこのクラスに命令飛ばせーだの角度は256が最大の独自形式で指定してな!だの
0968名前は開発中のものです。
2011/11/30(水) 12:09:31.75ID:KoxRdVm8セーブデータ作りとか
自前だと破損調べるのとか面倒で
0969名前は開発中のものです。
2011/11/30(水) 12:39:30.09ID:4B3OKb0l0970名前は開発中のものです。
2011/11/30(水) 12:52:41.70ID:3oPNQCX+0971名前は開発中のものです。
2011/11/30(水) 13:27:53.54ID:NhGul0e7拡張子変えただけのZIPにして処理を丸投げでも十分すぎる
0972名前は開発中のものです。
2011/11/30(水) 15:07:01.63ID:DDM/+rbCまず「俺のゲームのデータ改変してまで遊んでくれるやついねーだろうな」
という気持ちが先立つわ。
0973名前は開発中のものです。
2011/11/30(水) 17:09:20.30ID:rIlC0MtK0974名前は開発中のものです。
2011/11/30(水) 17:12:03.42ID:OwyyYVWt0975名前は開発中のものです。
2011/11/30(水) 17:16:03.46ID:DDM/+rbCチェックサムと聞くと昔雑誌のマシン語プログラムを
バイナリエディタでせこせこ入れては暴走させて
ちまちまチェックサム確認してた思い出が頭をよぎるだけで。
0976名前は開発中のものです。
2011/11/30(水) 17:16:42.06ID:3oPNQCX+そういう人っているのかな?
0977名前は開発中のものです。
2011/11/30(水) 18:04:50.04ID:rLIwVb2Dまあ、ハイスコアと隠しステージ出現フラグくらいしか無いけどな。
[Game]
HighScore=10000
SecretLevel=1
Debug=0
こんな感じで。
0978名前は開発中のものです。
2011/11/30(水) 18:18:16.55ID:shPTgyIh自分がプレイ中のゲームで厨房が改造の話を始めたりすると俺は萎えるけど
そもそも起動中プロセスのメモリいじくれば何でもできちゃうからなー
0979名前は開発中のものです。
2011/11/30(水) 19:32:48.28ID:1kartXUkGetRand(360)と<math.h>をランダムに傾けたいのですがインクルードし、三角関数で頂点を求め・・・
というのは思いつきますが、かなり面倒です。
具体的には↓の動画(素人の実況なので、苦手な方はお手数ですがミュートをお願いします)
http://www.nicovideo.jp/watch/sm13480051
の6:17秒の標的をロックオンした時のエフェクトを作りたいと思っています。
0980名前は開発中のものです。
2011/11/30(水) 19:47:24.87ID:rLIwVb2D面倒なら、画像として用意しておいて DrawRotaGraph しちゃえば?
0981名前は開発中のものです。
2011/11/30(水) 20:05:21.03ID:1kartXUkあ、なるほど。こういう使い方ができるのですね
ありがとうございます
0982名前は開発中のものです。
2011/11/30(水) 20:30:44.91ID:7fBGf6TYランダムと言うよりは、四角形を回転させながら縮小させている気がする。
位置とタイミングがずれてるのが重なってるからそう見えてるだけで。
0983名前は開発中のものです。
2011/11/30(水) 20:38:21.81ID:1kartXUkあ、ホントですね。こういうののほうがカッコイイのかなぁ
エフェクトは難しいですね
0984名前は開発中のものです。
2011/11/30(水) 20:45:46.65ID:QKMdxPPN四角のグラフィックを用意して、DrawRotaGraphで回転させれば良い感じになりそう。
0985名前は開発中のものです。
2011/11/30(水) 20:53:00.87ID:OwyyYVWt0986名前は開発中のものです。
2011/11/30(水) 23:25:41.92ID:F64/yx6U正方形なんだからかなり面倒どころか一番単純じゃない?
現在三角関数がわからないから三角関数の理解が面倒臭いという意味かな?
ぶっちゃけ中心点からランダムなx方向、y方向の距離を取ってやって、
符号変えたりx方向とy方向を入れ替えてやったりすりゃ計算すらしないで正方形の頂点4つ作れるじゃん。
後エフェクトがかっこいいかどうかは少し突っ込みどころ。
0987名前は開発中のものです。
2011/12/01(木) 14:08:24.04ID:Yep5bMoDコードが冗長になって困っています
現在は↓のような感じです。
/*キー押下状態の配列*/
char Buf[ 256 ] ;
/*F8キーを押下 処理1*/
if( Buf[ KEY_INPUT_F8 ] == 1 )
{
syori1();
}
/*F7キーを押下 処理2*/
if( Buf[ KEY_INPUT_F7 ] == 1 )
{
syori2();
}
/*F6キーを・・・
これらをまとめたいのですが、何かいい方法はありますか?
/*理想*/
if(・・・ Buf[ KEY_INPUT_F7 ] == 1 || Buf[ KEY_INPUT_F8 ] == 1 || Buf[ KEY_INPUT_F9 ] == 1 ・・・ )
{
syorix();
}
・・・ Buf[ KEY_INPUT_F7 ] == 1 || Buf[ KEY_INPUT_F8 ] == 1 || Buf[ KEY_INPUT_F9 ] == 1 ・・・
の部分をまとめたいのです
それとも
syorix(Buf);
と言う風に配列を渡し、関数を毎回実行するものなのでしょうか
0988名前は開発中のものです。
2011/12/01(木) 14:15:29.74ID:cOSg0SVs0989名前は開発中のものです。
2011/12/01(木) 14:26:41.93ID:Yep5bMoDありがとうございます
関数ポインタ挑戦してまみす
0990名前は開発中のものです。
2011/12/01(木) 15:32:29.24ID:3DnzThw0syorix(Buf)は最初の処理が関数化されただけかもしれないが結局は細かく分けると一番いい気がする
同じ優先度のキーコードと関数ポインタの構造体配列を作りループで回すと
斜めとか同時押し処理は面倒だけど綺麗にはなるのかも
0991名前は開発中のものです。
2011/12/01(木) 22:52:49.54ID:8OKTnJs1どうしたらいいでしょうか?
Key[256];
int keyclip(){
char tkey[256];
GetHitKeyStateAll(tkey);
for(int i=0;i<256;i++){
if(tkey[i]!=0){
Key[i]++;
}else{
Key[i]=0;
}
}
}
int inputkey(char input){
return Key[input];
}
↑別ファイル
呼び出し
if(inputkey(KEY_INPUT_W)%=2){}
エラーで左側のオペランドが左辺値になってませんといわれます
KEY_INPUT_Wの定義がD_DIK_Wとかいう文字列?なんですが、これは一体どうしたら
0992名前は開発中のものです。
2011/12/01(木) 22:57:41.66ID:b3NpsyN80993名前は開発中のものです。
2011/12/01(木) 22:58:44.68ID:AzCz4IDeエラーメッセージは %= の演算子は変数に対して使うものって言ってる
0994名前は開発中のものです。
2011/12/01(木) 23:00:07.89ID:g6g3WWlu0995名前は開発中のものです。
2011/12/01(木) 23:57:31.59ID:8OKTnJs1>>992
それはどういう・・・?
レス数が950を超えています。1000を超えると書き込みができなくなります。