DXライブラリ質問&雑談掲示板2
[トップに戻る] [使いかた] [ワード検索] [管理用]
おなまえ
題  名
メッセージ
削除キー (記事削除用。英数字で8文字以内)
クッキー情報を保存

<管理人>
ご返信は一週間に一度、土日のどちらかで行います。平日は時間に余裕があるときだけご返信します。
この掲示板はマルチポスト禁止です。

[5456] ご返信 投稿者:管理人 投稿日:2024/07/17(Wed) 02:50 [返信]
> naohiro19さん ご連絡ありがとうございます 該当のスレッドを削除しました m(_ _)m

[5455] スパム目的の投稿が投稿されました。 投稿者:naohiro19 投稿日:2024/07/16(Tue) 21:45 [返信]
以下のページになります。 dxlib.xsrv.jp/cgi/patiobbs/patio.cgi?mode=view&no=5644

[5454] Re:[5453] ご返信 投稿者:わし 投稿日:2024/07/10(Wed) 20:41 [返信]
垂直同期を動的変更出来るようになりました! 動的変更出来ないのはDirect3D 9の仕様だったのですね ご対応ありがとうございました!

[5453] ご返信 投稿者:管理人 投稿日:2024/07/10(Wed) 03:21 [返信]
> わしさん すみません、Direct3D 10 以降では動的に垂直同期をON/OFFできるので、 DXライブラリも Direct3D 11 を使用している場合は垂直同期を動的にON/OFFできるように していたつもりだったのですが、コードを確認したところそのようになっていませんでした ( Android でのみ動的な垂直同期ON/OFFができるようになっていました… ) Direct3D 11 を使用した場合も SetWaitVSyncFlag で動的な垂直同期のON/OFFをできるようにしましたので、 よろしければこちらの修正版をお試しください m(_ _;m https://dxlib.xsrv.jp/temp/DxLibVCTest.zip // Windows版 VisualC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCCTest.zip // Windows版 BorlandC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCC2Test.zip // Windows版 C++ Builder 11.3 用 https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.zip // Windows版 MinGW 用 https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // Windows版 .NET用 https://dxlib.xsrv.jp/temp/DxLibMakeTest.zip // ソース (中身を既存のライブラリのファイルに上書きして『リビルド』をして下さい) 因みにDXライブラリは Direct3D 11 が使用できる環境ではデフォルトでは Direct3D 11 を使用しますが、 Direct3D 11 に対応したグラフィックデバイスが存在しない環境や、Direct3D 11 が使用できないバージョンの Windows を使用していたり、SetUseDirect3DVersion( DX_DIRECT3D_9 ); などを DxLib_Init の前に実行して Direct3D 9 を使用する設定にしていた場合は動的に垂直同期を変更できない Direct3D 9 で動作しますのでご注意ください m(_ _)m

[5452] 垂直同期の動的変更について 投稿者:わし 投稿日:2024/07/09(Tue) 22:01 [返信]
垂直同期設定をゲーム中に動的に変更させたいのですが 過去の同様のスレッドにおいて 今のDirectXにはそのような機能自体が用意されていないというご回答をされているのを拝見しました しかし現在発売される様々なPCゲームにおいては オプションで垂直同期のオン/オフを変更出来るようになっているというのは珍しくないと思います これはそれらのゲームに使用されているエンジンが動的に変更する手段を見つけているのではなく 単純にアプリケーション起動時に垂直同期を待たない設定でDirectXを初期化した後 オプションで垂直同期設定がオンになっていた場合に 垂直同期を待つAPIを都度呼び出している(のであろう)ということなのでしょうか?

[5451] ご返信 投稿者:管理人 投稿日:2024/06/28(Fri) 20:20 [返信]
> Pさん すみません、載せていただいた2行だけでは流石に原因が分かりませんので、 プログラム全体を拝見できないでしょうか? また、こちらの掲示板では長いプログラムを書き込むのにあまり向いていないので、 できればこちらの質問掲示板の方に投稿していただければと思います m(_ _)m <DXライブラリプログラム&プログラム質問掲示板(スレッド表示)> https://dxlib.xsrv.jp/cgi/patiobbs/patio.cgi?

[5450] 無題 投稿者:P 投稿日:2024/06/27(Thu) 11:17 [返信]
タイマーを作ろうとしているのですが ゲームが始まる前(タイトル画面)からカウントが減っちゃうんです int time = GetNowCount(); DrawFormatString(400, 150, GetColor(255, 255, 255), "TIME:%d", (60000 - (GetNowCount() - time)) / 1000); って書いてるんですけどゲーム画面になってからカウントするようにするにはどうしたらいいですか?

[5449] Re:[5448] ご返信 投稿者:シュウ 投稿日:2024/06/15(Sat) 10:49 [返信]
ありがとうございました! 参考にさせていただきます!

[5448] ご返信 投稿者:管理人 投稿日:2024/06/15(Sat) 04:46 [返信]
> シュウさん どちらが先でも特に問題は無いと思いますが 正しい順序としては DxLib_End の後に PostQuitMessage になります

[5447] SetUserWindow使用時の終了処理 投稿者:シュウ 投稿日:2024/06/14(Fri) 01:39 [返信]
SetUserWindowを使用したプログラムで終了処理をさせる場合に DxLib_EndをPostQuitMessageの前と後どちらで処理させたら良いか分からないのですが 正しい順序はありますか?

[5446] ご返信 投稿者:管理人 投稿日:2024/06/14(Fri) 00:46 [返信]
> Pさん こちらの Dixqさんのウェブサイトの <C言語何でも質問サイト> https://dixq.net/ 『龍神録プログラミングの館』がおすすめです

[5445] 弾幕ゲームを作りたいです 投稿者:P 投稿日:2024/06/13(Thu) 11:48 [返信]
弾幕ゲームを作りたいのですが おすすめのサイトなどありますか?

[5444] Re:[5443] ご返信 投稿者:K 投稿日:2024/06/12(Wed) 18:41 [返信]
教えていただいた通りにやったらできました! ありがとうございました!

[5443] ご返信 投稿者:管理人 投稿日:2024/06/12(Wed) 00:12 [返信]
> Kさん DxaEncode.exe はコマンドプロンプトで動作する実行ファイルなので、もしダブルクリックで 起動されたのでしたら起動した瞬間に終了するので画面には何も表示されません バッチファイルを作成して使用するのが一般的ですが、まとめたいファイルを一つのフォルダに入れて そのフォルダを DxaEncode.exe のアイコンにドラッグ&ドロップすることでも DXAファイルを 作成することができますので、よろしければお試しください m(_ _)m

[5442] DXaEncodeについて 投稿者:K 投稿日:2024/06/11(Tue) 22:26 [返信]
複数のファイルをひとつにまとめようと、DXaEncodeのexeファイルを起動しようとしたのですが、起動しませんでした。 原因が分かる方がいたら教えてくれるとありがたいです。

[5441] 直りました 投稿者: 投稿日:2024/06/10(Mon) 09:37 [返信]
while(1)にしてました、 while (ProcessMessage() == 0) にしたらプログラムを変えても実行できるようになりました。 助かりました。

[5440] ご返信 投稿者:管理人 投稿日:2024/06/09(Sun) 23:21 [返信]
> 天さん > 再起動して実行できたんですけどプログラムを書き換えて実行するとまた同じエラーがでて > デバックファイルを消すと実行できてまたプログラムを書き換えると同じエラーがでます 恐らく原因はプログラムが終了していないので、『実行中の実行ファイル( 拡張子 exe のファイル )を上書きすることができない』という エラーが発生しているのだと思います( PCを再起動すると流石に実行が終了するので、再起動後は一度はビルドが成功する ) 天さんが作成されたプログラムは以下のプログラムのように ProcessMessage() を定期的に実行して、 ProcessMessage() の戻り値が 0 以外だったらプログラムを終了するようになっていますでしょうか? #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { // ウインドウモードで起動 ChangeWindowMode( TRUE ) ; // DXライブラリの初期化 if( DxLib_Init() < 0 ) return -1 ; // 描画先を裏画面にする SetDrawScreen( DX_SCREEN_BACK ) ; // メインループ while( ProcessMessage() == 0 ) { // 画面のクリア ClearDrawScreen() ; // 画面中心に四角形を描画 DrawBox( 320 - 32, 240 - 32, 320 + 32, 240 + 32, GetColor( 255,255,255 ), TRUE ) ; // 裏画面の内容を表画面に反映 ScreenFlip() ; } // DXライブラリの後始末 DxLib_End() ; // ソフトの終了 return 0 ; }

[5439] 無題 投稿者: 投稿日:2024/06/09(Sun) 21:40 [返信]
再起動して実行できたんですけどプログラムを書き換えて実行するとまた同じエラーがでて デバックファイルを消すと実行できてまたプログラムを書き換えると同じエラーがでます

[5438] ご返信 投稿者:管理人 投稿日:2024/06/07(Fri) 21:47 [返信]
> 天さん > LNK1168ファイル〜exeを開くことができませんってエラーがでたんですけど > どうすれば直りますか? そちらのエラーが発生した場合は恐らくPCを再起動すると直りますので よろしければお試しください

[5437] 謎のエラー 投稿者: 投稿日:2024/06/06(Thu) 15:51 [返信]
LNK1168ファイル〜exeを開くことができませんってエラーがでたんですけど どうすれば直りますか?

[5436] Re:[5433] ご返信 投稿者:未定 投稿日:2024/05/29(Wed) 13:58 [返信]
> 管理人 様  お答えいただきありがとうございました。挑戦してみますm(_ _)m > 手元に ARM版Windows の PC を持っていないので試せていませんが > ARM版Windows はDXライブラリが使用している DirectX 9 と DirectX 11 に対応しているとのことなので > 恐らくDXライブラリも正常に動作すると思います

[5435] ご返信 投稿者:管理人 投稿日:2024/05/29(Wed) 02:38 [返信]
> sakanaさん こちらのページで敵と弾の当たり判定の解説をしていますので( プレイヤーではなく敵ですが、考え方は一緒です )、 よろしければ参考にしてみてください <6.敵の当たり判定をつけよう> https://dxlib.xsrv.jp/lecture/lecture1_6.html

[5434] 無題 投稿者:sakana 投稿日:2024/05/28(Tue) 10:31 [返信]
シューティングゲームを作っているのですが、プレイヤーと弾の当たり判定がわかりません

[5433] ご返信 投稿者:管理人 投稿日:2024/05/27(Mon) 22:49 [返信]
> 未定さん > Snapdragon X Elite(ARMベース)上でDXライブラリが正常に動作するかどうか、または互換性に関する情報を教えていただけないでしょうか? 手元に ARM版Windows の PC を持っていないので試せていませんが ARM版Windows はDXライブラリが使用している DirectX 9 と DirectX 11 に対応しているとのことなので 恐らくDXライブラリも正常に動作すると思います

[5432] ARMアーキテクチャ対応について 投稿者:未定 投稿日:2024/05/26(Sun) 20:59 [返信]
私はSnapdragon X Elite搭載のPCでDXライブラリを使用してゲーム開発を検討しております。しかし、公式サイトにARMアーキテクチャに関する記載が見当たりませんでした。 Snapdragon X Elite(ARMベース)上でDXライブラリが正常に動作するかどうか、または互換性に関する情報を教えていただけないでしょうか? すいません、プログラミング初心者なもので、的外れな質問かもしれませんが、お答えいただければ幸いです。

[5431] ご返信 投稿者:管理人 投稿日:2024/05/24(Fri) 02:09 [返信]
> sakanaさん プログラミングを続けていればいずれ解けるようになると思います ( プログラミングを続けていると様々なシチュエーションの処理を書く事になるので、  それが paiza の問題を解くための知識となるため ) 『そんな気の長い話ではなく、直ぐに解けるようになるための方法を』ということでしたら、 すみませんが私には分かりません… ( プログラミングの問題集を素早く解かなければならない といった状況に取り組んだことがないので… )

[5430] paiza 投稿者:sakana 投稿日:2024/05/22(Wed) 15:53 [返信]
paizaのCランクの問題が難しいのですが どうやって勉強をしたら解けるようになりますか?

[5429] ご返信 投稿者:管理人 投稿日:2024/05/10(Fri) 13:21 [返信]
> Tom201512 . u . さん > 制作者本人である確証もなしにお願いしてしまい申し訳ございませんでした。 そう言われてみればそうですね (^ ^; ただ、確かにツイッターのアカウントも消えていたりと仰られている事に間違いは ありませんでしたので対応させていただきました > おれさん > if (posY > 672 && posX + 16 >= asiba_X && posX <= asiba_X + 64) ↑ こちらの式ですが、posY については 672 より大きい値かどうかしか判定していません こちらを posX と同じように障害物がある範囲にプレイヤーが居るかどうかを判定する 条件式にする必要があります

[5428] ブロックの上に乗る処理とジャンプ処理 投稿者:おれ 投稿日:2024/05/10(Fri) 11:09 [返信]
今、2Dの縦スクロールのゲームを作っているのですが、 障害物の下でジャンプすると、障害物のところまでワープする。 という結果になっており、うまくいかないです。どなたか教えていただけますでしょうか。 int posX = 240; // キャラクターのX座標 int posY = 765; // キャラクターのY座標 int y_prev = 0; // 前のフレームでプレイヤーがいたY座標 int y_temp = 0; // 現在のフレームでプレイヤーがいるY座標 int asiba_Y = 704;//足場のx座標 int asiba_X = 64;//足場のY座標 bool jflag = false; // ジャンプしているかのフラグ void Player::playerJump(void) { // ジャンプ処理 if (jflag == true) { y_temp = posY; posY += (posY - y_prev) + 1; y_prev = y_temp; // もし障害物に乗っていたら止まる if (posY > 672 && posX + 16 >= asiba_X && posX <= asiba_X + 64) { jflag = false; posY = 672; } //キャラクターが765のところにいたら着地 if (posY > 765) { jflag = false; posY = 765; } } if (CheckHitKey(KEY_INPUT_SPACE) == 1 && jflag == false) { jflag = true; y_prev = posY; posY = posY - 20; if (posX <= 156 && posX > 64) { //posY = posY + 10; } } }

[5427] Re:[5426] ご返信 投稿者:Tom201512 . u . 投稿日:2024/05/09(Thu) 21:52 [返信]
こちらの方で確認がとれました。 制作者本人である確証もなしにお願いしてしまい申し訳ございませんでした。 ですが削除してくださり本当にありがとうございました。 > > Tom201512 . u . さん > > 承知いたしました > 私の方で "GLORYWING Operation Iron Storm(試遊版)" のご投稿の削除をしましたのでご確認ください m(_ _)m

記事No 削除キー

- Aska BBS -