DXライブラリ 総合ス ..
[2ch|▼Menu]
2:名前は開発中のものです。
07/12/12 23:21:35 xalqmGO7
これってWin9x系じゃあ動かないの??

3:名前は開発中のものです。
07/12/12 23:46:19 +TEYpSag
必須環境及びソフト

 WINDOWS98以降のOS
 VisualC++ 6.0以降( VisualC++6.0 及び VisualC++.netで動作確認 )
 又は BorlandC++ Compiler 5.5


4:名前は開発中のものです。
07/12/13 01:30:39 KzyLxZbe
これがないと何も作れません

5:名前は開発中のものです。
07/12/13 20:19:50 AVydRpFA
あの・・・質問です・・・

DXライブラリを用いて作ったゲームを実行すると、

"Log.txt"というファイルが作成されてしまいますが、

起動しても、このファイルが作成されないようにする簡単な方法は無いのでしょうか?

お願いします。

6:名前は開発中のものです。
07/12/13 20:59:27 B0r6+HNn
>>5
リファレンス見ろ!

7:名前は開発中のものです。
07/12/13 22:05:52 AVydRpFA
あの・・・質問です・・・

DXライブラリを用いて作ったゲームを実行中に
[Alt]+[F4]キーで強制終了すると、確かに画面は消えますが、
タスクマネージャを起動し、プロセスを確認すると、
終了したはずのソフトがバックグラウンドで動き続けています。

また、ウィンドウを閉じる[×]ボタンをクリックしても同様の症状が発生します。


これら症状を発生させることなく、ソフトを完全に終了させる方法がありましたら、是非教えてください。

8:名前は開発中のものです。
07/12/13 22:14:33 KzyLxZbe
謙虚なようでいて割とずうずうしいAVydRpFAに笑う。

つか俺もそれなったことあるな。
ちゃんとDxLib_end通って終わらせるようにしてる?

9:名前は開発中のものです。
07/12/13 22:17:39 M4d/v6A3
いつの間にかC#版出てたんだな

10:名前は開発中のものです。
07/12/13 22:25:59 AVydRpFA
>>8
一応プログラム上は最後にDxLib_endを通るはずですが、
強制終了した場合にどのような処理が行われるのか分からないので、
その場合にDxLib_endを通っているかは不明です。

DxLibには[×]ボタンがクリックされた場合の条件分岐なども可能なのでしょうか?

11:名前は開発中のものです。
07/12/13 22:26:41 M4d/v6A3
>>5
SetOutApplicationLogValidFlag( false ) ;

12:名前は開発中のものです。
07/12/13 22:30:21 KzyLxZbe
強制終了するとProcessMessage()が-1を返すのでそれで分岐。

13:名前は開発中のものです。
07/12/13 22:47:25 AVydRpFA
上手く終了できました。
ありがとうございました。

14:名前は開発中のものです。
07/12/20 02:41:51 CgkcIwdm
しかし伸びないなこのスレ。あんまり使ってる人いないんかな?

15:名前は開発中のものです。
07/12/20 03:08:26 c6uI5mmb
オフィシャルの掲示板がしっかり機能してるからでは。

3D機能がもうちょっと使えるようになったらなぁ。
PSの初期レベルでいいんで。


16:名前は開発中のものです。
07/12/21 00:25:58 Qgx59tqA
一応、書籍もあるしな。14歳からシリーズも横スクロールアクションゲームを
作るとかの続編を出しても売れそうな気がするのだが・・・。

17:名前は開発中のものです。
07/12/21 17:55:48 q4/kVaxx
裏でニコニコ見てると糞重くならね? そういうもんなの?

18:名前は開発中のものです。
07/12/21 18:46:21 o5trT22u
>>17
オンボード(グラフィックボードを持ってない)と、動画系の処理は凄くCPUを使うから
他のアプリケーションにかなり影響が出てくるよ。
まぁ、オンボードじゃなくても、コーダーとか色々な関係で処理が取られる事もあるのかもしれんが。



19:名前は開発中のものです。
07/12/21 21:06:13 q4/kVaxx
うん。たしかにうちのはオンボードのしょぼいやつだ。
CPUもPen4の2Ghzといまとなっては古い。そろそろ替え時かな。

20:名前は開発中のものです。
07/12/24 09:11:51 EhF0JN+D
フルスクリーンとウィンドウモードのフリップでロストしなければいいんだがなぁ…
この機能、DirectX8から搭載されているはずなんだが…

21:名前は開発中のものです。
07/12/26 20:32:06 UVhLMJKC
これつかってると、いざ3Dに移るとき移りづらくね?
書き方がかなり変わるからな

22:名前は開発中のものです。
07/12/31 16:55:35 kAlN/OQf
DXライブラリに限った質問じゃないのですが、

#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
char key[256];
int x=100,y=100,flag=0;

ChangeWindowMode(TRUE);
if(DxLib_Init()==-1) return-1;

while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll(key) && key[KEY_INPUT_ESCAPE]==0){
if(flag==0){x++;}
else{x--;}
if(x==0){flag=0;}
if(x==540){flag=1;}
DrawBox(x,y,x+100,y+100,GetColor(255,255,255),TRUE);
WaitTimer(1);
}
DxLib_End();
return 0;
}
白い四角形を左右に移動させるプログラムです。

このようなプログラムだと四角形がちらついてしまうので、
ちらつきをなくすために裏画面に描画した後にその内容を反映させるプログラムに書き換えると、
ちらつきは無くなりますが、描画速度がとても遅くなってしまいます。
それで、描画速度は早いままでちらつきをなくすにはどうすればいいですか?

23:名前は開発中のものです。
07/12/31 17:28:09 dm1WMiLE
>>22
ダブルバッファするだけで速度遅いって、どんなマシン使ってるの?

24:名前は開発中のものです。
07/12/31 17:50:51 HemtJlOn
>>22 >>23
俺も処理落ちが激しいので、考えちゃう

#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
char key[256];
int x=100,y=100,flag=0;

ChangeWindowMode(TRUE);
//SetDrawScreen( DX_SCREEN_FRONT ) ;
if(DxLib_Init()==-1) return-1;

