トップページgamedev
1001コメント373KB

【SB】Shooting Game Builder ver9【シューティング】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/05/31(月) 08:27:19ID:nT/cPNi/
SB ◆.if.Xu7A6c氏が作った開発ツール"Shooting Game Builder"について語るスレ

Shooting Game Builder公式サイト
http://maglog.jp/sb/

SHOOTING GAME DEVELOPER UPLOADER
http://www.esc-j.net/stg/

SB@wiki
http://www41.atwiki.jp/stgbuilder/
ニコニコ動画チュートリアル
http://www.nicovideo.jp/watch/sm8707904
http://www.nicovideo.jp/watch/sm8711074
http://www.nicovideo.jp/watch/sm8728404

前スレ
【SB】 Shooting Game Builder ver.8 【シューティング】
http://pc11.2ch.net/test/read.cgi/gamedev/1263321872/
0293名前は開発中のものです。2010/07/17(土) 09:38:37ID:4ao9Ra75
モジュール制にすればSB本体は重くならないからいいかもな
使いたい機能だけ落として組み込んでねーみたいな
0294名前は開発中のものです。2010/07/17(土) 10:02:43ID:1b004ow/
デザエモン板になっていく〜
0295名前は開発中のものです。2010/07/17(土) 10:11:20ID:agUoi0pm
>>290
脱衣なら作ってよし
0296名前は開発中のものです。2010/07/17(土) 10:37:19ID:Wsw7iQET
今のプロジェクトが完成したらSBさん…俺と結婚してくれ!!
0297名前は開発中のものです。2010/07/17(土) 10:38:57ID:mMzHURRU
弾幕エディター「ダン・マック」
隊列編隊エディター「ザ・タイレーツ」
パスラインエディター「パスラちゃん」

こんな感じでどうだろうか?
0298名前は開発中のものです。2010/07/17(土) 10:42:57ID:WghXCRyq
パスラちゃん萌え

擬人化イラストよろしく
0299名前は開発中のものです。2010/07/17(土) 10:57:20ID:1b004ow/
「ザ・タイレーツ」で吹いた〜

パス内での移動速度の指定方法を少し変えて欲しい気がする。

具体的には、現在の「コントロールポイント間の移動速度を個別に指定」に加えて、
「パス全体を等速で移動」を選択できるように追加してもらえば良いと思う。

それで、「パス全体の移動速度」をスクリプトで変更できるようにしてもらえば、
途中で任意の速度に変更できるようになる。

やはり、スクリプトのパス移動パネルに、「左右反転」で使用、「上下反転」で使用、「±90度回転」で使用、「パス速度を変更」などの、
設定変更オプションを追加してもらえれば、パスの活躍の場は広がると思う。
0300名前は開発中のものです。2010/07/17(土) 11:40:29ID:1b004ow/
速度にちなんで、話題が出てきたので・・・
現状だと、速度不明のオブジェクトを加速・減速する際に、例えば速度を倍にしたい・半分にしたいという時に結構困る。

射出されたオブジェクトは等速とは限らず(例えば相対速度で加速されていたり、途中でスクリプトで加速されたりしていて)、
現在の速度がわからないと、速度パネルでは目標速度をいくらにすれば倍速になるのか、いくら速度を加算してやれば倍速になるのかがわからない。

仮に、変数を用いて速度を取得しようとしても、進行方向の速度を取得できるローカル変数がなく、X速度やY速度から計算しなければならない。
速度を取得した後も、その変数を計算パネルで2倍なり、1/2なりして、再代入してやるという手間もかかる。
(しかも、進行方向の速度へ直接代入できず、X方向・Y方向に分けて代入が必要)

提案としては、「速度パネルに%指定での速度変更」を機能追加してもらうか、変数で「現在の進行方向の速度」を取得できるようにしてもらうかが必要。
0301名前は開発中のものです。2010/07/17(土) 12:03:56ID:0nVCGIqE
>>300

>>299が有効なのはわかるけど
>>300のつかいどこがわからない

キャラの動きを制御しやすくしたいんなら
どっちにしろトライ&エラーなんだから感覚で覚えたほうが早いのでは?

あとは移動直行座標を併用するとか?
何フレーム後に何座標という感じでぴっちりいくしね
0302名前は開発中のものです。2010/07/17(土) 12:27:24ID:q5XxV96+
エスプの覚醒システムみたいにあるボタン押したら弾の速度が遅くなり、ゲージ切れたら元に戻る
ってのをやろうとしていると予想
0303名前は開発中のものです。2010/07/17(土) 13:20:38ID:0nVCGIqE
それなら俺もやりたいけど
スクリプト仕込むの大変そう・・・弾だけならまだいいけど

