DXライブラリ 総合スレッド その3at GAMEDEV
DXライブラリ 総合スレッド その3 - 暇つぶし2ch13:名前は開発中のものです。
09/03/31 15:36:27 EoCekJlW
10レスにも満たないやりとりで異常って言われても。

14:名前は開発中のものです。
09/03/31 16:31:47 IkcCkAe5
>>13
俺は知識披露してた年寄(ID:8c8Vy+u+、ID:wJL07IJT )のことを言ってるんだが。
>>920を見てlist君という表現を使った。紛らわしかったならすまん。

15:名前は開発中のものです。
09/03/31 18:20:23 3yX1QyX+
116 名前: 名前は開発中のものです。 Mail: sage 投稿日: 2009/02/07(土) 16:18:41 ID: Pn1Dl7Zh
アフォBlog C言語勉強したけどゲーム作れないぞコラって人向けに
URLリンク(afoafodayo.blog84.fc2.com)

やっとみつけた
はてなブックマークの検索性の悪さは異常・・・

16:名前は開発中のものです。
09/03/31 18:54:09 I/qO2uGs
>>14
list君と呼ばれたびっくりした。自分が年寄りの老害です。
知識披露するにも前>>920は、前>>916で聞かれたから素直に答えただけで……。
長文が目についてウザいのは判るが、聞かれたことに答えてるだけで話題は(自分からは)逸脱してないとおもうけどなあ。
自称中級者が懇切丁寧に説明するのはこのスレじゃアウトなん?
正直叩かれるのにビックリだ。

17:名前は開発中のものです。
09/03/31 19:04:48 clln3x8F
GetHitKeyStateAllを手動でやってたおれバカス

18:名前は開発中のものです。
09/03/31 19:11:27 EoCekJlW
多分、流れ的に文句言ってるのは一人だと思うんだが
なぜそこまで否定するのかが解らない。
普段ならスルーされる程度の話題だと思うんだけど。

19:名前は開発中のものです。
09/03/31 20:47:39 Ad7RXl/L
タイミングの問題じゃね?
スレ立てじゃない>2が勝手にテンプレとか言って持ち越しにしただけ。

20:名前は開発中のものです。
09/03/31 21:13:43 Es/JEStY
2はテンプレじゃないから無視でいいよ

21:名前は開発中のものです。
09/03/31 22:29:49 9fS7KbI9
テンプレもちょっと修正しておこうか

--
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。

DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

【公式】
URLリンク(homepage2.nifty.com)

【過去スレ】
DXライブラリ 総合スレッド
スレリンク(gamedev板)
DXライブラリ 総合スレッド 2008
スレリンク(gamedev板)
DXライブラリ 総合スレッド その3
スレリンク(gamedev板)

22:名前は開発中のものです。
09/03/31 23:50:48 yOP/w+uJ
さすがに早すぎて次作る時に見逃しそうだけどw

23:名前は開発中のものです。
09/04/01 02:25:50 fUEkL36W
>>16
気にしなくていいと思うよ。
ためになるレスだったし、スレ違いでもなんでもないと思うよ。
DXライブラリを取り巻く事って、ゲーム作りのちょっとしたTIPSなんかも含むと思うし、
それにまつわる雑談なんかもいいと思うよ。
それこそDXライブラリ限定だとしたら公式がある限り誰もこのスレを使う必要ないしね。

24:名前は開発中のものです。
09/04/01 07:29:47 99TD3Xse
前スレ916であるところの私は、ポインタはおろかクラスすら使った事なかったので、
せっかく教えていただいた知識も役立ててませんけどね……。

ああ、でもクラスは勉強して使ってみました。けど三行目がさっぱりわからず
結局1フレームに一回、自前でソートさせてます。

25:名前は開発中のものです。
09/04/01 07:29:56 zX+vyCNM
>>16
あんた最高にかっこいいぜ。

26:名前は開発中のものです。
09/04/01 09:02:30 k4OaMNtU
もうDXライブラリのことなんかどうでもいいんだろ?
正直に言えよおまいら

27:名前は開発中のものです。
09/04/01 17:21:42 BYfton9F
up or downのゲームすら作れません

28:名前は開発中のものです。
09/04/01 17:31:54 WMtkg65d
まず、最初に
up or downのゲーム を日本語で説明する文章を書きます。



29:名前は開発中のものです。
09/04/01 18:01:07 BYfton9F
>>27だけど、確立チェッカー作って眺めてるだけで満足だわ
勝率と敗北率がお互い50%絶対超えないし、引き分け率も0.074-0.075の間いったり来たり。

数学やっぱ楽しいです^p^

30:名前は開発中のものです。
09/04/01 18:22:56 iMcacUMw
>>27

グー チョキ パーの画像作って
じゃんけんぽい ズコ!ってゲームつくるんだ

31:名前は開発中のものです。
09/04/01 18:30:15 OtGOIqcO
やっぴー
も必要ではなかろうか

32:名前は開発中のものです。
09/04/01 18:43:39 hayLCRBv
>4月3日にたぶんあるものを公表します。楽しみにしておいてください。
>...COMING SOON

>なんか新聞社を敵に回してしまったかもしれません。あのサイトに数日前に導入した機能が・・・なにかあったらなにかあったと思ってください

何があったんだJEX氏

33:名前は開発中のものです。
09/04/01 20:24:21 BYfton9F
URLリンク(www8.uploader.jp)

もっと良いプログラム組めるようになりてぇ
次はじゃんけんゲームでも作ってみるか

34:名前は開発中のものです。
09/04/01 20:45:45 LaqgGHZH
>>33
あの、、、1点だけ失礼します。
×確立
○確率

35:名前は開発中のものです。
09/04/01 22:03:55 iMcacUMw
>>34

おっとIMEの悪口はそこまでだ



36:名前は開発中のものです。
09/04/01 23:29:46 BYfton9F
やだ・・・恥ずかしい////

37:名前は開発中のものです。
09/04/02 00:11:44 CktrGb4U
>>35
本当にIMEたんのこと想っているなら、誤変換をIMEたんのせいにしないであげて。

38:名前は開発中のものです。
09/04/02 17:53:48 QCCv4XDG
0から99の数字を高速で+1させていきボタン押した時のタイミングに出た
数字で内部判定すれば自力抽選みたいなことができる

子供のころあったゲーセンのメダルゲームのジャンケンマン初期のやつは
またコレがとんでもない上記のプログラムをさらに単純にしたプログラムで
なんとデモ画面のグーチョキパーの動きで勝率8割まで攻略可能だったという
(8割というのは10円いれる時の物理的なタイミングの誤差。よく10円つまるしww)
URLリンク(dgm.hmc6.net)


39:名前は開発中のものです。
09/04/02 22:59:56 fVGveLIS
確立の多さは異常

40:名前は開発中のものです。
09/04/02 23:26:05 QVNrnR8y
以外もな。

41:名前は開発中のものです。
09/04/02 23:49:51 libAlu/0
定番の誤変換に突っ込むというお約束なのか、それともマジ指摘なのか。
いつも判断つかないんだが、何か良い方法は無いだろうか。

42:名前は開発中のものです。
09/04/02 23:53:46 fVGveLIS
マジだぜ。
概出と違って。

43:名前は開発中のものです。
09/04/03 00:05:19 XCYlTU58
>42
そうか、あれってマジなのか。
なんだか見るたびに変な応酬があって、うんざりしてたんだ。

44:名前は開発中のものです。
09/04/03 00:16:55 jC+E2iBn
普通に書けば全て解決

45:名前は開発中のものです。
09/04/03 02:10:31 7QUZderU
2.25bを使いたいけどBCC5.5な俺涙目w

46:名前は開発中のものです。
09/04/03 02:11:05 jC+E2iBn
VCを導入しようぜ。タダなんだし。

47:名前は開発中のものです。
09/04/03 16:55:04 GX2/ISHC
10年も前のコンパイラ(BCC)を使い続ける理由を教えてくれ

48:名前は開発中のものです。
09/04/03 18:32:18 1bPcLAM2
SP2をいれるとパソコンろくに動かない

49:名前は開発中のものです。
09/04/03 18:37:35 UxNIEp1w
そろそろPCの買い替え時だと思われ

50:名前は開発中のものです。
09/04/03 19:01:42 sN5oQCLD
今日、公表される何かを楽しみに待っているのですが。。。
依然、何も無し。。。

51:名前は開発中のものです。
09/04/03 20:16:20 s4gdwShB
完全に初心者向け雑談スレになったな

52:名前は開発中のものです。
09/04/03 20:20:44 bOoPhqNd
初心者向けのライブラリだから仕方がない

53:名前は開発中のものです。
09/04/03 20:21:34 B6jkiksS
なるほど。PCが重いからBCC使ってるわけね。若干斜め上の意見だった。
統合環境無くても、bcc.exeの代わりにcl.exe使えばいいんじゃない?

54:名前は開発中のものです。
09/04/03 20:23:00 DsLE17Ac
そこまで他人の環境に口を出す理由を知りたい。

55:名前は開発中のものです。
09/04/03 20:24:44 B6jkiksS
>>54

>>45を読んでくれ

56:名前は開発中のものです。
09/04/03 22:33:16 jC+E2iBn
流れを読まずにネタ。
VCでDXライブラリ使っているとインテリセンスが働かなくて不便だなと感じるようになった。
自分で関数やクラスを作るようになってからは。

57:名前は開発中のものです。
09/04/03 23:17:11 XCYlTU58
最後にVC触ってから何年も経ってるから記憶は曖昧だし、
当時使ってたのがVC6だから、出来るかどうかは分からないが。

DXライブラリのソースを読み込む(コンパイルも?)と、内部用の辞書ファイルが生成される。
その辞書ファイルを、自分のプロジェクトのところにコピペ(上書き)。
こうすることでDXライブラリの関数群も、インテリセンスが使えたと思う。
もちろん自前の関数も問題なく使える。

辞書ファイルの拡張子はncbとかだったと思うが自信は無い。

58:名前は開発中のものです。
09/04/03 23:45:57 jC+E2iBn
>>57
thx
ちょっと試してみる

59:名前は開発中のものです。
09/04/04 00:30:58 zQfs6Ss5
VS2008だけどDXライブラリの関数も自前関数もインテリセンス働くよ。
もちろん働かないときもあるけどそれはVC++の気分次第っていうのはちょっとした常識じゃない?
そういう時は何も考えずにまずncb消す。

60:名前は開発中のものです。
09/04/04 00:34:18 MwhC2F5h
あら、そうなの。
VC2003だからかな。
2008の無料の奴に替えよかな

61:名前は開発中のものです。
09/04/04 00:38:22 bhHC3g+R
そだな2003はインテリ働かないよ

62:名前は開発中のものです。
09/04/04 03:27:09 zQfs6Ss5
いや多分VC++6の頃からVC++のインテリセンスは進化してないと思うよ。多分。
VC++のインテリセンスに関してはあまり期待しないっていうのが普通じゃないかな。
2010ではインテリセンスも含めてVC++とかMFCにも力入れるみたいだね。(2008SP1もMFCに力入れてきたし)
だから多分2003から2008にしても変わらないと思うよ。
まあまずは終了させてncb消して起動しなおしてごらん。

63:名前は開発中のものです。
09/04/04 03:43:24 NVBO+V4R
>>62
知ったかぶり乙

64:名前は開発中のものです。
09/04/04 08:27:41 zQfs6Ss5
>>63
知ってるなら教えてあげなよ。
俺は経験談と知ってる範囲で答えたまで。

65:名前は開発中のものです。
09/04/04 09:53:30 eurKE9M4
1人ほど煽り荒らしが居るな

66:名前は開発中のものです。
09/04/04 13:21:59 NVBO+V4R
>>64
VS2005からヘッダに書いてあるだけでインテリセンスが効く
59の書き込みでインテリセンス効くって書いてあるんだから
確かめもせずに「多分」程度の確証で他人の書き込みを否定するのってどうよ?

67:名前は開発中のものです。
09/04/04 13:27:27 NVBO+V4R
なんだ59と62の書き込みは同じ人か、勘違いした
・VC6~VC2003 ヘッダに書いてあるだけじゃインテリセンス効かない
・VC2005~ ヘッダに書いてあるだけでインテリセンス効く

68:名前は開発中のものです。
09/04/04 13:54:17 2TEB3sSo
前ここにうpされてた奴がニコニコに上がってた

69:名前は開発中のものです。
09/04/05 17:39:32 8VF6BH4E
雪が降ってるエフェクト出したいのですが、
実装ほうほうがさっぱりなのですが……。

ランダムに画像を表示させても少しも雪っぽくなりませんでした……。

70:名前は開発中のものです。
09/04/05 18:09:44 oraQAGe0
>69
サンプルプログラムのパーティクル基本が参考になると思われ。

71:名前は開発中のものです。
09/04/05 18:12:03 8VF6BH4E
>>70
ありがとうございます!

72:名前は開発中のものです。
09/04/05 21:16:09 ey93yQqE
>>69
URLリンク(toku.xdisc.net)
自分のプログラムに組み込むついでにやってみた

73:名前は開発中のものです。
09/04/05 21:26:22 jzXObq/Y
>72
降ってる最中に移動量や方向は変わらないのか。

透明度が変わるのは面白いな。
あとたまに、真横や上方向に雪が飛んでくんだがw