while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll(key) && key[KEY_INPUT_ESCAPE]==0){
if(flag==0){x++;}
else{x--;}
if(x==0){flag=0;}
if(x==540){flag=1;}

//SetDrawScreen( DX_SCREEN_BACK ) ;
DrawBox(x,y,x+100,y+100,GetColor(255,255,255),TRUE);
//ScreenFlip() ;

WaitTimer(1);
}
DxLib_End();
return 0;
}

25:名前は開発中のものです。
07/12/31 18:08:38 dm1WMiLE
>>24
fpsはどれくらいでるの?
#include "DxLib.h"
void show_fps()
{
static int frame = 0;
static DWORD dwLastTime = timeGetTime();
DWORD dwTime = timeGetTime();
if(dwTime - dwLastTime >= 1000) {
char str[128];
sprintf(str, "%.1lf", frame*1000.0/(dwTime - dwLastTime));
SetWindowText(str);
frame = 0, dwLastTime = dwTime;
}
frame++;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
char key[256];
int x=100,y=100,dx=1;
ChangeWindowMode(TRUE);
SetDrawScreen( DX_SCREEN_BACK ) ;
if(DxLib_Init()==-1) return-1;
while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll(key) && key[KEY_INPUT_ESCAPE]==0){
x += dx;
if(x<=0 || x>=540) dx = -dx;
DrawBox(x,y,x+100,y+100,GetColor(255,255,255),TRUE);
ScreenFlip() ;
show_fps();
}
DxLib_End();
return 0;
}

26:名前は開発中のものです。
07/12/31 18:18:39 HemtJlOn
>>25
42〜55

27:名前は開発中のものです。
07/12/31 18:23:37 dm1WMiLE
>>26
それはきついね。
ちなみに、うちはRADEON9550で60出る。
ゲーム作るときの参考にしたいので、グラボとかのスペック教えてくれませんか?

28:名前は開発中のものです。
07/12/31 19:31:16 HemtJlOn
>>27
ノートPCです。インテルのチップセット内です。
動画は、問題なく見れます。
イリュージョンのゲームは、まぁまぁ大丈夫です。
セカンドライフは、死に杉DEATH。

URLリンク(www.fmworld.net)

29:名前は開発中のものです。
07/12/31 19:51:38 T9P9iuCw
イリュージョンのゲームがまぁまぁなら3D性能は結構なものなんじゃねぇの?

30:22
07/12/31 20:23:27 kAlN/OQf
>>23

Windows XP SP2
SHARP Corporation
PC-AE30J
Mobile AMD Semporon(tm)
Processor 2600+
1.60 GHz、224 MB RAM
スペックとかよくわからないのでシステムのプロパティに書いてあるもの全部書きました。

自分はノートPCでFPSは58.0〜60.0がでました。
あとアクション系のオンラインゲーム(2D)とかは普通に動きます。

31:名前は開発中のものです。
07/12/31 22:15:41 dm1WMiLE
>>28
3DよりDXライブラリの2Dの方が軽そうなのにね。何が原因なんだろうね。

>>30
fpsが十分に出てるなら、描画は遅くないと思うのだけど、
どうしてそう感じたの?

32:22
08/01/01 20:44:08 ieHvsArR
>>31
22のプログラムで四角形が端から端まで移動する時間を時計を見ながら数えたのですが、
ダブルバッファ無し:約1.5秒
ダブルバッファ有り:約9秒
とあきらかに遅くなってしまうんです。

33:名前は開発中のものです。
08/01/01 20:57:29 NVWXaq4M
3Dデバイス利用するモードにしたら高速化するんでない?
INTELのオンボードチップでもラスタライザーはハード対応してるし。

34:名前は開発中のものです。
08/01/01 21:42:06 5F1N3KOE
DXライブラリで、普通に画像とかなしでいいから立方体の3D表示させたいんだがよくわからん・・・

35:名前は開発中のものです。
08/01/01 22:09:09 NVWXaq4M
本当の3D描画には未対応じゃないっけ?

36:名前は開発中のものです。
08/01/01 22:23:41 LUTy5fNC
>>32
そりゃ当たり前だ。
ダブルバッファだと垂直同期を取るから、fpsはリフレッシュレートに等しくなる。
60fps以上で描画したところで、ほとんどの人の目に大きな違いは感じられないほど。
速くしたいなら、四角形の1フレームあたりの移動速度を上げるべき。

>>34
非公開関数のDrawPolygon3D系を使うといいよ。
引数はDxLib.hを眺めれば大体わかるはず。

37:24
08/01/01 22:50:50 nl6ZedID
>>32 >>36
処理落ちと言う表現は、まずかったです。
訂正しますね。

他の文献でも60fpsに合せて全表示を書き換えて
表示させる旨が載っています。
しかし、サンプルのような1つを表示させる処理でも
へぼい感じなので「大丈夫なのか?」と思うのです

38:名前は開発中のものです。
08/01/02 00:27:34 HFT0bGND
だめだこりゃ

39:名前は開発中のものです。
08/01/02 09:56:53 yPno9QKP
ユーザープログラムから任意のメッセージをLog.txtへ出力することは可能でしょうか?

40:名前は開発中のものです。
08/01/02 10:22:52 B4KA5DOo
>>39
DxLib.hにそれらしい関数があると思う。

41:名前は開発中のものです。
08/01/02 14:26:51 yPno9QKP
>>40
>extern BOOL AppLogAdd( const char *String , ... ) ;// 書式付きログ文字列を書き出す
DxLib.hの1003行目にありました。(Ver 2.23)
DxLib_Init()以後であれば使えるようです。
WIN32APIのOutputDebugStringだと全画面時に無限ループに陥るとVSを終了せねばならず
出力を見ることができない問題がありましたが改善されました。
ありがとうございます。

42:22
08/01/02 21:19:07 oCGodrdm
>>36
2px以上動かせということですね。
ありがとうございます。

43:名前は開発中のものです。
08/01/03 00:31:58 Mosr0DBY
ウィンドウモード時の画面のサイズを指定して起動したいのですが、
どうしたらよいのでしょうか?

知っている方、是非御願いします。

44:名前は開発中のものです。
08/01/03 00:49:42 qhA3pvUo
SetGraphMode