カットイン時にゲーム速度停止させるのにも使えそうだな。
移動力0にしちゃうと復帰時に方向と速度を再現できないし
0304名前は開発中のものです。2010/07/17(土) 14:12:25ID:StfLcS4z
速度パネルの欠点は
0305名前は開発中のものです。2010/07/17(土) 14:19:17ID:StfLcS4z
失礼!

速度パネルの欠点は、絶対値で速度を指定するか、相対値で加減算するしかできないこと
 絶対値で指定では、それまでの速度が無視されてしまい、もとの速度に戻すこともできない
 相対値で指定では、例えば減算の時にマイナスになってしまうと、逆方向へ行ってしまう
もし、倍率で指定できれば、戻す際は逆倍率(0.5倍速なら2倍してやるだけ)でいいし、逆方向になってしまったり、停止してしまったりしない

もう一つの欠点はX,Y方向別に速度を調整できないこと
直交座標移動だけ、なぜか相対値での設定に対応していないため、変数で行わざるを得ない
(相対座標での指定は、相対速度ではなく、むしろ速度の絶対値指定のため)
0306名前は開発中のものです。2010/07/17(土) 14:30:59ID:W/iv3/2+
>>299
>「パス全体の移動速度」をスクリプトで変更できるようにしてもらえば

出来てるパスの速度を基本速度倍率1倍として、移動カテゴリのパス速度パネルとかで
速度変更を倍率で指定してやる系とかが後付けでもやりやすそうでスマートかな?
 絶対倍率指定・・・基本速度を基準にした倍率
 相対倍率指定・・・現在の速度を基準にした倍率
 基本速度にリセット・・・基本速度に戻す

いずれにしても、パスの使いやすさ向上に有効そうな案ではあるね。
0307名前は開発中のものです。2010/07/17(土) 14:45:03ID:0nVCGIqE
>>305
つまり相対速度を加減算だけじゃなくて倍率指定もできればって話か
便利かもね。

XY方向別の欠点はよくわからんけど…

>>306
基本速度ってどこを基準にすんのよ?
キャラごとに設定するようにすんのかい?
0308名前は開発中のものです。2010/07/17(土) 14:50:18ID:0nVCGIqE
ああごめんパスの基本速度ね
暑いから頭がぼけてたわ
0309名前は開発中のものです。2010/07/17(土) 14:59:03ID:W/iv3/2+
>>307
すでに出来てるパスの速度。

・・・と書こうとしたが、>>308了解。
0310名前は開発中のものです。2010/07/17(土) 15:01:19ID:StfLcS4z
>>307
速度も拡大縮小みたいに倍率指定できれば、スローやスピードアップに便利だと思う
変更前の速度を記憶しておかなくても、倍率を逆数にするだけで元の速度に戻せるのは大きい

減算は元の速度によって場合分けが必要で、減速時の使いどころが限られる
「減算結果が0未満(マイナス)になる場合は0にする」みたいなチェックボックスが欲しいかも

極座標移動や速度変更、誘導では速度の相対値設定ができるのに、直交座標移動だけできないのは不便
もし、X,Y方向別に速度の相対設定ができれば、例えばX方向は絶対速度、Y方向は相対速度に設定して、放物線移動や重力落下運動が簡単に実装できるようになる
横STG作成時に、落下運動がパネル1個で設定できるのは有用だと思う

>>306
パス作成時にパスをトレースする基本速度を、例えば60pixel/Frとか設定しておいて、
ゲーム実行中はスクリプトを用いて、その基本速度を、例えば100pix/Frとかに変更できるようにしたら、
同じパスで速度だけ変更したものを複数作成して用意しておく手間が省けて良いのでは?
0311名前は開発中のものです。2010/07/17(土) 15:09:50ID:StfLcS4z
直交座標移動での速度の相対値設定って、よく考えたらX,Y方向別の加速度設定と同じことなんだな・・・
進行方向の速度の相対設定に関しては、速度パネルや極座標移動パネルですでに実装されているから

>>306
確かに、パスのトレース速度も、倍率の方が良い場面もありそう
 絶対倍率指定:パス作成時に設定した速度を基準
 相対倍率指定:現在の速度を基準
