[過去ログ] DXライブラリ 総合スレッド その4 (1001レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
787: 2009/11/07(土)09:15 ID:AX9T+xsY(1) AAS
VC++で全部やってるかな
入力サポートとか自動インデント楽だし、Makefileより簡単
788: 2009/11/07(土)23:09 ID:cuDwaPl/(1) AAS
bccは古すぎるからなぁ
コンパイラの最適化機能を考えたらVC++2008Expressの方が良い
789: 2009/11/09(月)22:36 ID:PJ4Dq3Jo(1) AAS
今のvc++だと制限があってexeをそのまま配布出来ないんでなかったか
790: 2009/11/09(月)23:17 ID:b0mdQ8Dh(1) AAS
そんな制限ないよ
昔のMicrosoftのライセンスと今は違うし

Expressのよく寄せられる質問の7を100回読んできな
791: 2009/11/09(月)23:19 ID:MqTHE8Hs(1/2) AAS
Visual Studio 2008 Express Editionは
配布も販売も許されてるみたいだよ
792: 2009/11/09(月)23:20 ID:MqTHE8Hs(2/2) AAS
流れでわかると思うけど
もちろん作ったプログラムのことねw
793: 2009/11/10(火)01:23 ID:pDBfwiiQ(1) AAS
デバッグとかもVCのがいいだろ
794: 2009/11/10(火)08:45 ID:3KByZQXG(1/2) AAS
学生ならDreamSpeakでいいぞ
外部リンク:isic.univcoop.or.jp
外部リンク:www.dreamspark.com
国際学生証発行代(1700円程度)で、タダで
Visual Studio2003・2005・2008beta2まで入手できる
795: 2009/11/10(火)09:19 ID:QZlOVwg2(1) AAS
DreamSparkはProfessionalの2005,2006、Ultimateの2010beta2が提供されてる。
ただ2010beta2は一般にも公開されている英語版だけどね。

ちなみに国際学生証発行しなくても、LinNoに登録すればDreamSparkの認証コードもらえる。
796: 2009/11/10(火)09:34 ID:3KByZQXG(2/2) AAS
補足ありがと
今はVS2010beta2使ってるけど、C++0xでもインテリセンスが効いて使えるのは便利だよね
次のVS11ではC++コンパイラをフルスクラッチで書き直すみたいだから、まだまだMSはC/C++を最前線で活躍させるつもりみたいだ

BCCと比べてVC++のコンパイラの性能も段違いなわけだし、DXライブラリはBCCサポートすら切ってもいいと思うぐらいだ
797: 2009/11/12(木)18:21 ID:HGX7Q1tQ(1) AAS
ブレンドモードの切り替えって重いかな。
そんなに心配しなくてもいいよね?
798
(1): 2009/11/12(木)20:56 ID:oahjQGTI(1) AAS
俺は表示画像(キャラ等)色換えに使ってるが全然問題ないな。
もちろん同じブレンドモードを使う画像はまとめて表示するくらいの工夫はしているが。
799: 2009/11/13(金)11:30 ID:Gwt2w1sS(1/3) AAS
>>798
まあ、画像を描画してたりする中じゃ誤差の範囲かw
800: 2009/11/13(金)13:09 ID:a/UC3uqk(1) AAS
シューティングやアクションの座標管理ってfloatでやってる?
ピクセル単位でしか描画できないからそれにあわせて有理数クラスとか作ってきっちり管理したほうがいいのかな?
801: 2009/11/13(金)13:30 ID:OOq9undM(1) AAS
俺はintでやってるなぁ。
んで描画の際に座標を縮小計算してる。

けど、こんなバカな事やるより普通にやった方がいいんじゃないかな。
802
(1): 2009/11/13(金)13:55 ID:unLhzSgq(1/2) AAS
intを固定小数点的に使う方法が801の方法だね
個人的には浮動小数点(float)の方が扱いやすいと思うけど、人それぞれだわ

自分の場合は、質点の力学にありがちな位置・速度ベクトル・加速度ベクトルを直交座標/極座標で与えて運動させる
自作クラス作って対応してます
キャラや敵の動きのAIが作りやすくて便利なのでオススメ
803: 2009/11/13(金)13:58 ID:Gwt2w1sS(2/3) AAS
自分は1ピクセルを内部で256分割してる。
いちいちビットシフトさせるのも面倒なので、ビットフィールドでそれっぽく。

これが良い方法なのかは分からないが。
804
(1): 2009/11/13(金)14:11 ID:Gwt2w1sS(3/3) AAS
>>802
なんという富豪プログラミングw

……っていうほど富豪でもないけどさ、
ゲームによっては凄く有効な方法だよね、それ。
805: 2009/11/13(金)14:49 ID:unLhzSgq(2/2) AAS
>>804
何かしらキャラクタを動かすときに、毎フレームごとにUpdate呼び出すだけで、自動で運動してくれるから見てて楽しいですね
欲を言うと、剛体の回転運動・完全な衝突検出と衝突後運動・質量と万有引力概念 ぐらいまではライブラリに組み込みたいんだけど、
STGやACT作る分には今のところ事足りてるかな
806: 2009/11/14(土)14:45 ID:yHFa5MG1(1) AAS
最近公式に管理人現れてないな
807: 2009/11/14(土)17:44 ID:L1o7CyjI(1) AAS
外部リンク[html]:homepage2.nifty.com
忙しいのだろうか・・・
Xファイルのあまりの複雑さに挫折した自分にとっては
最近の動きは期待が高まる。管理人さんファイト。

不安なのはXファイルがDIRECTX10でサポート打ち切りの噂。
代替のフォーマットが何かとかググってもサッパリわからない。
808: 2009/11/14(土)22:23 ID:Jv2Ghhx/(1) AAS
正直Xファイルはなくなってほしい
809
(2): 2009/11/14(土)23:26 ID:1XcvRxj4(1) AAS
DXLIBでゲーム作るとdirectXそのまま使うより実際どのくらい処理遅くなるの?
最近のPCだとほぼ違いはないのかな
結構重いもの作ろうと思ってるから気になる
810: 2009/11/15(日)00:07 ID:Yvz9QUwA(1) AAS
CPU使用率が一桁から二桁になる
811
(1): 2009/11/15(日)12:47 ID:Z5q5kesn(1/3) AAS
フルスクリーンとウィンドウの切り替えするときにするべき処理としなくていい処理がわからん
とりあえず呼び出したSet〜を記録しておいて丸ごと再呼び出ししてるけど、こんなんでいいんだろうか
足りない関数とかいらないのまでありそうで不安だわ
812: 2009/11/15(日)16:42 ID:C19h/pYA(1) AAS
>>809
直接Direct3D使うにしてもどうせDXLibと似たようなものを自分で書くことになるだけだからそんなに変わらん
ピクセル単位のエフェクトとかやりたかったらDirect3Dでシェーダ使えば桁違いの性能が出るけど
813
(2): 2009/11/15(日)17:20 ID:T7dfTd78(1/5) AAS
すみませんが超初心者のトラブルを助けてください
14歳からはじめるC言語ゲームプログラミングを買ってそれに従って
Express 2008 にDXライブラリーを組み込んで使い始めました(Vista 64bit)

まず以下のプログラムを書いてデバッグ開始すると黒いウィンドウが現れ
その左上に水色の正方形があらわれました

#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hI, HINSTANCE hP, LPSTR IpC, int nC){
省12
814: 2009/11/15(日)17:22 ID:uXtMwLeG(1/2) AAS
809じゃないけど3D使わないならDxLibでまず充分な感じかな?
CPU使用率高いのは気になる といってもDxLibしか使えないから比較のしようがないんだけど
815
(1): 2009/11/15(日)17:24 ID:uXtMwLeG(2/2) AAS
>>813
・セーブしてない
・何らかの原因でセーブできてない
・エラーが出ていて前回ビルドしたものをそのまま起動している

いずれにせよDxライブラリとは関係ないと思われ
816
(1): 2009/11/15(日)17:51 ID:T7dfTd78(2/5) AAS
>>815
ありがとうございます

○○.cppの保存をしてからやってもダメでした

あらわれたウィンドウを消すと
出力元の表示 デバッグ

Alloc memory dump Total size:0(0.000kb) Alloc num:0

スレッド 'Win32 スレッド' (0xc5c) はコード 0 (0x0) で終了しました。
省6
817: 2009/11/15(日)18:09 ID:Z5q5kesn(2/3) AAS
SetJoypadInputToKeyInputの使い方がよくわからないんだけど

SetJoypadInputToKeyInput( DX_INPUT_PAD1, PAD_INPUT_UP, KEY_INPUT_I, -1, -1, -1 );

って書いた場合、キーボードのIを押すと1Pパッドの上ボタンが反応するってことでいいの?
公式のサンプルをそのまま実行してもキーボードのほうがさっぱり反応しないから困ってるんだけど・・・
818: 2009/11/15(日)18:19 ID:Z5q5kesn(3/3) AAS
すいません自己解決?しました

パッドが刺さってないとキーボードの対応も無効化されるみたいだ
結局パッドがない場合はない場合で独自にキーテーブルを作らないといけないのか・・・
819
(1): 2009/11/15(日)19:06 ID:DGeILl3n(1) AAS
>>816
なんだろうか。
メニューのビルド(B)→ソリューションのクリーン(C)やってみるとか。
820
(1): 2009/11/15(日)19:56 ID:8OuNjlci(1) AAS
書き換え前後のソースは?(DrawBoxだけでも
821: 2009/11/15(日)20:18 ID:T7dfTd78(3/5) AAS
>>820
ありがとうございます

DrawBox(0, 0, 240, 120, 65535, TRUE ); 書き換え前
DrawBox(0, 0, 10, 10, 65535, TRUE ); 書き換え後

ほかにもいろいろ変えてみましたが現れるウィンドウはまったくかわりません
元のままです
それどころか
省8
822: 2009/11/15(日)20:20 ID:T7dfTd78(4/5) AAS
>>819
ありがとうございます
ソリューションのクリーンやってみましたがだめでした
823: 813 2009/11/15(日)20:26 ID:T7dfTd78(5/5) AAS
申し訳ありませんが
誘導されて別スレに同じ質問をしましたのでもしレスをいただけるなら
これからこちらにお願いします
すみません

【初心者】スレを立てる前にココで質問を【Part20】
2chスレ:gamedev
824: 2009/11/16(月)00:54 ID:/TTGxmoU(1) AAS
SetMenuItemMarkの使い方が分からん
*ItemNameって何?メニューはリソースエディタで作ったんだが何をどうすればいいのか。
項目にチェックをつけたいんだが
825: 2009/11/16(月)16:40 ID:3CcEh2OH(1/3) AAS
質問

このライブラリで、「一度だけキーが押されたか」を取得する場合どうしたらいい?
getkeyでやると押されている間ずっと判定しちゃってて、使いづらい。
826
(1): 2009/11/16(月)16:47 ID:xtNS2c6w(1) AAS
答え

ライブラリに頼らなくてもできます
827
(1): 2009/11/16(月)16:50 ID:0lR8bOhJ(1) AAS
前回の状態は保存しておこう
828
(1): 2009/11/16(月)19:11 ID:3CcEh2OH(2/3) AAS
>>826
どんな感じの関数にすればいいの?
すまんが教えてくれ
829: 2009/11/16(月)19:21 ID:9CTmGw4p(1) AAS
827が答えいっとるじゃないか。
830
(1): 2009/11/16(月)20:04 ID:AWzX3IiL(1) AAS
前スレでもこんな話題あったような

>>828
一応コピペで動く(と思う)コード
外部リンク:codepad.org

基本的な考えは>>827だから、
一連の処理を関数化するなりクラス化するなり、自分で工夫してみればいいよ
831
(1): 2009/11/16(月)20:57 ID:3CcEh2OH(3/3) AAS
>>830
あーなるほど、2次元配列で管理かー。

これ参考にクラス化して使わしてもらうね、ありがとう。
832: 2009/11/16(月)21:07 ID:HqHZnSqW(1) AAS
こういう質問よく見かけるけど、
普段ゲームを作らない人には思いつきにくい処理なのかな。
なぜわからないのか不思議だ。
833: 2009/11/16(月)21:42 ID:KIgwECNq(1) AAS
まったく同じ質問しようとしてスレひらいてびっくりした
834: 2009/11/16(月)22:36 ID:G0YK1Asy(1) AAS
変数というものが何のためにあるのかとかもっと考えてほしいな
835: 2009/11/16(月)23:33 ID:lIlaylz+(1) AAS
公式サイトに答えがあるな。
836: 2009/11/17(火)11:21 ID:3pCkE9PE(1) AAS
>>831
2次元配列関係なくね…?
837
(1): 2009/11/17(火)12:30 ID:FXTCZmOd(1/2) AAS
>>811
あと、勝手にフルスクリーンとウィンドウの切り替えが行われるとき
その関数を自動で呼ばれるようにってできる?
って勝手に切り替わりっておきない?
838
(1): 2009/11/17(火)13:35 ID:n6/hEDR6(1) AAS
>>837
フルスクリーン状態からAlt+Tabで一時的にウィンドウ状態に戻り再度フルスクリーン化した際に、サーフェスがロストされるよ
SetRestoreGraphCallbackを指定して、戻った際にReloadFileGraphAllでもすればLoadGraph()で読まれたものだけは復帰可能
(他の方法で生成したサーフェスは内容破棄される)

以前のDXライブラリ2.Xのバージョンの頃はCreateGraphFromMem()もMakeGraph()もMakeScreen()も復元できる裏技が通用したんだけど、
3.Xになってから厳しくなったよなぁ

その辺の検証コード興味があるのなら晒すよ
839: 2009/11/17(火)14:14 ID:FXTCZmOd(2/2) AAS
>>838
おお、レスありがとう
興味ありありです、よろしくお願いします

3Dだとどうなんだろう、モデルデータの使いまわしは
MV1LoadModelで読み込んだあとMV1DuplicateModel使うよね
そうやって取得したハンドルからアニメーション関数使ったりするし
なんとなく大変そうだ
省3
840: 2009/11/17(火)16:00 ID:8OqfWDW8(1/3) AAS
つーかどれが初期化される対象なのかわからん
リファレンスもうちょっと詳しく書いてくれればいいのに
841: 2009/11/17(火)16:09 ID:ZC4o54zE(1) AAS
そういう問題もあったのか
開発中はずっとウインドウモードだから全く気にしてなかったぜ・・・
842: 2009/11/17(火)22:00 ID:8OqfWDW8(2/3) AAS
DrawBoxで半透明の矩形を描きたいんだけどこれは可能?
CPUからグラフィックハンドルを作って描画するしかない?
843
(1): 2009/11/17(火)22:16 ID:NCb+JjAR(1) AAS
もっと柔軟にものを考えようぜ。
SetDrawBlendModeってのがあるだろ。
844: 2009/11/17(火)22:35 ID:8OqfWDW8(3/3) AAS
>>843
ありがとう
リファレンス上から下まで見たはずなんけどあるの気付かなかったぜ
845
(1): 2009/11/18(水)01:23 ID:qgpLjbHP(1) AAS
エントリーポイントをWinMainにしてコンソール出力の関数使うのってなんか問題ある?
WinMainをmainに変えるとGUIとCUIの二画面になってコンソール出力するとちゃんと表示されるからデバッグに便利かな、と思ったんだけど・・・
846: 2009/11/18(水)03:12 ID:QbAZcWPQ(1) AAS
>>845
CUIコンソールに出さずにデバッグウィンドウに出力する、OutputDebugString使いなさいよー

void OutputDebugWindow(LPCTSTR pString, ...)
{
#ifdef DEBUG
va_list arglist;
va_start(arglist,pString);
省7
847: 2009/11/18(水)09:38 ID:xppAWWAs(1/2) AAS
SetAlwaysRunFlag()とGetWindowActiveFlag()組み合わせで
窓が非アクティブの時 BGM再生をとめて
その後に窓をアクティブにすると再生していたBGMを途中から再生させるようなことが可能だけど

しかしプログラムの窓の上の青い部分を左クリックおしっぱなしや右クリックおすと
BGMの再生がとまらなくてプログラムの処理がとまってるという現象になる
つまり 音楽と画面の絵のタイミングがズレるんだよなあ・・・・
848: 2009/11/18(水)09:59 ID:Aw+8Okqp(1/2) AAS
マウスカーソルが画面内にいるかいないかでも
判定しちゃえYO!
849: 2009/11/18(水)10:24 ID:xppAWWAs(2/2) AAS
その手があったか!!thx
850: 2009/11/18(水)10:35 ID:Aw+8Okqp(2/2) AAS
うお・・・マジか・・・
マウスカーソルが邪魔になると思うから
ShowCursor(FALSE);とかで消してやってくださいな
TRUEにすれば復活するよ
851
(1): 2009/11/18(水)20:06 ID:sJmU6d7e(1/6) AAS
毎フレームMakeGraphとDeleteGraphを実行って速度的に大丈夫ですか?
852: 2009/11/18(水)20:09 ID:D8L+6+cM(1/2) AAS
ダメ
なんでいちいち消して作り直す必要がある
853
(1): 2009/11/18(水)20:13 ID:sJmU6d7e(2/6) AAS
じゃー最初に1度だけMakeGraphして
毎フレーム透過色で全体を塗りつぶして初期化ってことできます?
854: 2009/11/18(水)20:54 ID:8lcSmlhL(1/2) AAS
意味がわからん。
何がしたいんだ。
855: 2009/11/18(水)21:01 ID:sJmU6d7e(3/6) AAS
DrawRectGraphとDrawRotaGraph2を一緒にしたい感じです
つまり、グラフィックの指定矩形部分のみを回転描画(回転中心指定あり)
856: 2009/11/18(水)21:12 ID:sJmU6d7e(4/6) AAS
補足です >>851>>853では
DrawRectGraphで空のグラフィックに一旦コピーして
DrawRotaGraph2で回転描画しようとしてました
でも空のグラフィックを毎フレーム空にしないと
前フレームでコピーしたグラフィックの残りカスが残ってしまうと思ったので聞きました
857: 2009/11/18(水)21:32 ID:D8L+6+cM(2/2) AAS
DerivationGraph使えば
858: 2009/11/18(水)21:47 ID:sJmU6d7e(5/6) AAS
DerivationGraphを毎フレーム使っても大丈夫でしょうか?
指定矩形部分の左上座標やサイズが毎フレーム変わるんです
859
(1): 2009/11/18(水)22:26 ID:sJmU6d7e(6/6) AAS
DerivationGraphを使う方法だと
DerivationGraphで作成したグラフィックハンドル(非グラフィックデータ)の
左上座標、サイズの値などが内部で積み重なっていくんじゃないかなと思いました

抜き出し元のグラフィックデータを解放せずに
DerivationGraphで作成したハンドルだけを解放する関数があればいいんですが
860
(2): 2009/11/18(水)23:22 ID:8lcSmlhL(2/2) AAS
何がしたいのかよくわからないなぁ。

元の画像があって、その一部分を矩形として切り出して、
単純にその矩形を回転させるのではなくて、
回転させつつ、元画像から切り出す部分をずらしていきたい、とかそんな感じ?
しかもどこを切り出すかは不定とか。
861
(1): 2009/11/18(水)23:26 ID:O571k7wA(1) AAS
DerivationGraphで作ったハンドルだけDeleteGraphすればおk
862: 2009/11/19(木)00:26 ID:D19Ec+8u(1) AAS
>>860
そんな感じです 切り出す部分を移動させつつサイズも大きくしたり小さくしたり

>>861
DerivationGraphで作ったハンドルだけDeleteGraphしてみたら
そのハンドルは使えなくなって、抜き出し元のハンドル指定すると
描画できたから>>859↓の理想の動作ができたっぽいです

ありがとうございました
863: 2009/11/19(木)01:34 ID:cu4/k47Y(1) AAS
もう解決したぽいけど、>>860のような用途なら
2Dでやるより板ポリゴンにテクスチャ貼って、
その板を移動や回転させながら
MV1SetFrameTextureAddressTransform()でUV値を
変えた方が楽な気がする
864
(1): 2009/11/20(金)08:32 ID:VQsGFVnC(1/2) AAS
DXライブラリでゲーム作品を作ったんですが、
提出する場合、相手がVisualCのコンパイラをもっているとして
最低限どのファイルかフォルダを私のソーステキストと一緒に入れれば
DXライブラリの機能は失われずに済むのでしょうか?
よろしくお願いします。
865: 2009/11/20(金)08:35 ID:dEAugKIR(1) AAS
ライブラリファイル(*.lib)とヘッダファイル(*.h)
つまり、VCの設定でパスを通したフォルダのファイルがあれば、環境が変わってもとりあえずコンパイルは可能
866
(1): 2009/11/20(金)08:57 ID:3aBOadq/(1/4) AAS
「プロジェクトに追加するべきファイル」ってフォルダがある。それの中身丸ごとぶち込めばおk
867
(1): 2009/11/20(金)11:18 ID:VQsGFVnC(2/2) AAS
>>866
それはどのような操作をすればいいんですか?
すいません、あまり詳しくないもので
1-
あと 134 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.021s