45:名前は開発中のものです。
08/01/03 15:07:21 Mosr0DBY
>>44
ありがとうございました。

46:名前は開発中のものです。
08/01/05 00:05:54 m6e5EhS6
>>42
比較対象が間違ってるってのは頭で理解してんの?
ダブルバッファの仕組みと絡む垂直同期の仕組みが理解できなてないんだよ多分

47:名前は開発中のものです。
08/01/10 00:21:41 pp7xobES
 >>448
 よかった。まだ見てたか。将来、今までにない斬新なゲームを作ってくれ。

こういうことは、ゲ製板 URLリンク(pc11.2ch.net)
のほうが、いいと思う。

DXライブラリ 総合スレッド
スレリンク(gamedev板)

48:名前は開発中のものです。
08/01/10 00:22:10 pp7xobES
誤爆 orz

49:名前は開発中のものです。
08/01/10 00:52:51 aG+onIfH
変なの誘導してくんな

50:名前は開発中のものです。
08/01/11 08:20:52 7vFfcnQO
URLリンク(fatalita.sakura.ne.jp)
今3Dに対応したDXライブラリ互換ライブラリを作っています。
一通り基本的な機能は揃いつつありますが、DXライブラリのマイナーな部分は
あまり詳しくないのでちょっと質問させて下さい・・。

DXライブラリって画像を描画する際に重ね順などを指定する機能ってあるのでしょうか。
例えば重ね値がAの方が高ければAの画像を描画した後にBの画像を同じ位置に描画しても
Aの画像を表示するようにするといった感じです。
一応その機能は実装できたのですが、本家の方で実装されているならそっちを
参考にしたいと思いまして。。

51:名前は開発中のものです。
08/01/13 00:51:42 ZHhr3Ceo
面白そうなもの作ってますね
完成を楽しみにしてます。

52:名前は開発中のものです。
08/01/17 18:42:07 jeEHFIVn
入れてみたが動かない、パスも通ってるはずなのに

53:名前は開発中のものです。
08/01/17 18:45:39 5P8o91JG
>>52
パスが通ってないか、使い方を間違えてるか、DownLoadが失敗してるかだろ・・・・
普通に大勢が使えてるんだ、ちゃんとやればつかえるよ。


54:名前は開発中のものです。
08/01/19 14:03:26 zaKll0uK
質問ですが、
フォルダを作る命令とかあるのでしょうか?

55:名前は開発中のものです。
08/01/19 14:23:57 /OisnT9z
>>54
ないと思う。
Win32APIでがんばれ。
CreateDirectory

56:名前は開発中のものです。
08/01/19 19:57:41 XPoWSIW7
DXライブラリ使うと変な癖付くとかある?

57:名前は開発中のものです。
08/01/19 20:34:57 abUASCxD
クラス使わなくなるとかかな?

58:名前は開発中のものです。
08/01/19 23:51:20 jS3ZblV2
>>56
特に無いよ。むしろ良いクセが付いたかな。俺は

>>57
それは使う人次第では?普通に使えるよ

59:名前は開発中のものです。
08/01/20 00:00:48 Zsp6mHzW
癖が付く付かないは使う人次第では?

60:名前は開発中のものです。
08/01/20 00:19:08 bFw0KENF
>>59
はげどー。DXライブラリはかなり優れたライブラリだと思う。

61:名前は開発中のものです。
08/01/20 02:12:40 LPRcTCVR
あとは3D対応がされれば完璧になるな

62:名前は開発中のものです。
08/01/20 15:04:01 bFw0KENF
>>61
3D対応は不可能なんじゃないか?作者も確か掲示板で言ってるし

63:名前は開発中のものです。
08/01/20 15:20:30 CaB91QZa
>62

>50
読んでやれよ


64:名前は開発中のものです。
08/01/20 17:10:19 b0lhvCEg
>>63
たぶんそういう意味じゃないぞ

65:名前は開発中のものです。
08/01/20 17:22:21 wIjUHx1F
何をもって3D対応とする?とか、不可能って表現はどうよ?とか、
微妙な点があるけど、現状のDXライブラリをまとめると、

・3Dには一応対応している
・作者は3Dの機能拡充はするつもりがない?
・3D対応の互換ライブラリを作ってる人がいる

こんな感じ?

66:名前は開発中のものです。
08/01/20 17:24:38 3k0vspJr
DXLibそのもの自体はそんなにいいライブラリじゃないと思う
使っているDirectXも結構古いみたいだしね
VerUPも実質とまってる
手を入れるとフルスクラッチになるから、見通しも暗い

反面、そうやって枯れているからこそある程度安心して使える
サンプルや解説も公式で揃っているし、
使用者も多いから、困ったことがあっても解決するのは楽

でも、いつかは卒業しないといけないって気づくんだが、
Seloneやyanesdkなんかは地獄へようこそ、って感じで辛い

67:名前は開発中のものです。
08/01/20 17:46:17 m2QSa4p1
Seleneを使いこなせるレベルなら、もうDirectXを直に扱えるんじゃないかと

68:名前は開発中のものです。
08/01/20 17:49:51 0zosxAFE
>>67
流石にそれはないw

69:名前は開発中のものです。
08/01/20 17:50:25 bFw0KENF
>>65
今のDXライブラリの3D機能ってモデルの描画以外にどんなのがあるんだっけ?
公式に書いて無いからソース読まないと分からないっぽいが。

>>66
Seloneでググッたらビューティサロンwww
地獄へようこそってセンスある言い回しだな

70:名前は開発中のものです。
08/01/20 23:05:03 cXTm+nww
各ライブラリスレの分化前のごった煮状態の前ライブラリスレでは、
DXを卒業したらIrrlichtかOgreでいいんじゃね?って空気だったよな
Seleneにしてもyanesdkにしても上記海外勢ほど枯れてないからなあ

71:名前は開発中のものです。
08/01/24 05:19:09 2iXjLCax
IrrlichtにしろOgreにしろ2D機能が逆に貧弱らしいんだけどどうなの?
というか日本語の資料がまるで無いんだよな。海外勢のライブラリは。たまにあっても情報古かったりするし。

