DXライブラリ 総合スレッドat GAMEDEV
DXライブラリ 総合スレッド - 暇つぶし2ch858:名前は開発中のものです。
08/10/09 10:10:57 Ub9/sQw8
40個も同時に鳴らさないように制御するべきでは・・。


859:名前は開発中のものです。
08/10/09 10:15:11 Ub9/sQw8
FFの内部のデータ見てみたことあるけど
同時にならさないといけない場合がある効果音は全部あらかじめ同時にならした素材として入ってた。
効果音1と効果音2の同時
効果音1と効果音3の同時
効果音1と効果音4の同時
効果音1と効果音5の同時
みたいに全ての組み合わせの素材があってビックリした。
最初異様にファイル数多いなと思ってたけど確認して納得したw

860:名前は開発中のものです。
08/10/09 10:48:58 GxPPxNWZ
音源の貧弱さをメモリでカバーしたわけか。

861:名前は開発中のものです。
08/10/09 13:44:04 W6kktJvq
>>859
興味深い。他にあればもっと聞かせてくれ

862:名前は開発中のものです。
08/10/09 18:42:08 Ub9/sQw8
859です。
>>861
他にもと言われても何を言えばいいんだw
同じ話だけど
「やぁ!」って声の効果音と「えぃ!」って声の効果音、ほぼ同時に鳴らすときの為に
前者が若干早い時はくっついて
「やえぃ!」
後者が若干早い時はくっついて
「えやぁ!」
って感じで同じ組み合わせでも順番まで考えてデータ作ってあったよ。
多分完全に同時だと聞こえなくなるからあえて全部ちょっとずらしてあるんだと思う。
タイミング命系のアクションゲームとかじゃなかったら
FFみたいなゲームなら掛け声とか0.1秒位ずらしてもなんちゅーことないしね。
いやはや有名なゲームはよく考えてありますね。

863:名前は開発中のものです。
08/10/09 18:56:02 qUBF8r6z
それってFFのどれ。

864:名前は開発中のものです。
08/10/09 22:18:37 UCe7+/VV
そういやドラクエ4のデスピサロ戦では
最終形態移行時の「ゴゴゴゴゴ」のためにBGMの和音数が一時的に減らされてたっけな

ごめん スレチだね

865:名前は開発中のものです。
08/10/09 22:42:46 W6kktJvq
>>862
なるほどーおもしろいねそういう話。

>>864
いいぞもっとやれ

866:名前は開発中のものです。
08/10/11 19:20:47 WCrwwd6s
右端と一番下に1ドットの隙間ができない?
すごく気になるんだけど、どうにかできないかな

867:名前は開発中のものです。
08/10/12 02:36:36 0UjA6dun
>866
それだけ言われても分からん。


エスパーすると、ソフトウェア描画と比較してみ。

868:名前は開発中のものです。
08/10/12 02:55:39 SoL04hdM
>>863
初期~中期のファイナルファンタジーは声が出なかったから、
初代ファイナルファイトだと予想してみるw

869:名前は開発中のものです。
08/10/12 10:14:02 tEG66pVK
掛け声だけしゃべるならFF11じゃねーの

870:名前は開発中のものです。
08/10/12 19:01:33 OAiuWa1a
>>866
エスパーすると

例えば500×500のウインドウで

for(i=0;i<499;i++){
  for(j=0;j<499;j++){
    座標(i,j)色を変える。
  }
}

とすれば、右端と一番下に1ドットの隙間ができるが

for(i=0;i<=499;i++){
  for(j=0;j<=499;j++){
    座標(i,j)色を変える。
  }
}

とすれば、隙間はできない。

871:名前は開発中のものです。
08/10/12 19:26:44 U28t+20v
ああ、DXライブラリってそこらへん、余計な事してるんだよな……。
いつも迷うぜ。

872:866
08/10/12 20:17:40 vIpSBElN
#define WX 480
#define WY 480
ChangeWindowMode(true);
SetGraphMode(WX, WY, 16);

DrawBox(0, 0, WX+1, WY+1, GetColor(255,0,0), true);

こうした時に1ドット隙間が出来るんだ
+1のところを+100に変えても隙間ができる
こんな風に URLリンク(www1.axfc.net)

>>867
ソフトウェア描画って?