74:名前は開発中のものです。
09/04/05 21:49:08 8VF6BH4E
>>72
おおサンクス。
C#使ってるからそのまま使えないのが残念……。
つかこれ勝手に使って良い?

75:名前は開発中のものです。
09/04/05 22:41:49 ey93yQqE
>>73
変な方向に行くのは元のアルゴリズムが花びらだった名残だったり

>>74
どうぞ

76:名前は開発中のものです。
09/04/05 22:53:50 HuaUBP84
>>72
綺麗だなぁ。
横だが自分も使わせて貰う。

77:名前は開発中のものです。
09/04/05 23:24:32 8VF6BH4E
>>75
thx!

78:名前は開発中のものです。
09/04/11 23:15:22 wcB4somL
もうDXライブラリ3Dに頼る必要すらなくなった
次はシェーダーについて学ぼう

79:名前は開発中のものです。
09/04/12 16:12:18 /tRhsb/a
ScreenFlip()の重さってどうにかならないの?
URLリンク(dixq.net)
↑これ導入しても無理だった

80:名前は開発中のものです。
09/04/12 17:11:30 lSUbUSsj
馬鹿は発言するな

81:名前は開発中のものです。
09/04/12 17:13:14 mpmptjcJ
これってドレよ。

てかScreenFlipが重いなんて話あったっけ?

単に君の作ってるプログラムが遅くて、60FPSを保ててないのに
垂直同期信号待ちをさせたままって話じゃなくて?

82:名前は開発中のものです。
09/04/12 17:17:52 XXYdX/zb
シェーダーって使えるの?

83:名前は開発中のものです。
09/04/12 17:40:07 29TC1pPK
プログラム優先度変更オヌヌメ

84:名前は開発中のものです。
09/04/12 17:49:43 9LgVxSaT
ノートPCでVistaだったら俺と一緒。
実行ファイルのプロパティ開いて、「互換性」→「WindowsXP SP2互換」にチェックを入れてみる。
もしかしたら幸せになれるかもしれない。

85:名前は開発中のものです。
09/04/12 17:53:25 43thkbhn
>>79
遅くするための処理を導入して重くなったとはどういうことなんだ?

86:名前は開発中のものです。
09/04/12 19:31:53 4cs7HNP3
>>79
たぶん初心者っぽいからこんなことをあえて言うけど
まずリフレッシュレートとプログラムのfpsを比較しないとね

87:名前は開発中のものです。
09/04/13 00:15:55 GN8f0M0n
ここぞとばかりに食いつく初心者たちの群れ

88:名前は開発中のものです。
09/04/15 15:18:06 I8P/Rh48
そういやDXライブラリがDirectX9ベースに移植してるって話はどうなった?
あのコード量を移植するのは並大抵じゃないとおもうが、作者ガンバレ!

89:名前は開発中のものです。
09/04/15 16:13:43 3g1BJoyH
うーん、>>79 じゃないけどただ ScreenFlip してるだけで CPU 使用率が 60% くらいになるのはなんで?
Pen4 の 1.6GHz だけど

90:名前は開発中のものです。
09/04/15 16:37:47 I8P/Rh48
それはScreenFlipの仕様。VSyncがくるまで待機するんだが、その待機時間もCPU使用率に含まれる。(実質アイドリングループなのだが)
CPUが100%になるのがいやならVsync待ちを切ればいい。(ティアリングが発生するし、ゲームの速度も変わってしまう)

正しい設計はVsync待ちは有効で、なおかつFPS管理をし60fpsになるようにフレーム毎に適度にsleepを入れること。


91:名前は開発中のものです。
09/04/15 18:32:01 lTpXHjBQ
1か所sleepするだけでもだいぶ変わりそうだねぇ

92:名前は開発中のものです。
09/04/15 20:06:35 OTuGa66k
>正しい設計はVsync待ちは有効で、なおかつFPS管理をし60fpsになるようにフレーム毎に適度にsleepを入れること。

モニタのリフレッシュレートが60でない時はどうなるのかな。

93:名前は開発中のものです。
09/04/15 20:43:14 1cQMYjlB
公式より引用:
>前回の ScreenFlip から 10ミリ秒以下しか時間が経過していない場合のみ Sleep で処理を一時停止するようにしています

>>92
60fpsになるように管理してるんだから60fpsになるだろーがw

94:名前は開発中のものです。
09/04/15 21:18:20 I8P/Rh48
>>93
フルスクリーンにできる or デフォルトのリフレッシュレートが50 であるのであれば、Vsync有効。
ウィンドウモードでリフレッシュレートが60以外の場合は、ティアリングを犠牲にしてVsync切る。
(ウィンドウモードで垂直同期に合わせてしまうとティアリングの線が毎フレーム同じようなところにできてしまって、逆にきたなくなってしまう)

現状、DirectX7ベースのDXライブラリではウィンドウモードでのVsync無効だから、どうしようもないぜ。

95:名前は開発中のものです。
09/04/15 21:20:12 I8P/Rh48
すまん。誤字がすごい。レスは>>92へだ。
あと、50じゃなくて60。

96:名前は開発中のものです。
09/04/15 21:20:56 lTpXHjBQ
ん? 50?

97:名前は開発中のものです。
09/04/15 21:21:42 lTpXHjBQ
リロードしろ俺 orz

98:名前は開発中のものです。
09/04/15 21:43:40 OTuGa66k
>>60fpsになるように管理してるんだから60fpsになるだろーがw

だからどう管理するのかなーと。

単純に「1/60秒 - 前回のScreenFlipから経過した時間」でSleepかけると
モニタのリフレッシュレートが70の時、いざScreenFlipしようとした時には
すでに1フレーム経過しちゃうんだから、次のVsync信号待ちまで待っちゃうよね。
そしたら1フレーム 2/70 秒になって 35FPSって事なっちゃうのでは。

いや、当然こんな事解決する方法はあるんだろうけど
俺の頭じゃ難しくて。

99:名前は開発中のものです。
09/04/16 02:52:38 12a1chsH
>>94
>ウィンドウモードでのVsync無効だから

って言われるけどウィンドウモードで、どう見てもScreenFlipでVsync待った方が明らかにティアリングなしできれいなんだがなぜ?
リフレッシュレートを変えても同じ。
ただ、fps調整無しでリフレッシュレートのfpsになるように単純にVsyncを待った場合、
ウィンドウモードよりフルスクリーンの方が明らかに滑らか(高fps)を体感できる。もうよくわかんない。


100:名前は開発中のものです。
09/04/16 02:58:08 uc3ezfKA
70の時は1/70だから1/60よりも速いからその分だけ待てばいいのでは

101:名前は開発中のものです。
09/04/16 05:02:47 XS+5u9bO
>>99
OSはVistaかい?
VistaだとDesktopWindowManagerが自動でティアリング防止するように描画順を待機するようになるからティアリング無いかもね。(未検証でゴメン)
詳しくはここ。URLリンク(d.hatena.ne.jp)
で、XPでDirectX7環境だとティアリングが発生します。でもXPでもDirectX9が検出できた場合に限ってScreenFlipで垂直同期待ちになる模様。
(もしくはティアリングが発生していても、線がウィンドウの領域と被ってないので見えてないだけかもしれない)

102:名前は開発中のものです。
09/04/16 05:18:57 WR6HuXg0
>>90
なるほどなるほど
VSync まちでいろいろやってるループより sleep の方が軽いのは当然てことか

103:名前は開発中のものです。
09/04/16 05:27:06 12a1chsH
>>101
2000/XPです。
下方向に高速スクロールする画面で、Vsync同期/非同期を切り替えられるようにしてます。
明らかに違いが出てきますね。
ティアリングに敏感な人なら確実に分かると思います。
同期してないとガリガリしてるような気がします。

でも、フルスクリーンの方がさら~って感じでさらにきれいに見えるのも謎。
60Hzと70Hzじゃ描画回数が違うので当然なんだけど。(見た目にも描画回数が多いのがはっきりわかる)
でもこれはウィンドウモードとフルスクリーンじゃ絵柄自体の大きさが違うので錯覚してるだけかも。

>でもXPでもDirectX9が検出できた場合に限ってScreenFlipで垂直同期待ちになる模様。

これはかなり興味深いですね。初めて聞きました。
ウィンドウモードでも間違いなく同期してると思ってる派なので調べてみます。

104:名前は開発中のものです。
09/04/16 15:55:17 U7PVHoMj
>>100
>70の時は1/70だから1/60よりも速いからその分だけ待てばいいのでは

そしたら70FPSになるんじゃないか。

70FPSは60FPSより1秒間に10フレーム多い事になるから、
6フレームごとに1回、空待ちさせれば60FPSを実現させる事はできるけど、
ゲームの処理時間が、「60FPSだと余裕があるが、70FPSだと足りない」
って時に処理落ちがひどくなる。

105:名前は開発中のものです。
09/04/16 19:22:11 /YbqE5Rh
14歳からはじめるC++ わくわくゲームプログラミング教室

って本に間違いってないですか?
何度書き直しても、サンプルプログラムにエラーが発生します
(P118です)

106:名前は開発中のものです。
09/04/16 19:37:00 D5YSrYi0
なにそれこわい

よくわからないけど、4章-01の最後、P125まで全部入れてひとつのプログラムだぞ。
・main.cpp
・gameframe.h
・gameframe.cpp

107:名前は開発中のものです。
09/04/16 19:41:32 D5YSrYi0
なんかわかった気がする。

gameframe.h の先頭で、#include "DxLib.h" 宣言しておかないとむりぽ

これ、本文に書いてない。
P120上の画面写真のプログラムには、しれっと入ってるけど。

108:名前は開発中のものです。
09/04/16 20:44:04 uc3ezfKA
エラーが発生したならその内容も書いておかないと

109:名前は開発中のものです。
09/04/16 23:14:39 BmH0FmoL
その本動画あったよ
誤植多いそうです

110:名前は開発中のものです。
09/04/16 23:53:51 LfSelEBA
確かに、誤植は多いな。まぁ、ソースも付いているんだからWinMergeを使うのも勉強だと思えばいい。

111:名前は開発中のものです。
09/04/17 00:52:02 EZBCVXFE
>>104
int nowtime = GetNowCount();
static int oldtime = 0;
static int frametime = 1000 / 60

int diftime = nowtime - oldtime;

while(1)
{
if(diftime >= frametime)
{
oldtime = nowtime;
break;
}
else
{
Sleep(1);
nowtime = GetNowCount();
diftime = nowtime - oldtime;
}
}
こんな感じでScreenFlip()の前に書いてみて。
今ちょっと60Hz以外選べない環境なので今は確かめられないけど、
たしか以前試したときはちゃんと60Hz以外でも60fps出てたはずだよ。

112:名前は開発中のものです。
09/04/17 05:23:57 WaZv4/Kc
たぶん>>104が言わんとしていることと、>>111が出したコードには相関性が無い

113:名前は開発中のものです。
09/04/17 05:51:08 Zvoaz6Vb
>112
俺もそんな気がしてきた

114:名前は開発中のものです。
09/04/17 09:10:19 Ulw/lN4/
今回の流れで試しに自作ゲームのタイトルのキー入力待ちでSleep(1)入れてみたら
CPU使用率100%から0%になった/(^o^)\ナンテコッタイ

例えばタイトル画面とか即時性のない入力待ちの時って
ちょっと長めにSleep入れたりするほうがいいのかな?
20msぐらいなら問題ないのだろうか・・・

115:名前は開発中のものです。
09/04/17 09:45:55 0V/Re1GH
>例えばタイトル画面とか即時性のない入力待ちの時って
>ちょっと長めにSleep入れたりするほうがいいのかな?

少なくとも俺は入れてる。

>20msぐらいなら問題ないのだろうか・・・

全然問題ないと思う。
もっと入れてもいいくらいでしょ。
実際にやってみて自分でストレス感じるなら減らせばいい。

116:名前は開発中のものです。
09/04/17 13:46:09 WaZv4/Kc
入れすぎると、キー入力が飛ばされる可能性もあるので、注意したほうがいいよ。
20msぐらいなら大丈夫だけどね。

117:名前は開発中のものです。
09/04/17 16:20:15 Zvoaz6Vb
むしろ、何故キー入力待ちだけでループさせてることに突っ込もうぜ

118:名前は開発中のものです。
09/04/17 19:34:30 LNYxAbHW
タイトル画面が動くゲームもあるのだよ
あと音楽のループ再生する時はScreenFlipを毎フレーム呼ぶ必要があるみたいだし

119:名前は開発中のものです。
09/04/17 20:21:09 jcPGGnUF
>>111はオレ的には神です
マジサンクス

120:名前は開発中のものです。
09/04/17 20:22:40 xbUmRi3d
WaitKey(笑)

121:名前は開発中のものです。
09/04/17 20:22:58 erDEgGZV
まぁ少なくともProcessMessage()はいれておくべきだよな。

122:名前は開発中のものです。
09/04/17 22:03:28 EZBCVXFE
>>118
音楽再生とScreenFlipは関係ないと思うよ。
CPUが100%になるのは明らかに異常だからちゃんとProcessMessage()かSleep()出来てるか確かめた方がいいよ。
たぶんウィンドウ自体をドラッグすらままならない状態だと思うから。
OSにタスクさえ返してあげられてればCPUが多少高くても気にしなくていいと思うけどなぁ。
ゲームって常駐させたり多重起動させたりするものじゃないし。