72:名前は開発中のものです。
08/01/24 05:20:04 2iXjLCax
やべ、あげちまった せっかくいい雰囲気だったのにスマン

73:名前は開発中のものです。
08/01/24 05:21:00 2iXjLCax
うわぁぁぁ、まただ。。 本当に悪かった。もう二度としません!

74:名前は開発中のものです。
08/01/24 18:54:48 cBUET+e2
>>25読んで思い出したんだが
SetDrawScreen関数の置き場所ミスるのって結構皆あるんじゃないか。
初期化前のミスはもうやらないぜ!と思ってたらこの間
画面モード変更と初期化の間に挟むドジをやらかしてしまった。

75:名前は開発中のものです。
08/01/30 16:35:52 oKWbNPaD
ウィンドウモードの時、ウィンドウを表示する位置を指定する関数はありますか?
例えば画面の左上に合わせるとか

76:名前は開発中のものです。
08/01/30 17:18:44 rd1sXm+1
>>75
DxLib.hにSetWindowInitPositionというのををみつけた

77:名前は開発中のものです。
08/01/30 19:10:43 oKWbNPaD
>>76
ありがとうございました
試したところできました!

78:名前は開発中のものです。
08/01/31 10:21:52 uIghRer+
>>65
>・3D対応の互換ライブラリを作ってる人がいる

どこにある?

79:名前は開発中のものです。
08/01/31 11:43:40 xN0n8j7H
>>50
そういう機能は無かった気がするな。

80:名前は開発中のものです。
08/01/31 14:00:04 3KHUeMGQ
>>78
少しはログ読もうな

81:名前は開発中のものです。
08/01/31 21:13:43 z/aBbem/
C#版を使っていらっしゃる方はいますか?
C#だとWinMain関数からプログラムを始めることができないと思うのですが、
どのようにして始まりの部分を記述すればよいのでしょうか?

82:名前は開発中のものです。
08/01/31 21:26:48 ChzLG6ku
>>81
使ってるのはVC#2005EE?

83:名前は開発中のものです。
08/01/31 21:29:09 z/aBbem/
>>82
はい。そうです。

84:名前は開発中のものです。
08/01/31 21:53:28 Xcqu+1EV
>>81
Program.csにあるMainメソッド

85:名前は開発中のものです。
08/01/31 21:57:33 ChzLG6ku
>>83
・新規→Windowsアプリケーションを選択
・ソリューションエクスプローラ中の
  Properties の中の AssemblyInfo.cs 以外を全て削除
  参照設定 の中の System 以外を全て削除
  Form1.cs と Form1.Designer.cs も削除
・プロジェクト→既存項目の追加 から DxDLL.cs を選択
「プロジェクトのフォルダ\bin\Debug」・「プロジェクトのフォルダ\bin\Release」に DxLib.dll をコピー
・Program.cs を書き換える

あとはこの Main を WinMain だと思えばいい


using System;
using DxLibDLL;

namespace WindowsApplication1
{
  static class Program
  {
    [STAThread]
    static void Main()
    {
    }
  }
}

86:名前は開発中のものです。
08/01/31 22:03:27 z/aBbem/
>>84
>>83
お答えくださってありがとうございます!
なるほど、そうやればよかったのですね。
>>83
詳しく説明してくださってありがとうございました。

87:名前は開発中のものです。
08/02/04 17:49:36 RL0FByTg
>>70
Irrlichtは一時期触っていましたがかなりいいライブラリですよね。
あれをDXライブラリでやりたいと思って作られたのがDXライブラリ3Dだったりします。

>>79
そうなんですか?実際私も描画順に気を使っていたので前から気になってました。

88:名前は開発中のものです。
08/02/08 15:35:48 n9rxSkck
質問させてください。DrawGraph関数は三個以上使えないのでしょうか?引数が三つ以上〜、とエラーが出ます。ちなみにVC++2005EEを使っています。
どこで質問すればよいか分からず、別の板でも質問したのですが「専門スレで質問しろよ」って言われたのでこちらに書き込ませていただきました。もしここもスレ違いならすいません…

89:名前は開発中のものです。
08/02/08 16:16:08 OmoVDjwQ
>>88
3個の意味がわからんが引数間違えてんじゃね?
int DrawGraph( int x, int y, int GrHandle, int TransFlag );
リファレンス
URLリンク(homepage2.nifty.com)
あってる?

90:名前は開発中のものです。
08/02/08 17:33:55 n9rxSkck
DrawGraph(…………);を5つくらい書いて実行したのですがエラーになりました。しかしいくつか消して2つにして実行するとエラーは出ません。つまりこの関数を三回使用するとエラーとなってしまいます…。

91:名前は開発中のものです。
08/02/08 17:52:59 KsTXQPrw
ソースプリーズ

92:名前は開発中のものです。
08/02/08 18:13:46 p+GbyQuI
消した所が間違ってたんじゃね。「,」が「.」になってたとか。

93:名前は開発中のものです。
08/02/08 19:52:16 Z8Mt9Y+t
>>88
ソースも挙げずに質問とな!?


94:名前は開発中のものです。
08/02/08 20:23:09 8VOzPRyE
>>90
本当に実行時エラーなの?コンパイルエラーじゃない?

コンパイルエラーなら、三回目の記述でエラーなんて現象は起きるはずがないので、
単なる記述ミスだろう。
なんにせよソース

95:名前は開発中のものです。
08/02/08 21:54:22 n9rxSkck
ちょっと待ってくださいね…。

96:名前は開発中のものです。
08/02/08 22:35:35 62WqGEUl
すみません・・・ほとんど>>92さんの言うとおりでした・・・。見事に逆になっておりました。
また分からないことがあれば質問するかもしれませんが・・その時はよろしくお願いします。

97:名前は開発中のものです。
08/02/09 21:58:43 1C17LrOM
>>96
質問は前回とは違う他人のフリをしてするのが業界標準なんだぜ?

98:50
08/02/10 17:12:54 E2aYugwH
50ですが3D対応のDXライブラリ互換(2ヵ月後に)のベータができたので報告に来ました。
まだ音楽再生機能と衝突判定機能に全く手をつけていないので使い物になるかは微妙ですが。。
リファレンスもまだ全然出来てないし・・
URLリンク(fatalita.sakura.ne.jp)