この2つがあれば、「基本速度にリセット」は不要かも・・・
 「絶対倍率指定=1」が基本速度になるはずだから
0312名前は開発中のものです。2010/07/17(土) 15:16:40ID:W/iv3/2+
あー、確かに絶対倍率1倍は基本速度になるね。

でもまあ、考えの方向性は伝わったということで、細かいところはスルーでよろしく。
おれも今日は暑くて、あまりよく頭が回らんよ。
0313名前は開発中のものです。2010/07/17(土) 15:46:06ID:0nVCGIqE
梅雨明けたしなー

夏は汗だくになりながらSBするのが俺の中でのジャスティス!
0314名前は開発中のものです。2010/07/17(土) 16:21:16ID:hUtaYjwI
zipファイルを展開しないでダウソする事が最近できなくなったんだが?
0315名前は開発中のものです。2010/07/17(土) 16:32:14ID:qyhz9ksO
ダウンロードの際にでてくるダイアログボックスで、
「□この種類のファイルであれば常に警告する」のチェックボックスを外して、
「ファイルを開く」をしてしまうと、次からは登録された解凍ソフトで展開されてダウンロードされます。
0316名前は開発中のものです。2010/07/17(土) 16:33:22ID:qyhz9ksO
>>313
「夏は裸で正座してSB」これ基本ね
0317名前は開発中のものです。2010/07/17(土) 16:45:50ID:0nVCGIqE
正座はするけどパンイチだから負けたかも試練・・・

ていうかフリチンだと脚を組み替えたときに玉がはさまって危険だぜ?
>>316はもしかして・・・
0318名前は開発中のものです。2010/07/17(土) 17:17:43ID:R0hcbBUQ
天災みたいな会話シーン作りたいが、作れない・・・orz
0319名前は開発中のものです。2010/07/17(土) 18:55:07ID:0BawA7fO
天災の会話シーンてバックのキャラは強制停止してるイメージあったけど
今やり直したら雑魚出してないだけでキャラ操作はできちゃうのね

出現中ゲーム停止のチェックで強制停止できるかと思ったらできないし
全キャラにスクリプト仕込むしかないんだろうか
0320名前は開発中のものです。2010/07/17(土) 19:43:39ID:2yNSeyYE
>>296
死亡フラグ
0321名前は開発中のものです。2010/07/17(土) 20:59:40ID:Tc2JvMWF
>>319
自機に関してはコントロールフラグをオフで良いかも。
セリフ関係は、セリフ用のゲーム外フラグをオンにした専用キャラクタを使って、ボタン判定のスクリプトを搭載させて、ボタンを押すたびにパターン番号やスクリプト番号を変更して、セリフをまわしていくのが良いと思われる。
最後に、特定のボタンを押して、自機のコントロールフラグをオンに復帰と。
0322名前は開発中のものです。2010/07/17(土) 21:03:20ID:Tc2JvMWF
無意味ageスマソ(orz
それこそ、継承スクリプトを使って空いているタスクで、システム変数をフラグ代わりにして、移動や攻撃を停止させるようにしたら良いかも。

>>320
超亀レスですな〜
0323名前は開発中のものです。2010/07/18(日) 06:45:58ID:rfk5LZCB
>>319
・敵キャラの配置が座標基準なら透明なメイン背景を作って時間停止中スクロールしないにチェック
・時間基準なら時間停止キャラ出現
これでいいんじゃないか?
0324名前は開発中のものです。2010/07/18(日) 07:07:55ID:vlWbaLPZ
編隊も吐けるようになってだいぶ便利になった
今後は移動関係の機能追加がメインになるのかな
0325名前は開発中のものです。2010/07/18(日) 08:52:57ID:UHaEJt2A
>>324
確かに、あとは移動パネル関連がもう少し便利になると使いやすくなるね。
個人的には、既出だけど、誘導パネルの移動力0で向きのみ誘導と、1フレームで360度まで誘導できるようになって欲しい。
0326名前は開発中のものです。2010/07/18(日) 10:44:05ID:S749ksKW
>>321
>>323

レスTHX

確かにポーズ効果みたいに完全に止めなくても
時間停止と移動攻撃停止で十分だよな・・・
0327名前は開発中のものです。2010/07/18(日) 13:35:51ID:Qp4gGq3K
zipファイルを
右クリック→対象をファイルに保存
が出来ません
0328名前は開発中のものです。2010/07/18(日) 13:53:55ID:UHaEJt2A
OSは?

IEでzipファイルをクリックすると勝手に解凍してしまうのを直す方法
(本来はIEでzipファイルをクリックすると、「保存・開く・キャンセル」のメッセージが表示される)

Xp:フォルダオプションに「ファイルの種類」タブがあり、拡張子のZIPを選択
  詳細設定で「ダウンロード後に開くか確認する」にチェックを入れる

注意)Vistaはそのタブがない
0329名前は開発中のものです。2010/07/18(日) 15:46:21ID:iatEPuqe
>>326
更に言っちゃうと、やっぱり会話シーンは敵出さないのが一番簡単だと思う
世に出てるゲームでだってほとんどはそういう構造になってるし
0330名前は開発中のものです。2010/07/18(日) 16:16:58ID:S749ksKW
そうよな〜