123:名前は開発中のものです。
09/04/17 22:17:35 ZoeUfmZ7
ProcessMessageさえ入れとけば大丈夫だと思ってた

124:118
09/04/18 02:18:14 k17DhjXo
うへあーw
素で間違えてたorz
何と言う勘違い 恥ずかしい限りです しばらくROMってます

125:名前は開発中のものです。
09/04/18 21:37:09 okbqytId
ディスプレイ2台の環境でウィンドウを左右に振ると
片側のディスプレイだけ明らかに画面がぼやけるんだけど
DirectXの設定かビデオカードの設定がおかしいんだよなこれ?

126:名前は開発中のものです。
09/04/18 22:23:48 okbqytId
言い忘れ
SetEmurationやSetGraphModeで画面を引き延ばすと起こるっぽい
ディスプレイの設定なのかよく分からん・・・

127:名前は開発中のものです。
09/04/19 00:37:44 BefQR+3B
ディスプレイ二台の環境使ってる人はそういないだろうから
同意求められても答えられる人ほとんどいないんじゃない?

128:名前は開発中のものです。
09/04/20 22:52:47 eX32oi4P
保守

129:名前は開発中のものです。
09/04/21 15:00:56 UkM4PCid
最初 ScreenFlipとScreenCopyの違いがわからんかった
ScreenFlipは裏画面と表の内容を交換するで
ScreenCopyは裏画面の内容を表に上書きコピーなんだったんだなー

130:名前は開発中のものです。
09/04/24 01:45:21 Zjz+Ahwz
C#の練習にDXライブラリ使ってみよう

131:名前は開発中のものです。
09/04/25 02:57:38 jgu2I7ss
>>125
シャギるな。俺もだ。
設定次第ではどうにかなるのかもしれんけど。

どっちにせよわざわざウィンドウを引っ張って画面を跨らせることもなかろう。

132:名前は開発中のものです。
09/04/27 18:31:23 FIDn8lAk
かっこいい爆発がつくれない

133:名前は開発中のものです。
09/04/27 21:58:22 z25pzrXj
それはスレチ

134:名前は開発中のものです。
09/04/28 00:04:23 eksjqOvu
DXライブラリの本を読んだけど、とても14歳から始めるような話じゃねーな
大学生が入門書に読んでちょうどいいレベルだろコレ


135:名前は開発中のものです。
09/04/28 00:10:39 HkJlrRjH
14歳から始めて30歳くらいで読み終わるっていう意味じゃないかな

136:名前は開発中のものです。
09/04/28 00:34:07 m4cMSkq6
14歳っつーと中二くらいか。
俺はBASICがせいぜいだったが、
マシン語とかやってる友人もいたし
決して無理じゃないだろう。

137:名前は開発中のものです。
09/04/28 00:45:01 NnZtX6wz
やっぱ0x14歳だったか

138:名前は開発中のものです。
09/04/28 01:53:08 OFMPoMrl
むしろ厨二がガツンとやられるための本

139:名前は開発中のものです。
09/04/28 08:20:28 6tVcbqW6
14歳の新版(VS2008対応版)は、3章までと4章以降のレベル差がひどい。
簡単に作れるように自前ライブラリ用意してるけど
そのせいでDxLib関数なのか自前関数なのかごっちゃになってるし。

間に20章ぐらい入れて10本以上ゲーム作って、本の厚さが倍になってもいいぐらい。

140:名前は開発中のものです。
09/04/28 09:19:39 nBjz8W9W
>>139
そしたら、値段も倍になるがな

141:名前は開発中のものです。
09/04/28 10:17:56 eksjqOvu
世間一般の流れ

小学生 ゲーム遊ぶのおもしれえwww
中学生 ツクールおもしれえwww
高校生 VisualBASICとかC言語を始めるか
大学生 C++とかJAVAで2Dゲームでも作るか
20代 3Dゲーム、オンラインゲーム作るよ!
30代 何でこんな仕事を選んだんだろう……
40代 クビになった。新しい仕事探すか……
50代 息子よ。おれは昔、ゲーム開発をやっててなあ
60代 年金安いのう……
70代 孫よ。わしは昔、ゲーム開発を(ry
80代 開発の仲間……もうみんなこの世におらん……
90代 ゲーム? 何のことかいね
100代 「おじいちゃん! それはご飯じゃないよ、ゲームだよ!」
晩年 「おじいちゃんは亡くなる前に、大好きな『ハレハレユカイ』を唄っていました」


142:名前は開発中のものです。
09/04/28 10:28:58 FvUt88Xp
大往生だな。いい人生だった

143:名前は開発中のものです。
09/04/28 16:15:43 6TTz0S/c
>30代 何でこんな仕事を選んだんだろう……

いまここ

144:名前は開発中のものです。
09/04/28 22:07:41 MfOPTYG9
なんか画面のドット範囲が640×480で固定されてるんですが
これいじる方法はDXライブラリには無いんですか?

145:名前は開発中のものです。
09/04/28 22:15:25 GpFUP3xe
公式のリファレンスくらい嫁と言いたいが
つSetGraphMode

146:名前は開発中のものです。
09/04/28 22:24:39 MfOPTYG9
>>145
ありがとうorz
すみません。ウインドウモードの項ばかり探してました


147:名前は開発中のものです。
09/04/28 23:44:24 AAXsWLBJ
「これいじる方法はDXライブラリには無いんですか?」って訊くくらいなら全部読めよ!

148:名前は開発中のものです。
09/04/29 00:04:40 fznxD5WL
>>143
やあ、俺

149:名前は開発中のものです。
09/04/29 00:57:49 8JDzhdlg
>21歳 卒業とともに小さな会社に一人だけ入社
     何でこんな仕事を選んだんだろう……相談する同僚がいない

>30歳 ←いまここ




150:名前は開発中のものです。
09/04/29 12:12:40 0KNrHYhz
小学生 ゲーム好きだけどファミコン買ってもらえなかったから友達んちに通ってうざがられる
中学生 PC98買ってもらってtakeruとかでゲーム買ったりベーマガ買ってBASICで遊ぶ
高校生 女遊びでPCなんていじらない
大学生 にはならずにバイト生活。PCなんて無縁
20代   実家に帰るとWindows98とネットがあったので暇だったのでいじってみる。
      ここでwebの世界やプログラミング熱再発。色々物色する。
      そしてそのまま引きこもり。
30代   ←もうすぐここ


151:名前は開発中のものです。
09/04/29 12:23:18 Id8MNKk3
それは報告しなくてもいいです

152:名前は開発中のものです。
09/04/29 13:15:43 0KNrHYhz
してもいいです

153:名前は開発中のものです。
09/04/29 14:34:34 DcEbzAT6
そうですか

154:名前は開発中のものです。
09/04/29 14:49:56 eqm+L+6k
そうでづよ

155:名前は開発中のものです。
09/04/29 15:17:03 GO8Ds4lj
そうでちゅわ

156:名前は開発中のものです。
09/04/29 19:22:33 sy8jjFeI
プログラマーは35歳で引退だからな
プランナーや絵描きなどで生きられるだけの資産がなければ、そのままスクラップだ
ゲーム会社も高齢化が進んでて、新しい概念が作れなくなってきている


157:名前は開発中のものです。
09/04/29 19:25:35 eqm+L+6k
なぜ35なのかというと、部下ができたりしてプログラムどころじゃなくなるから。
新しい概念が作れないのはゆとりが増えたから

158:名前は開発中のものです。
09/04/29 20:32:14 2b50vk1R
それでも将来は……。

159:名前は開発中のものです。
09/04/29 21:37:02 Dpfb2ylv
それはスレ違い

160:名前は開発中のものです。
09/04/30 00:27:05 JN4PBkev
ドラッグ&ドロップで音楽を再生したいのですが
DXライブラリで実現できますでしょうか?
GetDragFilePath()の使い方がいまいちわかりません。
ご教授お願い致します_ _

161:名前は開発中のものです。
09/04/30 00:58:25 qZvDrEy3
>>160
D&Dに関しては、GetDragFilePathでググって出てきたページの内容を見る限り、
この関数は毎フレーム呼び出し、戻り値はD&Dされていれば0、されていなければ-1となる。
D&Dされてたら、引数で渡したバッファにD&Dされたファイルのパスが入ってくる。
ちなみにD&Dされたファイルの個数はGetDragFileNum()で取得できる。
複数ある場合は、その数だけGetDragFilePathを呼べば1つずつファイルパスを取得できる。
ちなみにこれらは毎フレームに一度DragFileInfoClear()で初期化してから使うべき。

ただ情報が古い可能性もあるし、実際試したわけじゃないから、
今のDXライブラリでできるかどうかは知らない。

162:名前は開発中のものです。
09/04/30 01:05:34 qZvDrEy3
読み返して気付いたが、ひどい日本語だ・・・まぁいいや

163:名前は開発中のものです。
09/04/30 01:56:07 JGk3snwA
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow){
ChangeWindowMode(TRUE);
SetMainWindowText("(´・ω・`)");
if(DxLib_Init() == -1 ){return -1;}
int open,tdn,cc;char file[256];
SetDragFileValidFlag(TRUE);SetDrawScreen(DX_SCREEN_BACK);SetFontSize(32);
while(ProcessMessage()==0){
ClearDrawScreen();
open=GetDragFilePath(file);//D&Dでファイル獲得する open:ファイル獲得が成功か失敗か判定
if(open==-1&&CheckMusic()==0)DrawFormatString(0,100,-1," なんか音楽を食わせろ!ESCキーで終了");
if(CheckMusic()==0&&cc==0){SetMainWindowText("(´・ω・`)");cc=1;}
if(CheckMusic()==1)DrawFormatString(0,100,-1," 音楽を止めるのならスペースを押せ!");
if(CheckHitKey(KEY_INPUT_SPACE)==1)StopMusic(); //スペースで音楽を止める
if(CheckHitKey(KEY_INPUT_ESCAPE)==1)break; //エスケープで終了
if(open!=-1){ //ファイル獲得成功
cc=0;SetMainWindowText(file);tdn=PlayMusic(file,DX_PLAYTYPE_LOOP);}
ScreenFlip();Sleep(20);
//音楽ファイル以外を食わせた場合w
if(tdn==-1){MessageBox(NULL,"(゚Д゚)ゴルア!"," それ再生できねーし",0x0000030);StopMusic();break;}
DragFileInfoClear();
}
InitSoundMem();
DxLib_End() ;
return 0 ;
}

164:名前は開発中のものです。
09/04/30 02:04:43 JN4PBkev
>>161-163 ありがとうございます!!
>>163さんにはサンプルまでご用意いただいて感激です!
これでBGMをプレイヤーに指定させることができます。
即レス感謝!ありがとうございました!!

165:名前は開発中のものです。
09/04/30 09:08:28 QAaf0WGA
個人的にはAPI使って、ファイル開く形式を勧めたいが……


166:名前は開発中のものです。
09/04/30 13:16:31 Nu0gAO10
最初からサンプル書いてくれと露骨に頼めば可愛げもあるのに。

167:名前は開発中のものです。
09/05/01 08:16:49 OvJuayUs
暫定的にDrawStringで文字を描いていたんだけど、
見栄えや諸々の理由で画像ファイルとして文字を作ることにした。
インストールされてるフォントを使って12x16のサイズのカタカナを
ほぼそのまま描いてるんだけど、どうしてもエッジが目立っちゃう。
縁取りとか、影とか、ぼかしとか色々試したんだけど難しい。
みんなはどうやってるの?あと、デザインとか凝ったりするの?

168:名前は開発中のものです。
09/05/01 09:46:27 g5JaOboh
>>167
その辺は、普通に。 まずは、見栄えとかよりも、完成が先だしね。
「文字 CG 講座」とか「ロゴ 制作」とかで検索すrば、やりたい事の方法が見つかると思う。

169:名前は開発中のものです。
09/05/01 10:22:40 SX1l7Niw
なんの為の文字かってのにもよるだろうけど、
セリフとかそんなヤツなら、何も工夫せずにそのままDrawStringで表示してる。

>デザインとか凝ったりするの?

デザインが大事なのは理解してるが、センスが壊滅的なので
あきらめて最低限で済ませてる。

170:名前は開発中のものです。
09/05/01 14:38:00 OvJuayUs
>>168-169
ありがとう。俺もデザインが壊滅的です。
しょぼ画像で今まで普通にやって来たんだけど、
先日ゲーセンで業務用のゲームを見たのがいけなかったw
最近はフォントを一文字ずつ手打ちでドット修正して、
気付いたら4、5時間経ってて結局上手くいかなかったとかあって。
まあでも、「この方法では出来ない」っていうのが少し分かったのは収穫だけどw
ゲーム作るのってやっぱり色々な知識が必要だね。

171:名前は開発中のものです。
09/05/01 21:45:00 n+u5dqvm
その試行錯誤が楽しくもあり面倒くさくもあり

172:名前は開発中のものです。
09/05/02 08:08:52 Sn/Kauil
ロゴはなぁ…
それで飯食っている奴がいるくらいだから奥が深いよな。
フォントの選定とか字間とか決めるだけでも大変。