99:名前は開発中のものです。
08/02/11 00:21:00 wEjviALO
>>98
落としたけどまだ使ってない、サセーン
がむばれひそかにおうえんしてうr

100:名前は開発中のものです。
08/02/11 00:34:34 Z3yo6dVP
>>98
>本家DXライブラリ
>終了宣言(DxLib_End)が必須

>DXライブラリ3D
>終了宣言は無くてもOK

>そうした理由 
>プログラムの途中で終了させたい場合を除き、終了する時は勝手に呼び出されるから

これはmain内でreturnすると呼び出されるってことかな?

>プログラムの途中で終了させたい場合
これがどういう場合なのかよくわからない

101:50
08/02/11 03:03:48 yFxk12ne
>>100さん
そういうことです。
ユーザーが×ボタンを押したりした場合などの終了は自動検出して必要な処理を
呼び出しますが、たとえばプログラムの途中でプログラム自体を終わらせたい時とか
ありますよね。ゲーム中に「終わり」メニューなどを入れたい場合はプログラムを
終わらせる処理が必要がありますのでそういうときにのみ使えばいいということです。
わかりにくいようで申し訳ないです。。

102:名前は開発中のものです。
08/02/11 03:57:20 SHzsuPRA
>>101
中身見てないからなんともいえないんだが
いわゆるデストラクタの処理が通ったり通らなかったりするって事?

103:名前は開発中のものです。
08/02/11 14:37:10 91sdKra2
>>98
DXライブラリ3Dを使ってみようとしたんだが、atlstr.hがなくてコンパイルできなかった。
PlatformSDKもインストールしてみたけど一緒だった。
ATLとかMFCってExpress Editionで使う方法あるの?
あと、atlstr.hのインクルードをコメントアウトして続けようとしたが
dmusici.hがないといわれてしまった。
ちなみに環境は
WindowsXP
VisualC++2008 Express Edition
DirectX SDK November2007

104:名前は開発中のものです。
08/02/11 15:53:29 Z3yo6dVP
PlatformSDKインストール済みVC++2005EEでも同じくコンパイル不可
>fatal error C1083: include ファイルを開けません。'atlstr.h': No such file or directory

105:名前は開発中のものです。
08/02/11 16:58:17 GN2MWboz
ATL関係は確かEEでは無理だと思う
作者さんにはLIB形式かDLLでの配布を希望

106:名前は開発中のものです。
08/02/11 17:00:44 iu78+7FI
>>104
おれもおなじだ

107:50
08/02/11 21:31:11 yFxk12ne
>>102さん
う〜ん、そういうわけではないのですが、事実上終了処理は完全に必要ないという
表現の方がふさわしいのかもしれません。
よくよく考えるとループの途中で終了させたい時などにはexit(0)などがありますしね。

>>100-106さん
申し訳ないです。。無料版でのATL関係については今のところ対応策がありません。。

Visual Studio無料版でのATLの使用について
URLリンク(fatalita.sakura.ne.jp)

108:名前は開発中のものです。
08/02/11 21:58:34 91sdKra2
>>107
リンク先見たけど
// Copyright (C) Microsoft Corporation
ってあるからVSについてるやつのコピーかなんかだと思う。
もし使えたとしてもDXライブラリ3Dが有名になるにつれて
問題になると思う。

もしATLで使ってるのがCStringだけなんなら
std::stringかなんかで置き換えて無料のExpressでもビルドできるようにしたほうがいいと思う。
金出さん奴が偉そうなこと言うなと思うかもしれんけど
せっかくこれだけのものを作ったんだから
自分で門戸を狭めるようなまねをするのはもったいないと思うよ。

109:50
08/02/11 23:01:51 yFxk12ne
>>108さん
確かにそうですね。良く見たらCopyrightがある以上問題になりますね・・。
std::stringは使っていますが、CStringの目的は文字列を保存するためではなく
マルチバイト文字列とユニコード文字列を相互変換してstd::stringや
std::wstringに保存したりする為の一時的な目的に使っているので他のものに
置き換えるのは難しかったりします。
(変換には専用の関数がありますがCStringの方がはるかに優秀で開発がしやすいので)
まぁユニコードかマルチバイトかどちらかを切り捨てれば簡単なんですけど
現在SeleneやLuna、DXライブラリなど国産で主流のマルチバイト開発と
今後主流になるユニコード開発は両方に対応したかったので現状では無料版での開発は
>>105さんの言うように.lib化とか.dll化しないと(まだ経験無いので詳しくは知りませんが・・)難しい
のかもしれません。

110:名前は開発中のものです。
08/02/13 00:41:09 LX9NuLoS
DXライブラリ3D(50氏)にはがんばって欲しい。

15歳から始めるDirectX9ryを読んでいるが、2007年2月のDirectXと
2007年11月のDirectXとでは本通り進めたら100ページもあればコケル。
ゲーム開発者の要求で、数ヶ月ごとにSDKの入れ替わりになっているが、
本で勉強する話なら、ちょい凄い展開・・・。

111:50
08/02/13 01:59:59 /tk1ihKI
>>108さん
CStringライクなクラスを作ったのでCStringを取り除いてみました。
私のPCのHDDが残り容量が数メガ程度しか無く、VSEEがとても入れられそうにないので
もしベータ3でコンパイルできたら教えていただけると幸いです。

>>110
おお、その本、私も去年の10〜12月あたりに読んでました。
それが私の入門書なので著者には本当に感謝してます。
でもDirectXはOpenGLと違って抽象化されていないので数年ごとに
技術自体が陳腐化してしまうのが残念だったりします・・。
MSかソニーあたりが抽象化した3D技術をC++向けに提供してくれたら
結構日本の3Dゲームも面白くなるんじゃないかなと思っています。

112:名前は開発中のものです。
08/02/13 02:34:21 n9Cpx534
>>50
VC++2005/DXライブラリ3Dβ3

導入の手引きにてビルド時にエラー発生

エラー内容
\mylib\ml_text.cpp(2) : fatal error C1083: include ファイルを開けません。'atlstr.h': No such file or directory