演出より根本的なゲーム性に力を入れたほうがいいのはわかってるんだが・・・

スト魔女STGとかいい感じにカットイン?してるので真似てみたくなるんだよな
0331名前は開発中のものです。2010/07/18(日) 16:58:02ID:Qp4gGq3K
>>327
調べてみたらコンテンツアドバイザをONにしていたせいだったようでした
0332名前は開発中のものです。2010/07/18(日) 17:34:34ID:Qp4gGq3K
でも
右クリック→対象をファイルに保存

クリック→保存

ってどう違うんだ?
0333名前は開発中のものです。2010/07/18(日) 17:45:26ID:22L/k770
>>328
>>314へだろ
0334名前は開発中のものです。2010/07/18(日) 20:01:30ID:S749ksKW
効果音て同じものを重ねて鳴らすことはできないんだろうか。
連続で鳴らすと


 ド
  ドカーン ってなってしまう。

ドカーン
 ドカーン
  ドカーン って鳴らしたいんだけど

複数登録してランダム指定すれば重ねて鳴らせるんだけどね
0335名前は開発中のものです。2010/07/18(日) 20:19:50ID:UHaEJt2A
多分経験的にですが、再生中のファイルを再生すると、リスタート再生になってしまうので、同じファイルの多重再生はできないようです。

同じファイルを連続で再生したい時は、ファイルの再生が終わるまでの待機時間を設定する必要があるようです。

同じファイルを重ねて再生したい時は、同じファイルを@、A、Bと複製して、別々に再生すると再生が重なっても大丈夫なようです。
0336名前は開発中のものです。2010/07/18(日) 20:30:39ID:S749ksKW
そうでしたか。

爆発音とかどうしても重なるから複数用意するのが一般的なんですかね。
雑魚一匹一匹に違うのを登録するのは非効率だからランダムで選ばせる
しかないのかなー
0337名前は開発中のものです。2010/07/18(日) 20:37:21ID:UHaEJt2A
なるほど、確かに雑魚が多いと、どうしても爆発音が重なりますね。

複数登録してランダムで再生させるのは賢い方法ですね。

あるいは、爆発音を管理する変数を用意して、使用してない爆発音を条件分岐で選択させるようにするか・・・
0338名前は開発中のものです。2010/07/18(日) 20:48:09ID:S749ksKW
>あるいは、爆発音を管理する変数を用意して、使用してない爆発音を条件分岐で選択させるようにするか・・・

なるほど!これが正解でしょうね。

ランダム再生だとお手軽だけど重なる可能性あるしね
0339名前は開発中のものです。2010/07/18(日) 21:03:58ID:k3sr93dS
>330
BOSSの警告とか、場面が変わるときにワンメッセージだけのカットインなー
警告音と同時だからテンポ悪くならない
ぶっちゃけ俺はあのカットイン参考にして作ってる
0340名前は開発中のものです。2010/07/18(日) 21:07:03ID:UHaEJt2A
確認してみたけど、やはり同じファイルでは、別のキャラクタのスクリプトで再生しても、リスタートされます。

逆に、この現象を利用すると、ループありで止まらなくなったファイルを停止させれます。
任意に止めたいの時に、同じファイルをループなしで再生させるのです。

ループがループ回数でなく、フレーム数でしか停止させれないのはキツイですね。
ループ回数指定の要望が出るのはわかる気がします。

ループなしの効果音を、制御パネルのループで指定回数だけ再生させればいいという話もわかりますが、
そうするとループありの存在意義があまりなくなってしまいます。
(ループ時間不定の無限ループでしか利用価値がなくなってしまう・・・)
0341名前は開発中のものです。2010/07/18(日) 21:15:53ID:S749ksKW
>339