>>870
それが問題じゃないみたい

873:866
08/10/12 20:19:06 vIpSBElN
ごめん
URLミスった
URLリンク(www1.axfc.net)

874:名前は開発中のものです。
08/10/12 21:11:31 U28t+20v
赤い部分を切り抜いてみたところ480*480だった。

えーとつまりどういうことだ。
(0,0,480,480)で描画したら0~479の480ピクセル分が塗られるはず。

つまり
(0,0,480+1,480+1)で描画したら0~480の481ピクセル分が塗られるはず。

しかしSetGraphでは(480,480)となってるから、
画面上は0~479の480ピクセル分しかないはず。
つまり、赤く塗られている部分は正しいという事になる。

隙間が出来てるのはSetGraphで(480,480)にしたはずなのに
なぜか1ピクセル分余分にできてる。

……って事かな??

875:名前は開発中のものです。
08/10/12 21:41:00 gLc2eLS+
>>870
つまりこれでもいいんだよね?

for(i=0;i<500;i++){
  for(j=0;j<500;j++){
    座標(i,j)色を変える。
  }
}

876:名前は開発中のものです。
08/10/12 23:04:47 vIpSBElN
>>874
そうみたいですね
しかもその余分にできたスペースには描画ができないんです
皆さんはこうならないんですか?

877:名前は開発中のものです。
08/10/13 00:01:00 6zGpRl/9
いや、てかそもそもそれ隙間じゃなくて枠じゃないか?

878:名前は開発中のものです。
08/10/13 08:22:34 N+ktUREE
>872
>ソフトウェア描画
SetUse3DFlag がture/falseで違いはあるか?ってこと

879:名前は開発中のものです。
08/10/13 08:23:20 N+ktUREE
tureじゃねぇ、true

880:名前は開発中のものです。
08/10/13 15:33:09 +BgxII2m
>>877
今API直打ちで画面全体塗りつぶしをしてみたんだけど隙間はできなかった

>>878
違いはなかった

クライアントエリアの問題かと思ってSetDrawAreaも試してみたけど効果なし
ダブルバッファリングも関係なかった
みんなもこうなってるのか、それとも自分だけなのかが知りたい

881:877
08/10/13 15:43:26 NvE7YaYt
>>880

872で見せてもらった画像を、拡大してよくみると、
上側と左側には薄い灰色と濃い灰色の2ピクセル分の枠がある。
が、右側と下側にはその色はなく、
代わりにうっすーい灰色と白色の2ピクセル分がある。

その部分を隙間って言ってるんだよね?
枠の色が薄すぎるだけの話じゃないのかな?


882:名前は開発中のものです。
08/10/13 16:32:41 +BgxII2m
>>881
本当だ
拡大して比較してみるとDXライブラリのウィンドウは枠ありのウィンドウだった
なるほど、これ枠だったのか・・・
ウインドウスタイルって変更できないのかな

比較の画像一応貼っとく
URLリンク(www1.axfc.net)


883:名前は開発中のものです。
08/10/13 16:37:46 1LlTRytx
404じゃねえかアホ

884:名前は開発中のものです。
08/10/13 16:42:36 +BgxII2m
自分は見えるんだけどな;
専ブラなら普通のブラウザで直接飛んでみてくれないか

885:877
08/10/13 16:49:49 NvE7YaYt
873は俺は見えないが872なら見えた。

同様に882は俺にも見えないが

URLリンク(www1.axfc.net)

これなら俺も見えるw

886:名前は開発中のものです。
08/10/13 17:19:34 1LlTRytx
クソみてえなアップローダ使うなよ

887:名前は開発中のものです。
08/10/13 20:36:22 8/f9V+rI
っていうか、この画像持って公式で聞いて来いw

888:名前は開発中のものです。
08/10/13 21:25:16 +BgxII2m
そうですね
公式で聞いてみます
ありがとうございました

889:名前は開発中のものです。
08/10/13 21:57:36 Kshw6a23
確かにそうなるな。
クラシックウィンドウ使ってるから気にならなかった。

890:866
08/10/15 17:55:03 Yimr3vsO
解決したので報告します

SetWindowLong(GetMainWindowHandle(), GWL_EXSTYLE, WS_EX_WINDOWEDGE);
SetWindowPos(GetMainWindowHandle(), NULL, NULL, NULL, NULL, NULL, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);