この行をコメントアウトすることでビルド・実行できウインドウ表示ができた

113:名前は開発中のものです。
08/02/13 02:37:42 n9Cpx534
公式サイトの
>私が開発に使用しているPC(ノート型。このPCで軽快に動くことを目安に作られている)
スペックkwsk!特にグラフィックチップを!!

114:名前は開発中のものです。
08/02/13 13:16:59 8dbltEvw
DXライブラリ導入したばかりの初心者ですが
プログラム組むたびに以下の操作しなくちゃいけないんですかね?

  @ VisualC++ 2008 Express Edition のメニューの
      『プロジェクト』→『(プロジェクト名) プロパティ』を選びます。
    ((プロジェクト名)の部分は、今回は『test』になっている筈です)

  A プロパティダイアログが開いたら、ダイアログの左のリストから
     『構成プロパティ』→『全般』を選びます。

  B ダイアログ右側に表示されている『文字セット』の項目を
     『マルチ バイト文字セットを使用する』に変更します。

  C 左側のリストから今度は『構成プロパティ』→『C/C++』→『コード生成』を
     選びます。

  D ダイアログ右側に表示されている『ランタイム ライブラリ』の項目を
     『マルチスレッド デバッグ(/MTd)』に変更します。

  E 次にダイアログ左上に表示されている『構成』の項目を『Release』に変更します。

  F ダイアログ右側に表示されている『ランタイム ライブラリ』の項目を今度は
     『マルチスレッド(/MT)』に変更します。

  G 最後にダイアログの下の方にある『OK』を押してダイアログを閉じます。

115:名前は開発中のものです。
08/02/13 14:02:16 8aNjIQ3v
>>114
プロジェクトはコピーできる

116:名前は開発中のものです。
08/02/13 14:36:13 8dbltEvw
>>115
あーなるほど。
ありがとうっす。感謝っす。

117:50
08/02/13 17:10:24 /tk1ihKI
>>112さん
すみません・・完全にうっかりしていました。おっしゃられるとおり
#include <atlstr.h>
の一行は消し忘れです。その点などを修正してベータ4を公開しました。

>>113さん
価格.comで見つけたのですがこれと同じ奴のようです。
URLリンク(kakaku.com)

118:名前は開発中のものです。
08/02/14 00:09:57 1vND0iX0
しかし、地味に盛り上がるな。

>>50氏は、続ける気があるのならトリップを付けた方が良いな。

119:名前は開発中のものです。
08/02/14 03:21:12 t1F92WGz
>>117
>Intel 910GML Express
ノートにしては性能いいっぽいな

120:名前は開発中のものです。
08/02/14 03:39:39 t1F92WGz
コンパイルできねぇorz

121:名前は開発中のものです。
08/02/14 05:37:27 WfFj/EK1
>>50に純粋に質問なんだが
マルチバイトとUnicodeの相互互換とかいるのか?
API系の関数は自動で入れ替わるし
stringは下のよう感じにしといたら
相互変換する手間はいらん気がするんだが。

#ifndef _UNICODE
#define _tstring std::string
#else
#define _tstring std::wstring
#endif

122:名前は開発中のものです。
08/02/14 08:47:39 xKFMg5Ms
>>117
1>..\myLib\mL_Text.cpp(21) : error C3861: 'vsprintf_s': 識別子が見つかりませんでした

123:名前は開発中のものです。
08/02/14 09:58:14 v9KvJp5J
>>119
ノートにして性能悪いと思うが・・・。
最近はRadeonX1600とかGeForce8600積んでるノートがデフォかと思ってた。

124:名前は開発中のものです。
08/02/14 16:16:13 HH1MEW/i
>>123
それ・・・・単に今、売ってる最新機種のミドルレンジクラスだろ。


125:50
08/02/14 19:11:10 nzQZAZue
>>118さん
麻薬は(ry

>>120さん
状況を詳しくお願いしますm(_ _)m

>>121さん
それだと90%はOKでも10%でダメなんですよ。DirectXAPIの中にはLPCSTRやLPCWSTRなど
どちらか片方のみのコード系での引数しか用意されていないことが稀にあるので
その書き方だとそういうときに面倒が起こります。(相互変換できないとDXライブラリ3Dに引数の不揃いが出てしまいます)
そういうときに非常に面倒が少ないので自動的に相互変換ができるCStringを愛用していたという経緯があります。
(今はCStringが使えない環境があると知り自作のTStringを使っていますが)

>>122さん
環境はVisualStudio2003以前ですよね?申し訳ないです。
セーフ系の関数はVisualStudio2005より前では使えないというのを忘れていました。
ちょうど今ベータ5を作っているところなのでそれで修正しときます。
情報ありがとうございました。

>>123さん
そうなんですか?少し前に使っていたノートPCなどはこれの半分以下の性能だったので・・

126:名前は開発中のものです。
08/02/15 16:06:03 bOykvXe+
バカなことを聞いているとは思いますが、僕はマジなのでお願いします。
DXライブラリではC++は使えないのでしょうか??

127:名前は開発中のものです。
08/02/15 16:09:14 VPTgSQiM
全く問題ない
逆にCで動かない事が問題になった事さえある

128:名前は開発中のものです。
08/02/15 16:10:01 4sibGp92
>>126
URLリンク(homepage2.nifty.com)

129:名前は開発中のものです。
08/02/15 17:38:14 GkeoXIUs
コンパイルできねぇorz

1>リンクしています...
1>mL_Text.obj : error LNK2019: 未解決の外部シンボル "
__declspec(dllimport) class std::basic_ostream<char,struct std::char_traits<char> >
& __cdecl std::operator<<<char,struct std::char_traits<char> >(class std::basic_ostream<char,struct std::char_traits<char> >
&,char const *)" (__imp_??$?6DU?$char_traits@D@std@@@std@@YAAAV?
$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z) が関数 "
public: void __thiscall myLib_c::LogOut(char const *)" (?LogOut@myLib_c@@QAEXPBD@Z) で参照されました。