そうそう「くるぞ!上!」みたいなワンメッセージ燃えるよな
操作とかテンポを悪くしない最低限の演出で緊張感増し増しなので見習いたいわ
0342名前は開発中のものです。2010/07/18(日) 21:48:26ID:S749ksKW
>340
検証乙です。
そういえばループ回数指定の要望ありましたね。
スクリプト組まなくてもループできるのがループありの存在意義という気がしますね。
車輪の再発明とかよくやっちゃうんでデフォ機能をもっと覚えなければなと思ってます。
0343名前は開発中のものです。2010/07/18(日) 22:28:59ID:UHaEJt2A
きちんとデフォルト機能を理解した上で要望することは、車輪の再発明ではなく、
車輪の改良によるスタッドレスタイヤの開発くらいの意義がありますね。
0344名前は開発中のものです。2010/07/18(日) 22:44:30ID:UHaEJt2A
ちなみに、BGMでも確認してみたけど、やはり同じファイルでは、たとえ別のキャラクタのスクリプトで再生しても、リスタートされます。

同じファイルをループなしで再生させて停止させると、BGMの場合はループを前提にしているためか、最後の音がガ・ガ・ガ・・・と続いてしまって停止しませんね。
BGMでは必ず停止スクリプトを使用しないといけないようです。

でも、これではBGMはループなしでの使用ができない(ループなしなのに、最後に停止スクリプトが必要)ため、
ループ回数指定で連続で再生させるのは厳しいですね。
0345名前は開発中のものです。2010/07/18(日) 22:51:06ID:U3hUlxn8
検証乙であります
0346名前は開発中のものです。2010/07/18(日) 23:00:00ID:UHaEJt2A
もう1つ気付いたこととしては、効果音はファイルが別であれば同時再生が可能ですが、
BGMではたとえ別のファイルであっても同時に複数のBGMを再生することはできないようです。

BGMでは常に最後に再生したファイルのみが再生されるため、1度に再生できるBGMは1ファイルのみです。
0347名前は開発中のものです。2010/07/18(日) 23:19:23ID:1AZq5ttS
サウンド関連はあまり触れてなかったから、解説すごく助かるわ
0348名前は開発中のものです。2010/07/18(日) 23:22:36ID:1AZq5ttS
BGMのループなしができないとなると、1曲終えて、次の曲へ・・・みたいのは無理ということか??
そこは解消して欲しいな〜

効果音もいちいち条件分岐はキツイな
BGMは1曲ずつしか再生できないのは仕方ないとして、効果音は同じファイルでも重ねて再生できた方がいいけどな〜
0349名前は開発中のものです。2010/07/18(日) 23:25:17ID:S749ksKW
サウンドってどうしても後回しになっちゃうから
実際適用して見て思ったとおりにいかずアチャーってこと多いよなー

重大な要素の一つなんだから少しづつ適用すればいいんだが
なかなかねー
0350名前は開発中のものです。2010/07/18(日) 23:44:37ID:48tGz7sc
うーん、同じ効果音を重ねて再生するのはちょっと危険な気がする
何か手違いで効果音が超連続再生されちゃった時とか全部重なってるとたぶんメモリがぶっ壊れるんじゃないか
0351名前は開発中のものです。2010/07/19(月) 00:25:08ID:2EMEL1lM
おいおいまじかよ
それでこういう仕様ってことか

他の同人はどう処理してんだろうなと思って東方やってみたら
パスパスした音でわかりにくかったが重なっているように聞こえた

少なくとも俺の耳では3つ以上重なってるかは厳密に判別できないので
3つくらい別ファイル用意すれば十分じゃね?
0352名前は開発中のものです。2010/07/19(月) 00:45:52ID:cSTUt2D3
最初は変数3個使って効果音3個を制御しようと思ったが、結構無駄に変数を消費してしまう。

変数1=0なら効果音1を再生して、再生中は変数1=1、再生が終了したら変数1=0に戻す。
変数1=1なら、変数2をチェックして、変数=0ならば効果音2を再生して・・・の繰り返しで、変数3まで作成する。

しかも、システム変数も3個消費してしまうから、変数の出し入れや管理、変数の分岐だけで結構面倒。
0353名前は開発中のものです。2010/07/19(月) 00:48:09ID:QVIMWH1o
>>348
一曲目BGMの長さと同じだけの長さの通過パネル置いてその後二曲目に変えればいいんじゃなイカ
0354名前は開発中のものです。2010/07/19(月) 01:01:03ID:cSTUt2D3
変数1個でもフラグ判定できる方法を発見!!

