Re: 東方弾幕風のバグ・要望 ( No.11 ) |
- 日時: 2010/11/14 03:17
- 名前: mkm
- はじめまして。
>東方弾幕風ph3についてですが、東方弾幕風v0.12mと >の互換性を追加してほしいという要望もありますけど、 まったくおっしゃるとおりです。 こんなソフトは互換性があるべきかと思います。
ただ、ph3は古いソースを破棄し1からつくりなおす中、 好き勝手やってしまいました。 申し訳ないですが、今から完全な互換性をつけるのは難しいです。 (近づけることはできるかもしれないですが。)
|
Re: 東方弾幕風のバグ・要望 ( No.12 ) |
- 日時: 2010/12/05 02:49
- 名前: Oliwehr
- 0.12mを用いていたときなのですが、オブジェクトを生成・消去を繰り返したときにメモリ使用量がどんどん増えていった事がありました。
今思うと、そのオブジェクトの中では配列を用いていたのですがC++で言う vector<real>().swap( vec ) ; のように、vec = [] ; というようにしてやらないとメモリが解放されなかったのでしょうか?
|
Re: 東方弾幕風のバグ・要望 ( No.13 ) |
- 日時: 2010/12/12 21:18
- 名前: mkm
- >0.12mを用いていたときなのですが、オブジェクトを生成・消去を繰り返したときにメモリ使用量がどんどん増えていった事がありました。
_CrtSetDbgFlag (Windows API)にてメモリリーク確認はしていましたが、 何かバグがあったのかもしれません。 (なんらかのバグ以外では、特別な操作をしなくても解放されます。)
|
Re: 東方弾幕風のバグ・要望 ( No.14 ) |
- 日時: 2010/12/13 01:29
- 名前: ガラス草
- はじめまして。
今までv0.12mを使っていたのですが、この度windowsのバグでPCのデータが吹っ飛んだのでph3に乗り換えることにしました。
それで、使い始めて思ったのですが、GetCenterXなどv0.12mで利用できた 返り値固定の関数なんかは組み込みで用意してもらえると助かります。 完全な互換性は難しいかと思いますが、これらの関数だけでも利用できたらなと思います。
あと、ph3のリファレンスについてですが、 ・description.htmlの224行付近、体力の値が 誤:SetScriptResult(300);//ライフを1500に設定 正:SetScriptResult(1500);//ライフを1500に設定 ・function_common_dx.htmlの45行目付近、PlaySEの引数の表記 以上2点の修正をお願いします。
追記:ver.2との互換性ですが、組み込みルーチンの部分さえ何とか対応付けてもらえれば それなりの互換用関数ライブラリを作れそうです。
|
Re: 東方弾幕風のバグ・要望 ( No.15 ) |
- 日時: 2010/12/14 23:37
- 名前: mkm
- はじめまして。
ph3を試していただきありがとうございます。
>それで、使い始めて思ったのですが、GetCenterXなどv0.12mで利用できた >返り値固定の関数なんかは組み込みで用意してもらえると助かります。 必要そうなものから適宜追加します。
現状ヘルプに座標系の説明がなく分かりづらくて申し訳ないのですが、 ひとまず以下に一部ph2とph3の対応を書いておきます。 STGシーン内では↓の対応になります。 GetCenterX →ph3:GetStgFrameWidth/2
GetCenterY →ph3:GetStgFrameHeight/2
GetClipMinX →ph3:0固定
GetClipMaxX →ph3:GetStgFrameWidth
GetClipMinY →ph3:0固定
GetClipMaxY →ph3:GetStgFrameHeight
>あと、ph3のリファレンスについてですが、 >以上2点の修正をお願いします。 ご指摘ありがとうございます。 次回更新時に、修正しておきます。
>追記:ver.2との互換性ですが、組み込みルーチンの部分さえ何とか対応付けてもらえれば >それなりの互換用関数ライブラリを作れそうです。 機能面(@DrawLoopなどがない)や関数名など異なる箇所が多すぎて 近づけるにしてもかなり大変かと思われますが。。。
|
Re: 東方弾幕風のバグ・要望 ( No.16 ) |
- 日時: 2010/12/18 03:36
- 名前: ガラス草
- >>15
現在、互換用ライブラリをちょっと作ってみました。 v0.12m用スクリプトについて
・プリプロセッサ部分の調整(#ScriptVersionを3に、#Titleと#Textの部分を " " でくくるなど) ・script_enemy_main{ と最後の } を削除 ・@Initializeの最初に関数と変数の代入をそれぞれ一つずつ記述 ・@DrawGraphicの中身を@MainLoopに書き写して、@DrawGraphic自体は削除
の処理を行うと、基本的な関数で組まれた弾幕はある程度再現することができました。 現状で再現できていないスクリプトは
・スクリプト弾、あるいは敵スクリプトを使っている ……スクリプトファイルの構造が複雑すぎてライブラリを当てた程度では解釈不能。 JavaScriptかXMLを用いた大規模かつ難解なコンバータでも組まない限りコンピュータ処理での互換は難しいかと。 ・SetShotDataA_XYを用いた関数。 ……ある一つのオブジェクトの実行を複数の関数で操作するのは厄介。 SetShotDataA関数はObjMove_AddPatternA3のおかげで何とか再現できた。 ・ObjLaser系の、値を取得する関数。 ……現状では代用しうる関数が全くないため。 ・SetLife、SetTimerなどの初期設定関数。 ……@Initializeよりも@Eventの初期設定のほうが実行が早いのか。AddLifeなどで代用できなくもないが、ライフバーの表示がずれたりと不満の残る処理系に。 ・引数にNULLを与えているスクリプト ……空文字がNO_CHANGEに変わり、変数NULLがすでに定義されているため。NULL=0だろうか?
現状ではこんな感じです。意外とObjShot系関数はするっと通りました。 もし可能であれば、 a)空文字としてNULLがなんとか使用できる b)@DrawLoopは@MainLoopと同列扱い でだいぶ対応が取れると思います。
出来れば、将来対応を予定している関数があれば、そちらも公開してもらえると ライブラリ制作が助かります。
あと、これはただの戯言ですが、ここまで3Dに対応しているならxファイルも読み込めたりしたら便利かなぁ、と。
追記:CreateItem系の関数ですが、ユーザー定義のアイテムも作れるようにしてもらえるとありがたいです(出来れば複数種)。
追記その2:ライブラリファイルからの相対パスを取得する方法ってありませんかね?
|
Re: 東方弾幕風のバグ・要望 ( No.17 ) |
- 日時: 2010/12/19 19:51
- 名前: mkm
- >>16
>・スクリプト弾、あるいは敵スクリプトを使っている このあたりかなり変えたので、難しいですよね。。
>SetShotDataA_XYを用いた関数。 XYで速度を指定する機能自体がまだないのでつくる予定です。
>ObjLaser系の、値を取得する関数。 これもないのでつくります。
>SetLife、SetTimerなどの初期設定関数。 @Eventでのライフ取得のみは@Initializeよりはやく動作します。 (ボスの場合、事前に全ライフ量を把握しておきたかったため。)
>・引数にNULLを与えているスクリプト 現状意味はないのですが、予約の意味で0にしてしまっています。
>b)@DrawLoopは@MainLoopと同列扱い 「@〜〜〜」は「sub〜〜〜」とほぼ同じなので @MainLoop { //〜〜〜 DrawLoop; } と@MainLoop内で@DrawLoopを呼び出せば同列に近くなりそうです。
>出来れば、将来対応を予定している関数があれば、そちらも公開してもらえると 現状以下URLの機能は予定しています。 //www.geocities.co.jp/SiliconValley-Oakland/9951/products/th_dnh_help_v3_data/whatsnew.html ただ先にリプレイ機能のような必須機能をつけたいと思っています。
>ここまで3Dに対応しているならxファイルも読み込めたりしたら 余裕があったらの方向で……アニメ対応無しなら割と楽なんですが、 (3Dアニメは他形式で2回ほど実装したことあるんですが、 どちらもちょっとした演算ミスに悩み数週間かかりました。)
>追記:CreateItem系の関数ですが、ユーザー定義のアイテムも作れるように これ欲しいのですが、なかなかよい実装を思いつかないので保留しています。
>追記その2:ライブラリファイルからの相対パスを取得する方法ってありませんかね? これは /script/aaa/bbb.txt にあるスクリプトが /script/lib/ccc.txt を#includeしていた場合に、 「../lib/」を取得するといったことでしょうか?
|
Re: 東方弾幕風のバグ・要望 ( No.18 ) |
- 日時: 2010/12/31 13:33
- 名前: qqqqqq94
- はじめまして。
プログラムはよく分からないのですが、弾幕風0.12mで、低速移動時、キーボードで右上にいけない気がします。 →↑を同時に押せば移動できるのですが、先に→を押してから↑を押しても上には移動できません。左上は大丈夫ばbbですが…
|
Re: 東方弾幕風のバグ ( No.19 ) |
- 日時: 2011/01/03 00:36
- 名前: danmaku
- >>18さん
それはプログラムの問題ではなく、キーボードの問題だと思われます。 私のキーボードも右上と左上いけませんし。
|
Re: 東方弾幕風のバグ・要望 ( No.20 ) |
- 日時: 2011/01/07 21:36
- 名前: mkm
- >>18
>qqqqqq94さん はじめまして。
>プログラムはよく分からないのですが、弾幕風0.12mで、低速移動時、キーボードで右上にいけない気がします。 キーボード依存です。 (多くのキーボードには同時押しに制限があります。) ソフトウェア側では検出できないため回避不能です。。。
>>19 >danmakuさん フォローありがとうございました。
|