1>mL_Text.obj : error LNK2019: 未解決の外部シンボル "
__declspec(dllimport) public: void __thiscall std::basic_fstream<char,struct std::char_traits<char> >::
open(char const *,int)" (__imp_?open@?$basic_fstream@DU?$char_traits@D@std@@@std@@QAEXPBDH@Z)
が関数 "public: void __thiscall myLib_c::LogOut(char const *)" (?LogOut@myLib_c@@QAEXPBD@Z) で参照されました。


130:名前は開発中のものです。
08/02/15 18:37:04 yTSKGH/r
stl使ってる?

131:名前は開発中のものです。
08/02/15 19:49:23 GvwbKPwJ
boost使っててリンクしてないという懐かしいオチは?

132:名前は開発中のものです。
08/02/15 19:51:21 Rkucko5s
>>130
>>131
俺には標準ライブラリ周りのエラーにしか見えないのだが

133:名前は開発中のものです。
08/02/15 20:00:16 nUvrkQvl
ESPを使って透視してみると、
iostreamとfstreaがincludeされていないんだが、
ageる奴が困っても俺にはどうでもいいことなので、どうでもいい。

134:名前は開発中のものです。
08/02/15 23:13:29 SRqMXzTx
ああ、iostreamはライブラリもリンクしないといけないんだよな
そのエラーを消すにはALT+F7で開くオプション画面の
アレをアレにかえればいいんだろうけど、
どーせマルチ先で答え出てそうだし、間違えてると恥ずかしいのでパス

135:名前は開発中のものです。
08/02/15 23:32:35 XAXzf6Jj
>>127、128
ありがとうございます。

136:名前は開発中のものです。
08/02/16 20:39:10 yYTsC494
DXライブラリ3Dβを
VisualC 6.0で やりたいのだが どうやればいいのか 教えてください。

137:50
08/02/16 21:12:15 HZPD09Yw
体調を崩し2日寝込んでいました。
まだ頭が上手く回りませんが・・。

>>129さん
そんなエラーが出るんですか?
良ければ開発環境を詳しく教えてください。

>>136さん
6.0は使用経験が無いのでちょっと良く分からないです・・

138:名前は開発中のものです。
08/02/17 14:23:53 XZCo5WTC
>>136
プロジェクトファイルをテキストエディタで開いて何がリンクされててどのソースが必要か
確認してそれをそのまま6.0のでやればいいよ



139:名前は開発中のものです。
08/02/18 16:14:11 0NsXAvH0
>>137
129です。BETA8では、普通にコンパイル出来、うごいた。
エラーがでたやつをもう一度やってみたらコンパイル出来なかった

なんでかな
VC++ Express Edition2005 (はじめて使ってみた)



140:126
08/02/18 22:05:33 2TWjsJUr
どうも、>>126です。作るものにもよるとは思うのですが、実際にゲーム会社などでもDXライブラリを使っていたりするのでしょうか??
自分は将来そういう仕事につきたいと思い勉強をしているのですが、気になったので・・・

141:名前は開発中のものです。
08/02/18 22:13:39 Wl8axOrh
ゲーム会社では使わん

142:名前は開発中のものです。
08/02/18 22:56:39 aRjMeg92
DX自体そういったプロ用途は一切考慮して作られてないし。

143:126
08/02/18 23:02:14 2TWjsJUr
ではプロの方たちはどういったもので作っているのでしょうか??

144:名前は開発中のものです。
08/02/18 23:33:46 Wl8axOrh
とりあえずDXライブラリを勉強してゲームを何本か完成させるといい。
ライブラリはたいした問題じゃないから。


145:名前は開発中のものです。
08/02/18 23:35:56 7tiGy6L5
ゲームの作り方がわかればどうにでもなるもんだ

146:名前は開発中のものです。
08/02/18 23:46:50 TpuEiTEb
逆に聞きたいが、どの会社に入ってどんなゲームを作りたいんだ?

まぁ、DXライブラリで作れるレベルのゲームなら
ライブラリそのものから自作するのが普通だよな
3Dバリバリになってくると、ミドルウェアの購入を検討するかもしれんが…

そもそも、PCゲーを作ってるのはファルコムかエロゲぐらいしかしらねぇ…
あとはねとげか?

147:名前は開発中のものです。
08/02/18 23:53:41 7tiGy6L5
実はカプコンがすごい

148:名前は開発中のものです。
08/02/19 00:09:09 z2VaPk26
プロの方々は基本自社の開発部門が作成したライブラリを利用します。

149:名前は開発中のものです。
08/02/19 00:10:33 IcyEM27M
プロの方々はその場のノリと勢いで直接DirectXを利用します。

150:50
08/02/19 00:44:48 Aqd0JPlI
>>139さん
多分ベータ5以前の古いバージョンだったのでは無いでしょうか?
それか>>134さんの言うALT+F7で開くC/C++→コード生成→ランタイムライブラリが
マルチスレッド(/MT)状態になっていたとか。。
(本家DXライブラリではこの設定にする必要がありましたが、
 DXライブラリ3Dではこの設定にするとコンパイルできません。
 でもデフォルトの設定のままでOKなので導入の手引きには掲載していないですが)
まぁ動いているなら今更なので気にしなくて大丈夫だと思います。

>>140さん
アマチュアの意見なので参考程度にしておいて欲しいのですが、
私も1年半前にDXライブラリでゲームプログラミングに入門してそれを足がかりに
色々技術を吸収していったクチなので、ライブラリや使う技術は何でもいいので
とにかく色々作品を作ってみるといいと思います。完成したら作品をオープンソースに
するとソースコードがいつまでも頭に残りやすいのでさらにいいかもしれません。
もしまだ中学生とかなら少し遠回りしてHSPもいいのではと個人的に思ったりしていますが・・。

>>147さん
MTフレームワークとかいうやつでしたっけ?バイオ5とかの。
どんなのか一度くらい拝んでみたいです。

151:名前は開発中のものです。
08/02/19 08:12:59 7nQF2ZwG
>>150
139です。
動かなかった方をマルチスレッド(/MD)に替えてみたら
コンパイル通りました
お騒がせしました。

152:126
08/02/19 12:43:37 TX94i0/5
>>144>>149さん
いろいろありがとうございます。とりあえず何か一つくらい作れるくらいになってみようと思います。また分からないことがあれば質問させてくださいね

