1 名前:名前は開発中のものです。 mailto:sage [2008/05/11(日) 01:41:47 ID:PRhlwPyW] 無料Windows用2Dゲーム作成ツール"Game Maker"について、色々と語り合うスレッドです。 ●本家(英語) ttp://www.gamemaker.nl/ ●GameMaker Japan - 非公式情報サイト(日本語) ttp://gamemaker.main.jp/ ●初心者向けチュートリアル ttp://gamemaker.main.jp/modules/articles/index.php?cat_id=1 前スレ: 【2D】ゲーム作成ツールGameMaker【マンセー】 pc8.2ch.net/test/read.cgi/gamedev/1087068523/
274 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 10:20:24 ID:jDWWXeXP] >>273 ゲームに使われてるフォントのことなら GM6以降ならレジストしてユーザ製拡張機能を導入しないと日本語表示はできませんぜ コードエディターに使うフォントということなら なぜか一部のフォントが使えずにGMデフォルトのArialが選択される 例えばLucidaSansUnicodeは反映されるけど、LucidaConsoleは反映されない これはレジストしても変わらん
275 名前:273 [2008/09/15(月) 10:34:38 ID:+qgjZ47x] gm7proで普通にフォント作ろうと例えばfont1を追加して フォントの選択画面でいろいろ試してみてもほとんどの英語フォント はarialとまったく同じフォントになってしまいます (wordやexcelではちゃんと使えるフォント)
276 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 11:41:06 ID:jDWWXeXP] >>275 すまん伝わらなかったかな レジストするだけじゃ表示できないよ 日本語表示DLLの詳しい導入方法や使い方はwikiを読んでみて
277 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 12:05:43 ID:H1a8iGGW] 日本語フォント表示したいわけじゃなくて、たとえばComic Sans MSとか選んでも フォントに反映されない(Arialの字体のまま)ってことじゃないの? 上で言ってる「LucidaConsoleは反映されない」というのが フォントの選択でも起こっていると。 この件で文句言ってる人あまり見ないから、環境によるのかもしれないけど。 たぶんフォント指定する際にCharsetがSHIFTJISあたりになってるから 日本語文字の含まれるフォントしか反映されないと思われる。 GM側の問題だからバグ報告あげて直してもらうか、 自分でスプライト化して表示するしかないんじゃないかな。 上で紹介されてる日本語表示DLLでもできると思うけど。
278 名前:名前は開発中のものです。 [2008/09/15(月) 12:10:54 ID:+qgjZ47x] スイマセン 説明下手でした 自分が描画したいのは日本語ではなく英語です 日本語はすでに非公式サイトからスクリプトを導入しています 例えば自分がDLしたStarcraftフォントをインストールしました。 それはexcelなどではちゃんと使えるのにいざGMで使おうと思うと Starcraftフォント表示されるのになぜか中身がArialと同じになってしまうのです。
279 名前:名前は開発中のものです。 [2008/09/15(月) 12:12:32 ID:+qgjZ47x] 277さん すみません その通りです
280 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 12:25:34 ID:P1NOywnZ] オブジェクトが画面上半分に入ると行動が変わるようにしたいのですが、 オブジェクトが指定した範囲内にあるかどうか判断するにはどうしたらいいですか?
281 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 12:50:01 ID:jDWWXeXP] >>278 やっと意味が分かった 見当違いのレスすまんです GM7になっても直ってないということは日本語環境に特有のバグかもしれないね >>280 if(y < room_height/2) { // ルームの上半分にいる時の処理 } より厳密に判定したいなら↓このあたりを参考に sprite_height スプライトの縦幅 room_height ルーム全体の縦幅 view_height ビュー全体の縦幅
282 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 14:15:05 ID:Z9WHzemZ] 277氏の話で気づきましたが、 フォントの問題は、フォントリンク機能(windows2000以降に搭載?)を使って 欧文のみのフォントに日本語のフォントを含めることによって解決できました。 Windows システム内部のレジストリをいじることになるので、 必ずレジストリのバックアップをとってください。バックアップから自力で元の環境に戻せる力量のある方のみ推奨です。 また、フォントリンク機能についてよく調べてから行ってください。 (自分も調べたてでよく分かっていません、よって、もっとよい方法があるかもしれません) starcraftフォントを例にとって、やり方を説明します。 (自分の環境はWindowsXP SP2です。 GMは7.0で確認しました) 1. starcraft フォントをインストールする。 2. レジストリエディタ(regedit.exe)を起動して、 [\\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink] に、複数行文字列値を新規作成し、以下のように入力する。 値の名前: Starcraft 値のデータ: Starcraft Normal.ttf,Starcraft normal MSGOTHIC.TTC,MS UI Gothic 3. Windowsを再起動させる。 すると、GM で font リソースの追加 で Starcraft を選択すると、 プレビューの時点で反映されるのが確認できるかと思います。 テキスト表示させるオブジェクトを配置してゲームを実行させても反映されました。 また、ゲームをexeで吐き出せばフォントリンクさせていない環境でも反映されるので、 exeで配布する分には問題ないと思います。
283 名前:名前は開発中のものです。 mailto:sage [2008/09/15(月) 15:26:51 ID:tvN7d6yW] >>282 それは自分の環境以外でも正常に動作するのでしょうか。 (他人のレジストリを弄らせるわけにはいかない)>>534
284 名前:282 mailto:sage [2008/09/15(月) 16:44:01 ID:E4MKDW7W] まず、製作側の環境は当然、変更しなければなりません。 そして、ゲームをソースの状態で配布する場合、 相手側もレジストリを変更しなければ反映されません。 ですが、実行形式で配布する場合は、実行ファイル自体にフォントが埋め込まれるため、 環境を変える必要はありません。 自分の環境で、フォントリンクさせた環境で作った実行ファイルを フォントリンクを解除した環境で実行しても、フォントが正常表示されたので、 自分の中では、そう結論付けてます。
285 名前:名前は開発中のものです。 [2008/09/16(火) 14:10:35 ID:JDKv6UBR] 練習で横スクロールアクションを作っているのですが、スプライト変更で苦戦しています。 内容は…… ・GM7使用 ・出来るアクションは棒人間が左右に移動、Zでジャンプ ・棒人間は停止、移動、ジャンプ上昇、ジャンプ下降のアニメが左右ある ・下に地面がある時に、左右キーを押すと左右歩きアニメ ・下に地面がある時に、左右キーを離すと左右停止アニメ ・vspeed-10(ジャンプの初速)で上昇、vspeed0.5(落下の初速)で下降アニメ このまま試したら、ジャンプから着地したときに下降アニメのままだったので 地面に触れたら停止アニメに変わるよう設定をしました。 完成した!と思ったら、今度は左右押したまま着地(着地後そのまま横移動)をしたら、 停止アニメのまま移動する問題が発生… ならば、着地時に左右キーを押しているか押してないかで分岐させればいいのでは?と考え if an expression keyboard_check(ord'right')is true ↑これを地面との衝突イベントに左右分組んでみたのですが うまく作動しませんでした…。 何か良い解決策はないでしょうか? すごく初歩的なことかもしれませんがアドバイスをお願いします。
286 名前:名前は開発中のものです。 mailto:sage [2008/09/16(火) 18:38:05 ID:2x1IGPqI] >>285 アクションゲームでは定番の話題だけど方法が色々あるから具体的に答えにくいな 「こうしたら解決」というアドバイスは難しい話題だけど勘で答えてみる 意外と気づきにくいのは衝突イベントの発生タイミング ×ぶつかった瞬間に1回だけ発生する ○触れてる間は常に(毎フレーム)発生する つまり地面に立ってる時は常に衝突イベントが発生してる 例えば、 衝突イベントに停止アニメを強制するアクションを書いてしまうと 左右への歩行アニメは発生しない (地面に立ってる=常に衝突イベント発生=常に停止アニメ) 解決策は色々あるけど一例を 地上にいる/空中にいる、などキャラクターの状態を変数で表しておく 1.「空中」から着地したら停止アニメ発動&状態を「地上」にする 2.ジャンプしたら「地上」から「空中」に入れ替える 3.「地上」にいる状態で地面と衝突しても停止アニメは発動しない 何かの参考になれば幸い
287 名前:名前は開発中のものです。 [2008/09/16(火) 18:59:33 ID:wc/bCpqZ] >>285 衝突イベント使わずにステップイベント使ったら?? もしy+1に床オブジェクトがあったらvspeedを0にして もしvspeedが0だったら停止アニメするとか…
288 名前:285 mailto:sage [2008/09/16(火) 20:41:11 ID:JDKv6UBR] 丁寧なご回答ありがとうございます! >>287 様 早速ステップイベントで試してみたところ、ステップごとに常に 足下をチェックするため、地上にいるときは停止アニメのみに なってしまいました。 >>286 様 ステップイベントで足下をチェックして、地面がある時は重力が0になるようにしています。 たぶん、これで衝突イベントの連続発生は回避できていると思います。 地上→垂直ジャンプまたは、ジャンプ後左右キーを離す→着地 この場合は地上で停止アニメになります。 その後左右キーを押せば問題なく移動アニメになります。 地上→ジャンプ→左右キーを押したまま着地して移動 この場合は、着地後に停止アニメのまま左右に移動します。 一度左右キーを離し、再度押すと移動アニメに変化します。 地面衝突よりも左右キーを押した時に移動アニメに変化するのが問題…? う〜〜ん…変数を使ってもう少し試行錯誤してみます。
289 名前:267 mailto:sage [2008/09/17(水) 01:00:40 ID:fciLO00k] 配列を利用してオブジェクトの動きを制御しているのですが 複数あるオブジェクトの中で1つだけを消すことって出来ますか? option[count] = instance_create(x, y, obj_option); count += 1; の逆でcountを1減らして countが最後のやつを消そうと思ったのですが 他のオブジェクトから他のオブジェクトをCreateできても 廃棄はできないのですか? ヘルプを見てもそれらしきものは見つかりませんでした。
290 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 01:28:48 ID:+iHp1HAA] >>289 インスタンスを消すための関数はinstance_destroy()。 ただこいつは「自分自身を消す」関数なので、GMではちょっとトリッキーですが with文を使って「消したいインスタンスに関数を実行させる」必要があります。 with (option[番号]) { instance_destroy(); }
291 名前:267 mailto:sage [2008/09/17(水) 06:27:15 ID:fciLO00k] 有難うございます。 早速やってみます。
292 名前:名前は開発中のものです。 [2008/09/17(水) 16:50:11 ID:3ZsvlK2w] dlしたサンプルなどで演算子<>(例えば if turn <> 0)を見つけたのですが これはどういう意味でしょうか??
293 名前:267 mailto:sage [2008/09/17(水) 18:36:14 ID:fciLO00k] やってみたところ(Unknown variable option)とゆうエラーが出てしまい 色々と設定を変えながらやってみたのですが 自分ではどうしてもエラーを無くす方法がわかりませんでした www1.axfc.net/uploader/File/so/11187.ttf 現物をupしました。どなたか教えていただけませんか?
294 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 18:47:37 ID:+iHp1HAA] >>292 それは != と同じで「等しくない」という演算子。 ちなみにGMのマニュアルに載っているのはC風の文法ですが、 歴史的な経緯からPascalライクの文法も一部受け付けるようになっています。 <> は != のPascal版。似たようなマニュアルに載っていないお仲間には and(&&), or(||), not(!), then なんてのがあります。 >>293 できればエラーメッセージは正確に書いてほしいな。 「array index out of bounds」(配列のインデックスが範囲外) ってのがこの場合の問題。 たとえばオプションの数が3つ(count=3)の時、配列の要素は option[0], option[1], option[2] の3つ。したがって最後のオプションは option[count] ではなくて option[count - 1] です。
295 名前:267 mailto:sage [2008/09/17(水) 20:35:59 ID:fciLO00k] 有難うございます。 そしてすいませんorのあとを書き忘れてました。
296 名前:292 [2008/09/17(水) 21:25:35 ID:3ZsvlK2w] >>294 ありがとうございます そんな演算子があったなんて驚きです
297 名前:名前は開発中のものです。 mailto:sage [2008/09/25(木) 18:58:23 ID:ePV3MaT7] みんなどんなジャンルのゲーム作ってるんだろう……
298 名前:名前は開発中のものです。 mailto:sage [2008/09/25(木) 19:20:38 ID:g090BAj9] 試しにマリオ風アクションを作ってて色々壁にあたり、 もっとシンプルなものから……と思ってゼルダ風に挑戦中 何か1つ完成させたいな〜…
299 名前:名前は開発中のものです。 mailto:sage [2008/09/25(木) 20:51:49 ID:dGYbhKuz] GMの魅力は日本的ジャンル区分とは少しズレたものが作りやすいことじゃないかな 下らないアイデアでも作ってみようかって気になれる FLASHゲーのようなシンプルで即効性があって馬鹿っぽいものが作りやすい(モチベ的な意味で) 今作ってるのはダウンタウン熱血行進曲のパクリ 全24人(CPU操作)を同時に出して殴り合いのカオスを眺めてるだけのゲーム?らしきもの 某FPSのBOT戦を眺めてるときに思いついた 無理矢理どこかのジャンルに分類すればライフゲームの一種になるんだろうか ゲームの目的と遺伝的アルゴリズム的な何かを加えたら少しはゲームになるかもしれない しかしゲームにしようと思うと自ずと既存の何かに似てくるから困る
300 名前:名前は開発中のものです。 mailto:sage [2008/09/25(木) 23:26:48 ID:q3MsUpLj] やっぱ配布する時とかにGameMakerの表示出ると格好悪いよな 課金版欲しいなぁ
301 名前:名前は開発中のものです。 mailto:sage [2008/09/26(金) 03:12:23 ID:sE3W1GIE] とりあえず、Cふう演算子以外は やらなくていいと思うよ いずれGameMakerを離れて自作するときに面倒になる
302 名前:名前は開発中のものです。 mailto:sage [2008/09/28(日) 18:10:00 ID:LS/ACw4R] 昔このスレだったかで見たんだけど view機能によって表示されている画面の左上の座標を返す関数があったとおもうんだけど 誰か覚えてない? HPゲージの表示場所に使うんだ
303 名前:名前は開発中のものです。 mailto:sage [2008/09/28(日) 20:13:19 ID:uhIOXa5a] ヘルプでviewひけばすぐ出てくる 5と6以降で名前が違うから気をつけるんだ
304 名前:名前は開発中のものです。 mailto:sage [2008/09/28(日) 21:17:06 ID:LS/ACw4R] >>303 ありがとう。すごく助かった
305 名前:名前は開発中のものです。 mailto:sage [2008/09/29(月) 18:56:28 ID:UJys+BvP] GM6で梯子を作りたいのですが良い案はありませんでしょうか? 接触中は↑キーでy方向に-32移動出来る様にして、接触中のジャンプも可能にしたいです。 操作キャラのジャンプ条件はy方向1にソリッドオブジェクトがある時ですが、 この条件に当てはめなくてもソリッドオブジェクト上にいる時と同じ様にジャンプ出来れば良いです。 よろしくお願いします。
306 名前:名前は開発中のものです。 mailto:sage [2008/09/29(月) 21:40:35 ID:TA0YzXK0] ジャンプ時の条件に「梯子と接触している」を付け加えればいいのでは? D&D使ってるなら「If thre is an object」アクション、GMLならplace_meetingでチェックできる。
307 名前:名前は開発中のものです。 mailto:sage [2008/09/29(月) 23:26:55 ID:UJys+BvP] >>306 ありがとうございます。 こんな便利なアクションがあったのですね。 お陰で触れてる間に↑キーで梯子を上る事も出来ました。 ですが上った後に静止する方法が分かりません。キャラに重力を設定してあるので落ちていってしまいます。 重力を設定したキャラを空中で静止させるにはどうすれば良いのでしょうか? 何度も質問すみません。よろしくお願いします。
308 名前:名前は開発中のものです。 mailto:sage [2008/09/30(火) 00:47:31 ID:YIigZYPb] >>307 チュートリアルを参考にして作ってるならおそらく Stepイベントの中に「足下がfreeでなければ重力を0にする」 という処理があるはずなので、そこにも下に梯子があるという 条件を追加すればいいかな。
309 名前:名前は開発中のものです。 mailto:sage [2008/09/30(火) 10:28:05 ID:gaxEls3H] >>308 ありがとうございます。 その通りにやったのですが問題がありまして・・・。 歩いて接触し、↑キーで上れば空中で静止する事が可能になったのですが ジャンプしながら接触したり、落ちながら接触すると止まりません。 www1.axfc.net/uploader/He/so/143051.zip&key=gm6 こんな感じです。何処か間違ってましたでしょうか?
310 名前:名前は開発中のものです。 mailto:sage [2008/10/01(水) 21:47:12 ID:Fc7yZooq] 重力を0にしてもスピードはそのままなので、vspeedも0にする必要がある。 触れたら止まるって仕様だと、接触中でもジャンプできるって仕様と 食い合わせが悪い気がするけどな。
311 名前:名前は開発中のものです。 mailto:sage [2008/10/01(水) 23:12:59 ID:1MeHwIPf] >>310 ありがとうございます。 見事に梯子っぽくなりました。が、やはりジャンプは出来ないようです。
312 名前:名前は開発中のものです。 mailto:sage [2008/10/01(水) 23:35:57 ID:dOI1qd/B] >>311 梯子を昇っているかの処理を初めの方にやって、フラグで処理するようにやりなおしてみたら? 毎step時に梯子に接触してるか? 触れている 梯子フラグA = 1(ON) → 触れていない 梯子フラグA = 1(ON) 梯子の所で上キーを押した → 梯子フラグB=1(ON) 梯子フラグON時 → 重力・vspeed 0 にし、上下ボタンは上下移動(vspeed 10とか)に設定
313 名前:名前は開発中のものです。 mailto:sage [2008/10/01(水) 23:39:24 ID:dOI1qd/B] ぎゃー間違って送ったorz 毎step時に梯子に接触してるか? 触れている → 梯子フラグA = 1(ON) 触れていない → 梯子フラグA = 0(off)、重力(vspeed=元値)ON ・・・伝わったらいいなこの説明。
314 名前:名前は開発中のものです。 mailto:sage [2008/10/02(木) 17:09:40 ID:JaYkkapt] >>312 ,313 ありがとうございます。 フラグを使って色々やってみたのですがジャンプは出来ても空中で静止出来なかったり 空中で静止出来てもジャンプは出来なかったりとどうも完璧にはなりませんでした。 まだ色々試してみますが、もしよろしければ>>309 のサンプルに付け加えて頂ければ幸いです。
315 名前:名前は開発中のものです。 mailto:sage [2008/10/03(金) 14:39:18 ID:ZrsFoNA5] 皆さんBGMってどうしてます?
316 名前:名前は開発中のものです。 mailto:sage [2008/10/03(金) 16:46:41 ID:uDeRDVYO] FamiTrackerっていうファミコン音源ツールで適当に
317 名前:名前は開発中のものです。 mailto:sage [2008/10/05(日) 04:52:05 ID:H1cq3pc2] ごめんなさい。質問の言葉が足りなさ過ぎました。 BGMをつけるとき、楽曲を自分で用意するとしても、何処からか借りてくるとしても、 そのファイル形式について知りたいのです。midiとかmp3とか。 できれば、そのBGMをどう再生しているのかも知りたいです。 midiなら最初から入ってるsound_playで再生できるけど、oggならbGMスクリプトとか使ったり。
318 名前:名前は開発中のものです。 mailto:sage [2008/10/05(日) 13:06:42 ID:Fn418VgV] midiはGSしか搭載されてない事多いから自分はもっぱらbGMスクリプトでoggだね。
319 名前:名前は開発中のものです。 mailto:sage [2008/10/05(日) 20:02:29 ID:4niTijZC] 私はMP3ファイルを、再生する前にリソース置換してるな……
320 名前:名前は開発中のものです。 mailto:sage [2008/10/08(水) 15:16:57 ID:RDU/YXQB] >>318-319 ありがとうございました。 参考にさせていただきます。
321 名前:名前は開発中のものです。 mailto:sage [2008/10/11(土) 18:30:28 ID:J25bobba] 画面全体を真っ暗にするにはどうすれば良いでしょうか?
322 名前:名前は開発中のものです。 mailto:sage [2008/10/11(土) 22:42:26 ID:VYtC5Q29] >>321 それは画面を完全黒で塗りつぶすということ? それとも、半透明の黒(変な表現だな)で暗闇を作りたいってこと? どっちにしろ、レイヤーを変更して一番前に表示するようにしてみたら?
323 名前:名前は開発中のものです。 mailto:sage [2008/10/12(日) 19:20:19 ID:0LPSWnKh] >>322 画面を完全に黒で塗りつぶしたいのです
324 名前:名前は開発中のものです。 [2008/10/12(日) 20:59:20 ID:WCmVlsh4] draw_rectangleアクションで高さと幅をroomと同じにして色を黒にするといいんじゃない?
325 名前:名前は開発中のものです。 mailto:sage [2008/10/12(日) 23:04:23 ID:0LPSWnKh] >>324 なるほど、ありがとうございます。盲点でした・・・。
326 名前:325 mailto:sage [2008/10/12(日) 23:27:26 ID:0LPSWnKh] 一応やり方は分かったのですがイマイチそれをどう実行すべきか分かりません。 draw_rectangle(x1,y1,x2,y2,false)の座標1(x1,y1)はルームの左上(0?)かと思いますが 座標2(x2,y2)はどう指定すれば良いのか悩んでおります。 (0,0,room_heigh,room_width,false)ではどうも違うようなのです。何が間違っているのでしょうか?
327 名前:名前は開発中のものです。 mailto:sage [2008/10/13(月) 01:58:15 ID:AHWrAmb7] >>326 本体のバージョンは?
328 名前:名前は開発中のものです。 mailto:sage [2008/10/13(月) 01:59:44 ID:KOVLXVwd] というかwidthとheightが逆なのでは
329 名前:名前は開発中のものです。 mailto:sage [2008/10/13(月) 03:38:00 ID:RgqatT8r] >>326 >>328 の言うとおり、widthは横、heightは縦。 (ついでにいうとheightのtも抜けてるが) 黒い長方形が一切見られないのなら: 1) drawイベントで実行している? 2) depthを一番小さくしてる?
330 名前:名前は開発中のものです。 mailto:sage [2008/10/13(月) 10:30:18 ID:v588R7se] >>328 >>329 ありがとうございます。色々とスペルやら間違っていたようですね。 コリジョンイベントで実行していました。 本当にありがとうございます。
331 名前:名前は開発中のものです。 [2008/10/17(金) 21:27:46 ID:dQ5aX5kq] GM6でグラディウス式の横シューティングゲームを作っているのですが、 弾オブジェクトの数の上限を自機と各オプションそれぞれに設けたいと 思っているのですが、どうすればいいのかさっぱり見当がつきません。 どうすれば良いのでしょうか?
332 名前:名前は開発中のものです。 mailto:sage [2008/10/17(金) 22:05:41 ID:0ROIYotH] 弾オブジェクトが出来た時にAに+1して消えた時にAから-1するってのはどうかな? 3発上限ならAが3以下の時だけ発射出来るようにするとか。
333 名前:331 [2008/10/18(土) 17:21:01 ID:QonRt8Q9] なるほど、変数を使えばよかったんですね。 instance_number()を使うことしか頭に無かったので助かりました。 ありがとうございます。
334 名前:名前は開発中のものです。 mailto:sage [2008/10/23(木) 23:03:49 ID:URptRMn4] 公式・・・もう動かなくなってどのくらい起つのだろう。 早くバージョンアップしてほしい。
335 名前:名前は開発中のものです。 mailto:sage [2008/10/25(土) 07:24:32 ID:YPdYk3/P] シンボルエンカウントのRPG的な物を作りたいのですが 以前に誰かが作ったサンプルなどありませんでしょうか?
336 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 07:41:16 ID:B8z2rdZk] GM6ですがroom1からroom2に移動した後、room2に移動する直前の状態のroom1に戻りたいのですが どうすれば良いのでしょう? 普通に戻ってしまうとroom1の最初の状態に戻ってしまいます。 よろしくお願いします。
337 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 08:29:55 ID:vZOkTfmY] roomのsettingsタブにある、Persistentのチェックを入れるとできるはず。
338 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 12:12:52 ID:SJ76vo7y] なんか、変な事が起こったので報告。 原因は不明だけど突然GameMaker製のゲームだけ、やたら重くなるという現象が起きました(バージョンは5.3、6で確認) 他のゲームやアプリケーションは何も問題なかったのですが、GameMaker製のゲームにだけ異常が起こります。 60fpsのゲームが常に40fps以下になったり。 再起動で治りました。
339 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 21:20:06 ID:Jov+JTxt] Show &help on function and variable names Show the origin and &bounding box in the sprite image &Run games in secure mode, not executing programs セキュアモードで実行する, プログラムを実行しない これらの訳を手伝ってほしい
340 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 23:19:05 ID:CygkE/Te] >>339 翻訳作業されてる方かな 英語を訳すというより実際にどうなるのかを日本語で説明した方が初心者には有り難いかも もちろん訳し方の好みがあると思うのであくまで私の意見ということで スクリプト編集の際、エディタ下部に関数/変数の候補を表示する スプライト編集の際、スプライトの原点と当たり判定を示す矩形を表示する
341 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 23:23:51 ID:CygkE/Te] 解説サイトやwiki編集かと思って書いたけど もしかしたらGMそのものを日本語化するのが目的なのかな そうだったらこんな冗長な文面は適さないですよね ということで私のレスは忘れて下さい
342 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 23:29:37 ID:/+O62xmv] 訳してたら先に答えてくれてた人がいた・・・。 ということで、GMそのものを日本語化しているという前提でやってみましたしだいです。 >>339 Show &help on function and variable names 関数と変数名の候補を表示する Show the origin and &bounding box in the sprite image スプライトのプレビューに基点(origin)と境界枠(bounding box)を表示する &Run games in secure mode, not executing programs セキュアモードでゲームを実行し、外部プログラムを実行させない こんな感じだろうか。 origin (スプライトの原点)や bounding box(当たり判定が実行される領域) の訳は 全体的に統一した方がよいと思う。
343 名前:名前は開発中のものです。 mailto:sage [2008/10/30(木) 20:15:39 ID:I528xhb9] >>340 >>342 ありがとうございます。 言われている通りGMそのものを日本語化しております。 E-WordChanger を使っており、その辞書ファイルに記述しています。 ツールチップは1つ試してみましたが、1度成功したと思っていても 次に表示すると日本語されていませんね。 中にはソフトを使ってもclipできない文章もありますね。 そちらも翻訳表示できません。 うまく表示できている人は居られるのでしょうか?
344 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 18:19:41 ID:YzRs5LJ8] ちょいと困っています。 キャラとか画像が移動すると、ぶれるようなかすれるような感じでぼやけてしまいます。 移動させてもちゃんと写るようにするにはどうしたらいいですか? room speedは30です。
345 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 18:27:01 ID:YzRs5LJ8] あと gamdev.org/w/?GameMaker はどこかに移転したんですか?
346 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 19:54:07 ID:oCQp1Dl8] >>344 原因は色々ありうるけど同じく色々と試してみたと思うので意外な罠を一つ 俺がハマったのはモニタのリフレッシュレート うちの環境だと60hzなら普通に動くけど75hzだと掠れる 恐らく環境依存だしGMとは関係ない部分だから気づきにくい
347 名前:336 mailto:sage [2008/10/31(金) 21:53:02 ID:EFPq/rMO] >>337 遅くなりましたがありがとうございます。 出来ました。
348 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 22:53:49 ID:YzRs5LJ8] >>346 モニタのリフレッシュレートとGMの設定とroom speedをそれぞれ60にしてみたけど、やっぱりブレれぅ・・・ 液晶だからかな・・・ そしてUse synchronization avoid tearingって意味がわかんない? エキサイト翻訳したら「同期が引き裂くのを避ける使用」って出る。 tearingを単体で調べても引き裂くとか猛烈とかな意味がでる。 同期するのを避ける?
349 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 23:26:30 ID:mSkOAagk] >>348 さすがに俺も液晶よ 上で書いたケースとは別件かな もし他の方がGMで作った実行ファイルでも同様の症状が出るなら相性かもしれない ドライバ、グラボ、モニタ、DiretXのバージョンなどなど
350 名前:名前は開発中のものです。 mailto:sage [2008/11/01(土) 00:14:21 ID:cP7CN4r/] use synchronizationで「同期(シンクロ)を使用する」 avoid tearingで「破綻することを回避する」 tear=破ける,裂ける,破綻する Use synchronization avoid tearingで「破綻を回避するための同期(シンクロ)を使用する(使用せよ)」または「同期を使用して破綻を回避する」 例文: Synchronization - Avoiding Frame Tears=フレーム落ちを回避するための同期
351 名前:名前は開発中のものです。 mailto:sage [2008/11/01(土) 00:21:55 ID:cP7CN4r/] シューティングゲームの作成では、PC処理速度を超える過剰負荷がかかった時に、 「コマ落ち(フレーム落ち)」させるか「処理落ち」させるか、 フレームレート,リフレッシュレートの同期処理に悩みますよね
352 名前:名前は開発中のものです。 mailto:sage [2008/11/01(土) 01:01:45 ID:7HKnkTOG] >>348 ティアリングというのは、画像が横に動いているときに 画面の途中でちぎれたように上下がずれて見える現象。 それを避けるためにモニタの信号と同期をとるというのが設定の意味。 画像がぶれるというのとは関係ないと思う。 仮にビューを使っている場合、やりようによっては 更新タイミングの違いでぶれて見えることがあるけど そういうことはない?
353 名前:名前は開発中のものです。 mailto:sage [2008/11/01(土) 22:42:10 ID:spXHa3/O] こう・・・表記が変なのかなーと自分を疑ったり ブレるというかぼやけるというか、ブラーが掛かるというかにじむというか・・・ 左が普通で、右が動かしたときに見える感じ rainbow2.sakuratan.com/img/rainbow2nd43406.png
354 名前:名前は開発中のものです。 mailto:sage [2008/11/01(土) 23:05:00 ID:8D1Uiupl] >>353 なるほど スクリーンショットを撮って見ると輪郭パリパリで綺麗なのに 実際に動いてるのを肉眼で見てるとボヤけて見えるってことかな モニタの応答速度が遅いのが原因、に1票
355 名前:名前は開発中のものです。 mailto:sage [2008/11/02(日) 00:23:31 ID:UAtrgN40] このスクリーンショットが実際に動かしてる時に撮ったものなら応答速度ではないんですが どうなんでしょう
356 名前:名前は開発中のものです。 mailto:sage [2008/11/02(日) 00:46:03 ID:q7EnVYah] >>354 応答速度なのかな・・・ どこで調べたらわかるんだろ。
357 名前:名前は開発中のものです。 mailto:sage [2008/11/02(日) 01:10:29 ID:q7EnVYah] SONY SDM-S75F っていうモニター使ってるけど、これがダメなんかな・・・
358 名前:名前は開発中のものです。 mailto:sage [2008/11/02(日) 07:11:53 ID:Uttx017t] もう既にいろいろ試していると思うけど、とりあえず。 1)新しくテスト用のゲームを作ってみる 問題が起こる最低限の環境のゲームを作ってみる。 もし問題が起こらなければ、元のゲームのどこかに問題がある。 元のゲームを放置して新しく作り直すもよし、元のゲームの問題点を探すのもよし。 もし問題がまだ起こるのなら↓ 2)他の環境で調べてみる。 テスト用でもいいから作ったゲームを公開して、同じ現象が起こるかチェックしてもらう。 それでも問題が起こるのなら、アルゴリズムに問題がある可能性大。 もし問題が起こらないのなら、PCの環境のどこかに問題がある。(相性とか?)
359 名前:名前は開発中のものです。 mailto:sage [2008/11/03(月) 11:05:08 ID:0rtuC+vp] アクションゲームで、下に落ちたら死亡(画面からはみ出たら死亡)にしたいのですが 画面の左右と上にはみでないようにするにはどうすればいいでしょうか。5.3です
360 名前:名前は開発中のものです。 [2008/11/03(月) 19:13:01 ID:HnYJ+ws5] ルーム外イベント使わずに if (y>room_height) instance_destroy で出来るはず
361 名前:名前は開発中のものです。 mailto:sage [2008/11/03(月) 20:24:19 ID:SR5b1R59] Gamemakerって大掛りなACTでGMLをふんだんに使ったサンプルとかないのかね? 勉強したいんだけど、リンク切ればかりで出来ない英語の勉強するほうが先になりそうな予感
362 名前:名前は開発中のものです。 [2008/11/03(月) 21:53:58 ID:HnYJ+ws5] シューティングサンプル1945の全部gmlコード版があった気がする…
363 名前:名前は開発中のものです。 mailto:sage [2008/11/03(月) 22:24:41 ID:uwgdwITo] >>361 日本語の資料はあまり多くないね サンプルなら質も量も本家フォーラムが一番 ttp://gmc.yoyogames.com/lofiversion/index.php/ GMLなら↑のScripts[GML] 多少英語が読めてGMLを理解してる人なら宝の山だと思う 英語が読めなくてもGMLの理解があれば漁ってみる価値はある かなり話題がそれるけどFlex&ActionScriptのサンプルも結構面白い ECMAScript系の言語仕様、イベントドリブン、OOP(的である)、と共通点が多い 出来上がるのがFlashだからASに乗り換えるわけにはいかないけど御参考までに。
364 名前:名前は開発中のものです。 mailto:sage [2008/11/03(月) 23:43:47 ID:SR5b1R59] >>362 検索中スルーしてたかもなんで、後で、探してみます。 >>363 本家フォーラム倦厭してたけど、チラ見しただけでも大量の投稿で、まさに宝の山っぽいです。 自分は英語あまり読めませんが(;´Д`) Action Scriptのほうはちょっと気になってたんですが、そっちも後で見てみることにします。 御二方情報ありがとうです
365 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 14:09:40 ID:lQ1u3lWL] デフォルトの背景background0と動きのある第二の背景background1をルームの設定に用意したのですが 途中でこれらを切り替えるにはどうしたらいいのでしょうか?
366 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 22:26:45 ID:XjRGW3LY] >>365 ヘルプ見たら「background_○○」って関数が大量にあるので色々できると思うよ 単純に2つの背景を排他的に切り替えるだけなら background_visible[0] = !background_visible[0]; background_visible[1] = !background_visible[1]; // visible when room starts の設定によって開始時に1つだけ表示させとく // つまり片方にだけチェックをいれる ほとんど同じ処理を分かりやすく書くと if( background_visible[0] ) { background_visible[0] = false; background_visible[1] = true; } else { background_visible[0] = true; background_visible[1] = false; }
367 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 22:31:36 ID:XjRGW3LY] ごめんなさい修正 直接backgroundのインデックスを指定すれば良いみたい if( background_index == 0 ) background_index = 1; else background_index = 0;
368 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 23:58:10 ID:lQ1u3lWL] えーと、試して見たのですが背景がかわらず動かしたキャラクターの残像が無限に描写される状態になってしまいました。
369 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 00:01:14 ID:XjRGW3LY] >>368 ただのサンプルだから書く場所にもよるよ 毎フレーム呼び出したらそういう状態になるかも 例えばglobal mouse left pressedあたりに書けば マウス押すたびに切り替わるはず
370 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 00:07:30 ID:lQ1u3lWL] 即レスありがとうございます 一応初めからマウスがクリックされた時というところでそれをやっているのですが…
371 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 00:36:35 ID:RiMAKIfy] >>367 GMLではarray[0]とarrayは同じものを指すから、それは単に background_index[0] に一番最初に作ったbackground(id=0)と 2番目(id=1)を交互に割り当ててるだけ。 >366の方法が正解。
372 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 01:04:58 ID:eaSEHczR] キャラクター「A」と「B」が横一面で左に向かって競争していて、 「AがBを追い抜いたとき」と「BがAを追い抜いたとき」で別々に音を流したいのですがどうすればいいのでしょう。 上とは同じ内容で違う質問なんですが 試しにA.xがB.xの値の-1になった時〜などという風にIf a variabels has a valueでやってみましたができませんでした。 これではだめなのでしょうか?
373 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 07:42:34 ID:LwQsPuS+] >>372 単純に Aのx座標 < Bのx座標の時は音楽Bを流す、 Aのx座標 > Bのx座標の時は音楽Aを流す。 で良いんじゃないかな?
374 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 09:00:15 ID:5MtmmVSK] 追い抜いたときってのを調べるには、1ステップ前の状態を記録しといた方がいいんじゃない? 例えば、 Stepに difference = Aのx座標 - Bのx座標; を入れて、 Stepの最後の行かEnd Stepに prev_difference = difference; を入れる。 そしてStep内で、 prev_differenceとdifferenceをチェックする。 prev_difference(1フレーム前の差)とdifference(今現在の差)を見たとき、 マイナスからプラスになったり、プラスからマイナスになったりしたときが、 どちらかが追い抜いたとき、となる。どっちがどっちかはすぐわかるはず。 ちなみに2つ目の質問に答えると、ゲームに限らず、プログラムはそこに書かれているとおりに動く。 どういうことかというと、A.xがB.x-1になったときに音を再生する、 つまり、それが例え追い抜いたとしても後ろから近づいただけだとしても、座標軸でBがAの左にちょうど1離れたところにいる瞬間に音を鳴らす、という判定がかなりシビアな表現になる。