変数1を2進数(000)と考えて、1桁目を効果音1のフラグ(0or1)、2桁目を効果音2のフラグ(0or1)、3桁目を効果音3のフラグ(0or1)とする。
判定時には、1桁目なら2進数(001)と論理積(AND)をとると、1桁目が0なのか1なのかが返ってくる。
同様に、2桁目なら2進数(010)と論理積(AND)をとり、3桁目なら2進数(100)と論理積(AND)をとる。
この方法なら、たとえ変数が1個でも桁さえ増やせば、ON/OFFの2択のフラグであれば何個でも判定可能。

ただし、難点としては2進数での表示ができないので、フラグの入力時や論理積の計算時、判定結果なんかは10進数で数値入力が必要。
計算パネルに10進数用(10進数で数値を入力、10進数で結果表示)と2進数用(2進数で数値を入力、2進数で結果表示)があるとわかりやすいのだが・・・。
(表示だけなら、キャラクタの文字列で、2進数表示にすればいいかも)

もし、今後グラフィック関係のパネルへも、変数代入が可能になるようであれば、16進数表示(FFFFFFFF,桁は4ビット×8桁で32ビット)も必要かな。
(カラーコードがαRGB 32ビット=8ビット×4種類のため)
0355名前は開発中のものです。2010/07/19(月) 01:03:33ID:2EMEL1lM
>352
やっぱランダム再生がベストなんかなー
用意する別ファイルは3つで登録を分散して8つくらいにしてるけど
聞いてる分には違和感ない

若干音量を上げ下げすれば同じ音に聞こえないから自然だし
なにより変数消費が0だからな
0356名前は開発中のものです。2010/07/19(月) 01:28:54ID:2EMEL1lM
>354
ANDでもいけるのか
「余り」使って必要桁数抜き出してた・・・
まじで最近数学勉強し直そうかと思ってる
0357名前は開発中のものです。2010/07/19(月) 01:36:38ID:bE99nfoQ
効果音1→1
効果音2→2
効果音3→4

にすれば10進数でも出来るように見えるが
0358名前は開発中のものです。2010/07/19(月) 03:13:57ID:M5+1/XNT
>>357
>>354の8行目
0359名前は開発中のものです。2010/07/19(月) 03:38:47ID:aQowsmxh
>>356
あんまし数学関係ないような・・・
オレ数学で赤点連射してたけど論理演算は普通に使える
0360名前は開発中のものです。2010/07/19(月) 04:30:47ID:QVIMWH1o
>>354
なるほどなるほど確かに

なんつーか、非常にゲーム作成論的な使い方だな
0361名前は開発中のものです。2010/07/19(月) 08:18:57ID:bE99nfoQ
ん?俺が馬鹿すぎて分からないのかな
001→1
010→2
100→4
だから別に論理積とかやらなくてもこの変数を監視すれば今どの効果音が鳴ってるかの判定は出来ると思ったんだけど

1なら効果音1が鳴ってる
2なら効果音2が鳴ってる
3なら効果音1と2が鳴ってる
4なら効果音3が鳴ってる
5なら効果音1と3が鳴ってる
6なら効果音2と3が鳴ってる
7なら全部鳴ってる

なんかそもそもの認識が間違ってるならごめんよ
0362名前は開発中のものです。2010/07/19(月) 08:55:51ID:aQowsmxh
アッテル
0363名前は開発中のものです。2010/07/19(月) 10:27:23ID:HUh817Ri
>>356
MOD(余り)でもできますよ。
10進数で1桁ずつ0-9の10通りのフラグを持つと考えれば、出したい桁の分だけ10で割って切り捨てたもの(商)をMOD演算して余りを出します。
ただ、フラグが2通りでないので無駄が多いのと、桁の分だけ右シフトさせるのが手間ですが。

>>357
実際には2進数表示に対応していないので、そうなります。
001=1,010=2,100=4ですから。
ただ、複数のフラグが立っている時に、2進数だと桁がフラグの種類を表すし、0=OFF,1=OFFで見やすいです。
AND演算した時の結果も、2進数の方がどのフラグが立っているかわかりやすいです。
ただ、欠点としては、もし16ビットのFFFFFF(16進数)=65536(10進数)を2進数で表示すると、16桁になってしまい場所を取ってしまいますが。