153:名前は開発中のものです。
08/02/20 18:35:04 2XUwUXxz
前使ってたとき妙にCPU使用率が高くなると思ったんだけど
どういう仕組みになってる?

154:126
08/02/20 23:48:36 T3SELVJu
どうも。
こんな僕に、なにかオススメの本はないでしょうか?とりあえず学びながらゲームを作っていくことが出来る、というものがうれしいです。
ちなみに今は「アクションゲームプログラミング 藤田 和久」という本がいいのでは?と思っているのですが、必要なもの(アマゾンレビュー参照)にDirectX9 SDK・Platform SDKと、聞いたことの無いものがあるので悩んでおります・・・
どうかアドバイスをお願いします。

155:名前は開発中のものです。
08/02/21 00:03:03 QvK3uI1X
>>150
MTフレームワークとは行かないけど、UnrealTournament3やらHalf-Life2・Crysis・Doom3・Call of duty4
等々の海外PCゲーならゲームさえ買えば拝めるぞ。実際にそれを元手にゲームを作って製品化された
ケースもあるし。向こうの連中は、時間と根性と愛が凄い。

>>126
まぁ、DXライブラリは書籍まで出ているのでゲームライブラリとしては使いやすいと思う。
DXライブラリの制作者のHPにも載っていたが

・「14歳からはじめるC言語わくわくゲームプログラミング教室」
・「14歳からはじめるC++ わくわくゲームプログラミング教室」
・「14歳からはじめるリアルに動く!ゲーム物理プログラミング教室 C言語編」

初心者向けゲームライブラリ解説書としては出血大サービスしている様なレベル。

156:名前は開発中のものです。
08/02/21 00:07:50 c8uZTMYe
>・「14歳からはじめるC++ わくわくゲームプログラミング教室」
これはCを使える前提で書かれてるから初心者はやめたほうがいい

157:名前は開発中のものです。
08/02/21 00:17:24 QvK3uI1X
書いた奴が言うのも何だが、C言語でも結構前提意識は強い方ですな。基本書は有る上勉強した方が良い罠。

158:126
08/02/21 01:57:17 vC78HCyB
とりあえず自分は やさしいC++第2版という本で基本的な勉強をしています。
こういうのって似たような本がいっぱいあるんですね…当たり外れが多そうですね。

159:50
08/02/21 03:11:35 d9wnlOLj
>>155さん
そうなんですか?いい情報をありがとうございます。
調べてみたら海外のゲームにはMODが存在するものが多いようですね。
今の私のPCじゃ推奨スペックに達していないのでいずれ触ってみようと思います。

>>158さん
それ1年ほど前に私も使ってました。C++の入門書は4冊ほど
(やさしいC++、C++の絵本、明解C++、独習C++)
買って5:10:6:9位の割合で読んで、個人的には導入部はC++の絵本が
分かりやすかったかなと思ったりしています。でもやさしいC++もいい本だと思いますよ。

160:126
08/02/21 12:08:11 vC78HCyB
>>159さん
たくさん持ってるんですね。絵本かぁ〜…なんか面白そうですね

161:名前は開発中のものです。
08/02/23 02:01:36 n/EC8VLW
DXライブラリ3Dってどうなったの?

162:名前は開発中のものです。
08/02/23 02:54:22 jbB5M8UJ
「DXライブラリ3D」でこのスレ検索したらいいんじゃね?

163:50
08/02/23 05:43:13 v30yPbpo
>>160さん
規模の大きな古本屋とか図書館に行ってもいろいろ本が手に入ったりするので
よさそうなのがあったら何でもトライしてみるといいと思います。応援しています。

>>161さん
続いていますよ。詳しくはサイトの更新履歴にも今までの履歴を載せています。

164:126
08/02/23 17:37:54 P0melG7o
>>163
ありがとうございます。頑張ります!!

165:名前は開発中のものです。
08/02/23 19:49:16 dwAlKyqQ
いつの間にこのスレこんなにのびてんだよ・・・

166:名前は開発中のものです。
08/02/23 20:20:24 n/EC8VLW
ありがとう神さま

167:名前は開発中のものです。
08/02/23 22:21:11 t2RNXHyS
>>50に期待カキコ。....〆(・ω・` )

168:50
08/02/23 23:47:51 n/EC8VLW
>>167
どうもどうも

169:名前は開発中のものです。
08/02/23 23:56:49 pfdSWKrQ
これは一体

170:名前は開発中のものです。
08/02/24 00:11:49 8fPwe+HI
(´・ω・) 頭がカワイソス

171:50
08/02/24 05:29:34 bAaCNQDb
初の偽物ですね・・。
まぁトリップを付ける気はあまり起きないのですが。。
どれが偽物なのかは想像にお任せしますw

172:名前は開発中のものです。
08/02/24 09:42:19 gPT1EW+g
餌から釣り針が見えてますよ

173:50 ◆GmgU93SCyE
08/02/25 20:30:02 PBPhXVWX
何か上を見るとカオスなことになってるので今更ながらトリップをつけることにしました。

>>167さん
どうもありがとうございます。

174:126
08/02/25 22:44:04 J8Foetq/
どうも。質問させてください。一つ目のソースがエラーで出て、二つ目は問題ないです。しかしなぜかが分かりません。定義する場所でこんなに変わってくるものなのでしょうか?
#include "DxLib.h"

struct buta{
int x,y;
};
buta pipu;
pipu.x=320;
pipu.y=240;
char Key[256];
int PIPURU[16];

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //ウィンドウ化と初期化処理

SetDrawScreen(DX_SCREEN_BACK); //裏画面に設定
LoadDivGraph("pipuru.png",16,4,4,32,32,PIPURU);//画像ピプル読み込み

while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){
//↑メッセージ処理 ↑画面をクリア ↑キーボード入力状態取得 ↑ESCが押されると終了

if( Key[ KEY_INPUT_RIGHT ] == 1 ) //右ボタンが押されたら
pipu.x++;
DrawGraph(pipu.x,pipu.y,PIPURU[0],FALSE);
ScreenFlip(); //裏画面を表に反映
}
DxLib_End();
return 0;
}


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5136日前に更新/243 KB
担当:undef