【2D】ゲーム作成ツールGameMaker part3【マンセー】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/05/11(日) 01:41:47ID:PRhlwPyW●本家(英語)
ttp://www.gamemaker.nl/
●GameMaker Japan - 非公式情報サイト(日本語)
ttp://gamemaker.main.jp/
●初心者向けチュートリアル
ttp://gamemaker.main.jp/modules/articles/index.php?cat_id=1
前スレ: 【2D】ゲーム作成ツールGameMaker【マンセー】
http://pc8.2ch.net/test/read.cgi/gamedev/1087068523/
0064名前は開発中のものです。
2008/05/22(木) 20:36:05ID:dVs71+g+なるほど。vspeedですね。
試してみたんですが
>>自分の高さを床に乗るように合わせる。
これをやらないと衝突判定があっても、沼に沈むように下降する現象が発生
(↑原因不明・・・なんでだろう)
vspeedだけじゃ駄目なんですね。
位置を合わせるって部分はまだ微調整が必要ですが
おかげで、実現に近づける事ができました
ありがとうございました。
0065名前は開発中のものです。
2008/05/22(木) 21:17:29ID:QlDRy8fj位置を合わせないと沈んでいくのはvspeedが0になったあと1フレーム分下に加速度がかかっているからで。
まあ、お節介かも知れないけど補足(^^;
0066名前は開発中のものです。
2008/05/22(木) 21:36:47ID:A9Tj0djsポーズの作り方で
ゲーム上のインスタンスを動かなくさせる(反応しなくさせる)
っていうのがあった気がするんですけど
誰か詳しく覚えてませんか?
0067名前は開発中のものです。
2008/05/22(木) 21:39:49ID:F+pyFRDi0068名前は開発中のものです。
2008/05/22(木) 21:45:49ID:QlDRy8fj0069名前は開発中のものです。
2008/05/22(木) 21:50:14ID:bh5bHg1Z日本語がおかしくてすみません。。
0070名前は開発中のものです。
2008/05/22(木) 21:54:35ID:QlDRy8fj残念ながらできません。
ブラウザで遊べるゲームが作りたいのならFLASHかJavaで作りましょう
0071名前は開発中のものです。
2008/05/22(木) 21:59:29ID:bh5bHg1Zそうですか、わかりました。
ありがとうございました。
0072名前は開発中のものです。
2008/05/23(金) 00:31:35ID:IwtfC0JS{
n=0;
mbtext_setfont(spr_zen20,spr_han20,20);
mbtext_draw("n",x,y,0,0,0)
}
これだと0ではなく、nが表示されて困っています
どうすればnではなく代入されている数値が表示できるのでしょうか?
0073名前は開発中のものです。
2008/05/23(金) 01:03:30ID:9mBFsqkn""で囲むとそれは文字列として扱われてしまう。
しかしnとだけ指定しても内容が文字列ではなく数値なので、文字列にしてやる必要がある。
"n"をstring(n)に書き換えればオーケー。
0074名前は開発中のものです。
2008/05/23(金) 01:49:02ID:IwtfC0JSなるほど!
助かりました、ありがとうございます
0075名前は開発中のものです。
2008/05/23(金) 02:01:25ID:smnTR4WN表現の方法がサッパリ分からない状態です。
何か良い方法は無いものでしょうか…?
※以下の動画で使われてる飛び道具のような表現です
ttp://www.nicovideo.jp/watch/sm2021499
>>ニコ動嫌いな人
URL出してしまい、すいません…
0076名前は開発中のものです。
2008/05/23(金) 03:26:40ID:d1WY1temcの攻撃みたいなやつ?
0077名前は開発中のものです。
2008/05/23(金) 05:21:17ID:6Q5daQ7yexecute_program(prog,arg,wait)
execute_shell(prog,arg)
この二つはexeファイルも起動させることができる。
argumentを一つ使うこともできる。ここまではわかりました。
GMで作ったゲームにargumentを使って実行させることはできますか?
言い直すと、「GMで作ったゲーム1」がexecute_programで「GMで作ったゲーム2」を起動させたとき、
ゲーム2は、execute_programのargumentを参照することができますか?
0078名前は開発中のものです。
2008/05/23(金) 07:15:28ID:OhG93FRYparameter_count()
起動時パラメータ(コマンドライン引数)の数を取得する。パラメータなしで0となる。
parameter_str(n)
n番目の起動時パラメータ(コマンドライン引数)の文字列を取得する。0番目はexe本体のフルパス名となる。
この二つの関数が使えそうだね。
たとえば、ゲーム1から
execute_program("ゲーム2.exe", "arg1 arg2 arg3", 0);
を実行すると、
ゲーム2において、
parameter_count() ← 3を返す
parameter_str(1) ← 文字列"arg1"を返す
ってなるんじゃないかな。
0079名前は開発中のものです。
2008/05/23(金) 07:20:51ID:smnTR4WNcの攻撃みたいなやつのことです
0080名前は開発中のものです。
2008/05/23(金) 10:22:58ID:6Q5daQ7yparameterを使ってみたら見事にできました。
ありがとうございました。
0081名前は開発中のものです。
2008/05/23(金) 11:06:03ID:9mBFsqkn飛び道具から丸くて小さくなっていくスプライトのオブジェクトを置き続ければいいんじゃないか?
レジスト版なら加算合成とか使えて綺麗になるが、通常版だとちとイマイチかもしれないが……
0082名前は開発中のものです。
2008/05/23(金) 14:43:02ID:EGcliZhuここの37にマルチプレイヤーゲームが出来ると書いてありますが、
書いてあることが凄すぎてよくわかりません。。
誰か上手く教えていただけませんか?
0083名前は開発中のものです。
2008/05/23(金) 15:56:41ID:9mBFsqkn要はネット対戦機能とかを作れるって事だけど、マニュアルに書いてある事を理解できる位のネットワークに関する知識がないと辛いんじゃないかな……
出来たら面白そうだなとは思うけどね
0084名前は開発中のものです。
2008/05/23(金) 18:31:26ID:EGcliZhuわかりました
0085名前は開発中のものです。
2008/05/26(月) 21:09:52ID:K7Gb+EE1横に移動して、ジャンプも出来て、重力をつけたら画面外まで落ちていきました。
何かオブジェクトに乗っかるにはどうすればいいですか?
0086名前は開発中のものです。
2008/05/27(火) 01:16:07ID:il/v0kgX1、衝突検知→wallに衝突した場合、衝突フラグをオン
//↓四角範囲指定でキャラの足元の座標を指定
if collision_rectangle(x+10,y+55,x+30,y+60,wall,true,false){wall_flag = 1}
//↑「wall」っていう名前の壁OBJを用意
else {wall_flag=0}//それ以外の場合は空中判定
//2、衝突フラグオンの場合、足元のOBJを調べて、重力とvspeed(縦速度)を0
// 更に、足元OBJのy座標に自OBJの座標を合わせる(こうすることですり抜け現象を回避)
if wall_flag ==1
{
col_id = (collision_rectangle(x+10,y+55,x+30,y+60,wall,true,false))//足元の足場OBJのID取得
if vspeed >= 0//落下、もしくは直立時のみ、座標を合わせる
{
vspeed = 0; //縦速度0
y = col_id.y-1;//足元の足場OBJの1マス上のy座標に合わせる
}
gravity = 0//条件がなんであろうと、とりあえず重力0
}
超大雑把だけど、↑のコード調整すればいけると思うよ
無駄に手順が多い気がするけど、これ以上スマートな方法知らないんです。。。
ちなみにこのまま使うと>>62みたいな足場になります。
0087名前は開発中のものです。
2008/05/27(火) 06:04:21ID:8CURxQUf雲が流れてく様な演出ってできないかな…、あまり無茶をするとガクガクになるからアレかも。
0088名前は開発中のものです。
2008/05/27(火) 22:54:16ID:6Xhx1kD4一度draw呼び出した後の消し方も分からないし
非公式読んでもわからなかった・・・
オブジェクトいっぱい作って表現するよりも軽いらしいから
使いこなせたらベストなんだけど、うーm
0089名前は開発中のものです。
2008/05/28(水) 12:32:20ID:xSCQjZ2edrawイベントは呼ばれている間ずっと描画するからifとかで描画する条件を付ければいい。
そんな重いものを作るんでなかったらオブジェクトを複数に分けた方が良いと思う。
ずっと描画する背景やメニューなら別だけど……。
>>87
悪魔城やったことないからイメージできないや……
奥から手前に雲が向かってくるのなら、雲を描画するオブジェクトを作って、拡大しながら移動したりアルファをいじればいいと思うんだが……
0090名前は開発中のものです。
2008/05/29(木) 02:36:12ID:DHizXfG5>>89
>>drawイベント
なるほど!ありがとうございます!
0091名前は開発中のものです。
2008/05/31(土) 00:39:40ID:rrtVSSkLファイル生成とかいろいろありますが
データが外部から操作されないようなセーブデータって可能でしょうか?
0092名前は開発中のものです。
2008/05/31(土) 08:51:13ID:ZVZLgF9M暗号化するなどで操作されにくくするのが関の山。
0093名前は開発中のものです。
2008/05/31(土) 09:10:26ID:rrtVSSkL暗号化って、難しそうですねぇ。
うーん・・・
0094名前は開発中のものです。
2008/05/31(土) 12:15:42ID:zJdP1EEF0095名前は開発中のものです。
2008/05/31(土) 13:34:09ID:ou8RstaYあとは保存された数値の内容でパスワードみたいなのを生成して一緒に保存して、読み込むとき整合性がとれなかったら不正なデータと見なすとか。
0096名前は開発中のものです。
2008/06/02(月) 15:17:04ID:/RuiniIL0097名前は開発中のものです。
2008/06/02(月) 22:26:22ID:Epu/dM/T重いけどできなくはないよ。
画面を細かく水平方向に区切って、サインカーブに沿ってずらしながら描画する。
そのカーブを時間と共に変えれば、ゆらゆらと揺れる感じが出せる。
GM6以降ならテクスチャやサーフェス使えばいいかな。
0098名前は開発中のものです。
2008/06/03(火) 06:54:11ID:OlF/LjGiできるのかw、流石GMだ…
っていうか、サインカーブ…。テクスチャはまだわかるけど、サーフェスとか
まだ使い始めて間も無いんで、一見しただけではパッとこないが…
とりあえずレスサンクス、97のレスを元に色々やってみるよ。
0099名前は開発中のものです。
2008/06/04(水) 10:49:46ID:JdoODmgp0100名前は開発中のものです。
2008/06/04(水) 11:32:43ID:YZVoGHHf背景画像(あるいはroom背景色の領域)をクリックした時にクリック座標を取得しインスタンスを生成するのが目的です
具体的には画面をクリックした場所に地雷を設置するというゲームを作ってます
今は背景色で塗りつぶした画像を用意しオブジェクトとしてAddEvent>Mouse>LeftButton>Code
という方法でやりたい事は実現はできているのですが上手い方法じゃないと自覚しとります
GM6未レジスト、フォーラムとHelpは読んだつもりですが過去ログは見落としてるかもしれません
0101名前は開発中のものです。
2008/06/04(水) 12:37:58ID:TGP/82mE私が以前作った格ゲーのサンプルを提供してあげたいが、いかんせんPCにネット環境がない……。
格ゲー作るならそれなりに複雑な処理になるから、
ボタンが押される→キャラの状態により攻撃実行
の仕組みを作って、CPUの動作は位置によって複数の連携テーブルから適当なものを選んで行動、とかそんな感じにしなきゃ辛い。
何が言いたいかというと、私は応援してるよ、と(^^;
0102名前は開発中のものです。
2008/06/04(水) 19:59:47ID:JdoODmgpこれかもアドバイス頂けると嬉しいです。
応援ありがとうございます。
0103名前は開発中のものです。
2008/06/04(水) 20:17:36ID:JdoODmgpCPの動きはプレイヤーが近くにいるとパンチするようにしたんですが、そうするとCPが永遠にパンチしてきます。
パンチのランダム性(?)てどうやるんでしょう。あとCPのプレイヤーの位置認識にxyを使ってるんですがそうすると特定の距離の時しかパンチしてきません。
0104名前は開発中のものです。
2008/06/04(水) 21:00:11ID:s7z6oTUxMouse > Global mouse event(GM6以降)
またはcontrolの中にある「If a mouse button is pressed」
>>103
あるアクションをランダムで実行したいなら「With a chance」アクション
(controlにあるサイコロの絵のアイコン)
あと、サンプルに付いてくる1945っていうシューティングを見ると
一定間隔でしか弾を撃てないようにする制御をしているので参考になるかも。
基本的に格闘ゲームは変数を使って「今キャラクタがどんな状態にいるか」
を管理するのが重要になるよ。
後半の質問は意味がよくわからん。自分と相手の距離を計算して
「100より大きくて120より小さい」とか大小判定すればいいと思うんだけど、
そういう話じゃない?
0105名前は開発中のものです。
2008/06/04(水) 23:33:38ID:LluC3sBJ「主人公B」に変身すると、スクロールの対象が失われエラーになるのですが、
どーすればいいのでしょうか?教えて下さい。
{
//
new_view_left = min(max(0, (主人公A.x+10) - view_width[0]/2), room_width - view_width[0]);
view_left[0] += (new_view_left - view_left[0]) / 4;
}
0106名前は開発中のものです。
2008/06/04(水) 23:51:42ID:5xx8K1a20107名前は開発中のものです。
2008/06/04(水) 23:56:56ID:LluC3sBJプログラムとかが分からないので、
(主人公A ? 主人公B.x+10)
?の所に何か書き込めばいいのでしょうか?
or とかandとか入れてみたんですが駄目でした。
0108名前は開発中のものです。
2008/06/05(木) 01:30:34ID:Cu6N54BP主人公Aのプロパティを開いて、「Parent」の欄で今しがたつくった「主人公の素」を選ぶ。
主人公Bも同じようにParentを「主人公の素」に設定する。
さっきの式を「主人公の素.x + 10」に変更。おわり
0109名前は開発中のものです。
2008/06/05(木) 05:40:07ID:SxCz6ZJbありがとうございます!!
エラーが出ず、スクロールできました。
0110名前は開発中のものです。
2008/06/06(金) 00:51:41ID:J8O2ZYG8作りたいと思っていました。
テクスチャの変形が平行四辺形的な
変形になってしまうため、変形率の異なる
三角形二つの組み合わせでは不可能と
思っていたのですが…
力押しでこんなの作ってみました。
キャラや背景その他は適当です。
ttp://www.h6.dion.ne.jp/~m_style/texture_s.zip
キー左右で移動のみです。
映像の繰り返しパターンを1枚のテクスチャで2回設け、
それを台形にしておき、変形する。
移動時は、テクスチャ上の各点を移動させる。
ということです。
0111110
2008/06/06(金) 00:57:58ID:J8O2ZYG8obj_bg_earth01が、地面の部分のオブジェクトです。
0112名前は開発中のものです。
2008/06/06(金) 11:05:29ID:4VD34WHeうぉぉぉぉ……!
せっかくサンプル用意してもらったのに今PCにネット環境がないから見れない……。
……でも凄い嬉しいです。
0113名前は開発中のものです。
2008/06/07(土) 14:55:19ID:5IJUQrYDキャラ素材の作りに感動しました!
3Dっぽいですけど、素材は何で作ってます?
0114名前は開発中のものです。
2008/06/08(日) 13:41:45ID:T6BCIG1yクリックした地点に新しく「オブジェクトA」を作成し、
Step towards pointでその「オブジェクトA」の地点まで「主人公」を移動させる。というゲームを作っているのですが
「主人公」のスプライト(GIF動画)を移動している方向によって変えるにはどうすれば良いでしょうか?
If an expression is trueで「0<=direction<=45」みたいな風にやったのですが
一番最後に書いた方向(315<=direction<=360)のスプライトに固定されてしまい何処に移動しても画像が変わりません。
解りにくい説明ですみませんが、どうかご教授お願いします。
0115名前は開発中のものです。
2008/06/08(日) 14:54:45ID:utQhd3ojでも両方<=だと、たとえばdirectionがちょうど45.0の時に条件がかぶるから
0<=direction && direction<45
の方がいい
0116名前は開発中のものです。
2008/06/08(日) 16:42:58ID:T6BCIG1yありがとうございます。
その様にした所、時々横向きになるのですがやはり画像はほとんど変わりません。
この様な感じに作っているのですが
http://www2.uploda.org/uporg1470436.zip
もしかして根本的な何かを間違えているのでしょうか?
再度質問で申し訳ありませんが、よろしくお願いします。
0117名前は開発中のものです。
2008/06/08(日) 17:50:32ID:eax+1E9yそりゃ0<=direction && direction<=45「ではないとき」なんて書き方をしてたら、
一番最後の【270〜360「ではないとき」】が高確率で反映されるわな。
余談だが、0<=directionって書き方に違和感を感じて仕方が無い。
ま、問題なく動いていればいいのかもしれないけどね。
0118名前は開発中のものです。
2008/06/08(日) 17:55:53ID:eax+1E9yどう頑張ってもボックス自体は外せねぇだろ。
notのチェックボックスのチェックを外す、だ。
0119名前は開発中のものです。
2008/06/08(日) 20:02:45ID:T6BCIG1yウボアァアァァァありがとうございます。気付きませんでしたorz
おかげでちゃんと移動先を向いてくれるようになりました。本当にありがとうございます。
何度も何度も質問ですみませんがgifの1フレーム目から動かないのですが何か設定が必要なのでしょうか?
本当に申し訳ありません。よろしくお願いします。
0120名前は開発中のものです。
2008/06/08(日) 23:36:33ID:NJgDJbX1どうすればいいのでしょうか?
たとえば走りながらジャンプ等
初心者すぎる質問で申し訳ありません
0121名前は開発中のものです。
2008/06/09(月) 00:17:01ID:QzRxZbxDジャンプアクションの要素を羅列してみる。
・空中に居ると下に落ちる
・床の上にキャラが乗れる
・左右にキーを入れると加速する。ダッシュボタンを押すと最大速度が上がる
・床に乗っている状態でジャンプボタンを押すとジャンプする。
とりあえずダッシュしながらジャンプは、ジャンプの際は横のスピードはいじらずに上にだけ速度を加えればいいと思うよ
0122名前は開発中のものです。
2008/06/09(月) 00:42:40ID:ekIBUZL+みるべきところはそこじゃなす
Edgeかなにかで描いたんだろ?
0123名前は開発中のものです。
2008/06/09(月) 15:28:48ID:N/jbPRoy素人の俺が考えて見たサンプルをどうぞ
http://www2.uploda.org/uporg1471552.zip
中身がゴチャゴチャしてスマン。
0124120
2008/06/09(月) 20:00:05ID:2DlmJVHk後>>123のファイルは解凍した後のファイルが読めないのですが
どうしたら読めるようになりますか?
このファイルを読み込むプログラム〜と言われてしまいます
0126名前は開発中のものです。
2008/06/09(月) 20:30:48ID:MbRvBo5s公式のチュートリアル(Platform Gamesってやつね)眺めるだけでも
けっこう参考になると思うんだが、あれも今はGM7用のしか置いてないな
0127名前は開発中のものです。
2008/06/10(火) 02:44:02ID:S3IlP6Mt互換というよりは、古verのものを新verの形式に書き直す、とかだったような気がするけど。
ファイルを直接ダブルクリックとかでは開けられないだろうから、GMから開くとかDrag&Dropとか……。
何にせよ、話が噛み合わないとどうしようもないので、情報は書いておいて欲しいもの。
0128名前は開発中のものです。
2008/06/10(火) 08:16:48ID:WKUtiVJV6から7なら大丈夫だろうけど。
まあ567全部インストールしておけば問題ないんだろうけどね
0129名前は開発中のものです。
2008/06/10(火) 12:07:20ID:1Irexyd70130名前は開発中のものです。
2008/06/10(火) 13:37:08ID:WKUtiVJVBGMやムービーを別々にして配布したいなら、拡張子を変更しつおいて、使う時だけリネームして読み込み、使い終わったら戻すって方法位かなぁ。
別々にしたい訳じゃないけど読み込みに時間かけたくない!ってのなら、6以降限定だが、Global Game SettingのIncludeで本体に含めてから実行時に展開するようにすればいいよ。
0131名前は開発中のものです。
2008/06/10(火) 14:29:23ID:1Irexyd7thx
0132113
2008/06/10(火) 20:08:22ID:6sraZo9Rうーm。。。答えてもらえないか
スレ違いだけど、素材作りにEdge管理で行き詰まり感じてて…
でもどこに質問しにいけばいいか分からなかったので質問させていただきました。
「3D→2D素材化」って流れで作られたものに見えたんで
この行き詰まりから脱せるんではないかって希望を見てしまったんでs
0133名前は開発中のものです。
2008/06/11(水) 16:39:10ID:EVNflJcn0134名前は開発中のものです。
2008/06/11(水) 21:49:55ID:5ZX5tJO/今は大丈夫みたいだが、どう?
0136名前は開発中のものです。
2008/06/12(木) 00:56:25ID:4EAhP+NE0137名前は開発中のものです。
2008/06/12(木) 08:09:28ID:9TqDsi5lダウンロードが?
ダウンロードなら特に何も問題なく出来るはずだが……
0138名前は開発中のものです。
2008/06/12(木) 10:22:01ID:zGKrtRU4yoyoに日本語対応してもらうのだ
0139名前は開発中のものです。
2008/06/13(金) 15:58:32ID:tjeMHdYO0140名前は開発中のものです。
2008/06/13(金) 17:37:16ID:8tjP+W255.3で作られたFPSがあったから、工夫次第では未レジストでも疑似3Dで作れると思う。
海外の作品で、doomとかいうタイトルだったような
ただプレイしてて激しく酔った記憶が……
0141名前は開発中のものです。
2008/06/14(土) 11:38:27ID:4m4S8SwE0142名前は開発中のものです。
2008/06/15(日) 19:59:47ID:n3ZqdSRd0143名前は開発中のものです。
2008/06/18(水) 10:02:15ID:0+3MnSWl未レジスト版ならGM7でもGM6でも大差無いのかな
0144名前は開発中のものです。
2008/06/20(金) 18:49:05ID:Xt39fvZ+レジスト版だけみたい。
未レジストなら基本6と変わらないかも。
それと、6で同じ効果音が重なる場合、うまく再生されないんだけど、これって何が原因かね?
他の効果音ならどんなに重なって鳴っても大丈夫なのに、一つだけうまく鳴らない音があるんだけど……
0145名前は開発中のものです。
2008/06/21(土) 06:42:13ID:j/kRwP45配列の長さ(サイズ)を取得する方法を教えて下さい
ヘルプとフォーラムには目を通したのですが初歩的すぎるのか見つかりません
0146名前は開発中のものです。
2008/06/21(土) 11:32:20ID:NtqmRukWというか、変数を定義した瞬間、特に制限無く配列として使用できてしまうし。
サイズ情報を管理する変数を自分で用意するとかしか思いつかん。非常に面倒だが。
それか、配列として扱う論理的なオブジェクトを作って、インスタンス数を数えるとか、か・・・?
0147名前は開発中のものです。
2008/06/21(土) 12:59:26ID:j/kRwP45残念ではありますが逆にスッキリいたしました
無いと分かれば割り切って強引なコーディングに踏み切れそうです
スマートに書きたいならレジストしてスタックやキューを使えということでしょうかね
勉強もかねてもう少し頑張ってみます
ありがとうございました
0148名前は開発中のものです。
2008/06/21(土) 19:29:15ID:S/Uv8sSkメモリ使用率削減のテクニック教えてもらえないでしょうか?
0149名前は開発中のものです。
2008/06/22(日) 00:34:10ID:3YikmJWj0150名前は開発中のものです。
2008/06/22(日) 09:10:47ID:NRn4PvdD連結された文字列の名前の変数、インデックスを作りたいと
考えております。
str ='var_'
str +='100'
//str='var_100'
//これを変数var_100として使用したい
//例えば
//SPRスプライトをvar_100に割り当てる
//sprite_assign(var_100,spr)
sprite_assign(??????,spr)
この??????が連結された文字列と同じ名前のインデックスになるような
指定をしたい場合、どうすればいいでしょう?
0151名前は開発中のものです。
2008/06/22(日) 10:21:52ID:9BAqCfGFvariable_global_get(name)
variable_local_set(name, val)
variable_local_get(name)
が使えそうですね。たとえばこんな感じで・・・。
/* インスタンス内の変数var_0 〜 var_100 に、0〜100をセットする */
for (i=0;i<=100;i+=1) {
str = 'var_'+string(i);
variable_local_set(str,i);
}
/* 変数var_100で示すスプライトインデックスに、スプライトsprを割り当てる */
sprite_assign(variable_local_get('var_100'), spr);
ただし、sprite_assign()の第一引数は、存在する(存在していた)スプライトインデックスで無いとエラーを起こすんで、注意してください。
0152名前は開発中のものです。
2008/06/24(火) 03:08:54ID:+uYxoItW6.1で縦16横8ピクセルの半角文字を1080字程描画すると、
それだけで20FPSくらいになるんだけど、普通なのかな?
0153名前は開発中のものです。
2008/06/24(火) 04:23:32ID:SW9HLMt81文字1文字スプライトから切り貼りして表示しているんだし・・・。
1080字も一度に書くとかなりの負荷なんじゃないかな。
サーフェスとか画面から見えないところで描画して、
描画したものをスプライト登録してそれを画面表示する、
とかするとよいかもね。この方法はレジスト版でしか出来ないけど。
0154名前は開発中のものです。
2008/06/24(火) 12:28:37ID:+uYxoItWうーん、レジストはしてあるんだけど、肝心の描画したい物がデータリスト的な物で、
ちょこちょこ切り替えるからなぁ。
とりあえず色々試してみます。
ありがとうございましたー
0155名前は開発中のものです。
2008/06/25(水) 21:39:01ID:4PLXCLdLおまいらどこのフリメ使ってる?
0156名前は開発中のものです。
2008/06/26(木) 08:07:08ID:ZUCsxIUu>>155
hotmail。ただし.comで。.co.jpは知らん。
0157名前は開発中のものです。
2008/06/26(木) 21:10:56ID:+fAgrEGQhoge.sprite_index = "spr_" + "piyo";
こんな感じでsprite_indexを変数で指定したいのですが上手くいきません
piyoの部分は100種類ほどあり増減の可能性もあるため逐一条件分岐で書くのは避けたいです
hoge.sprite_index = 4;
と、直接indexを数値で指定するというのも考えたのですが
画像と数値の管理が面倒そうで試してません
何か良い方法ないでしょうか
0158よこしま
2008/06/26(木) 21:27:15ID:ls1Ls4j4ウィンドウモードを切り替えたときに、bGMが親ウィンドウを見失うために終了していたようです。
以下の対策で解決すると思います。
1. bGM_play()スクリプトの下から約14行目をコメントアウトする。
「" -w " + string(window_handle()) + 」
↓
「// " -w " + string(window_handle()) + 」
2. ゲーム終了時には必ずbGM_close()関数を呼び、bGM.exeを確実に終了させる。
0159名前は開発中のものです。
2008/06/26(木) 23:23:46ID:4NwLrBZ+execute_stringが定番だけど遅いのは覚悟すること。
名前とインデックスの対応をmapで管理する方法もある。
最初にmapに入れるところが面倒だけど
(名前に規則性があるならループで回しながらexecute_stringで可)
一度作ってしまえば後のアクセスは速い。
後はスプライト別々にするのをやめて、subimageで分けるようにするとか。
0160名前は開発中のものです。
2008/06/26(木) 23:56:05ID:+fAgrEGQありがとうございます
execute_stringの方法で上手くできました
実行速度に関しては大丈夫そうです
余談ですが実はまだレジストしておりません
この関数ってヘルプ「リソースの変更」の項にあるのに未登録でも使えるのですね
教えて頂かなければ一生気付かなかったかもしれません
0161名前は開発中のものです。
2008/06/26(木) 23:58:49ID:ZUCsxIUu今まで原因がわからなかったから、いっそのことオプション画面用のroomでも作ってそのroomを抜ける時に、ウィンドウモードを切り替えていたらゲームを再スタートさせようかなと思っていました。
それでもbGMがどうなっているのかが不明だったため、この方法を使ってもいいのかと悩んでいて……。
GameEndイベント用のpersistentのオブジェクトを作ろうかと思います。
ありがとうございました。
0162名前は開発中のものです。
2008/06/27(金) 11:46:16ID:aoPSnAYiこれは困った
0163名前は開発中のものです。
2008/06/27(金) 22:07:01ID:IOoyzN5tstringで文字列化してini_write_stringで書き出すと直るよ。
■ このスレッドは過去ログ倉庫に格納されています