173:名前は開発中のものです。
09/05/02 13:50:47 BkuXnv3v
英数字だけ程度ならフォトショとかで作るけど、
台詞に使って日本語漢字とかまでなるとやってられないから普通に既存フォントのでやってるな。
フリーのフォントいくらでもあるから、それ使えばいいんじゃないか?
テキストに文字書いておけば、指定フォントのを画像ファイルにして出力するソフトなかったっけか。


174:名前は開発中のものです。
09/05/02 14:40:37 M7HWaCGQ
2009/5/1更新 2.25b

175:名前は開発中のものです。
09/05/04 16:41:52 FkdRsV2L
ちょいと質問です。
SetAlwaysRunFlagで非アクティブでも処理を実行し続けるようにして
アクティブ時はCPU使用率15~20%ぐらいでスムーズに動いてるけど
非アクティブ時は、CPU使用率が0近くになってしまいます。
処理もカクカクになってしまうのですが、
どうにも原因や解決法について手詰まりになってしまったので
何かアドバイスをいただけませんでしょうか?

176:名前は開発中のものです。
09/05/04 16:47:43 dGZpGfbH
>>175
これが参考になるかも
URLリンク(hpcgi2.nifty.com)


177:名前は開発中のものです。
09/05/04 17:21:31 FkdRsV2L
>>176
Σ (゚Д゚;)うおー解決したー!!
DXライブラリ自体の仕様的問題だったとは・・・
ありがとうございましたー

178:名前は開発中のものです。
09/05/05 23:39:46 klIXgzed
GetRandを使って1回だけ乱数を取得するってどうやるの?

179:名前は開発中のものです。
09/05/06 01:59:46 36dZu90f
意味がわからないけど、一回だけGetRandすればいい……って事じゃないの?

180:名前は開発中のものです。
09/05/07 01:34:26 cIvk0VJg
do while文使うとループ処理終わらないんだけど俺だけ?
どんな簡単な条件でもだめ
whileは全然問題なし、仕方ないからfor文で代用した

181:名前は開発中のものです。
09/05/07 01:39:44 AtAjM9gE
環境とかソース示してくれない事にはなんともいえん。


182:名前は開発中のものです。
09/05/08 13:06:52 H40Fz4tQ
>>180
条件を逆にしてみれば?

183:名前は開発中のものです。
09/05/08 17:28:23 mPd9shMx
>>180
hello world的なコンソールアプリだとなんともないのに
DXライブラリだと動かないのか?

またまたご冗談を○ノ

184:名前は開発中のものです。
09/05/08 21:29:41 1gmuUpcC
DXライブラリで遊んでて、
3Dも触ってみたくなったら次はどの辺のライブラリがお勧めかな?

185:名前は開発中のものです。
09/05/08 21:43:28 mPd9shMx
直に叩くのマジお勧め。
ライブラリを使うにしても。

186:名前は開発中のものです。
09/05/08 23:03:24 1gmuUpcC
>>185
直かー、興味はあるけど難しそうだね
その辺もライブラリのソースを見てみたい感じ
DXライブラリ3Dを引き継いでる(?)のがSiv3Dで公開はまだしていないのか

187:名前は開発中のものです。
09/05/09 03:40:25 lfg6KlkW
真・女神転生のようなダンジョンマップ一度作ってみたい

188:名前は開発中のものです。
09/05/09 10:18:06 K91OINFM
>>184
現時点ではDarkGDKがお勧め。
DarkBasicをC言語で使えるようにしたライブラリだが、DXライブラリ並に簡単に3Dが使える。
資料もDarkBasicのものが使えるから検索すればかなり見つかると思う。


189:名前は開発中のものです。
09/05/09 11:47:43 kLkdvUF6
>>185
直叩きはいいけど、ウインドウズと付き合うのがイヤなんだ俺は。

今の俺の技術なら、WinProcの多重switch~caseの悪夢から逃れられるかもしれないけど。
ここが奇麗にラッピングできたら、DxLibから離れられる。

190:名前は開発中のものです。
09/05/09 19:21:56 jAmZ4VAa
このライブラリってc++でしか開発できないの?
cでも動く?

191:名前は開発中のものです。
09/05/09 19:40:27 E8u7Mo3p
>>190
意味も分らずに質問してるのか?それとも釣りか?荒らし?
>(使用する際はC言語の知識だけで大丈夫です)
と、Topページにすら書いてあるが・・・・・

192:名前は開発中のものです。
09/05/09 19:55:55 lCTV4YZ7
>191
その回答だと、それはそれで微妙じゃないか?

193:名前は開発中のものです。
09/05/09 20:07:46 IQdWMaEz
Cのコンソールで一通りの基礎を抑えたレベル(ポインタは微妙だけど)
OpenGLも基礎の基礎ぐらいは分かる。

しかしC++は全くやったことないから、Cのソースコードでも動くのかなぁって思ってさ

つうかこの俺のこの程度のレベルで開発できるのか?w

194:名前は開発中のものです。
09/05/09 20:14:03 trjZI4JP
心配するな。
BASICくらいしかまともに使えなかった俺でも作れてる。

195:名前は開発中のものです。
09/05/09 20:46:52 eADherQO
予想どおりだけど、Cではコンパイル通らなかったよ。

196:名前は開発中のものです。
09/05/09 20:58:33 IQdWMaEz
>>195
自分も通らなかったから、やっぱりcppでやらないとダメか…。

でもcとc++の違いって引数の所とかreturn 0;を入れる事ぐらいだよね
それなら俺にも作れそうだ

197:名前は開発中のものです。
09/05/09 21:35:15 mrxl7P60
DarkGDKのサンプルコードをUPしとく
URLリンク(gamdev3.hp.infoseek.co.jp)

198:名前は開発中のものです。
09/05/09 21:37:34 lCTV4YZ7
最初は、C++はCの文法がまんま使えると思ってていいと思うよ。
そりゃ細かいところは違うけど。


199:名前は開発中のものです。
09/05/09 22:24:26 yqvEK1Ux
俺はmainがwinmainに変わったぐらいしか意識せずに
Cのつもりで書いてるけど特に問題は起こってない。

200:名前は開発中のものです。
09/05/09 22:42:09 trjZI4JP
俺はCとC++の違いなんて知らんけど、少なくともBASICとC++の差に比べたら無いも同然だろう。
きっぱり乗り換えた方が早いと思うよ。

201:名前は開発中のものです。
09/05/09 22:43:16 5QjZvH8C
Cでも書けるけどコンパイルはC++としてしなければいけない
ってことでしょ
CからC++の関数呼べないだろうし

202:名前は開発中のものです。
09/05/09 23:17:11 mrxl7P60
DarkGDKの3Dデモ
URLリンク(gamdev3.hp.infoseek.co.jp)

203:名前は開発中のものです。
09/05/10 01:23:34 ZcEG6Uji
テキスト読み込ませるにはどうしたらいいんだろ?

204:名前は開発中のものです。
09/05/10 03:57:46 LkvOOs8Z
>>202
184じゃないけど良いなコレ
まあスレ違いだからここではやめとくが

205:名前は開発中のものです。
09/05/10 09:08:13 rPuqylL4
>>203

それはDXライブラリと関係ない、C言語の領域だからぐぐって探せばみつかるでしょう。

まぁひとつ言っておくなら、読み込むだけなら
テキストファイルだろうとバイナリファイルだろうと関係ねーって事でしょうか。

それがテキストファイルかバイナリファイルかを区別するのは人間の仕事。
コンピュータにとってはどっちも数字の羅列です。

206:名前は開発中のものです。
09/05/10 09:16:50 rPuqylL4
>>202

おお、簡単そうでいいな。
と思ったが商用だとライセンス必要なのか。

207:名前は開発中のものです。
09/05/10 09:27:04 SuvqbuIW
>>206
メーカーのひと?

208:名前は開発中のものです。
09/05/10 10:31:11 fyec3Pfk
「同人は金とるけど商用ではありません」って理屈がアメリカに通用するかどうか。

209:名前は開発中のものです。
09/05/10 15:37:12 3Fci4lbQ
あれー? exeクリックしても何も起こらないや。
動かすのに必要な環境とかあるのかな

210:名前は開発中のものです。
09/05/10 15:49:58 pxkMQo3W
何の話?

211:名前は開発中のものです。
09/05/10 15:54:27 QdEuQjX4
>>203
>>205
せっかくだから DxLib でやろうぜ。
以前、なんかダサイ感じのやつを作った記憶あったのでうp