>>361
論理積を使わないと、特定のフラグのみ(特定の桁だけ)抜き出しての判定がしづらいです。
3個のフラグ判定に8通りの分岐が必要になっているけど、例えばフラグ1のON/OFFだけ判定したい時に、論理積は便利(余りでも工夫すればできる)。
0364名前は開発中のものです。2010/07/19(月) 10:38:27ID:HUh817Ri
>>359
論理演算はスイッチのON/OFFパターンだから、計算力ではないですよね。
 論理積(AND演算)は、フラグを立てた桁だけを抜き出す。(指定したスイッチのON/OFFを確認する)
 論理和(OR演算)は、フラグを立てた桁を代入する。(指定したスイッチをONにする)
0365名前は開発中のものです。2010/07/19(月) 11:24:30ID:gpZY9GJh
おー解説どうもです。
今まで適当にやってたところが解明されていく・・・

ANDで必要桁数を抜き出しすれば変数足りなくなるってことは
まず無くなるよね

プログラマー的にはよく使う手段なんだろうか
0366名前は開発中のものです。2010/07/19(月) 11:35:57ID:cSTUt2D3
解説乙!
ROM解析とか改造コードとかでも、アイテムとかは1つの変数を2進数にして、各桁でフラグ管理しているよね。
0367名前は開発中のものです。2010/07/19(月) 11:40:20ID:Xu3xX28u
昔に比べ全体的にレベル下がってるな
コンピュータの内部ぐらい知れと
円の当たり判定すら思いつかなような奴ばかり
0368名前は開発中のものです。2010/07/19(月) 11:41:01ID:cSTUt2D3
ちなみに、左シフト・右シフトって、要するに数字の桁を左・右にずらしているだけだろ?

10進数だったら、左シフトで10倍、右シフトで1/10(小数以下は切り捨て)だし、
2進数だったら、左シフトで2倍、右シフトで1/2(小数以下は切り捨て)と。

ただ、SBの場合は、数値を10進数で入力するけど、シフト時は内部で2進数に変換されてシフトされていて、
最終的に返ってくる値は再び10進数に戻っているから、紛らわしい。
0369名前は開発中のものです。2010/07/19(月) 11:42:26ID:cSTUt2D3
>>367
ユトリ世代は論理計算とか2進数計算とかやってないんだから、しょうがないでしょ。
0370名前は開発中のものです。2010/07/19(月) 11:42:50ID:+3pQHnF4
お前ら頭いいなー
0371名前は開発中のものです。2010/07/19(月) 11:43:40ID:+3pQHnF4
いや2進数はやるだろw PSIでも出るし(関係ないか)
0372名前は開発中のものです。2010/07/19(月) 11:54:31ID:cSTUt2D3
これらの機能を搭載したSB氏はよほどの天才だな。

俺達はSB氏の掌の上で踊らされているようなものだからな〜
0373名前は開発中のものです。2010/07/19(月) 11:56:34ID:gpZY9GJh
SB氏ってドM幼女じゃなかったのか?

天才には違いないだろうが・・・
0374名前は開発中のものです。2010/07/19(月) 12:03:40ID:cSTUt2D3
SB氏って、斧収拾家じゃなかったっけ?

俺が○ンター○レインの社長だったら、SB氏をヘッドハントするか、SBを買い取るな。
そんで、SBをシューティングツクール2010に改名して、萌え絵とメカ絵を満載にして、PC版/PS3版/Xbox360版を出すな。
Xbox版にはXMLファイル書き出しをつけて、家電版では作成したゲームをオンラインで公開できるようにして、解説本をアスキーから出して・・・
0375名前は開発中のものです。2010/07/19(月) 12:09:39ID:gpZY9GJh
SB氏は欲にまみれたお前らとは違うんだよ!

純粋にSTGを愛するドM幼女なんだよ・・・

斧収集家か・・・話が合いそうだな。
0376名前は開発中のものです。2010/07/19(月) 12:15:13ID:cSTUt2D3
>>375
斧・・・って流行ってるの??
斧持ってアキバとか行っちゃダメですよ?もちろん、斧持って○ンター○レインに行ってもダメですよ。

>>363
>0=OFF,1=OFFで見やすいです。
今さらながら、1=ONの間違いですよね。

ここまでのフラグ管理の解説をまとめて欲しいです。
効果音の話から、フラグ管理までいけるとは、ためになりました。
16ビットなら、変数1個で16フラグを同時に管理できますね。
0377名前は開発中のものです。2010/07/19(月) 12:20:20ID:gpZY9GJh
>376
まじで今バーディッシュ買おうかと思ってる。