891:名前は開発中のものです。
08/10/15 23:59:28 Emw9vuwB
質問。
プログラムの素人レベルがシューティングを作るのにどれぐらいかかる?

・自機がジョイパッドで動く
・ショットが出る
・敵が出てきて動く(sin波ぐらいは実装したい)
・敵がショットを出す(2wayとか3wayとか全方位とか自機狙いのだけ、凝ったのなんてまだ技術的にムリだし)
・ザコが一定でた後にボス戦
・自分にあたったら残機が減って、0になったら最初から
・敵に当たったらスコアが増えて、敵が消える
・ボスを倒したらゲームクリア
・1面のみ

本気だせば1ヶ月ぐらいで作れるかな?
リソースはドットだけなら自分で書くつもり、音楽はムリ。

892:名前は開発中のものです。
08/10/16 00:35:15 a+E7tl+p
素人レベルってのがどれくらいかによる。

893:名前は開発中のものです。
08/10/16 00:43:12 wEpmfpuy
プログラム全く分かりません、でなければいけると思う。

894:名前は開発中のものです。
08/10/16 00:44:07 L3LJ4NiJ
>>892
上手く言えないけど今出来る事は

関数を作る(void なんとか(){ の奴)
cppを分割してexternで呼び出してmainで実行
三角関数は一応出来る

何も見ないで自力で出来るのは、画像を→↓←↑と四角く永遠と移動させるぐらい

今やっててジョイパッドの移動ぐらいなら楽に実装できた。

でも当たり判定とか弾を出すコードのイメージがあまりつかめないって感じ。

895:名前は開発中のものです。
08/10/16 00:53:06 IdgqtOe/
C++でexternて使ったこと無いかも

896:名前は開発中のものです。
08/10/16 00:55:21 wWxMuhcD
>>894
ちょっと待ったー。
外部ファイルにある関数をexternで呼び出す必要はないぞ。
ヘッダファイルにプロトタイプ宣言する方法を勉強した方がいい。(ロベールとかで。)
そっちの方がスマートに書けるし、それが定番。

897:名前は開発中のものです。
08/10/16 01:16:18 L3LJ4NiJ
>>896
ん、ごめんまだ素人レベルだから言ってる事の意味が微妙に分からないんだけど
つまり
何々.hのファイルにプロトタイプ宣言って言うのをすると、extern void 何々で呼び出す必要がなくなるって事?


898:名前は開発中のものです。
08/10/16 01:27:19 wWxMuhcD
>>897
んー、実はexternの効果忘れた。>>895が言うように、使う場面が無いんだよね。

○○.hにプロトタイプ宣言しておくと、その#include "○○.h"とするだけで、プロトタイプ宣言された関数が使えるようになる。
通常、一つにファイルに対して、一つのヘッダを作るよ。

例:
hogehoge.cpp → hogehoge.h
piyopiyo.cpp → piyopiyo.h

人によってはヘッダの拡張子がhppになったりする。(むしろ、C++のヘッダならこっちが主流かもしれないけれど)

確かにプロトタイプ宣言さえあれば、extern使う必要は無くなる。

899:名前は開発中のものです。
08/10/16 01:39:21 L3LJ4NiJ
>>898
そうなのか、初めて知った。
ちなみにexternの場合だと
player.cpp内の例えば

void move(){
何々
}

って関数をextern.h内で「extern void move();」って宣言するだけで別のcpp内(main.cppでもnaninani.cppでも)使えるようになる。
externも勿論使うファイル内で#include "extern.h"とする必要があるけどね。

でもプロトタイプのが主流みたいだし、そっちを使ったほうがいいのかな?

因みに俺のプログラムの流れはこういう感じにしようと思ってる↓
main.cppって言うコードを作る、最低限の事を書いたら一旦放置。

キャラ移動とか敵の移動とか音楽を読み込むとかのコードを別ファイルに書く

externで一つのヘッダーファイルにすべてのコードを読み込ませる

main.cpp内で読み込んだヘッダーファイル内の別々に書いたコードを「○○();」メインループに読み込ませる。

って感じでつくろうかなーって頭の中で思ってたんだけど、間違ってるのかな?


プログラム難しいけど楽しすぎwwwww



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