int MapInit()
{
int FileHandle = FileRead_open("StageData.txt");// ファイルのオープン
int FileSize = FileRead_size("StageData.txt");// ファイルサイズを取得して
char* FileImage = new char[FileSize];// その大きさだけ領域確保
FileRead_read( FileImage,FileSize,FileHandle);// 一気読み
FileRead_close(FileHandle);// ファイルを閉じて終了

const char* d = FileImage;

while(*d != '\0'){ // NULL文字(終端)ではない間
switch( *d ){
  :
  :

212:名前は開発中のものです。
09/05/10 16:04:32 pxkMQo3W
それ、NULL文字はどこでセットされるのさ?

213:名前は開発中のものです。
09/05/10 16:27:43 hIOF9W71
PlaySoundMemでmp3の音楽ファイルをループ再生した時、
曲がはじめに戻る時に一瞬無音部分が挿入されてしまうのは仕方の無い事なんですかね?

214:名前は開発中のものです。
09/05/10 16:53:15 jnxHmucW
指定秒数から再生みたいな関数無かったっけ

215:名前は開発中のものです。
09/05/10 18:54:17 rCuDH3cs
あるよ。
俺使ってるから間違いない。

216:名前は開発中のものです。
09/05/10 19:18:26 hIOF9W71
いや頭は正常だけど終わりの部分と頭の間に微妙な空白期間があるんだけど。

217:名前は開発中のものです。
09/05/10 20:22:30 rCuDH3cs
それはMP3自体にはまったく空白が無い状態で?

てか空白が頭なのか終わりなのか区別つくのか?

俺はoggでやってるけどそんな現象は出ていない。
oggでなくてmp3だから空白が出てるってのも考えにくいし……。


たとえば、


// 音声をループ再生する
PlaySoundMem( SoundHandle, DX_PLAYTYPE_LOOP ) ;

// キーの入力待ち
WaitKey() ;


こんな感じで音楽鳴らしてWaitKeyで待たせてるだけの状態でも空白は出る?

218:名前は開発中のものです。
09/05/10 21:46:31 a1w4zsI+
空白をカットすれば

219:名前は開発中のものです。
09/05/10 21:59:26 CorOGe62
MP3とかoggを直接編集できるフリーソフトとかあるから
それでまず音楽データ自体に空白が入ってないか確認するのが先かな。
(俺は古いけどspwaveっての使ってる)

220:名前は開発中のものです。
09/05/10 23:33:01 UtduPSoD
ゲーム開発って、ファイル分割がキチンと綺麗に出来るかどうかで難易度グッと変わるよね?

いまいちヘッダーファイルに何書けば良いのか分からん。
ヘッダーファイルに書くのって基本的に
構造体、グローバル変数、クラス

で良いんだよな?

でもグローバル変数はそのまま書くより、メインの実行処理を書いたソースでグローバル宣言して、externしたのをヘッダーに書いた方が良いのか?

中々難しい

221:名前は開発中のものです。
09/05/11 00:02:53 MkdOym7I
ヘタレプログラマな俺は何も考えずにやってる。
必要性を感じたらやればいいなと。

222:名前は開発中のものです。
09/05/11 00:25:28 HAsszTiW
再利用性ってのがあるだろ
他のプロジェクトで同じヘッダーを使いたいって時があるはず
stdlib.hやwindows.hなどは、頻繁に共有して使う定義をまとめてあるわけだな

ゲーム開発では、バージョンアップや拡張版を作る時に意識する
そういうのが前提になくて、ただ使い捨てのマイナープログラムを作りたいだけなら
ヘッダーに書こうがソースに書こうが大した違いにはならん

集団開発ではこういう実動的な概念を知ってないと、プロジェクトに致命的な遅れを引き起こす原因になる
読めないソース、意味のわからない変数名、再利用性の全くないヘッダー
そういうのを書く奴はとても多い
同僚から「早くクビになれ」と睨まれてるのに、大抵は自覚がない


223:名前は開発中のものです。
09/05/11 00:37:43 h5MMChCx
mp3の仕様上、変換した時点で前後に無音部分が入るのは避けられないんじゃなかったか?
無音部分のないoggを作れば大丈夫だと思う

224:名前は開発中のものです。
09/05/11 01:25:34 SJM28vd6
wavの状態で編集→mp3にエンコ
これでmp3にした場合だけループに空白が出来る。
でも編集ソフトでmp3ファイルを見てみても無音が入っていないので
ファイル自体じゃなくてループ再生時に無音が入っちゃってると予想してる。
>>223のような情報もあるのでwavからoggでやってみようと思います。
むしろmp3でちゃんとループしてる人がいるなら是非そのファイルをくれませんか?

225:名前は開発中のものです。
09/05/11 01:55:23 vfkeltZY
まー、mp3使う理由なんてないだろ

226:名前は開発中のものです。
09/05/11 10:32:30 Y/ATwNUT
>>220
グローバル変数を何の工夫もなくヘッダに書くのはありえない。
でも、1つのソースファイルからしかincludeしないなら
ヘッダの意味もないが、トラブルも出ないし好きにしたらいい。

227:名前は開発中のものです。
09/05/11 23:27:48 +oDxJ+XL
>ヘッダ
例のセガの人の本によれば
ヘッダファイルは、そのモジュールの顔のようなものなので、
自分からしか参照しないものはヘッダに書くな、だそうな。

228:名前は開発中のものです。
09/05/12 20:59:39 TP6i3fOM
OPムービーをつけたいのですが動画挿入ってできます?

229:名前は開発中のものです。
09/05/13 00:34:03 S36sOxw7
>>228
リファレンス嫁

230:名前は開発中のものです。
09/05/13 00:45:59 Vux89+qG
普通にありましたすみません

231:名前は開発中のものです。
09/05/13 02:31:33 SfL0C2tM
みんなDXライブラリをなんて読んでる?
ディーエックス?デラックス?

232:名前は開発中のものです。
09/05/13 02:39:25 SMqynftr
ディーエックスかな
てかそもそもデラックスなんて意味込められてたっけか?

233:名前は開発中のものです。
09/05/13 04:37:24 +PRxmC7L
よし!
今度、自分用のライブラリを作る時は超合金ライブラリという名前にしよう。

234:名前は開発中のものです。
09/05/13 04:45:57 S6Vidvv6
ぼくはダブルエックス!

235:名前は開発中のものです。
09/05/13 05:27:57 WYplVFDZ
俺はデラックスって呼んでるな。カービィDX的なノリで

236:名前は開発中のものです。
09/05/13 11:01:09 +PRxmC7L
DXライブラリ…… それは裏切りを意味する言葉。

237:名前は開発中のものです。
09/05/14 23:52:26 JXz6JeNm
wav変換
URLリンク(www.vector.co.jp)
アドウェア臭いのついてるから本体以外キャンセル(Jwordとかプレーヤーとか)
URLリンク(www.vorbis.com)
これインスコすればOGGをメディアプレーヤーで直再生できる

238:名前は開発中のものです。
09/05/16 18:21:08 RrtE4NOX
DXライブラリってProcessMessageでメッセージをひとまとめに扱ってますが
このことによって何か出来なくなる(制限される)ことってありますか? ウインドウズプログラム的に。

239:名前は開発中のものです。
09/05/20 18:05:19 XKq5DK9V
画像を多く使う予定なのですが、
DrawRectGraphでその都度座標を指定して描画するのと
LoadDivGraphやDerivationGraphで新しくグラを作成するのってどっちがいいとかありますか?
面倒なのですがDrawRectGraphの方が軽そうな感じがして…

240:名前は開発中のものです。
09/05/20 19:14:49 cd8SaRtc
後者の方が速かった気がする
実際に試してみるのが一番いいと思うけど

241:名前は開発中のものです。
09/05/20 22:50:34 XKq5DK9V
ありがとうございます。両方試して比べてみます。

242:名前は開発中のものです。
09/05/21 01:24:36 nDXZOisY
結果の報告お待ちしております

243:名前は開発中のものです。
09/05/21 14:53:13 f26CXGR7
いちいち画像読み込むとハードディスク使うから遅い
メモリに読み込んでハンドル返す方法は高速に描ける
速度を必要とする場面かどうか検討するといい
使い捨ての場面ならメモリに確保しない方が開発の負担が小さいし
何度も使うのならメモリに読み込んだ方が処理の負担が小さい
一般的には後者に統一することが多い

似たような話で、画像にjpgやpngを使ったり、mp3を使うのはCPUに負荷を掛けるので
通常素材にはbmp、効果音にはwavを使うのを勧める
(企業開発で形式を隠蔽したいわけでもないし)


244:名前は開発中のものです。
09/05/21 17:07:42 nDXZOisY
大した負荷じゃないんじゃない?

245:名前は開発中のものです。
09/05/21 17:31:35 d1JBtW4A
HDDからいちいち読み込んでるとアホみたいに遅くなるぞ

246:名前は開発中のものです。
09/05/21 19:45:39 uQ1uMZZL
下三行への突っ込みだと思う

247:名前は開発中のものです。
09/05/21 20:03:43 PVitCZoM
jpgやpngはロードした時点でbmpに変換されるんじゃなかったっけ。

248:名前は開発中のものです。
09/05/21 23:37:28 SY9MChf5
pngやらはゲーム処理が遅くなるかもしれんが、
bmpを使うとゲーム容量が馬鹿デカクなる気がする

実際にどれほど処理・容量の違いがあるのかが知りたいNe!

249:名前は開発中のものです。
09/05/21 23:43:38 Lde+nmZH
いまどきbmpで作ったからって容量が多くなりすぎて困るって事はないと思うけどなぁ。
3Dゲームとかノベルゲームとかならまだしも。

むしろ容量食うのは音楽。

250:名前は開発中のものです。
09/05/22 00:30:16 opiwTOF8
ある程度DL数が多かったり、自宅サーバだったりする場合は
けっこう容量も気になってくるのだそうな。

251:名前は開発中のものです。
09/05/22 00:49:48 rdJ4/1mO
bmpじゃないと透過色が定まらない…

252:名前は開発中のものです。
09/05/22 13:26:24 Ttltxn7S
俺はpng一択。αチャネルを1ファイルで処理できるのが便利すぎる
(bmpやjpgだとチャネル用の別画像を用意しないといけない)

ちなみに読み込みだけにCPU負荷がかかるだけで、
テクスチャになってしまえば転送速度は同じ。
bmpの場合はファイルサイズも大きくなり、読み込みに時間が逆に掛かることもあるので、適材適所が良いと思います

253:名前は開発中のものです。
09/05/22 21:09:50 opiwTOF8
質問。
32x32の画像があって、これを2倍に拡大して表示するのと、
64x64の画像があって、これを等倍で表示するのとでは、どっちが高速?

拡大する手間がある分だけ遅くなると見るべきか、元々の画像が小さいから有利と見るべきか。
実測してみたけど、いまいちよく分からん。


254:名前は開発中のものです。
09/05/22 21:24:41 xxFjO+BK
実測してわからないのならどうしようもないような……。

255:名前は開発中のものです。
09/05/23 00:55:35 1QCRwyZH
>>253
前者の方が早いでしょう
拡大表示処理はハードウェア(Direct3D)で行うので、とても高速ですよ

256:239
09/05/23 12:29:43 A4cQi3hh
2000*4000くらいの大きな画像や、小さい画像を1000個くらい描画してみて
DrawRectGraphとDerivationGraphの違いを検証してみましたが、
メモリ、ビデオメモリ、処理速度に目立った違いは見受けられませんでした。
なので扱いやすいDerivationGraphを使って行こうと思います。

257:名前は開発中のものです。
09/05/23 13:25:24 ORU4uz0n
自分や友人がDxLibを使って作ったゲームを俺のPCで起動させると、始めはいいんだが、しばらくしてから必ず30フレームになってしまうのはなぜかわかる人いるか?
俺のPCは「VGN-AW71JB」っていう型なんだが…。PC版のスプリンターセルはヌルヌル動き続けるし、スペックの問題ではないと思うんだが…。64bitのvistaってのがなにか影響してるのかな?


258:名前は開発中のものです。
09/05/23 17:37:42 XAnqJ6HC
257 名前:名前は開発中のものです。[] 投稿日:2009/05/23(土) 13:25:24 ID:ORU4uz0n
自分や友人がDxLibを使って作ったゲームを俺のPCで起動させると、始めはいいんだが、しばらくしてから必ず30フレームになってしまうのはなぜかわかる人いるか?
俺のPCは「VGN-AW71JB」っていう型なんだが…。PC版のスプリンターセルはヌルヌル動き続けるし、スペックの問題ではないと思うんだが…。64bitのvistaってのがなにか影響してるのかな?

259:名前は開発中のものです。
09/05/23 20:01:55 5w7OxnoQ
インデックスカラー方式の画像描画はどうやったらいいんでしょうか。パレットを切り替えて色を途中で変えたりしたいんですが。

260:名前は開発中のものです。
09/05/23 20:38:13 JcHBq+Qd
一度メモリに読み込んでからパレット部分を書き換えて、グラフィックハンドルに登録する。
つまり、途中で自在に色換えはできない。

わかる、君のやりたい事はわかる。
スプライトの色変えみたいに自在にやりたいんだよな。でもできない。

261:名前は開発中のものです。
09/05/23 22:53:41 5w7OxnoQ
PCってファミコン以下の糞環境なんですねラスタースクロールもできないし

262:名前は開発中のものです。
09/05/23 23:00:23 KtGbScqt
DirectXでも弄ってろよ

263:名前は開発中のものです。
09/05/24 00:14:29 wnjrF3Q2
ラスタースクロールなんて10年ぶりに聞いた

264:名前は開発中のものです。
09/05/24 00:17:36 mQM6vOM4
>しばらくしてから必ず30フレームになってしまうのはなぜかわかる人いるか?

処理速度が低下するような時は、メモリーリークの可能性がある、
簡単に書くと、メモリを解放せずループで使いっぱなしにすると
メモリーがどんどん不足してゆき処理速度低下として症状が現れる。

265:名前は開発中のものです。
09/05/24 00:42:23 3op8nAnx
>>259
一色ごとに画像を抽出してそれを全部白くして、表示時に色をいじってだね・・・
コストはかかるが、あくまで自由自在に色をいじりたい奴だけそうしてみるとか

266:名前は開発中のものです。
09/05/24 04:14:52 7GmmmL9x
FilmtnとBCCつかうとコンパイルとプログラム実行一瞬でめちゃくちゃ速いな
VC2008は豪華だけど重い

267:名前は開発中のものです。
09/05/24 17:40:43 seD1hHi/
>>264
同じソースでも、友人のPCだったら落ちないという…
落ちないようにするにはどうしたらいいかな?

※と、書いてる途中でタスクマネージャーを見たら、CPU使用率が90%以上に張り付いてた。
他何も起動してないし、アプリケーションを停止したら0%に戻る。意味不明。

268:名前は開発中のものです。
09/05/24 19:21:41 e3aiszR0
そりゃ友人のPC環境が良いだけって話にならんかね。

269:名前は開発中のものです。
09/05/24 20:01:22 PboGdTn+
まぁ、ソースを見ないとなんともいえないな。
文字描画するのに、毎回文字の大きさ変えて描画してるとか

270:名前は開発中のものです。
09/05/24 23:50:08 seD1hHi/
自分
CPU:Core 2 Duo 2.66GHz
RAM:4.00GB

友人
CPU:Core 2 Duo 2.40GHz
RAM:2.00GB

ソースとして挙げるなら、DxLibのホームページの、ゲーム作成講座のソース。
四角君が自分に向けて弾を撃って来るあのソースですらなりました。


271:名前は開発中のものです。
09/05/25 00:30:41 41gxgfIl
いちいちageるなぼけ

272:名前は開発中のものです。
09/05/25 01:34:29 eHx6nkcb
c++教室の2Dアニメーションのプログラムを書いたんだが、表示されない
何が悪いのか……


273:名前は開発中のものです。
09/05/25 01:53:57 UZHs9GNu
それは愚痴か、質問か。

質問だったら「エスパーじゃないんだから、そんな事知らん」


274:名前は開発中のものです。
09/05/25 02:16:31 /EmhtAKe
DirectXを最新版にしてみたら?

275:名前は開発中のものです。
09/05/25 07:48:45 qL901e+j
指定ファイル名が違うとかダブルバッファの処理がおかしいかメモリに読み込まれてないかじゃね

276:名前は開発中のものです。
09/05/25 10:55:40 yXpMtdiR
俺はScreenFlipでの垂直同期周りだと予想
グラボと設定によっては同期待ちのタイミングでCPU処理に加算されとても重く「感じる」ことがある。

277:名前は開発中のものです。
09/05/25 15:09:43 bb62p5Sd
SetWaitVSyncFlag(FALSE);

でカオスになるぜ!

278:名前は開発中のものです。
09/05/26 17:43:21 WrI50zFN
>277
誰もが一度は通る道www

279:名前は開発中のものです。
09/05/27 04:36:49 cQqUnwcL
3D背景を実装するのって難しいかね

280:名前は開発中のものです。
09/05/27 04:47:29 klPEh/z6
あなたの実力による

281:名前は開発中のものです。
09/05/29 00:03:12 vY9ARI7K
チラ裏。
Dxライブラリをうまく名前空間に突っ込めないかなー、と思ったが
自前で改造しなきゃならない量を考えると挫折しそうだって愚痴。


>279
3Dで作った背景を2D画像に落として、
無理やりパターンアニメで表示させてるって作品があったような気がする。


282:名前は開発中のものです。
09/05/29 01:20:12 4j6tq9JR
>>279
実際にいじってないのでなんとも言えないが
ここに映像つきのサンプルあるよ。
URLリンク(dixq.net)

283:279
09/05/29 06:57:39 Vqjs1m4E
>>280
ふむ…努力次第でどうにでもなるという解釈でおkかな。時間はかかりそうだがやってみないことにはわからないな

>>281
横シューのなら見たことあるwwものすごい労力の割に拡張性が無さそうでなぁ…

>>282
おお、こんな感じで動かせられるなら…


とりあえずテクスチャを簡単にくりくり動かせるような関数でもつくってみることにする

284:名前は開発中のものです。
09/05/29 21:51:58 izoQPgWw
VC2008って無意味に重いなあ
関数かいてカーソル合わせると宣言が表示されるから便利なんだけどなあ

285:名前は開発中のものです。
09/05/29 23:04:59 ATWupmEU
ツール→オプション→環境→自動バックアップ→自動バックアップの実行間隔→60分ごと

286:名前は開発中のものです。
09/05/30 23:32:29 3JWvpnu4
>3Dで作った背景を2D画像に落として、
>無理やりパターンアニメで表示させてるって作品があったような気がする。

いいねこれメガテンの3Dダンジョンみたいなのに使えるな

287:名前は開発中のものです。
09/05/31 03:54:51 /tj3gvKS
int state = 0;
swith(state){
case 0:
if(CheckHitKey(KEY_INPUT_RETURN)){
文字表示
state++;
}
case 1:
if(CheckHitKey(KEY_INPUT_RETURN)){
文字表示
state++;
}
case 2:
if(CheckHitKey(KEY_INPUT_RETURN)){
文字表示
}
}

という風にすると、全部一気にキー判定されて、同時にすべての文字が表示されます。
WaitKeyとかWaitTimerを使う以外で、エンターを押すごとに順番に表示させるにはどうすればいいでしょう?

288:名前は開発中のものです。
09/05/31 04:07:26 WdCW0LKP
>>287 コンパイルしてないから、実際に動くかは知らんが、
enterが押しっぱなしの時は、flagを0にシナイので、
enterが離されて、再度flagが0になってからswitch文の実行が行われる。ように改造すれば
望みの結果が得られると思う。

int state = 0;
int flag =0;
if(flag == 0){
switch(state){
case 0:
if(CheckHitKey(KEY_INPUT_RETURN)){
flag =100;
文字表示
state++;
}
case 1:
if(CheckHitKey(KEY_INPUT_RETURN)){
flag =100;
文字表示
state++;
}
case 2:
if(CheckHitKey(KEY_INPUT_RETURN)){
flag =100;
文字表示
}
}
}else if(flag != 0)
{f( !CheckHitKey(KEY_INPUT_RETURN) ){
flag =0;
}


289:名前は開発中のものです。
09/05/31 04:49:59 j4yiAyL2
/*>>287 の意図する動作かどうかわからんが、俺がいつも使ってる方式
キーバッファを設けることによって、押された瞬間を判定することができる*/
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
ChangeWindowMode(TRUE);
if (DxLib_Init() == -1) {return -1;}
SetDrawScreen(DX_SCREEN_BACK);
char key_buffer[2][256]; // キーバッファ
int state = 0;
while (ProcessMessage() != -1) {
ClearDrawScreen();
// 前のフレームの入力状態を保持
for (int i = 0; i < 256; i++) {
key_buffer[1][i] = key_buffer[0][i];
}
// 現在のフレームの入力状態を取得
GetHitKeyStateAll(key_buffer[0]);
// 「現在のフレームで押されている」かつ「前のフレームで押されていない」ならば
if (key_buffer[0][KEY_INPUT_RETURN] && !key_buffer[1][KEY_INPUT_RETURN]) {
state++; // 次の状態へ
}
// state の値によって分岐するなり何なり
DrawString(0, 0, "Press enter key!", GetColor(255, 255, 255));
DrawFormatString(0, 20, GetColor(255, 255, 255), "状態%d", state);
// 適当なところで終了
if (state == 10) {break;}
ScreenFlip();
WaitTimer(10);
}
DxLib_End();
return 0;
}

290:名前は開発中のものです。
09/05/31 05:11:01 YoqdwaI9
とりあえずbreakしようぜ

291:名前は開発中のものです。
09/05/31 08:31:50 JGIiJgnT
if((CheckHitKey(KEY_INPUT_RETURN))&&LeftFlag==0){
LeftFlag=999;
文字表示}else LeftFlag=0;
押したときだけ処理するようにすればいけそう?

292:名前は開発中のものです。
09/05/31 08:46:00 P4ttxSKS
static
break

293:名前は開発中のものです。
09/05/31 15:21:06 jTyG44wW
if(CheckHitKey(KEY_INPUT_RETURN)){
if(enter_cnt<100){enter_cnt++;}
}else{
enter_cnt=0;
}

if(enter_cnt)//押している間
if(enter_cnt==1)//押された瞬間

294:名前は開発中のものです。
09/05/31 15:22:27 jTyG44wW
if(CheckHitKey(KEY_INPUT_RETURN)){
 if(enter_cnt<100){enter_cnt++;}
}else{
 enter_cnt=0;
}
半角消えるのか

295:名前は開発中のものです。
09/05/31 20:06:14 kvaGbtb9
>>286
DOGA最盛期にうんざりするほどあったよそういうの

296:名前は開発中のものです。
09/06/01 03:53:44 ojIQArFl
CheckHitKeyで押された回数を数えるにはどうしたらいいでしょう?

297:名前は開発中のものです。
09/06/01 03:59:15 YGv3z7sb
>296
if文とインクリメント


298:名前は開発中のものです。
09/06/01 04:02:48 7hVJjQOF
>>296
今話題の押された瞬間を数えて適当な変数に保存しときゃいいんでね?

299:名前は開発中のものです。
09/06/01 04:12:11 ojIQArFl
下のプログラムを改良して、エンター押すごとにA,B,C,Dを表示させていくにはどうしますか。
下のままだと、ABCDっていっきに表示されます。

#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode(TRUE);
if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;

int col1 = GetColor(255, 255, 255);
char input[4];
int i = 0;



300:名前は開発中のものです。
09/06/01 04:13:52 ojIQArFl
>>299続き
while(ProcessMessage()==0 && CheckHitKey(KEY_INPUT_ESCAPE)==0){
if(CheckHitKey(KEY_INPUT_RETURN)){
switch(i){
case 0:
input[i] = 'A';
break;
case 1:
input[i] = 'B';
break;
case 2:
input[i] = 'C';
break;
case 3:
input[i] = 'D';
break;
}
i++;
}
if(CheckHitKey(KEY_INPUT_SPACE)){
ClearDrawScreen();
DrawString(0, 0, input, col1);
}
ScreenFlip();
}

DxLib_End();
return 0;
}


301:名前は開発中のものです。
09/06/01 08:41:57 7hVJjQOF
キーを1回押されるごとに処理したい場合の
あるごりずむ体操

(ループはじめ)
    ↓
<前回キーが押されていたか?> YES→ (ループおわり)
    ↓ NO
<キーが押されているか?>    NO → (ループおわり)
    ↓ YES
[キーが押された時の処理]
    ↓
(ループおわり)

302:名前は開発中のものです。
09/06/01 08:43:59 OkPmCHq7
iの値も0に戻してあげようね

303:名前は開発中のものです。
09/06/01 09:36:50 hCSvJ7Y8
リアルタイム処理でないのならScreenFlipのあとにでも↓を追加しときゃいいんじゃね?


while( ProcessMessage() == 0 && CheckHitKey(KEY_INPUT_ESCAPE) == 0 && CheckHitKey(KEY_INPUT_RETURN) == 1 ){
Sleep(16) ;
}


304:名前は開発中のものです。
09/06/01 10:52:22 YGv3z7sb
>>301
昔、組み込みプログラムでやったな、そういう処理。


305:名前は開発中のものです。
09/06/01 16:12:49 rm5/xw9E
クラス化するとか
class Key {
private:
int keyCode, state;
public:
Key( int KeyCode ) : keyCode( KeyCode ), state( 0 ) {}
int CheckHit() { int tmp = state; state = CheckHitKey( keyCode ); return tmp ? 0 : state; }
};

//WinMain
...
Key enter( KEY_INPUT_RETURN );
if(enter.CheckHit()){
...

306:名前は開発中のものです。
09/06/01 21:33:29 lE2okL9b
無駄すぎ糞ワロタ

307:名前は開発中のものです。
09/06/01 22:14:20 MR6y8v2X
そこで無駄のないソースの登場ですね。

308:名前は開発中のものです。
09/06/01 22:52:38 aqGzCF5U
俺もクラス化してるから、簡潔な方法があるなら教えて欲しい。

309:名前は開発中のものです。
09/06/01 22:57:02 eaj8yaj9
そもそもこのプログラムはスペースを押さないと表示させないようにしてるのかな
それはともかく言われたように押してくごとにABCD表示させようと思ったら
>>300を変更するとしたら
int returnOn = 0;  // ←
while(ProcessMessage()==0 && CheckHitKey(KEY_INPUT_ESCAPE)==0){
if(CheckHitKey(KEY_INPUT_RETURN) && !returnOn){  // ←
switch(i){
case 0:
input[i] = 'A';
break;
case 1:
input[i] = 'B';
break;
case 2:
input[i] = 'C';
break;
case 3:
input[i] = 'D';
break;
}
i++;
returnOn = 1;  // ←
}
if( !CheckHitKey(KEY_INPUT_RETURN)) returnOn = 0;  // ←
        (以下略)

とかやるとか


310:名前は開発中のものです。
09/06/01 23:27:38 FdTrWJbB
static変数のフラグ使うのが一番単純だと思うなあ

311:名前は開発中のものです。
09/06/02 09:36:41 9M4SMxHr
hsp時代にも散々似たような処理書いたなぁ…

なんかゲームのメインループ()


if((Aボタン==1)&&(Aボタンバッファ==0))

   なんか押された瞬間だけ1回やりたい処理


Aボタンバッファ=Aボタン



最初からKEY_DOWN、KEY_UP的なものがライブラリに有れば楽なんだが
ゲームじゃしょっちゅう使うし

312:名前は開発中のものです。
09/06/02 09:48:11 fOpSnwq/
32ビットか64ビットの整数をバッファにしてビット演算で書き込み、取り出しが一般的だろ
そのバッファに生でアクセスすることはあまりないが、
かといってキーごとにオブジェクト化するのもありえない

313:名前は開発中のものです。
09/06/02 11:07:30 lqyt4myq
299にいきなりそんな話してもわかんないでしょ。

314:名前は開発中のものです。
09/06/02 11:08:32 fOpSnwq/
抜けてたが、
上の例の場合、バッファは二つ以上ないとあまり意味ない
キーがマッピングしきれないって人はchar配列とか使えばいい

よりこだわる人はRawInputで

315:名前は開発中のものです。
09/06/02 21:23:19 CgQN485t
>キー入力

自分が使ってるルーチンのコードを記事にまとめました
URLリンク(d.hatena.ne.jp)

316:名前は開発中のものです。
09/06/02 22:46:42 D2ufpiqQ
入力の話題が出たので

キーコンフィグの実装で悩んでるんだけど、
>>315とかだと KEY_INPUT_なんとか の部分は変えられないし
どうやってキーコンフィグ実装するんだろうか・・・
同じようなソースでenumを弄っても根本的には変わらないし

317:名前は開発中のものです。
09/06/02 23:00:27 fOpSnwq/
少しは頭使えよww

318:名前は開発中のものです。
09/06/02 23:00:38 vp7xQIPq
>>315の例で言うならkeyb_keyを動的に書き換えりゃよかんべよ
KEY_INPUT_なんとかとスクリーンに表示する文字との対応表は作らにゃならんが

319:名前は開発中のものです。
09/06/02 23:19:31 rGe8VGDA
抽出 ID:fOpSnwq/ (3回)

312 名前:名前は開発中のものです。[sage] 投稿日:2009/06/02(火) 09:48:11 ID:fOpSnwq/
32ビットか64ビットの整数をバッファにしてビット演算で書き込み、取り出しが一般的だろ
そのバッファに生でアクセスすることはあまりないが、
かといってキーごとにオブジェクト化するのもありえない

314 名前:名前は開発中のものです。[sage] 投稿日:2009/06/02(火) 11:08:32 ID:fOpSnwq/
抜けてたが、
上の例の場合、バッファは二つ以上ないとあまり意味ない
キーがマッピングしきれないって人はchar配列とか使えばいい

よりこだわる人はRawInputで

317 名前:名前は開発中のものです。[sage] 投稿日:2009/06/02(火) 23:00:27 ID:fOpSnwq/
少しは頭使えよww

320:名前は開発中のものです。
09/06/02 23:23:59 9M4SMxHr
>>316
自分の場合:
ちょっと>>315と関数の仕様が違うけど

KEY_STATE getKeyState(int pad_num, KEY_FUNC key_func);


if(getKeyState(1, shot_btn) == KEY_DOWN){
ショット処理
}

コンフィグのiniファイルかなんかを読んで
shot_btnとかjump_btnとかの数字を適当に書き換える

今パッと思いついただけでコンフィグ実装したことないけど

321:名前は開発中のものです。
09/06/03 01:33:47 BENUHFDk
>320
俺も大体そんな感じでやってる

322:名前は開発中のものです。
09/06/03 01:35:57 ZbYk0Q0K
変な質問。
ウインドゥモードにした場合、勝手にウインドゥを作成して表示ではなく、あるウインドゥを使うように
することってDXライブラリではできますか?

323:名前は開発中のものです。
09/06/03 02:49:29 jjOgvpoK
>>322
例えばIEのウィンドウに表示したりとか?
意味がよくわからんが何より意図がわからない

324:名前は開発中のものです。
09/06/03 04:00:28 bNYd6KiM
どうせならGetHitKeyStateAllの方使った方がよくね

325:名前は開発中のものです。
09/06/03 10:50:20 tN/MRQC4
MDIにしたりとかだろ。
無理じゃないか?

326:名前は開発中のものです。
09/06/03 12:26:59 jjOgvpoK
>>324
ジョイパッド無理じゃなかったっけ?
まぁ可能かどうかは別にして

それをどうラッピングして押下げや押上げの判定を楽にしようかって話なんじゃ

327:名前は開発中のものです。
09/06/03 14:28:21 /YZEGe2A
俺の場合はGetJoypadInputState と GetHitKeyStateAll を併用で一括入力管理して
押上判定は個々の部分でやってるな。


328:名前は開発中のものです。
09/06/03 17:51:51 JOR7X/qw
クラス化するとしたらこんな感じですかね?
URLリンク(www.dotup.org)
考え方は>>315と同じ

329:名前は開発中のものです。
09/06/03 18:54:40 jjOgvpoK
みんな色々なやり方で面白いな。
自分はWin32APIのイメージが強すぎたせいか
KEY_UPとかキー状態の列挙体を戻り値で返す方法前提で考えていたけど
メンバにアクセスして真偽だけ返すという手もあるのか…

330:名前は開発中のものです。
09/06/03 20:15:41 n5yqAu71
>>319
意味わからん。>>307さんですか?

331:名前は開発中のものです。
09/06/03 20:41:08 RNCUnVzX
いや307は俺。

332:名前は開発中のものです。
09/06/03 22:22:44 DNn913L5
おいおい勝手に俺を名乗るなよ

333:名前は開発中のものです。
09/06/03 23:55:15 ZbYk0Q0K
俺も307です

334:名前は開発中のものです。
09/06/04 00:44:33 4zSVCft7
じゃあオレも307

335:名前は開発中のものです。
09/06/04 00:56:02 uCnhFctq
俺がこんなにいるなんて……作業がはかどるかなぁ。

336:名前は開発中のものです。
09/06/04 03:42:53 pMlbkkXE
能力は1/5だけどな

337:名前は開発中のものです。
09/06/04 04:45:47 EMFSgqr3
天津飯かよ

338:名前は開発中のものです。
09/06/04 07:23:29 pMlbkkXE
>337
名乗ったのが4人なら、もっと天津飯ネタを取り入れていた

339:名前は開発中のものです。
09/06/04 19:12:58 EMFSgqr3
で、
>>328式がベストでおk?

340:名前は開発中のものです。
09/06/04 21:55:52 94jaKxLF
2Dに限ってなんだが
結局の所
DXライブラリで作ったゲームと
OpenGLで作ったゲームと
DirectXで作ったゲームって

どこがどうちがうの?ほぼ一緒だろ?

341:名前は開発中のものです。
09/06/04 23:58:41 NBcwy8pb
>>340
名称が違う
難易度も違う

342:名前は開発中のものです。
09/06/05 00:24:06 LjYKB7R9
>>340
DXライブラリ:楽。動作実績が大きい。
OpeGL:日本のゲーム作りに関しては情報少ない。
DirectX:DXライブラリと似たようなラッパーを書く事になる。動作検証要。

343:名前は開発中のものです。
09/06/05 00:26:20 jQ78PNQ2
DXライブラリのサポートは金とってもいいレベル

344:名前は開発中のものです。
09/06/05 00:29:54 MVmrQAbM
世界的な実績で言うなら、その3つの中で一番下のような気もするけどなーw

345:名前は開発中のものです。
09/06/05 00:39:57 fb3Bnpon
ツクールシリーズ
→日本人からプログラミングの素養を奪い取るキラーソフト
DXライブラリ
→日本人から3Dプログラミングの素養を奪い取るキラーソフト

漢ならLinux環境でC+OpenGLでvi+gdbするべし

346:名前は開発中のものです。
09/06/05 01:17:49 k3aCK9Tq
>>345
それなら薦めるべきはSDLな気がする
それだけだとせっかくCとGL使ってもキー入力まわりで移植性がなくなる
GLUTのキー処理は論外だし
SDLからGL叩けるし

メジャーなプログラミング言語のほとんどがSDL対応してるし

でもこのスレ的にどうかと思うぜこの話題

347:名前は開発中のものです。
09/06/05 01:22:53 gGshfnNu
それだけ解っててなぜDXライブラリスレにいるのかと。

348:名前は開発中のものです。
09/06/05 01:48:22 byAKAyX7


「作ったゲーム」に関していう違いなら

DXライブラリで作ったゲーム
 動作実績があるライブラリだから動作する環境が多い
 速度は各ソフトの特性に合わせて最適化できないぶん遅い
 ライブラリで実装されていてDirectX直叩きなら使える機能が使えないから表現力はDirectX直叩きした場合より劣る

OpenGLで作ったゲームとDirectXで作ったゲーム
 エンジンの動作検証は作者PCのみだからプレイヤー環境で動作しない可能性はライブラリを使った場合より高い
 作るソフトに合わせて最適化できるのでDXライブラリ作者と同レベルのプログラム力を持っていれば確実にDirectX直叩きのエンジンの方が動作速度が速い
 DirectX直叩きできるから表現力はDirectXの表現力とイコール

349:名前は開発中のものです。
09/06/05 02:19:36 byAKAyX7
追記
基本的にゲーム製作を助けるためのものだからプレーヤー側から見ればDirectX直叩きで
DXライブラリと同等かそれ以上の性能のオリジナルエンジンを使ってソフトを作ってくれた方が嬉しいのは確かだろう
(それが製作者が支払う労力に見合うかどうかはさておき)

ただ、DXライブラリの存在があったことによって世に出ることができたゲームソフトもあるだろうから
端的にプレーヤー側にとっては動作安定以外にはデメリットしかないという結論に達することはできない

345的な理論はBASIC言語についても似たようなことが言われていたね、まあ3D対応すれば多少は改善されるんじゃないか

350:名前は開発中のものです。
09/06/05 06:01:05 /qtS2mAS
俺の場合はC++を重点的に学習したいからこれ選んでる
DirectXとか使おうもんならC++の上にこれも覚える負担に駆られるためかなり厳しくなる
DXLIBだと覚えること比較的少なく済むからC++に労力割けれるしね
だからその人その人の状況次第でしょう
あとこう書くといちゃもんつけてくる奴がいるから言っとくけど
全半角に突っ込むのなしね
俺タイプ苦手だから一々直すの面倒いからそれだけは言っとく

351:名前は開発中のものです。
09/06/05 07:44:06 Jb6PFwRw
クソスレ晒し上げ

352:名前は開発中のものです。
09/06/05 08:16:16 2+rjN8tB
面倒って……MS-IMEなら無変換キーを二回押すだけだし
ATOKだってファンクションキー一回押すだけだろうに……。

ていうかタイプ苦手だから面倒なんじゃなくて
それくらいを面倒がるからいつまでたってもタイプ苦手なんじゃないか。

353:名前は開発中のものです。
09/06/05 11:48:16 KAzeFILe
DXライブラリに関する書籍はないものでしょうか?

354:名前は開発中のものです。
09/06/05 12:27:22 /qtS2mAS
俺は全角のが落ち着くの

355:名前は開発中のものです。
09/06/05 14:40:29 pZVc1EDu
苦手というか、面倒という気持ちはわかる。
プログラミングしてて全角でコメントした後半角になおしたりとか正直邪魔くさい。

356:名前は開発中のものです。
09/06/05 17:58:00 b0tlHB//
>>353
初心者用でいいなら14歳から始める~ とか

357:名前は開発中のものです。
09/06/05 21:40:13 k3aCK9Tq
>>348
>>349
一通り触ったことはなさそうなことだけ伝わってくる文だな
その割に長くてうざい

358:名前は開発中のものです。
09/06/05 21:56:05 WwCy/X5Y
>>342
OpenGLならラッパー書かずに済むの?

359:名前は開発中のものです。
09/06/05 23:07:05 1schIxWd
OpenGLはラッパーどころかゲーム作りに必要な他の部品も必要。音楽再生とかキー入力とか画像読み込みとかどっかのライブラリ持ってくるなりしないといけないから超めんどくさいそりゃ普及せんわ

360:名前は開発中のものです。
09/06/05 23:14:10 KAzeFILe
>>356

明日あたり立ち読みしに行ってみます

361:名前は開発中のものです。
09/06/05 23:49:13 LjYKB7R9
14歳は名著でもあり地雷でもあるから気をつけろ。
誤字脱字内容間違い多いからな。

362:名前は開発中のものです。
09/06/06 00:03:30 H/iQ8fyW
>>359
むしろ技術力がつく

363:名前は開発中のものです。
09/06/06 00:06:10 sFhdVHFw
んなこと言い出しゃ自分でOpenGL、DirectX相当つくったり
自分で言語やコンパイラつくったり

364:名前は開発中のものです。
09/06/06 00:44:32 yKGSZjfM
>>322
俺もこれやりたい
ウィンドウ周りは.NET Frameworkにまかせて、あるPictureBoxコントロールの中で描画とか

365:名前は開発中のものです。
09/06/06 00:57:21 sFhdVHFw
LunaかなんかのサンプルにMDIのウィンドウで動いているのなかったっけ?

366:名前は開発中のものです。
09/06/06 02:23:33 0RWuIZ8X
ある程度プログラムさえ分かってりゃある程度の誤字脱字には気付くんじゃまいか
と言うよりあれはそんな初心者向きじゃないような気モス
ある程度基本はできていた方がいいかも
俺は大分参考になったし俺のやり方はそれがベースになってる

367:名前は開発中のものです。
09/06/06 14:28:01 9zaJ0Qz/
マップスクロールってどうやるんだ?

プレイヤーがx座標400ぐらいまで行ったら、背景画像をスクロールさせる感じで組んでみたら
動いてるようには見えるけど自身の座標は当然変わらず、後ろのハリボテが動いてるだけになったw

どんな感じでマップスクロールって作ってる?

368:名前は開発中のものです。
09/06/06 14:45:01 mp6p4QK3
>>367

基本的のその考え方で間違ってない。
気に入らないならもっと考え方を進めていけばいいだけ。

369:名前は開発中のものです。
09/06/06 15:02:08 triYp4O5
アクションゲームなら、マップの座標は固定にしてカメラを動かすという考え方のほうがいいかもしれない。

370:名前は開発中のものです。
09/06/06 16:34:01 4wIgR8zN
よく2Dクォータービュー型の箱庭ゲームで画面の拡大・縮小というのがあるけど、
あれは裏バッファ2に描いておいて、裏バッファに縮小転送、フリップというやり方
なのでしょうか?
それとも拡大・縮小の段階毎に元絵を用意しておいて、現在の段階に応じた元絵
を裏バッファに描画、フリップというやり方なのでしょうか?

371:名前は開発中のものです。
09/06/06 17:22:10 mp6p4QK3
やった事ないけど、俺がもしやるなら
普通にそれぞれの画像を描画する際に縮小描画するだろうな。
当然、表示座標も縮小計算して。

372:名前は開発中のものです。
09/06/06 17:26:21 Fiwfc+rD
俺は普通に描画時に拡大縮小してる
>>370だと後者になんのかな

373:名前は開発中のものです。
09/06/06 17:40:50 mp6p4QK3
ひょっとして、拡大縮小描画の命令を知らんとか?

374:名前は開発中のものです。
09/06/06 18:10:53 94tz/m1F
>373
拡縮機能使ってる? それとも予め画像用意しとく?
って聞きたいだけじゃないかな。

375:名前は開発中のものです。
09/06/06 18:59:26 9zaJ0Qz/
当たり判定って三角関数使って作ったほうがいい?
それともXY座標だけのでもいい?

376:名前は開発中のものです。
09/06/06 19:42:33 94tz/m1F
ちょっと質問。

 >int SetWaitVSyncFlag( int Flag ) ;
 >ScreenFlip関数 実行時にCRTの垂直同期信号待ちをするかのフラグセット

ってあるんだけど、
これって液晶モニタだと関係ない(常にtrue扱いになる?)んだろうか。

手元に液晶しか無いんで、プログラムが間違ってるのか仕様なのか判断できないんだ。


>375
なんの当たり判定だよと。
x,yだけで処理できるなら三角関数使わなくてもいいんじゃないの?


377:名前は開発中のものです。
09/06/06 21:33:11 gMk4d0ex
よくは判らんが、垂直同期信号って別にモニタが返してきてるわけじゃないんじゃない?
とりあえずうちの液晶モニタじゃ普通に動いてるし。

グラボ(RADEON)で垂直同期信号のON/OFF設定ができてるから
問題となるのはグラボの設定って気がする。

378:名前は開発中のものです。
09/06/06 21:49:45 94tz/m1F
ビデオカードか、言われてみればそりゃそうだよな。
なんかすまん。

色々と試してみた結果、
グラボの設定を変更&フルスクリーンでFPSが60Hzの上限を突破することが出来た。

まあ、実際に使うことはないだろうけれど。

379:名前は開発中のものです。
09/06/06 21:52:06 9zaJ0Qz/
>>376
横スクロールの当たり判定

380:名前は開発中のものです。
09/06/06 22:08:08 gMk4d0ex
>>379

君はもう少し自分の考えてる事を他人にわかって貰う努力をしろw

スクロールと当たり判定と三角関数がどう関わってくるのか、の説明とか
どうして「三角関数が必要かも」と思ったか、とか。

381:名前は開発中のものです。
09/06/06 22:46:25 sFhdVHFw
円形か四角か

382:名前は開発中のものです。
09/06/06 23:14:29 vskJtjA7
>>380
おまえ、偉そうジャン?

383:名前は開発中のものです。
09/06/06 23:46:26 +AmloxXp
ジャン()笑

384:名前は開発中のものです。
09/06/07 00:27:15 jsaQKHFo
>>380
努力しろとか、おまえ、何様ジャン?

385:名前は開発中のものです。
09/06/07 00:43:22 7g+XVYWN
MessageBox(NULL,"なんとか","かんとか",MB_YESNO)
これのメッセージの中身って、%dで変数表示したりできるんですか?
できるならどうやってやるんでしょうか、教えてください。

386:名前は開発中のものです。
09/06/07 00:47:04 jsaQKHFo
>>385
リファレンス読む努力しろ
こんな簡単な事ができなきゃやめちまえ

387:名前は開発中のものです。
09/06/07 00:57:18 WlXcjgXY
>>371-374
返答ありがとうございます。
どうも、うまく伝わってなかったみたいですね。

そうか、1つの建物なり乗り物を描画する時に縮小描画してるというわけですね。
それが普通ということですね。

>>386
あんたも努力しろって言ってるジャン


388:名前は開発中のものです。
09/06/07 00:57:54 fLd/zS9/
>>384
俺も379読んで380と同じ意見だ
384は379だけでわかるのか?

>>385
できない、sprintfを調べてみるといい

389:名前は開発中のものです。
09/06/07 02:35:15 3sx78L/g
当たり判定に三角関数が必要か?三平方の定理のことじゃないか
まあ俺は2次元しか知らんから分からんが

390:名前は開発中のものです。
09/06/07 10:52:33 OFYyutYg
いつからウミガメのスープスレにw

391:名前は開発中のものです。
09/06/07 11:57:27 caHBoLjZ
ウミガメノスープスレって何のことかと思って調べちまったじゃないかw

ある問題について出題者が回答者の質問にYes/No形式でヒントを与えつつ
解答を推理していくゲームか。

なるほど確かに、質問者がちゃんと状況を説明できず、情報も小出しにしかできないで
質問に答えようとする人間が、なんとか回答するに足るだけの情報を
引き出そうと四苦八苦するところが似ているな。

392:名前は開発中のものです。
09/06/07 12:07:51 OFYyutYg
>>391
ゲーム化したぜ(原作がスレって意味じゃないが)
スローンとマクヘールの体験版をプレイする作業に戻るんだ

393:名前は開発中のものです。
09/06/08 08:25:05 LOgaJ0S5
2Dスクロールゲームでさ
敵を出すときって、マップ座標の一定値までプレイヤーが来たら敵を出現させるって感じでいいのかな?
今敵の出現関数の引数にマップ座標渡してやってるんだけど、それだと思った所に出すのがめんどくさい。
もっといい方法ない?

394:名前は開発中のものです。
09/06/08 08:29:40 sCESisPc
なんかDXライブラリと直接関係ない質問が連発されるなぁ。
他にもっと適切なスレがあると思うんだが。

>>393

それで特に間違いはないと思うが、
マップデータに敵の存在情報を埋め込むという手もあると思うな。

自由スクロールかどうか等で、いろいろ工夫がいるようになるだろうけど。

395:名前は開発中のものです。
09/06/08 09:03:31 5KFTi9VQ
だったら誘導してやれば

2Dスクロールゲームと言ってもいろいろあるからそれにもよる

396:名前は開発中のものです。
09/06/08 10:40:15 tSfMBcni
というかどのスレか誘導して欲しい。
確かにDXライブラリ以外の話題はスレ的によくないと思うし。

397:名前は開発中のものです。
09/06/08 11:12:30 WLx6NXXx
2Dスクロールで敵が出ると言ってもシューティングや他のアクションゲームもあるし
それらで別れるからなあ。

398:名前は開発中のものです。
09/06/08 11:33:19 cazy22G6
DXライブラリに関係ないゲームアルゴリズム系総合なら、ここでいいんじゃね?

【初心者】スレを立てる前にココで質問を【Part19】
スレリンク(gamedev板)

399:名前は開発中のものです。
09/06/08 13:24:46 5KFTi9VQ
でもまあアルゴリズムと言ってもDXライブラリ的なアプローチもあるやも知れん

400:名前は開発中のものです。
09/06/08 13:44:11 1Ns/D0F7
DXライブラリ的なアプローチって何やねん

401:名前は開発中のものです。
09/06/08 17:09:17 Q/bmJU+V
DXライブラリを使ったアルゴリズムなら?

402:名前は開発中のものです。
09/06/08 20:15:15 fnZML6Vn
前に教えてもらった14歳からはじめるシリーズを立ち読みして
その中で、わくわくゲームプログラミングを買ってきました
ゆくゆくはRPG作れたらいいなぁ、なんて
しかし最近の14歳は凄いな、ざっと見たけどこの本理解できんだろうか・・

403:名前は開発中のものです。
09/06/08 20:22:53 kVsTXpwy
スレチだが、サルでもわかるXXの本があるのだから、人間はサル以下と

404:名前は開発中のものです。
09/06/08 21:19:56 ScR8iayc
PC-6001版ゼビウス(タイニーゼビウス)を作ったのは小学六年生だと聞いて愕然とした。

405:名前は開発中のものです。
09/06/08 23:13:08 4xXNhiJa
小学生なめんな
年齢で知識の量は違っても論理力はたいして変わらないと思う

406:名前は開発中のものです。
09/06/08 23:22:34 gmTgYuK1
>>402
昔は小中でハンドアセンブルとかふつうだったし
テキストエディタ無かったし
アセンブラやコンパイラ無かったし

それでもゲーム作ってたからね

資料がネット無い時代だけど毎月大量の雑誌があったおかげで
今の10倍は情報量があると思う

14歳からはじめる~の内容が毎月5冊くらい雑誌としてあったと思いねぇ

407:名前は開発中のものです。
09/06/08 23:31:36 VwdPN9TR
テキストエディタがないってどうやってコーディングしてたんですか

408:名前は開発中のものです。
09/06/08 23:35:38 1Ns/D0F7
>>406
モノがあふれてない方がかえって集中できてよいことの典型的な例ですな

409:名前は開発中のものです。
09/06/08 23:38:00 rJGFypi7
当時でも、機械語でゲーム製作できる小学生は相当凄い。
情報も今のほうが圧倒的に多いし楽に手に入る。
逆に、情報や手段が多いせいで入りにくくなってる。


410:名前は開発中のものです。
09/06/08 23:58:56 gmTgYuK1
>>407
方眼用紙もってドット絵かいたりハンドアセンブルばっかりしてた
変換表の半分くらいは暗記してたけど今じゃもう何も覚えて無い
c9がretだっけとかそんな感じ
ミスすれば暴走>リセットだったから実行するにも緊張した

結果机上デバッグにみんな慣れてソースやバイナリ見るだけですぐわかるようになってくる
バイナリ見たときのビッグエンディアンのわかりやすさはあこがれた
なんせ俺の暴走原因の90%は上位と下位のスワップし忘れがほとんどだったから


あと当時はPCの楽しさは俺達しかしらないんだぜ的なものもあったかな

というか全然普及して無いから虐げられてた
マイコン触れる=ネクラの変人で運動も何も出来ないんだろ的な

だからDXライブラリのように敷居を下げるライブラリにはがんばってもらいたい

今のほうが情報が入手しやすいというのはどうだろうね
CPUそのものとかOSとかデザパタとかそういうオカタイ情報は入手しやすいけど
ゲームを作りたい場合の情報の敷居の高さは半端じゃないよね?

徳間のM-FANみたいなのが必要かなと

411:名前は開発中のものです。
09/06/09 00:57:34 S/a6iR+n
ゲームプログラミングが初めてだという人、特にゲームを作りながら言語も覚えようという人は
最初は出来る限りシンプルなゲームから作った方がいい…と、僕は思うんだ。

80年代前半より前の生まれなら、ゲーム&ウォッチが通じるんだが
最近の子(20歳以下)だと、どのへんが分かりやすい例え何だろうか。

412:名前は開発中のものです。
09/06/09 01:10:43 oifuXaCW
>>407
>>410

俺も方眼紙にドット絵描いたり、
ノートにニーモニックでプログラム書いてから、ニーモニック→マシン語変換表見ながらマシン語に書き換えて、
それをバイナリエディタで入力とかやってたなぁw

ところで当時バイナリエディタって読んでたっけ? なんか別の呼び方だったような気がするが……。

413:名前は開発中のものです。
09/06/09 01:17:12 gC7kpoXP
モニタ

414:名前は開発中のものです。
09/06/09 01:46:37 PMo4RsPh
ここにいる人は40歳前後が多そうだな

415:名前は開発中のものです。
09/06/09 02:52:08 3VeuGuyA
そんな知識のある父がほしかった

416:名前は開発中のものです。
09/06/09 03:20:38 C8Rc41AV
今思い出すと俺も16,7の時もツクールで
なんであんなに創作意欲があったんだろうと思う

年取るとアイデアうかばない症候群になった
ただの鬱なのかもしれんが

417:名前は開発中のものです。
09/06/09 04:40:20 ur7it59g
>>411
VCもあることだしファミコンでいいんじゃね?

418:名前は開発中のものです。
09/06/09 05:12:36 6uG82dMD
高校でパソコン部を作りたいと申請したら
教師に「そんなおもちゃが一体何の役に立つんだ」と
即却下されたのもなつかしい

419:名前は開発中のものです。
09/06/09 09:36:31 S/a6iR+n
>>417
ファミコンだと、スーパーマリオ3やドラクエ3も含まれるんだぜ?
ケータイアプリとかなら行けるのかな? やったことないから分からんのだが。

420:名前は開発中のものです。
09/06/09 09:50:17 ur7it59g
どんなタイトルでもいいだろ

421:名前は開発中のものです。
09/06/09 11:52:23 S/a6iR+n
そうか、別にそう思うならそれでいいんだが。

422:名前は開発中のものです。
09/06/09 13:07:47 IuPr0Cmy
>>416
俺もツクールに数百時間費やしたくちだが、今思うと凄いな。
アイデアは今でも思い浮かぶんだが、頭の中だけで終わってそれを表に出そうっていう気にならない。
誰かが作ってくれるならアイデアとかは言うんだけど自分でやるってなるとめんどくさくて。

ちなみにその数百時間かけたのはセーブデータぶっ飛んで電子の藻屑に\(^o^)/
数百時間かけてすら、まだ1/5程度な完成度だったけど・・・


423:名前は開発中のものです。
09/06/09 14:14:05 +TNFSrzk
DXに関係ない話題がどうとかってかいてあったくせに、早速関係ない話題にあふれてる件

424:名前は開発中のものです。
09/06/09 14:29:51 /uwI++Tj
2chなんてそんなもんさ

425:名前は開発中のものです。
09/06/09 14:45:39 /EtnpSFu
どうとか言った人間と話題に出してる人間が別人だからこそだろ。

426:名前は開発中のものです。
09/06/09 23:50:55 ggNV6tYD
DXライブラリで、選択肢並び替え問題を作っているんですが、ちょっと行き詰ってしまったので、質問させてもらいます。
プログラムとしては、選択肢を選んだ順番に配列に格納して、正しい解答と比較することで正誤判定をしています。
一応、選択肢を選んで決定するところまではできたのですが、正誤判定の部分?がうまくいかないんです。
正しい順に選択肢を選んでも、間違っているということになっているみたいです。
なぜでしょうか?
あと4回目に選択肢を選ぶと、変な文字が表示されるのはなぜでしょうか?

自分の作ったプログラムです。
ヘッダファイルとメイン部分、会話(選択肢並び替え)部分に分かれています。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

C言語をはじめて1年、DXライブラリをはじめて2か月くらいなので、やさしく教えてください。
お願いします。

427:名前は開発中のものです。
09/06/10 01:02:39 EOc9oIq+
>>426
char input[5][1];
をグローバルにすればとりあえず動くと思う

ところで、要素数1だったら配列の意味なくね?

アドバイスとして、
↓の関数あたりを使えばもう少しスマートに書けると思う
sprintf、strcmp (C言語)
DrawFormatString (DXライブラリ)

428:名前は開発中のものです。
09/06/10 15:37:12 UXlA/6A3
>>427
inputをグローバル変数にしたら、うまくいきました。
アドバイスしていただいたことも参考にして、もう少しスマートなプログラムが書けるように努力します。
本当にありがとうございました。

429:名前は開発中のものです。
09/06/10 22:45:00 kJPqJciV
はじめてだから優しくしてねって言うと
かえって乱暴に扱われるってばっちゃが言ってた

430:名前は開発中のものです。
09/06/10 23:47:48 yn44iXp9
こんなとこでじっちゃの性癖を暴露せんでもよかろう。


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