てかフラグ管理はアンタがまとめなさいよ
勉強にもなってよろしいんじゃなくて?
0378名前は開発中のものです。2010/07/19(月) 12:34:31ID:cSTUt2D3
>>377
なるほど某幼女が使っていたヤツか・・・。
斧収集家は幼女趣味な訳だな。
実物は、教皇庁に使用を禁止されているらしいが大丈夫なのか?
0379名前は開発中のものです。2010/07/19(月) 12:40:29ID:gpZY9GJh
>378
フェイトさんは関係ねえよ!

俺がポールウェポンに興味があるだけ。
ちなみにドM幼女の話も他のSB板で誰かが言っていたのを引用しただけ。
可能性ゼロではないよね・・・
0380名前は開発中のものです。2010/07/19(月) 13:05:33ID:eCEjeQ7l
ドッターとしてここにやってきたプログラミング知識皆無の俺には
最近のレスについていけない・・・。
いまだに自機の武器システムに手間取ってる
0381名前は開発中のものです。2010/07/19(月) 13:20:35ID:8Ajyzcdr
>>380
ここはボルタックの酒場のようなものだ
SB製作仲間を募集してもいいんじゃないか?
俺が見る限りはグラフィックだけ残念というゲームがゴロゴロしている。
0382名前は開発中のものです。2010/07/19(月) 13:34:34ID:/NsUZ1Io
>380
別についていかなくても
アイデア、調整がしっかりしてれば面白いSTGは作れるので何も問題ない
ゆっくり作っていけばいいさ

そもそも完成するまで1年以上とか普通だしさ
0383名前は開発中のものです。2010/07/19(月) 13:34:44ID:yG3ZCznU
>>380
ドット職人としてサンプルあげるだけでももの凄く重宝される。
0384名前は開発中のものです。2010/07/19(月) 13:41:23ID:cJVudsF2
STG用の素材って本当に万年枯渇状態だよな
0385名前は開発中のものです。2010/07/19(月) 13:43:23ID:8Ajyzcdr
>>380
とりあえずサンプル上げてみなよ
即ナンパされるぜ
みんなカワイコちゃんには目がないからさ
0386名前は開発中のものです。2010/07/19(月) 15:09:27ID:CnK4xmtT
3Dグラを2Dに落とせばいいじゃん
0387名前は開発中のものです。2010/07/19(月) 15:33:50ID:1poeEczc
>>365
任意のbit幅を抽出したいときは and よりマスクで or して xor すればいいんじゃないかな

たとえば$005588aa から 9〜16bit部分の $88 だけが欲しい場合に $FFFF00FF を or して xor すると $00008800 だけが残る
0388名前は開発中のものです。2010/07/19(月) 15:45:16ID:1poeEczc
いやーん、欲しいだけなら $0000FF00 との and でいいじゃない・・・w

昔組んだ時、何か理由があって or xor 使ったんだけど、なんでだっけ・・・
0389名前は開発中のものです。2010/07/19(月) 16:56:47ID:QVIMWH1o
>>380
なあに
ログだけ残しておけば後になって「あれそういえば」と思ったときに見てみると
その頃には案外理解できるようになってたりするもんだぜ
0390名前は開発中のものです。2010/07/19(月) 17:10:07ID:b1iVVuYZ
>380のモテモテぶりに嫉妬

ところで表示優先についてなんだが
上空〜低空とだんだん後ろのレイヤーになるのはわかるんだが

Z値がわからない

たとえば同じ「上空」同士でも優先順位が設定できるのかと
ためしに1とか-1を入れてみても結果はかわらず・・・
0391名前は開発中のものです。2010/07/19(月) 17:18:12ID:cSTUt2D3
>>377
論理演算とシフト演算については、まとめておいたよ
フラグ管理については、もう少しで
0392名前は開発中のものです。2010/07/19(月) 17:26:45ID:ega7howf
理論演算についてはまったく分からなくて敬遠してたんだけど、
今回の話題でちょっとつかってみたら、結構うまくいった!

>>391
おつかれ、読ませてもらってもう少し勉強したいと思う。
0393名前は開発中のものです。2010/07/19(月) 17:36:35ID:b1iVVuYZ
>391
んま〜
やるじゃないのこの色男!

Z値オフセットについても書いてあったという俺の目の節穴ぶり
参考にさせてもらうよ
■ このスレッドは過去ログ倉庫に格納されています