ズブの初心者がゲーム作れるまで勉強するスレ
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@お腹いっぱい。
01/11/07 20:26ID:PFtlmWD9ズブの初心者以外お断りです。
なおアドバイス等はプロのかたでも結構です。
初心者は聞く耳を持ちプロもわかりやすく教えてやってください。
0002名無しさん@お腹いっぱい。
01/11/07 20:28ID:???0003名無しさん@お腹いっぱい。
01/11/07 20:28ID:???0004名無しさん@お腹いっぱい。
01/11/07 20:32ID:bEnmjzL70005名無しさん@お腹いっぱい。
01/11/07 20:33ID:???●初心者歓迎 スレを立てる前にここで質問を
http://game.2ch.net/test/read.cgi/gamedev/1005038203/
0006名無しさん@お腹いっぱい。
01/11/07 20:34ID:ClGYxpg6何か初心者にお勧めなソースはありませんか?
0007名無しさん@お腹いっぱい。
01/11/07 20:37ID:3UOikNmf0008名無しさん@お腹いっぱい。
01/11/07 20:41ID:???いきなりわからないことがある。
mesとprintの違いってなに?
0009名無しさん@お腹いっぱい。
01/11/07 20:43ID:mfMymfYHそのコンパイラとは?
それが分からないとソースは探せないよ。
0010名無しさん@お腹いっぱい。
01/11/07 20:45ID:BmDeF3mohttp://pc.2ch.net/test/read.cgi/tech/1004855513/
0011名無しさん@お腹いっぱい。
01/11/07 20:46ID:mfMymfYHHSP?だったら同じらしいよ、2つとも。
でもみんなmes命令を使うしサンプルなんかもprint命令使ってるもの
は見たことないからmesでやってみれば?
0012名無しさん@お腹いっぱい。
01/11/07 20:48ID:???とりあえず、こっちでやってくれんか。な。
http://game.2ch.net/test/read.cgi/gamedev/1005038203/
0014名無しさん@お腹いっぱい。
01/11/07 20:56ID:???自分で削除依頼出すか?それとも俺が出そうか?
0015名無しさん@お腹いっぱい。
01/11/07 20:57ID:???0016名無しさん@お腹いっぱい。
01/11/07 20:58ID:???ほっときゃ下がる。とりあえず>>12のスレをあげろ。
0017名無しさん@お腹いっぱい。
01/11/07 20:58ID:???>>12
0018名無しさん@お腹いっぱい。
01/11/07 21:05ID:???0019名無しさん@お腹いっぱい。
01/11/07 21:07ID:???>>12
0020続く
01/11/07 21:20ID:???screen 0,640,480,16
objsize 200
mes"2ちゃんねるゲーム"
mes"正しいレスを返さないとあぼーんされますよ"
mes"問題"
mes"逝ってよし"
button "オマエモナー", *q1ok
button "(;´Д`)", *gameover
button "(=゚ω゚)ノぃぃょぅ", *gameover
stop
*q1ok
mes" ビクッ ∧ ∧ ∧ ∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄"
mes" Σ(゚Д゚;≡;゚д゚) < 所詮、削除されるまでの命さ"
mes" ./ つ つ \_________________"
mes" 〜(_⌒ヽ ドキドキ "
mes" .ブッ ω)ノ `Jззз"
mes""
mes"嵐じゃないのよ嵐じゃ"
stop
end
0021続き
01/11/07 21:21ID:???mes"/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄"
mes"| 削除以来出てますけど。"
mes"\ "
mes"  ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄"
mes" ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄"
mes" ( ・∀・) ∧ ∧ < こ、これくらいいいじゃねーか。"
mes" ( ⊃ ) (゚Д゚;) \____________"
mes" ̄ ̄ ̄ ̄ ̄ (つ 1つ"
mes" ̄ ̄ ̄日∇ ̄\ | BIBLO |\"
mes"  ̄ ======= \"
mes""
mes"スレは大切にね!!"
stop
0022名無しさん@お腹いっぱい。
01/11/07 21:25ID:???>>4に反応してつくってみました。
とりあえず>>12のQ&Aに貼ると迷惑な気がしてこっちに貼ったけどそれも違うような。
うーん、どうしよう。ソースを貼るスレも趣旨が違うようだし困ったぞ。
0023名無しさん@お腹いっぱい。
01/11/07 21:29ID:???あのー・・・
それ実行したら分かると思うけど"\n"が無いと
全部の行が画面端まで横並びに表示されるよ。
マニュアル読んで出直してきな。
ってかネタか・・・
0024名無しさん@お腹いっぱい。
01/11/07 21:33ID:??????
HSPで動作確認してからUPしてます。
つか確かにマニュアルはしっかり読んでないけど変な動きした?
0025名無しさん@お腹いっぱい。
01/11/07 22:17ID:???0026名無しさん@お腹いっぱい。
01/11/07 22:17ID:???所詮はHSPなんて初心者用の言語。
改行なんて自動でやってくれるんだとさ。
0027名無しさん@お腹いっぱい。
01/11/07 22:24ID:???002823
01/11/07 22:24ID:???あ、そうなんだ・・・thx
厨房言語に憶測レスしたのが間違いだったか・・・
改行も入れずに命令文ズラズラ並べるなんて
微笑ましい光景だね。HSPらしいよ。うん。
0029名無しさん@お腹いっぱい。
01/11/07 22:29ID:???Rubyマンセー
0030名無しさん@お腹いっぱい。
01/11/07 22:31ID:???あなたも昔はやってたクセにぃ?
N88?Hu?
改行したくない時は;つけなきゃ逝けないよ(;´Д`)
0031名無しさん@お腹いっぱい。
01/11/07 22:41ID:???Javaにもprintln()という自動で改行をつけてくれるメソッドがありますので、
Javaもやっぱ、初心者用の言語なんですね。
つか、RubyRubyとうるさい奴が居るので、言うが、
Rubyにもputs()という自動で改行してくれメソッドがありますので、
これまた、Rubyも初心者用の言語なんですね。
0032名無しさん@お腹いっぱい。
01/11/07 22:55ID:???MES"ー十ー十ー十ー"
MES" | | |"
MES"ー十ー十ー十ー"
MES" | | |"
次は3目並べをつくってみます。
0033名無しさん@お腹いっぱい。
01/11/07 22:56ID:???ソースコード上で別行なのに
出力したら繋がってるなんて
(広義の)インターフェースとしてクソ
いちいち"\n"入れないと改行しないなんて
プログラマに負担掛けるだけの非効率仕様
そんなんで「俺は文字列を自在に操っている!」
とかホザいてたら痛すぎ
003432
01/11/07 22:56ID:???ジョイパッドとかに対応させるべきかな。
0035名無しさん@お腹いっぱい。
01/11/07 23:36ID:???pos 100, 100: button "A1", *a1
pos 180, 100: button "A2", *a2
pos 260, 100: button "A3", *a3
pos 100, 180: button "b1", *b1
pos 180, 180: button "b2", *b2
pos 260, 180: button "b3", *b3
pos 100, 260: button "c1", *c1
pos 180, 260: button "c2", *c2
pos 260, 260: button "c3", *c3
line 170, 60, 170, 320
line 250, 60, 250, 320
line 60, 170, 380, 170
line 60, 250, 380, 250
stop
*a1
boxf 60, 60, 170, 170
goto *check
*a2
boxf 170, 60, 250, 170
goto *check
*a3
boxf 250, 60, 380, 170
goto *check
*b1
boxf 60, 170, 170, 250
goto *check
*b2
boxf 170, 170, 250, 250
goto *check
*b3
boxf 250, 170, 380, 250
goto *check
*c1
boxf 60, 250, 170, 380
goto *check
*c2
boxf 170, 250, 250, 380
goto *check
*c3
boxf 250, 250, 380, 380
stop
*check
stop
0036名無しさん@お腹いっぱい。
01/11/08 00:11ID:???;配列変数を覚えた。
;次は勝ち判定をつけようとおもう。
pos 100, 100: button "A1", *a1
pos 180, 100: button "A2", *a2
pos 260, 100: button "A3", *a3
pos 100, 180: button "b1", *b1
pos 180, 180: button "b2", *b2
pos 260, 180: button "b3", *b3
pos 100, 260: button "c1", *c1
pos 180, 260: button "c2", *c2
pos 260, 260: button "c3", *c3
line 170, 60, 170, 320
line 250, 60, 250, 320
line 60, 170, 380, 170
line 60, 250, 380, 250
dim ban,4,4
player=2
goto *check
0037続き
01/11/08 00:11ID:???if ban.1.1>0: goto *pass
ban.1.1=player
boxf 60, 60, 170, 170
goto *check
*a2
if ban.1.2>0: goto *pass
ban.1.2=player
boxf 170, 60, 250, 170
goto *check
*a3
if ban.1.3>0: goto *pass
ban.1.3=player
boxf 250, 60, 380, 170
goto *check
*b1
if ban.2.1>0: goto *pass
ban.2.1=player
boxf 60, 170, 170, 250
goto *check
*b2
if ban.2.2>0: goto *pass
ban.2.2=player
boxf 170, 170, 250, 250
goto *check
*b3
if ban.2.3>0: goto *pass
ban.2.3=player
boxf 250, 170, 380, 250
goto *check
*c1
if ban.3.1>0: goto *pass
ban.3.1=player
boxf 60, 250, 170, 380
goto *check
*c2
if ban.3.2>0: goto *pass
ban.3.2=player
boxf 170, 250, 250, 380
goto *check
*c3
if ban.3.3>0: goto *pass
ban.3.3=player
boxf 250, 250, 380, 380
stop
*check
player=3-player
boxf 100,20, 400, 40
color player*100, player*100, player*100
pos 100, 20: mes"player"+player+"の番です。"
*pass
stop
0038名無しさん@お腹いっぱい。
01/11/08 00:22ID:Qeo8WtK2・マウスの位置
マウスのクリックを監視→システム変数(mousex,mousey)を参照で可能です
・ジョイパッド
プラグインで可能ですよ〜
0039名無しさん@お腹いっぱい。
01/11/08 00:42ID:???ありがとうございますm(__)m
実はボタンぺたぺたでつくってました。
これで見栄え良くできそう。
プラグイン使うとココに貼り付けてるやつだけで動かないんでどうしようか思案中
あ、こんなのコピペでやってくれる人はDLぐらいしてくれるか。
よし!使います。
使い方調べなきゃ(^^;
う、その前に3目並べにジョイパットはやりにくかなぁ。
とりあえず遊べるようにしてから悩もう。
ありがとうございました。
0040名無しさん@お腹いっぱい。
01/11/08 02:58ID:???;すると、あらビックリ!!ひとつ前のよりだいぶすっきりしました。
;見栄えもだいぶ良くなったし、ひとまず完成!!
;HSPをダウンロードして約7時間ほどでした。早っ!!
次はなにつくろうかなぁ。
今日は眠たくなったので寝ます。おやすみなさい。
;3moku2.as
screen 0, 384, 384
*restart
dim ban,3,3
dim col,2,3
cls
line 0, 128, 384, 128
line 0, 256, 384, 256
line 128, 0, 128, 384
line 256, 0, 256, 384
*keywait
getkey k, 1
if k=1: goto *lclick
wait 1
goto *keywait
*lclick
x=mousex/128
y=mousey/128
if ban.x.y > 0: goto *keywait
ban.x.y=player+1
boxf x*128, y*128, x*128+127, y*128+127
repeat 3
if (ban.0.cnt + ban.1.cnt + ban.2.cnt) = ((player+1)*3): goto *win
loop
repeat 3
if (ban.cnt.0 + ban.cnt.1 + ban.cnt.2) = ((player+1)*3): goto *win
loop
if (ban.0.0 + ban.1.1 + ban.2.2) = ((player+1)*3): goto *win
if (ban.0.2 + ban.1.1 + ban.2.0) = ((player+1)*3): goto *win
if (ban.0.0 + ban.1.0 + ban.2.0 + ban.0.1 + ban.1.1 + ban.2.1 + ban.0.2 + ban.1.2 + ban.2.2) = 21: goto *draw
player=3-player
color player*255, 0, 0
goto *keywait
*win
mesa="Player"
mesb=player/3+1
mesc="の勝利です。"
winmes = mesa+mesb+mesc
dialog winmes, 1
goto *restart
*draw
dialog "引き分けです。", 1
goto *restart
004140
01/11/08 03:02ID:???コメントのマーク(;←コレ)つけわすれてる行がある。
あぼーんしておこう。かちゅ〜しゃで。
こんどこそおやすみなさい。
なんかむかつく
0043名無しさん@お腹いっぱい。
01/11/08 06:31ID:???Stringがなければ文字列つかえないようなヤツのこと気にすんなよ。
0044名無しさん@お腹いっぱい。
01/11/08 16:52ID:???;3moku2.as
screen 0, 384, 384
*restart
player=0
dim ban,3,3
dim col,2,3
cls
line 0, 128, 384, 128
line 0, 256, 384, 256
line 128, 0, 128, 384
line 256, 0, 256, 384
*keywait
if player=3: goto *com
getkey k, 1
if k=1: goto *lclick
wait 1
goto *keywait
*lclick
x=mousex/128
y=mousey/128
if ban.x.y > 0: goto *keywait
*setkoma
ban.x.y=player+1
boxf x*128, y*128, x*128+127, y*128+127
repeat 3
if (ban.0.cnt + ban.1.cnt + ban.2.cnt) = ((player+1)*3): goto *win
if (ban.cnt.0 + ban.cnt.1 + ban.cnt.2) = ((player+1)*3): goto *win
loop
if (ban.0.0 + ban.1.1 + ban.2.2) = ((player+1)*3): goto *win
if (ban.0.2 + ban.1.1 + ban.2.0) = ((player+1)*3): goto *win
if (ban.0.0 + ban.1.0 + ban.2.0 + ban.0.1 + ban.1.1 + ban.2.1 + ban.0.2 + ban.1.2 + ban.2.2) = 21: goto *draw
player=3-player
color player*255, 0, 0
goto *keywait
*win
mestemp=player/3+1
winmes = "Player"+mestemp+"の勝利です。"
dialog winmes, 1
goto *restart
*draw
dialog "引き分けです。", 1
goto *restart
*com
rnd x, 3
rnd y, 3
await 1
if ban.x.y > 0: goto *com
goto *setkoma
0045名無しさん@お腹いっぱい。
01/11/09 05:04ID:???;さて、次は連珠つくらなきゃ。
;3moku2.as
screen 0, 384, 384
*restart
player=0
dim ban,3,3
dim col,2,3
cls
line 0, 128, 384, 128
line 0, 256, 384, 256
line 128, 0, 128, 384
line 256, 0, 256, 384
*keywait
if player=3: goto *com
getkey k, 1
if k=1: goto *lclick
wait 1
goto *keywait
*lclick
x=mousex/128
y=mousey/128
if ban.x.y > 0: goto *keywait
*setkoma
ban.x.y=player+1
boxf x*128, y*128, x*128+127, y*128+127
repeat 3
if (ban.0.cnt + ban.1.cnt + ban.2.cnt) = ((player+1)*3): goto *win
if (ban.cnt.0 + ban.cnt.1 + ban.cnt.2) = ((player+1)*3): goto *win
loop
if (ban.0.0 + ban.1.1 + ban.2.2) = ((player+1)*3): goto *win
if (ban.0.2 + ban.1.1 + ban.2.0) = ((player+1)*3): goto *win
if (ban.0.0 + ban.1.0 + ban.2.0 + ban.0.1 + ban.1.1 + ban.2.1 + ban.0.2 + ban.1.2 + ban.2.2) = 21: goto *draw
player=3-player
color player*255, 0, 0
goto *keywait
*win
mestemp= player/3+1
winmes = "Player"+mestemp+"の勝利です。"
dialog winmes, 0
goto *restart
*draw
dialog "引き分けです。", 0
goto *restart
*com
rnd x, 3
rnd y, 3
await 1
if ban.x.y > 0: goto *com
goto *setkoma
0046名無しさん@お腹いっぱい。
01/11/09 10:22ID:???反論できなければ「むかつく」ですか。ははは。
>>43
「cout << "message" << endl;」でも同じ事だろ。
あぁ、でもこの場合endlが\nと同じようなモンか・・・
要するに文字列をどうあつかうかで「高級言語<>厨房言語」とかいってるのが
オサムイねってことよ。
0047名無しさん@お腹いっぱい。
01/11/09 15:37ID:???0048名無しさん@お腹いっぱい。
01/11/14 20:24ID:???HSPってのはできること減らした分で
きちんと開発の早さとか分かりやすさ優位に立ってる。
(外部DLLを使えば大概のことはできそうだが)
欠点増やした分でちゃんと利点を作ってるんだから
厨房言語ってことはないと思われ。
0049名無しさん@お腹いっぱい。
01/11/15 02:26ID:???その厳選された命令がツカエネェって話だと思うが。
特に分岐やループがつかえないし簡単でもない。
0050名無しさん@お腹いっぱい。
01/11/15 19:16ID:N6GHtlAZ言語の善し悪しなんてどうでもいいだろ。
俺だってBASICがなかったら、今の俺は無かったろうさ。
要はモノを作るってことをやり遂げられるかだろ?
その点32は頑張ってると思うぞ。
言語なんてのはその都度覚えていけばいいんだ。
開発環境が変われば言語も変わるんだし。
がんばれ! >>32
0051名無しさん@お腹いっぱい。
01/11/15 19:23ID:???いい事いうねぇ。
言語の良し悪しをどうこういうヤツはメンドクサガリ屋なんだろ。
どんな事柄においてもね・・・。
0052名無しさん@お腹いっぱい。
01/11/15 19:29ID:N6GHtlAZ本職だったしね。(^^;
#エロげーばっかだったが・・・(鬱
0053名無しさん@お腹いっぱい。
01/11/15 20:11ID:rfRVyC2Pメモ帳はなんとか作れましたが、ゲームは良くわからないっす
とりあえずbmpファイルはあるんで、それを画面に表示して動かしてみたいです
0054名無しさん@お腹いっぱい。
01/11/15 21:32ID:RRPopQguImageコンポーネントをフォームにぺたっと貼って、
Pictureプロパティにイメージを読み込んで、
LeftプロパティやTopプロパティを操作します。
005553じゃないよ。
01/11/16 01:22ID:nKarEaJddelphiの事はよくわからんが、イメージはなんとなく分かるな。
デバイスコンテキストにbmp読み込んでクライアント領域に張り付けて
表示座標いじるようなもんか。
0056名無しさん@お腹いっぱい。
01/11/16 01:41ID:ZgDDdgZXhttp://www.amazon.co.jp/exec/obidos/ASIN/4894711303/ref=sr_aps_d_1_1/249-6665820-0500317
こういう本もあります
005753
01/11/16 04:49ID:lU86qPrAぺたっとやったらできました
これをカーソルキーで表示位置を動かせるようにはできますか?
>>56
なるほど、ちなみに厚さはどれくらいですか?
0058名無しさん@お腹いっぱい。
01/11/16 08:22ID:P4w93E0Kコンポーネントのプロパティ凝視すればわかるよ。
top,leftいじってみ。
005953
01/11/16 08:37ID:sMi8XlU9マジすか?
プロパティだけで[→]キー押したら右に動くようにできます?
直感でフォームのイベントのOnKeyDownの所に名前入れてリターン押したらメッセージが出せるようになったんですが
上下左右のキーで画像の表示座標を変えたいんですよ
0060名無しさん@お腹いっぱい。
01/11/16 09:45ID:dc03umabそこからかい(w
OnKeyDown でキーコード(引数key?)拾って、Image1.left++;みたいな。
0061名無しさん@お腹いっぱい。
01/11/16 09:51ID:QGZlYshcこんな感じでどう?
かっこの中にいれるのは「仮想キーコード」でヘルプ探せばすぐでてくる。
procedure TForm1.Timer1Timer(Sender: TObject);
var
speed: integer;
begin
speed:=8;
if GetKeyState( VK_LEFT ) < 0 then image1.Left := image1.Left-speed;
if GetKeyState( VK_RIGHT ) < 0 then image1.Left := image1.Left+speed;
if GetKeyState( VK_UP ) < 0 then image1.top := image1.top-speed;
if GetKeyState( VK_DOWN ) < 0 then image1.top := image1.top+speed;
end;
end.
0062初
01/11/16 17:46ID:???是非受けたいんだすが。
0063名無しさん@お腹いっぱい。
01/11/16 17:50ID:gGtA8+lG0064名無しさん@お腹いっぱい。
01/11/16 17:54ID:???Windowsが起動してからのミリ秒を4294967296で割った余り
0065名無しさん@お腹いっぱい。
01/11/16 18:01ID:???ありがとっす。
ゲームで使うときどんな実装のし方していますか?
それともこれ使うのはマズイ?!
0066名無しさん@お腹いっぱい。
01/11/16 19:16ID:???何らかの処理
t2 = timeGetTime();
t2 - t1 で、この処理に要したミリ秒がわかる
006753
01/11/16 21:52ID:QAvUh6auどうも、お二方
で、入力タイマーを適当にぺたっと貼って
61さんのを実行してみた所、最初一秒ごとにしか進まなかったのです
ので、ターマーのプロパティのIntervalを10にしてみたらスススーと行きました
が、このままだと結構ちらつくんですよね
なんとかしたい金曜日です
0068名無しさん@お腹いっぱい。
01/11/16 21:58ID:???procedure TForm1.FormCreate(Sender: TObject);
begin
form1.DoubleBuffered:=true;
end;
end.
006953
01/11/16 22:02ID:QAvUh6au[エラー] Unit1.pas(38): 未定義の識別子 : 'FormCreate'
ですって・・・
0070名無しさん@お腹いっぱい。
01/11/16 22:04ID:???フォームをダブルクリックする。
↓
form1.DoubleBuffered:=true;と入力。
↓
ウマー
form1ってのはデフォルト名だが変更してればそれに変える。
007153
01/11/16 22:10ID:QAvUh6au成功です!チラつかないです!
画像の透明色はパレット番号で決まるんですか?
あとキャラの画像が↓みたいにつながってるbmpファイルで
この○の部分だけ表示して、○と◎の部分でアニメーションさせる事はできますか?
┌――┐
│○△│
│◎▲│
└――┘
0072名無しさん@お腹いっぱい。
01/11/16 22:24ID:???0073名無しさん@お腹いっぱい。
01/11/16 22:34ID:???そこであらかじめ画像貼り付けとく。
imagelist1.GetBitmap(0, image1.Picture.Bitmap);
で0を1,2,3,4とか変える。
007453
01/11/16 22:45ID:QAvUh6auprocedure TForm1.Timer1Timer(Sender: TObject);
begin
if GetKeyState( VK_LEFT ) < 0 then
begin
imagelist1.GetBitmap(1, image1.Picture.Bitmap);
end;
if GetKeyState( VK_RIGHT ) < 0 then
begin
imagelist1.GetBitmap(3, image1.Picture.Bitmap);
end;
if GetKeyState( VK_UP ) < 0 then
begin
imagelist1.GetBitmap(2, image1.Picture.Bitmap);
end;
if GetKeyState( VK_DOWN ) < 0 then
begin
imagelist1.GetBitmap(0, image1.Picture.Bitmap);
end;
Image1.Refresh;
end;
0075名無しさん@お腹いっぱい。
01/11/16 22:53ID:???0076名無しさん@お腹いっぱい。
01/11/16 22:57ID:???キャラクターのアニメーションはタイマーを別にしたほうがよくないかい?
007753
01/11/16 23:31ID:QAvUh6auタイマー2のIntervalはとりあえず350にしました
で、キャラの移動なんですが、61の方法では失敗しました
var
Form1: TForm1;
ch,key,chtim : Integer;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if GetKeyState( VK_LEFT ) < 0 then key :=1;
if GetKeyState( VK_RIGHT ) < 0 then key :=3;
if GetKeyState( VK_UP ) < 0 then key :=2;
if GetKeyState( VK_DOWN ) < 0 then key :=0;
imagelist1.GetBitmap(ch, image1.Picture.Bitmap);
Image1.Refresh;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
if chtim=8 then chtim:=0
else chtim:=8;
ch := key+chtim;
end;
0078名無しさん@お腹いっぱい。
01/11/17 00:55ID:???0079名無しさん@お腹いっぱい。
01/11/17 01:12ID:???このスレの主旨から言えばなら問題ないと思う。
0080名無しさん@お腹いっぱい。
01/11/17 03:03ID:???失敗ってのはどんな風になった?
008153
01/11/17 03:39ID:s4sRLZboキャラクターがパッと消えました
008253
01/11/17 04:28ID:???ch := key+chtim;
imagelist1.GetBitmap(ch, image1.Picture.Bitmap);
Image1.Refresh;
に修正しました
メインルーチンの位置は基本的にタイマーで良いんですかね?
あと、画像の背景が透過されてるので、画面にゴミが残ります
008453
01/11/17 06:53ID:???ch := key+chtim;
image1.canvas.brush.color:=RGB(128,255,0);
image1.Canvas.FillRect(rect(0,0,image1.width,image1.height));
imagelist1.GetBitmap(ch, image1.Picture.Bitmap);
Image1.Refresh;
0085名無しさん@お腹いっぱい。
01/11/17 21:10ID:???STG?ACT?それともRPGか?
008653
01/11/17 22:02ID:???008753
01/11/18 01:11ID:zl0z4KJcロマサガ1のイメージで
0089名無しさん@お腹いっぱい。
01/11/18 01:34ID:???昔のTVゲームを真似て作るのが良いよ。
0090名無しさん@お腹いっぱい。
01/11/18 01:39ID:???009153
01/11/18 02:01ID:uY6igSYuそうかもしれないです。ただパックマンもロマサガも
・マップを表示させてキャラクターを動かす
・敵キャラとの接触によってイベントを起こす
みたいな基本的な部分は一緒だと思うんですよ
だから今のレベルじゃパックマンも作れないっす
>>90
ドット絵は毎日コツコツ書き溜めてあります・・・
これをなんとか動かして使ってみたいですよ
0092名無しさん@お腹いっぱい。
01/11/18 11:32ID:???0093名無しさん@お腹いっぱい。
01/11/18 13:22ID:???何とまぎれてるの?
ロケットランチャーなのか、それともAS/400とかのアレか…
0094age
01/11/19 01:16ID:???0095名無しさん@お腹いっぱい。
01/11/19 01:30ID:???0096M
01/11/19 01:34ID:???こんなんでよければ公開するよ〜 Cだよ〜
Cは Cmachine が超初心者専用、、現在フリーのBORLANDC++
やVBよりいいって言う人多いDERPHIもコンパイラとしてイケテルよ〜
作成に2時間ほどの宝探しゲームのソース↓ 昔のでしょぼいっス、、
#include<stdio.h>
#include<stdlib.h>
void main(){
int x,y,kawari,ki,rp=0,dora=60,tka,si=1,i,p,h=0,tokuten=0;
int tax[3],tay[3];
x=0;y=0;
0097M
01/11/19 01:35ID:???do{
tax[1]=rand();tay[1]=rand();
tax[0]=(tax[1]+h)%10;tay[0]=(tay[1]*2*h)%10;
}while((x==tax[0])&&(y==tay[0]));
do{
do{
printf("進む方向を決めてくらさい。\n");
printf("1:↑\n");
printf("2:↓\n");
printf("3:←\n");
printf("4:→\n");
scanf("%d",&ki);
rewind(stdin);
switch(ki){
case 1:
kawari=y+1;
break;
case 2:
kawari=y-1;
break;
case 3:
kawari=x-1;
break;
case 4:
kawari=x+1;
break;
}
h++;
if(dora==0) break;
}while((kawari<0)||(kawari>9)||(ki>4)||(ki<1));
if((ki==1)||(ki==2)) y=kawari;
if((ki==3)||(ki==4)) x=kawari;
tax[2]=tax[0]-x;
tay[2]=tay[0]-y;
if(tax[2]<0) tax[2]=tax[2]*(-1);
if(tay[2]<0) tay[2]=tay[2]*(-1);
tka=tax[2]+tay[2];
///////////////////
for(i=10;i>-2;i--){
for(p=-1;p<11;p++){
0098M
01/11/19 01:38ID:???{
case -1:
if((p==-1)||(p==10)){
printf("|");
}else{
printf("_");
}
break;
case 0:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 1:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
0099M
01/11/19 01:39ID:???if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 3:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 4:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
0100M
01/11/19 01:40ID:???if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 6:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 7:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
0101M
01/11/19 01:41ID:???if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 9:
if((p==-1)||(p==10)){
printf("|");
}else{
if((y==i)&&(x==p)){
printf("◎");
}else if((tka==1)&&(tax[0]==p)&&(tay[0]==i)){
printf("宝");
}else{
printf(" ");
}
}
break;
case 10:
if((p==-1)||(p==10)){
printf("|");
}else{
printf(" ̄");
}
break;
}
}
printf("\n");
}
0102M
01/11/19 01:42ID:???printf("現在地(%d,%d)\n",x,y);
if(tka!=0){
printf("タカラ(株)との距離は%dです\n",tka);
dora=dora-1;
printf("のこりのドラヤキは%d個です\n",dora);
}else{
printf("ドザエモンはドラヤキを手に入れた!\n");
dora=dora+5;
rp=1;
tokuten=tokuten+h;
}
if(dora==0) break;
}while(rp==0);
rp=0;
if(dora==0) break;
}while(si==1);
printf("ゲーム叔母ーです\n");
printf("\x1b[34m");
printf(" ___ \n");
printf("ドラヤキ%3d個うめぇ〜 (゚P゚)\n",tokuten);
printf(" 〇| |〇 \n");
printf(" 凸凸 \n");
printf("\x1b[37m");
scanf("%d",&si);
}
0103M
01/11/19 01:45ID:???このソースプラス 、CコンパイラでDOSの宝探しゲームできます。
軽いCMACHINEだかはVECTORにあったかな、、
0104名無しさん@お腹いっぱい。
01/11/19 01:48ID:???ソースを上げるスレッドの方が適当じゃないかな。もう遅いけど。
0105大まかな流れだよ(一例)
01/11/19 02:07ID:???<グラフィックデータ編>
ドット絵は仮絵(かろうじて何の絵か分かるレベル)でOK。
プログラムがある程度形になってから、きちんと描いたやつに
差し替えよう。音楽・効果音も同様です。
<設計編>
実際のプログラミングにとりかかる前に、データ(マップ&イベント配置・
シナリオデータ・モンスター・魔法・アイテムetc)フォーマットは
曖昧にせず、きちんと決めておきましょう。
自機キャラのパラメータ要素はいろんな場面で必要になってくる
ので特に慎重に設計しましょう。
<データ入力編>
モンスター・魔法・アイテムのデータ入力は表計算ソフトを使うと楽です。
それをそのまま使うなり、独自形式にコンバートするなり。
マップ入力はマップエディタを使います。手間を考えると、専用エディタ
の自作をお勧めしますが、しんどければフリーソフトを探しましょう。
RPG用途だから、マップの配置だけでなく、上位何Bitかに自由に
数字を入れられるものがいいです(そこにイベントの配置を割り当てる)。
やっぱりそれをそのまま使うなり、独自形式にコンバートするなり。
<プログラム編>
マップ表示部分を心行くまで作ったら、メニュー処理・戦闘処理・
イベントや会話処理…etc、場面別に一つづつプログラムを組んでは、
マップ表示部分から呼び出せるようにしてあげます。
OPやEDやビジュアルシーンなど、演出を強化する部分は最後に作ります。
予想よりもずっとしんどい作業になると思います。頑張って下さい。
0106名無しさん@お腹いっぱい。
01/11/19 13:47ID:???例えが渋いな・・・
ATMも対戦車ミサイルにしか見えない漏れ・・・
AS400か。去年までRPGでコード書いてたよ(藁
0107名無しさん@お腹いっぱい。
01/11/20 04:31ID:yODdoyPq0108名無しさん@お腹いっぱい。
01/11/20 04:49ID:???ハァ?
テメェがマニュアル読んで出直して来い
0110名無しさん@お腹いっぱい。
01/11/21 20:21ID:???011153
01/11/29 01:52ID:???0112名前は開発中のものです。
01/12/16 15:18ID:0Fpf1AlI0113名前は開発中のものです。
01/12/17 00:28ID:???Mゥ〜?
まさかココのM?
ttp://game.2ch.net/test/read.cgi/gamedev/1005323011/
0114名前は開発中のものです。
02/02/10 14:20ID:???0115名前は開発中のものです。
02/02/13 00:06ID:jlORD8b3%2dを受けつけてくれないのよ
数字を右寄せ表示するにはどしたらいいの?
0116名前は開発中のものです。
02/02/13 03:05ID:???0117名前は開発中のものです。
02/02/13 06:14ID:???もの凄ぇ亀レスだな、俺もだけど
0118名前は開発中のものです。
02/02/13 09:24ID:???cout<<setw(2)<<x;かな?
<iomanip.h>をインクルードしなきゃいけないみたいだけど
インクルードできない
そもそもこんなヘッダ見たことない
0119名前は開発中のものです。
02/03/23 22:24ID:UKJQHvTc糞スレ立てんなヴォケ
0120名前は開発中のものです。
02/03/23 23:07ID:hSR28MHk正しいけどおそすぎるって。
0121名前は開発中のものです。
02/03/28 11:50ID:luhBBlnn0122名前は開発中のものです。
02/03/28 14:44ID:???0123名前は開発中のものです。
02/03/28 15:54ID:luhBBlnn0125名前は開発中のものです。
02/04/23 23:06ID:???0126126
02/05/10 19:45ID:OvKq4PFU今から俺がゲーム作るまで勉強するのでおまえら見ててください。
目標:DirectX使って3Dゲー(迷路みたいの)
使える言語:Basic, Java, C, C++, いずれもちょっとずつ。
まずは、開発環境からだ!
DirectX SDKとBorland C++を落とすよ。
0127126
02/05/10 19:55ID:OvKq4PFUはじめたばっかりで悪いけどダウソしながら飯食ってくるわ。
0128名前は開発中のものです。
02/05/10 20:04ID:???グーグルワラタ
0129126
02/05/10 22:20ID:OvKq4PFUやっぱりHelloWorld系のことをやりたいのだが、まずどこを読むかだな。
MSDNをちょっとさわり読んでみたんだが、わけがわからなかった。簡単なサンプルを
眺めるほうがいいかな・・・
DirectX 8.0 日本語ドキュメントって別に落とさないといけないのかな。
>128
誰もカキコしてくれないかと思った。ありがとう。
0130名前は開発中のものです。
02/05/10 23:37ID:???でももちょっと丁寧に喋ったほうがレスつくと思われ。
0131名前は開発中のものです。
02/05/11 00:16ID:???開発環境そろえてからすれ立ててほしかった。
>>130
同意
>>129
>DirectX 8.0 日本語ドキュメントって別に落とさないといけないのかな。
うん、別。
http://www.microsoft.com/downloads/release.asp?ReleaseID=26072&area=search&ordinal=2
0132126
02/05/11 01:25ID:???スマヌ。もうちょっと丁寧に書いてみます。
>131
激しく同意。話進まないもんね。
なるたけご迷惑はかけないようにヒソーリとするです。
#日本語ヘルプは落とせました
色々検索したりしてせめてコンパイルできる段階には整えてみる。
この辺だろうか。
http://homepage1.nifty.com/mcn/dev/bccgogo/index.htm
0133名前は開発中のものです。
02/05/11 13:38ID:???たま〜に糞レスしといてよかった。
がんばってね> 126
0134名前は開発中のものです。
02/05/12 01:15ID:???俺もずぶの素人だけど、俺の考えをちょっときいてくれ!
キャラクターとかの描画処理のしかたなんだけどさ、こんな感じの構造体はどうだろ?
struct CHARACTER
{
int map_x;
int map_y;
int dis_x;
int dis_y;
int anime_pic;
int anime_max;
float anime_index;
float anime_speed;
int *anime;
int visible;
}
上四つはそのまま、マップ位置と、画面の描画位置ね。
*animeに動的に確保したメモリの先頭アドレスを渡して、
anime_indexが、何コマ目かを保持する。
アニメのコマ数はファイルからanime_maxに読み込んで、
これが確保するメモリの大きさを決定する。
anime_speedはそのままアニメーションのスピード。
1フリップ中、何コマ進むかを指定する。
anime_picは、画像からどの位置を原点にして読み込むかを入れる。
0135126
02/05/12 22:12ID:???u=[3,4,0], v=[1,0,0] とすると、内積の式から
cosθ=(u・v)/(|u||v|)==3/5 になるが、何かおかしいな。明らかに間違えてる気がする。
何か混乱してきたので恥をしのんでレス。もういちど自分でも考え直そう。
0136126
02/05/12 22:18ID:???そんなことも忘れてる…ヤヴァ
つぅか余弦求める式すら失念してました。
首吊ってきます。
0137名前は開発中のものです。
02/05/13 22:54ID:???まず何をしたらいい?
0138名前は開発中のものです。
02/05/13 23:38ID:???0139名前は開発中のものです。
02/05/14 19:52ID:???その間にグラフィックと音楽も勉強する
そしてじっくり構想を練る
名づけて「ゲーム作成5ヶ年計画」
0140126
02/05/14 22:37ID:???>>137
漏れの例ですまないが、1年くらい勉強すれば「あれが目指す頂上だ」というのは見える、気がする。
しかし、山はすさまじく高く、目指す頂上ははるかにかすむ雲の上なことに気づく。
見えた途端気力が萎え5年くらい挫折。今に至る。
0141名前は開発中のものです。
02/05/18 23:24ID:Giz/a7t60142名前は開発中のものです。
02/05/18 23:42ID:???0143名前は開発中のものです。
02/05/19 00:55ID:rJhBZc8kどう?進んでる? 140のカキコ禿堂だよ
今やってるって事はdirectX8だよね?以前に比べて簡単?
俺directX5時代にD3Dの初期化で挫折したけど最近やる気が出てきたからさ・・・
0144名前は開発中のものです。
02/05/19 05:13ID:???プ
0145名前は開発中のものです。
02/05/19 05:24ID:rJhBZc8kだって意味わかんねーんだもん
0146名前は開発中のものです。
02/05/19 13:01ID:???検索しる。又はM$のサンプルでも眺めててください。
http://google.yahoo.co.jp/bin/query?p=Direct3d+%bd%e9%b4%fc%b2%bd+%c6%fe%cc%e7&hc=0&hs=0
0147名前は開発中のものです。
02/05/19 20:56ID:PKjSaSw.いつになったらゲつくれるようになるのやらな。
0148
02/05/19 20:58ID:bVrEC/Ksなにをしていいのかわかりません
最初に何やったらいいですか?
0149名前は開発中のものです。
02/05/19 21:05ID:???0150名前は開発中のものです。
02/05/19 21:08ID:14D6m/7Mどんなゲームを作りたいかのイメージを作るのが大事だと思う。。。
それから、
1.C覚えて(リアルタイム処理のゲーム作るなら
C++は使わないほうがいいと思うな。。。)
2.WindowsのAPI覚えて(本屋で売ってるWindowsプログラミング入門見たいな本で
MFC覚えると、後で大変な事になりますw)
3.DX8覚える。
暇な人なら1年もあればケッコー形にはなると思いますよ。
0151
02/05/19 21:11ID:bVrEC/Ksぅぅっ仕事があるので土日ぐらいしか暇が(以下略
信長の野望みたいなゲームが作って見たいです
0152名前は開発中のものです。
02/05/19 23:27ID:???>リアルタイム処理のゲーム作るならC++は使わないほうがいいと思うな
なして?
0153名前は開発中のものです。
02/05/20 02:11ID:???0154名前は開発中のものです。
02/05/20 03:35ID:???MFCを覚えるのに費やした時間の大部分は無駄になるけど
1 Doc-View(MVC)の考え方
2 悪い設計と実装
3 便利なソケットクラス
4 基本的なUIの設計
が分かるようになるぞ。
0155126
02/05/20 08:44ID:iujKHjG6ビデオカード買ったんだけど、ここ一週間ゲームばっかりやっててしまいました。
一応プログラマの目で見ながらやってるつもりなんだけど…
初期化は簡単でしたーよ。少なくともMSの真似してる限りは。
そろそろ再開しよう。物体をユーザが好き勝手に回すのって実は大変なのかな。
クォータニオンってナンだろう。
>>154
俺はscribbleを何回いじくってもわけがわからなかったのでMFCは半挫折しました。
MFCの正体がもっと早くわかっていればなあと思う。
「SDKに代わる画期的な」とかの煽りを信じ込んでたし(その時2chがあれば…)
今見るとわかる。APIが顔出すんだよね。SetWindowLongとか。
0157通りすがりのズブの初心者
02/06/04 22:36ID:A11NeAUw選択式シュミレーション(ノベル?)ゲームって、
どうやって作るのですか?
フリーソフトで、そういうの作れるやつあるんですか?
本気で初心者なのですが、大まかにで良いのでどなたか教えて下さい。
0158通りすがりのズブの初心者
02/06/04 22:45ID:???これでも出来るのですね。
自分で調べることもせず書き込んでしまい、本当に申し訳ありませんでした。
0159名前は開発中のものです。
02/06/04 23:30ID:???0160名前は開発中のものです。
02/06/04 23:31ID:???NScripter、吉里吉里、コミックメーカー、DNML etc...
0161名前は開発中のものです。
02/06/04 23:58ID:YimKkdU.http://www.intel.co.jp/jp/developer/design/litcentr/index.htm
親切すぎてスマソ>all
0162名前は開発中のものです。
02/06/05 00:04ID:???0163161
02/06/05 00:06ID:???0164名前は開発中のものです。
02/08/17 20:45ID:E+5tyHaPただメモ帳ぐらいしか形になったものができません。
これからゲームの方も作っていきたいと思ってます。
で、マリオみたいなゲームから作ろうかと思うんですが、
あのジャンプってどうやって作ればいいんでしょうか?
Imageで画像貼り付けて、ボタン押したらその画像を山なりに動かすヤツです。
サパーリわかりません。誰かご享受頂けないですか?
0165名前は開発中のものです。
02/08/17 21:07ID:dTYDhk5thttp://jbbs.shitaraba.com/computer/bbs/read.cgi?BBS=2784&KEY=1029503890&LAST=100
0166名前は開発中のものです。
02/08/18 01:11ID:???表示はImageList、ボタンはGetAsyncKeyState
山なりにしたきゃ移動する量を増減しとけ
面倒なら糞っぽくsinカーブだ
重力加速度 ゲーム でGoogleで検索したらそれらしいのでるじゃねーかよヴォケ
0167名前は開発中のものです。
02/08/18 16:54ID:pXa4T0r0cをかじってvisualc++5を昔買ったんですけど、ソフト自体使いこなせませんでした。
ちょっとづつちょっとづつ作りたいんですけど、どうしよう?
0168名前は開発中のものです。
02/08/18 17:23ID:???JB Personalでも落としてきなさい
0169マジレスしちゃった
02/08/18 23:13ID:???ゲーム製作初心者なら……
とりあえず最初に、ジャンプもスクロールも無い、
迷路で動き回るゲームを作るべし。
プレイヤーの動きの処理とか、壁の有無の処理とか、
作ってから考えたほうがいーぞ。
いきなりマリオじゃ、崩れるって。
0170名前は開発中のものです。
02/08/19 17:28ID:???0171名前は開発中のものです。
02/08/20 12:31ID:Ndzqs1xoいや、数当てゲームから作るべきだろ。
ズブの素人には迷路ゲームすら敷居が高い。
0172名前は開発中のものです。
02/08/20 16:41ID:???同意
まずは数当てゲームで、ループと条件判断を理解するのが先。
0173名前は開発中のものです。
02/08/20 22:17ID:???0174名前は開発中のものです。
02/08/22 14:59ID:4xp7IqpGいいんでしょう。パレットが使えるならそのカラーテーブルを除算して
いくだけで済むんですがねぇ。
試しに元画面のピクセル輝度値を一個一個除算して別バッファに保存、
ちゅー 640*480回の割り算やってみたらスゲェ遅くて使い物になりませんですた。
0175名前は開発中のものです。
02/08/22 15:10ID:???まぁ〜100万回近くも計算してたらそら重かろう
0176名前は開発中のものです。
02/08/22 15:36ID:???0177名前は開発中のものです。
02/08/22 19:04ID:H4cbyZTAプログラム初心者に「これをやれ」とかいうのってなんかダメな気がする。
力量に応じたものを作れってことは分かるんだけど、
初心者の時って自分の力量を自分で理解して、
できる範囲内でできうるものでかつ、何か自分だけのアイデアだしてやるほうが
次へとつながる力になると思うんだけど。(やってみると範囲を少し越えてたというのもいい)
0178名前は開発中のものです。
02/08/22 23:36ID:???0179164
02/08/23 10:18ID:???まずは熟読&ソース写す辺りから始めることにします
0180けん
02/08/23 15:58ID:dh8dR5UR言語はVBしか分からないのですが・・
上に書いてあるとおり数当てゲームから作ったほうがいいですかね?
0181名前は開発中のものです。
02/08/23 16:05ID:???その上どういったゲームを作りたいのか分からないとなんともいえないけど…。
0182けん
02/08/23 16:07ID:dh8dR5URゲームを作りたいのではなくて、あくまでもスキルアップしたいということで・・・
0183名前は開発中のものです。
02/08/23 16:15ID:???とりあえずヒット&ブローなんてどう?
計算機が用意した数字を人が当てるところまで作れば基礎はできるよ。
0184けん
02/08/23 16:24ID:dh8dR5URこの様なゲームでしょうか?
0185名前は開発中のものです。
02/08/23 16:28ID:???0186けん
02/08/23 16:34ID:dh8dR5UR0187名前は開発中のものです。
02/08/23 16:40ID:???一通り完成したら、次は自分が興味が持てた部分を拡張してごらん。
プレイヤーが当てるということ自体に興味をもてたら
履歴やグラフといったヒント表示に凝って手書きのメモを要らなくする。
あるいは計算機に簡単な思考ルーチンを搭載して対戦できるようにする。
(実は賢くするのはなかなか難しいが…。)
インターフェイスを工夫してみる。
当てる数字の桁を可変にして難易度調整ができるようにする。
飽きるまで拡張を繰り返せばそれなりに遊べるものができるよ。
0188けん
02/08/23 17:11ID:dh8dR5UR0189名前は開発中のものです。
02/08/23 17:13ID:???つまり、入力を「数字」として受け取ろうとした場合は
ちょっとだけ工夫が必要ということです。
0190名前は開発中のものです。
02/08/23 17:17ID:???オリジナルのヒット&ブローでは、
正解の数字は、「同じ数字が2回出現しない」ことになっています。
0216、9156、1234などの数字は普通に答えになりますが、
2052(2が2回出現している)、4655(5が2回出現している)は
答えにはならないということです。
もちろんオリジナルのルールなので変更しても構いません。
また、プレイヤーが入力する数字をどこまで許すかはプログラマ次第です。
0191けん
02/08/23 17:21ID:dh8dR5UR>2052(2が2回出現している)、4655(5が2回出現している)は
のところにはまったく気づきませんでした
改めてがんばってきます
0192けん
02/08/23 19:33ID:dh8dR5URhttp://ken-japan.gotdns.com/hb.exe
0193名前は開発中のものです。
02/08/23 20:06ID:???どうだった? 簡単だった?
拡張したい? それとも他の分野をやりたい?
0194けん
02/08/23 20:42ID:dh8dR5URほかの分野にしたいです
0195名前は開発中のものです。
02/08/23 20:51ID:???0196名前は開発中のものです。
02/08/23 20:52ID:???ん〜、じゃあ次はグラフィックの使い方ということで
神経衰弱なんてどう?
あ、そうそう、やるんだったら個人的に私から一つ注文つけさせて。
「カードを整然と並べないこと」。
他の子の作ったものを見てるとカードが整然と並んでて気持ち悪くて…。
バラバラに並べる方法はお任せします。
私だったらバラバラになるように場所を決め打ちしてしまうか、
乱数を使ってバラバラに置くものを作りますが…。
0197ano//
02/08/23 20:56ID:8yLgJfYwAPIだけでプログラムしようとしたら余計に大変なことになるような・・
あまり賢い人のとる方法とは思えません。
C++でMFC使わないとVC++使ってる意味が全くありませんよ。
0198名前は開発中のものです。
02/08/23 20:59ID:???0199けん
02/08/23 21:05ID:dh8dR5UR安全です
>>196
神経衰弱ですかーがんばります
>>198
ここに直接載せていいんですかね?
でもVBですしソース汚くてはずかしいんです
0200名前は開発中のものです。
02/08/23 21:06ID:???0201名前は開発中のものです。
02/08/23 21:07ID:???http://game.2ch.net/test/read.cgi/gamedev/1005038280/
0202けん
02/08/23 21:22ID:dh8dR5URに上げました、めちゃくちゃなソースですが勘弁してください
0203名前は開発中のものです。
02/08/23 21:26ID:???http://forgamedev.zombie.jp/uploader/up1/
0204名前は開発中のものです。
02/08/23 21:28ID:???Windowsプログラミングを覚えず即DirectX覚えてもらうつもりなのでは?
Windowsプログラミングしないつもりなら必ずしもMFC覚える必要ないよ。
#そういうのはBCB使ってます。
DX8使うためにVC++使うのもありだと思います。
#両方買うと高つくけどね・・・
0205名前は開発中のものです。
02/08/26 09:55ID:???0206名前は開発中のものです。
02/09/29 14:02ID:???やね氏とかのDirectXライブラリで取りあえず形にするのも1つの手?
0207アキヒト ◆rs645sLqh2
02/11/03 03:56ID:???SDKのほうがむずいんですよね・・・
なんで画像ひとつ表示するのにあんなにすること多いんだとか
http://www.kumei.ne.jp/c_lang/
猫見てるがいまいちわからん・・・もう年か。
ライブラリ使うと本当に簡単に作れるんだが
どうなんだろうなぁ
0208名前は開発中のものです。
02/11/18 17:05ID:???0209名前は開発中のものです。
02/11/27 01:57ID:93eDrZze0210名前は開発中のものです。
02/11/27 02:03ID:CYDP0b9U□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□
0211名前は開発中のものです。
02/11/27 02:59ID:/ggb77khゲームプログラムの力を上げている時は逆にMFCの勉強に時間をとられるよりも
実際にゲームのコードを書きまくったほうがいいと思う
プロを目指しているんだったらもちろん不要
とはいえMFCの作りとかプログラマとしては勉強になるわな
>>207
猫とかみて自分でライブラリをつくっていっては?
理解できたとこはもちろん理解不十分でも
実際に動かしてみると意外と簡単だったりする
SDKはただ記述する量が多いだけで実際はお約束の塊だからね
>猫見てるがいまいちわからん・・・もう年か。
自分はある程度年逝ってからプログラムはじめたから気持ちわかる…
若いうちにやっとけばもっと楽だったのになーとか(藁
0212名前は開発中のものです。
02/11/27 04:41ID:YNe506i4□□□■■□□□□□■□□□□□□□■■■■■■■■■■■■□□
□□■■□□□□□■■■■■■□□□□□□□□□□□□□■■□□
□■■□□■□□□■□□□□■□□□□□□□□□□□□■■□□□
□□■□■■□□■■■□□■■□□□□□□□□□□□■■□□□□
□□□■■□□■■□■■■■□□□□□□□□□□□■■□□□□□
□□■■□□□□□□□■■□□□□□□□□□□□■■□□□□□□
□□■□□□■□□□■■■■□□□□□□□□□□■□□□□□□□
□■■■■■■□□■■□□■■□□□□□□□□□■□□□□□□□
□□□□■□□□■■□□□□■■□□□□□□□□■□□□□□□□
□□■□■□■□□□□■■□□□□□□□□□□□■□□□□□□□
□□■□■□■□□□□□■■□□□□□□□□□□■□□□□□□□
□■■□■□■□□□□□□□□□□□□□□□□□■□□□□□□□
□■□□■□□□□■■■□□□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□■■■□□□□□□□□□□■□□□□□□□
□□□□■□□□□□□□□■■□□□□□□■■■■□□□□□□□
0213名前は開発中のものです。
02/11/27 05:33ID:hCN74peAアクションゲームを作りたいのですが、
詰まったところを質問してもいいでしょうか?
0214名前は開発中のものです。
02/11/27 06:12ID:/PCAVEfp0215213
02/11/27 07:18ID:hCN74peAでは。
http://forgamedev.zombie.jp/uploader/up1/img/061.txt
http://forgamedev.zombie.jp/uploader/up1/img/062.txt
HyoujiHaikeiという関数ですが、061のように3つに分けると
正常に動くのですが、062のように一つにまとめると動きません。
違うところは引数しかないはずなのですが、なぜでしょうか?
あと、↑キーを押すとキャラをジャンプさせるようにもしたいのですが
これも動かないので、よかったらそちらもよろしくお願いします。
0216名前は開発中のものです。
02/11/27 08:29ID:xVsrJAk0/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
/ このスレは無事に /
/ 終了いたしました /
/ ありがとうございました /
/ /
/ モララーより /
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
∧_∧ / /∧_∧
( ・∀・) / /(・∀・ )
( )つ ⊂( )
| | | | | |
(__)_) (_(__)
0217独り言
02/11/27 19:03ID:PKAmZtFr気分転換にHSPとかでゲーム作ってみよっと
0218名前は開発中のものです。
02/11/27 19:19ID:vufY8nV5λ...... λ......
λ...... λ......
λ...... λ......
λ...... λ......
λ......
λ...... λ...... λ...... このスレ、終了だって カエロッカ…
0219独り言
02/11/28 11:29ID:DPm/T1UL0220名前は開発中のものです。
02/11/28 16:18ID:fMiowBwq( l _、_
\ \ ( <_,` )
ヽ___ ̄ ̄ ) GOOD END!!
/ /
0221名前は開発中のものです。
02/12/05 22:07ID:36pDm152こちら(1P)の視点に合わせてドット絵の向きを切り替えるには
どうすればいいのん?
0222名前は開発中のものです。
02/12/05 23:14ID:8ZIjJMW9ラジアンでもなんでも。
んで、そいつを用意した向きのパターンで割ったので割る(ヤヤコシ…)
前後左右の絵があればラジアンなら90で割る、と。
0223名前は開発中のものです。
02/12/06 00:56ID:JdMbn7h40224名前は開発中のものです。
02/12/06 02:01ID:EUKMicrJ□□□□■□□□□□□□□□■□□□□□□□□□□□□□□□■□□
□□□□■□□□□□□□□□■□□□□□□□□□■□□□□□■□□
□□■■■■■■□■□□■■■■□■■■■□□□■□□□□□■□□
□□□□■□□□□□■□□□■□■□□□□■□□■□□□□□■□□
□□□□■□□□□□□□□□■■□□□□□□■□■□□□□□■□□
□□□■■■■■■□□□□■■□□□□□□□■□■□■□□□■□□
□□■□■□□□□■□□□■■□□□□□□□■□■■□□□□■□□
□■□□■□□□□□■□■□■□□□□□□■□□□□□□□□■□□
□■□□■□□□□□■□■□■□□□□□□■□□□□□□□□■□□
□■□□■□□□□□■□□□■□□□□□■□□□□□□□□■□□□
□□■■□□□■■■□□□□■□□□■■□□□□□□■■■□□□□
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
/) (\
| |∧| | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/∂ФДФ) < 長らくのご声援ありやとやんした!!!!
||||||||||||||| 雷|||||___ \_________
※※※| V |____テ
※※\ |==/
※※\〇| |
※※(___)__)
0225名前は開発中のものです。
02/12/06 12:29ID:ZRXXstsW/) (\
| |∧| | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/∂ФДФ) < 長らくのご声援ありやとやんした!!!!
||||||||||||||| 雷|||||___ \_________
※※※| V |____テ
※※\ |==/
※※\〇| |
※※(___)__)
↑こいつかっこいい
0226222
02/12/07 01:57ID:Do1LLX5jあれ…なんだっけ…
とにかく一週が360度のやつ…スマソ(´Д`;)
0227名前は開発中のものです。
02/12/10 11:11ID:gBlzGrOn/ ヽ / ヽ
______ /U ヽ___/ ヽ
| ____ / U :::::::::::U:\
| | /○ ○ ::::::::::::::|
| | このスレ | ├──┤ U :::::::::::::| オワッチャッタ・・・
| | 終了い..|U | | ::::::U::::|
| | ありがと ..| └―┘ U.....:::::::::::::::::::/
| |____ ヽ .....:::::::::::::::::::::::<
└___/ ̄ ̄ :::::::::::::::::::::::::|
|\ | :::::::::::::::::::::::|
\ \ \___ :::::: 〜 終 了 〜
0228名前は開発中のものです。
02/12/11 08:29ID:4B0/2BCo0229名前は開発中のものです。
02/12/11 09:10ID:j69l7STj〜未だかつてこれほどまでに感動的な
最終レスがあっただろうか?〜
★このスレッドを読んだ人達の声★
「何気なく開いたこのスレッドとの出会いから、
新しい自分の可能性を信じようと思った。」(27歳、フリーター、女)
「感動した!勇気が湧いてきた!人生観が変わった!
自分にも何かやれそうな気がした!」(24歳、会社員、男)
「落ち込んでる時にこのスレッドを見つけ、
期待しないで読んだが、読んで涙が出た。」(21歳、学生、女)
これほどまでにみなさんに愛されてきたこのスレッドですが、
残念ながら、このレスで終了となってしまいました。
でも悲しまないでください。
このスレッドはいつまでも
あなたの心の中で生き続けているのですから…
0230名前は開発中のものです。
03/05/12 23:49ID:XewRwL3b0231名前は開発中のものです。
03/11/26 07:12ID:Yw4jxn/j0232名前は開発中のものです。
04/01/10 11:09ID:ENNgku1J0233名前は開発中のものです。
04/01/21 16:32ID:BODtSELpiアプリでシューティングゲーム作ってるのですが、
自キャラが24*24で敵が12*12の場合、
どういうルーチンになるのでしょうか?
自キャラ、x,y
敵キャラ、ex、ey
の変数です。
0234名前は開発中のものです。
04/01/21 19:24ID:Lni3+kqz大きさのデータを持つのが良いと思います。
javaわかんないのでCでかきますが、
int sxj=8; /* 自機x幅の半分 */
int syj=8; /* 自機y幅の半分 */
int sxe=6; /* 敵x幅の半分 */
int sye=6; /* 敵y幅の半分 */
if ( (x+sxj)>=(ex-sxe) && (x-sxj)<=(ex+sxe) && (y+syj)>=(ey-sye) && (x-syj)<=(ex+sye) )
{
/* あたり処理 */
}
とか。
円同士の判定にしたりなど方法は色々あります。
がんばれー。
0235名前は開発中のものです。
04/01/23 07:42ID:918ymA03>if ( (x+sxj)>=(ex-sxe) && (x-sxj)<=(ex+sxe) && (y+syj)>=(ey-sye) && (x-syj)<=(ex+sye) )
これどういうこと?
思った通りに動かないですが……
0236名前は開発中のものです。
04/01/23 11:56ID:1U2cSSBw左辺より右辺が大きく、下底より上底が大きければ接触。
矩形の四辺の位置関係を調べてるだけ。
式は検証してないけど。
というか、自分がどういう判定をとりたいか頭の中で解析すれ。
四角同士なんて人に聞かなくても図にかいて考えれば解るでしょ。
小学生くらいならしょうがないけどさ。
と徹夜明けで眠いのなか逆切れしてみました。
まじで考える力を身につけてください。
0237名前は開発中のものです。
04/01/23 12:27ID:918ymA03一番最後の
>(x-syj)<=(ex+sye)
この条件の意味は何?
0238名前は開発中のものです。
04/01/23 13:40ID:1U2cSSBwというか、図でかいて考えてみてくれ。
何と何を比較して、どの条件がそろったときに接触となるかを考えてコーディングしてくれって。
if ( (x+sxj)>=(ex-sxe) && (x-sxj)<=(ex+sxe) && (y+syj)>=(ey-sye) && (y-syj)<=(ey+sye) )
{
]
正しくはこう。
0239名前は開発中のものです。
04/01/23 19:32ID:CDrIG5aE嘘教えておいてその態度は何だ!
しかも最後は}だろ!細かい事だろと言うなら構わんが
0240名前は開発中のものです。
04/01/24 00:00ID:V6anYAvYでも、考えれば分かることだと思うんだが。
間違ってかいたのはすまなかったけど、この程度の極当たり前に
使われている判定くらい考えれないとゲームなんぞ作れないと思うが。
一番簡単で原始的なあたり判定だぞ。
0241名前は開発中のものです。
04/01/24 00:21ID:oMHA4IKY0242凡_寸 ◆eU3/hitQL2
04/01/24 00:34ID:81eJaH2cというのは俺は左上の座標そのままで持つことが多いから。
すぐ相互に変換できるのだが、この例見てたらやっぱり中心で持っておいた方が自然な気がしてきた。
0243名前は開発中のものです。
04/01/24 00:40ID:AZKTxeHm0244名前は開発中のものです。
04/01/24 15:43ID:V6anYAvY判定用のオフセットを配列で数個もって、一つの判定だと不自然になる場合のフォロー。
とか。
0245名前は開発中のものです。
04/01/25 02:21ID:p1I3qhx40246名前は開発中のものです。
04/01/25 16:56ID:Muw0/s4A0247名前は開発中のものです。
04/01/27 16:49ID:RmwZgkGj炎や水しぶきなどのパーティクルのやり方がよくわからないんですが
どのようにしたらいいんでしょうか?
0248名前は開発中のものです。
04/01/27 17:22ID:zjWcizaPパーティクル以外、ビルボードやモデルは表示できる?
0249名前は開発中のものです。
04/01/27 18:08ID:RmwZgkGj本当に初心者なもんで…
ビルボードやモデルというのがわかりません…
0250名前は開発中のものです。
04/01/27 19:56ID:zjWcizaPみたいな感じですな。
DirectX 講座 とかで検索して基本的なところからしっかりやった方が良いと思います。
水や炎はフェイクにせよシミュレートにせよ難易度が高いと思うので、
まずは用語や基礎からドウゾー。
0251名前は開発中のものです。
04/01/27 21:11ID:7x9u9V4uマップ(BG)スクロールとか敵出現ってどうやったらいいんですか?
0252名前は開発中のものです。
04/01/27 22:15ID:SRn/E90g0253名前は開発中のものです。
04/01/27 22:21ID:RmwZgkGj勉強しなおしてきます
ご指導ありがとうございました!!
0254名前は開発中のものです。
04/01/27 22:35ID:3NcSPmrW「ゲーム ビットマップ スクロール」とかでぐぐってみな。
0255名前は開発中のものです。
04/01/28 08:05ID:Q/c0Z8xcWINAPIは必要?
0256名前は開発中のものです。
04/01/28 17:32ID:f43Jmpgo0257名前は開発中のものです。
04/01/28 18:26ID:Q/c0Z8xc開発環境……は?
言語はわかるの?
もしかしてグラフィクスやサウンドなどのリソースを使うのにWINAPIを使うということ?
相当の知識があれば問題ないけど、1からってならやめておいたほうがいいと思うよ。
グラフィクスを描画するにも、簡単じゃないし。
実行環境と好みの問題があるけど、まさにズブの初心者ならJAVAで試しにやってみるといい。
イメージを描画するのも、
IMAGE img = g.getImage("image.gif");
g.drawImage(img, x, y);
こんな感じで出来たはず…。
画像の知識とかハードウェアの知識とかないなら、こっちは激しく簡単でイイと思うよ。
サウンドもこんな感じで出来た気がするし。
実行環境の問題で速度とか満足できないけど、1から学んで作るってのならこっちのほうが早く作れていいんでないかな?
0258名前は開発中のものです。
04/01/28 19:06ID:cUUxla/0DirectXよりは簡単ではないかと思うのだがどうか
0259名前は開発中のものです。
04/01/28 19:48ID:/PK3qi7Gそうですか・・・。
ちなみに開発環境はBorland C/C++をBccDevで使ってます。
知識は生半可なんで・・・そうですね、javaも考えてみます。
>>258
DirectXの場合はEL.hを使うなどの手段があるのでそれほど困難ではないと思われます。。
0260名前は開発中のものです。
04/01/28 20:07ID:PqofyoTN0261名前は開発中のものです。
04/01/28 20:17ID:f43Jmpgo0262名前は開発中のものです。
04/01/28 22:44ID:AEsTA2RV3DやるんでなければDirectXは不要だよ。
BCBなら、Win32APIで通常のWindowsアプリとして作ればよい。
DirectXではなくDIBやDIBSectionを中心とした描画システムでも十分ゲームは作れるし、そうやって作った経験はDirectXでも役に立つ(というか、先にDIBベースでウインドウやメモリ上のピクセルの操作に習熟しておくと、DirectXで作るのもぐんと楽になる)。
0263名前は開発中のものです。
04/01/28 23:49ID:NHMF/MaT0264名前は開発中のものです。
04/01/30 03:20ID:skb3rLGpその場その場で適当に作るせいですごくごちゃごちゃしちゃうんだよ。
こういう場合はなにを勉強したらいいのかな。
0265名前は開発中のものです。
04/01/30 05:01ID:CxoCD6l+0266名前は開発中のものです。
04/01/30 15:52ID:JB9gE/bP0267名前は開発中のものです。
04/01/30 22:36ID:6yC1pPDZ「メモ」のとり方。
0268名前は開発中のものです。
04/01/31 01:04ID:O4JnobK+SE関係の設計の本
0269名前は開発中のものです。
04/01/31 19:05ID:ClGldXhi当方ISDNですが、DirectXSDKは気合で落としてます。
0270名前は開発中のものです。
04/02/01 12:58ID:kirDs/YS0271名前は開発中のものです。
04/02/01 13:09ID:WSmyTBhx工夫しる。
ネットカフェは使えない?
学生さんなら学校のPCは?
本は高くとも、例えば雑誌のおまけなんかは?
友人にブロードバンド回線を使っている人はいない?
試してないことは一つも残ってない?
0272名前は開発中のものです。
04/02/01 14:04ID:kirDs/YS0273名前は開発中のものです。
04/02/01 14:09ID:BE2pVZMt0274名前は開発中のものです。
04/02/01 14:22ID:kirDs/YS0275名前は開発中のものです。
04/02/01 14:46ID:G99NjoUS友人はシロートばかりって・・・。
蒸し返すようで悪いけど、DirectXの方がいいと思うけどね。
お金も環境もないなら厳しいのは確かだけど。
28時間とでても、ダウンロードソフトが使えるなら落とした方がいい。
0276名前は開発中のものです。
04/02/01 14:55ID:PRhnZ1t4文句いってりゃ誰かが解決してくれるという基本姿勢の奴に
物作りは無理だよ。
自分の判断の正しさを声高に主張して、それで作業が進むのか?
与えられた材料の中で工夫するしかない。
0277名前は開発中のものです。
04/02/01 14:58ID:kirDs/YS0278sayuki
04/02/01 15:05ID:taN65qucyahooメッセの「話す押しっぱしなしツール」とゆうものをインストールして以来
ゲームをすると効果音(wave)かBGM(synthesizer)どちらかひとつしか音が
鳴らなくなってしまいました(アセ
ゲームするだけなら音なしでもいいと思うんですが、
作っているので音の確認が出来なくて困ってます。
誰か分かる人がいたら教えていただけると助かります(>_<)
0279名前は開発中のものです。
04/02/01 15:06ID:kirDs/YS0280名前は開発中のものです。
04/02/01 15:37ID:PRhnZ1t4全部読んでるけどね。
自分が自分のためにやりたいんでしょ。
他人がわざわざしてくれたアドバイスに食ってかかってどうなるっていうの?
という意味だったんだが。
どうも君のセリフは他人の為にやってあげてる人のセリフに聞こえるんだが。
0281名前は開発中のものです。
04/02/01 17:10ID:PGuD5iiAあなたは国語力が欠如している。
私は始めから「DirectXが使えないのでWin32APIでがんばる」といっていたはず。
それに「作業が進むのか」だって?
あなたは私の作業をみてたんですか。
どんだけ進まなかったのか言ってごらんなさいよ。
>>272についても、私はWin32APIを使って作業するということを前提に、
DirectXの使えない理由を説明していたんですよ。終わった話を穿り返すなってね。
文章を見ればわかりますよね。それがダダをこねて何もしないでいることに
なるんですか。Win32APIで作業しちゃいけないんですか。
それでもあなたは私がなにもしないでグダグダいっていると言うわけだ。
ずいぶんとおかしなことを平気で言うんですね。
0282(-_-)さん
04/02/01 17:13ID:dZRW0Ddv0283名前は開発中のものです。
04/02/01 17:16ID:kirDs/YS0284名前は開発中のものです。
04/02/01 17:27ID:V4PIb0xKお前は文盲か?
どう考えてもお前が悪いだろ
>>あなたは私の作業をみてたんですか。
>>どんだけ進まなかったのか言ってごらんなさいよ。
ん?お前ID:kirDs/YSなのか?。携帯からごくろうさん(ゲラ
>>なるんですか。Win32APIで作業しちゃいけないんですか。
>>それでもあなたは私がなにもしないでグダグダいっていると言うわけだ。
280は32APIで作業するなとか言ってないだろ?どこをどう捉えたらこうなるんだ?
さらに280は御丁寧に「他人がわざわざしてくれたアドバイスに食ってかかってどうなるっていうの?」
って言ってんだろ?そろそろ自分のウンコを肥料代わりに顔に塗ったらどうだ?
人に物教わる態度じゃないよ、
0285名前は開発中のものです。
04/02/01 17:35ID:BE2pVZMt高校生ならツクールにしとけば?
君が成人する頃にはだいぶこの世界変わってるから、今マジにやらんでも多分いいよん
0286名前は開発中のものです。
04/02/01 17:44ID:I0fBvvjS0287名前は開発中のものです。
04/02/01 17:52ID:H3pCkE83C++より簡単っしょ
0288名前は開発中のものです。
04/02/01 22:07ID:38LSgSLD避難所の旧シューティングスレにも定期的に現れてたし(同一人物じゃないだろうけど)。
というか、何時も思うんだけど、みんななんでそんな電波君を親切にも相手するの?
スルーしとけって。
0289名前は開発中のものです。
04/02/02 20:47ID:qCykuM3Xターン制RPG作るのって何が必要ですか?
チョコボの不思議なダンジョン2のようなのを作りたいです。
まじめに作りたいんでマジレスお願いします。
できる言語はHSPちょっとだけと、Cは勉強中です。
どんな言語覚えればいいか、でもいいんでアドバイスよろ
0290名前は開発中のものです。
04/02/02 20:57ID:2+6Y3MVD言語はオブジェクト系なら何でも良いと思うぞ。
ターン性RPGなら、どっちかというと、
どんな流れで何をどうするのか?という設計の方が大変だと思うが。
0291名前は開発中のものです。
04/02/02 21:32ID:WcP70SUwポインタと引数戻り値が絡んでくると訳分からんくなる。
この辺ってそんなに重要?
0292名前は開発中のものです。
04/02/02 21:55ID:cPLiu5erつまりコンピュータがなんたるか、まぁコンパイラが何やってるか理解してないってことでしょ。
0293289
04/02/02 23:39ID:qCykuM3XとりあえずC覚えてやってみます。
0294名無し募集中。。。
04/02/03 00:09ID:plKD59at0295名前は開発中のものです。
04/02/03 00:11ID:9+QBC3/qグローバル変数使いまくって、関数なんて作らずにgoto使って
とにかく描画関係だけに注力したらいいんじゃないの、とか思ったんだけど
それじゃCとか使う意味ないよな。
0296オレー
04/02/03 00:20ID:lqBJLK7tVC最強だろ!!!!??他のしらねーけど!
慣れれば何でも作れるぞ!!ガンバレよヴォゲ!
0297名無し募集中。。。
04/02/03 00:38ID:ZZoWZizL0298オレー
04/02/03 00:45ID:lqBJLK7tツール作る以外、ほとんど無いんじゃね?
VCがいいのは、MFCとかじゃなくて一般的に使われているからだ!
なんか他の環境だと悩み多そうだからな!
0299名前は開発中のものです。
04/02/03 00:50ID:WodIwMqVSDKってやつを使わないといけないのだろうか。
0300オレー
04/02/03 00:58ID:lqBJLK7tそう考えていいだろうな!
Cだけってどこまでかシラネーけど、システムにふつーについてるAPI使っても絵かけるぞ。
でもグラボの3D機能使ったり、高速に描画したいならばDirectX使うしかねーよ!
0301名前は開発中のものです。
04/02/03 01:50ID:lYaC3Zey難しいのでなくてややこしいのです。
紙と鉛筆でコンピューターのやる処理を真似っ子してみてください。
脳味噌が最適化され理解がすすみます。
0302名無し募集中。。。
04/02/03 02:29ID:QGiQp3Rb0303名前は開発中のものです。
04/02/03 02:43ID:ELowTiDo設計が悪いんだろう。
>>295の裏返しだけど、
そこを関数で整理するのが利点かと。(vcじゃなくてc全般の話だけど)
0304名前は開発中のものです。
04/02/03 05:30ID:fdd6paxLhttp://www1.neweb.ne.jp/wa/yamdas/column/technique/21-daysj.html
10年というのは専門家のレベルにたどり着くまでの数字だろうけど。
まあなんだ、一般論としてだが、あまり慌てないほうがいいと思うYO
今分からないことでも、数ヶ月後に改めて考え直してみれば簡単だったりするから。
(人間の記憶というものがそういう風になってるらしい)
所詮この道はイバラの道、王道も銀の弾丸もないと思うよろ。
0305名無し募集中。。。
04/02/03 06:15ID:7JKJyNuW0306名前は開発中のものです。
04/02/03 07:35ID:7mBO3EkB0307名前は開発中のものです。
04/02/03 07:47ID:aRx0nIHF俺は使わんけど、DirectXインスコするとVCのAppWizardにDirectX用の奴ができるでしょ。
激しく要らんけど、もしかしたらズブには役に立つものだったかもしれないという記憶があるようなないような
0308名前は開発中のものです。
04/02/03 19:54ID:qRytbDYniアプリとかもあるし
3DだってGL4JAVAとかJAVA3Dもあるし
必要になったらC++に移行すればいいべ
0309名前は開発中のものです。
04/02/03 20:06ID:9LHEny520310オレー
04/02/03 20:31ID:VYXMEMW7第一、記述量大杉とかって、オマエラはゲーム製作をなめてるな。
0311名前は開発中のものです。
04/02/03 22:50ID:N+CejGtjすごいよお前。
0312オレー
04/02/03 23:30ID:VYXMEMW7理解力とかより、膨大な作業をしつこくやる能力が大事なのだ!!ってことでがんばろーぜ
0313名前は開発中のものです。
04/02/04 08:26ID:zjy0Z+qF0314ネレー
04/02/04 20:09ID:HzAYdwYd0315オレー
04/02/04 20:51ID:fS3mIMsY0316名前は開発中のものです。
04/02/04 21:11ID:4hJy9BbGサンプルってどこで手に入るの?
0317オレー
04/02/04 21:37ID:fS3mIMsYSDKに付いてるだろ。結構いいぞ。
0318名前は開発中のものです。
04/02/04 23:06ID:XfT3Ux5K0319名前は開発中のものです。
04/02/04 23:21ID:dSDQ2Dxn1桁目 = 3桁の数 % 10
2桁目 = (3桁の数 / 10) % 10
0320名前は開発中のものです。
04/02/04 23:36ID:8ShUWIq1これを使った何をしたいかが謎
0321(・∀・)デキタヨー
04/02/06 01:03ID:gzRDLAVC#include "iostream.h"
#include "stdlib.h"
#include "time.h"
class kazuate
{
private:
int number[3] ;
public:
kazuate(){srand((unsigned) time(NULL)) ;};
~kazuate(){} ;
run() ;
};
int kazuate::run()
{
int iGetnumber, iHit, iBlow, iPlaytimes ;
kazuate answer ;
answer.number[0] = rand() % 10 ;
answer.number[1] = rand() % 10 ;
answer.number[2] = rand() % 10 ;
kazuate input ;
iPlaytimes = 1 ;
0322(・∀・)デキタヨー
04/02/06 01:03ID:gzRDLAVC{
iHit = 0 ; iBlow = 0 ;
cout << iPlaytimes << "回目ですよ"<< endl ;
cout << "3桁の数字をいれてくらはい"<< endl ;
cin >> iGetnumber ;
if(iGetnumber >=1000){cout<<"3桁じゃなきゃ駄目!。終了"<<endl ;return 0 ;}
input.number[0] = iGetnumber % 10 ;
input.number[1] = (iGetnumber / 10) % 10 ;
input.number[2] = (iGetnumber / 100) % 10 ;
for(int i = 0; i <= 2; i++)
{
if(answer.number[i] == input.number[i]){iHit++ ;}
}
for (i = 0 ; i <= 2 ; i++) {
for (int j = 0 ; j <= 2 ; j++) {
if (i != j && answer.number[i] == input.number[j]) {iBlow++ ;}
}
}
if(iHit >=3){cout << "正解" << endl ;return 0 ;}
cout << iHit <<"ヒット "<< iBlow << "ブロー"<< endl ;
iPlaytimes++ ;
}
return 0 ;
}
int main()
{
kazuate kazu ;
kazu.run() ;
return 0 ;
}
0323(・∀・)デキタヨー
04/02/06 01:08ID:gzRDLAVC0324名前は開発中のものです。
04/02/06 12:10ID:LNUfAAFk0325名前は開発中のものです。
04/02/06 18:44ID:FVcGO3fsウインド1つ出すだけでもたくさん書かないといけないし難解です
C言語でごく単純なゲームをつくりながら詳しくプログラムを解説してるお勧めサイトがありましたら教えてください
0326(・∀・)デキタヨー
04/02/06 20:05ID:gzRDLAVC(´・ω・`)ダメデシカ?
0327名前は開発中のものです。
04/02/06 22:19ID:G2d1LxCf0328名前は開発中のものです。
04/02/06 23:15ID:+xrJVE3l発想が逆だよ。
ウインドウを出すだけでじゃなくて、ウインドウを出すのが一番大変なの。
だけど、初心者はコンソールアプリいやがるから、しょうがなくC言語の本とかで最初の方に出てくる。
あんなもんみたらズブの初心者は面食らうに決まってるさ。
でも理解しなくていいんだよ、丸暗記で十分なのです。めんどくさいのはそこだけです。
0329名前は開発中のものです。
04/02/06 23:37ID:lIMux0XN0330名前は開発中のものです。
04/02/06 23:51ID:mMIlunZaC言語でもライブラリを使えば簡単にウインドウが出る
他言語でもライブラリぐらい使ってるんだから(外野の声など)気にするな
言語習得のためなら個人的にはエミュレータをターゲットに
ゲームボーイプログラミングをするのがお勧め
お勧めのサイトや書籍を聞く場合は自分の実力や開発環境ぐらい書け
目ぼしいのは↓ここからリンクされてる
http://pc2.2ch.net/test/read.cgi/gamedev/1005060553/
0331名前は開発中のものです。
04/02/06 23:55ID:FVcGO3fs初心者の私には丸暗記も無理っぽいのでコピペで済ましてしまいそうです
半端じゃなく設定が細かいのでプログラム全体の流れが掴みにくいです
メイン関数内はウインドウの設定するところで
ウインドウプロシージャはゲーム動かすための条件分岐とかを書き込む所と思っていいのでしょうか?
0332名前は開発中のものです。
04/02/06 23:57ID:HdQ5e5TBとりあえずデルヒをダウンロードしてインストールした。
フォームにボタンつけた。
実行してみた。
動かない。
なぜ?
0333名前は開発中のものです。
04/02/07 00:14ID:zFTP1vLo今はc言語に関して全くの素人で0からc言語学習したいと思っいます
ゲームといってもc言語の知識がまったくないのですごくシンプルでなゲーム
(テンキーで自機動かしてスペースでミサイル発射、敵に一回命中すればゲームオーバーなどの単純なゲーム)
のプログラムを参考にしたいです
開発ではなくVisual C++ .NETでc言語に少し慣れたいと思ってます
0334名前は開発中のものです。
04/02/07 09:07ID:v/xUHw+o>(テンキーで自機動かしてスペースでミサイル発射、敵に一回命中すればゲームオーバーなどの単純なゲーム)
こんなかんじのやつか?
http://www.sm.rim.or.jp/~shishido/act.html
0335名前は開発中のものです。
04/02/07 14:18ID:K1FCp2hBどうやって作るんですか?
0336名前は開発中のものです。
04/02/07 14:25ID:r/NTeXJu0337(めдめ*)
04/02/07 15:07ID:21YEQZs/お花のマークを描く関数を作りたいんですが、なにぶん数学が苦手なもので、
サインとかコサインとかもさっぱり分かりませんん。
どなたか作ってはいただけないでしょうか。
花びらの枚数は5枚で、SetPixelで・・・と、思ってるんですが・・・。VC++です。
0338名前は開発中のものです。
04/02/07 15:08ID:1EMOZBJihttp://hyohyohyo.cool.ne.jp/mmo/
http://www.station-entrance.com/rpg/
0339(めдめ*)
04/02/07 15:19ID:21YEQZs/あっ、すみません、クレクレではなくて、
どうやって作るのか、ヒントだけでも、教えていただきたいのでした。
0340名前は開発中のものです。
04/02/07 15:30ID:xFHMm5Bm普通は絵を表示するのにSetPixelなんて使わないよ。
0341(めдめ*)
04/02/07 15:55ID:21YEQZs/えっ、そうなんですか?
すみません、最近始めたので、一般常識とか分からなくて・・・
そのAPI関数って、円やパックマンみたいな図形を描くやつですよね。
それらは講座で見て知ってたんですけど、花を描くアルゴリズム?の方が分からないんです。
板違いですかね・・・一応ゲームで使おうと思ってるんですが・・・
0342名前は開発中のものです。
04/02/07 15:57ID:xFHMm5Bm丸に半円がついた(テストにつけるはなまるみたいな)やつから写真まで。
0343名前は開発中のものです。
04/02/07 15:58ID:xFHMm5Bm○花って
0344(めдめ*)
04/02/07 16:06ID:21YEQZs/すみません、言葉足らずでした。
えーと、簡単に言うと、MSペイントだけで描けるような、
五角形に、正確におさまる感じの・・・
なんて言えばいいんだろう、フォントのサイズを最大にして、アスタリスクを表示すると、
お花に見えますよね・・ああいう感じで、花びら5枚にしたいんです。
説明下手で、ホントすみません・・・
0345名前は開発中のものです。
04/02/07 16:41ID:Wy3YunFGWINDOWS API とかなんとかいうやつムズすぎ・・
天才でもない俺が、んなもんできるか!!
0346名前は開発中のものです。
04/02/07 16:58ID:KBP4gfT20347名前は開発中のものです。
04/02/07 17:02ID:xFHMm5Bmそれは、円と直線では書けないの?
0348(めдめ*)
04/02/07 17:21ID:21YEQZs/1番上となる花びらは描けるんですけど(多分)、
残りの4枚の座標を、どうやってだしたらいいのか、分からないんです。
基となる図形の、五角形すら描けないんですよね・・・プログラムではなくて、紙とペン、定規で。
で、まず、中心となる(X,Y)から、それぞれ5点に向かった線だけ描こうと思うんですが、
それにはどういった計算が必要なんでしょうか・・・?
0349名前は開発中のものです。
04/02/07 17:57ID:Q6oiyPpR花びらの部分って正葉曲線が使えないか?
0350(めдめ*)
04/02/07 18:08ID:21YEQZs/正葉曲線って初めて聞いたんですけど、ググってみたら結構ヒットしますね。
確かにこっちの方が、最初に考えていた花の形に近いです。
VBでソース公開しておられる方もおられるみたいなので、ちょっとこちらで勉強してみますね。
ありがとうございます!
0351(めдめ*)
04/02/07 19:03ID:21YEQZs/sinやcosなど出てきて、理屈はイマイチ分かってないかもですけど、
とりあえず表示は出来てしまったので、(本当は良くないだろうけど)良しとします。
また暇なときにでも数学を勉強して、ちゃんと理解したいと思います。
xFHMm5Bmさん、>>349さん、どうもありがとうございました!
0352名前は開発中のものです。
04/02/07 19:07ID:BCMAqWn3そんな感じのゲームです
ソース見てみましたが全然わかりません
難しいです
0353名前は開発中のものです。
04/02/07 22:43ID:rPXWL6/Hこれでウインドウを作ることができたけど、
これからどこをいじっていけばゲームとか作れるのか分からん
0354名前は開発中のものです。
04/02/07 22:48ID:xFHMm5Bm0355名前は開発中のものです。
04/02/08 00:05ID:V4CrTBaC2,3年前挫折したツールが一番使いやすかったかもって思って探してみたんですが
なかなか見つからないんです
0356名前は開発中のものです。
04/02/08 02:17ID:AfH9OrsOウソです.。どうか教えてください_| ̄|○このとーり
0357333
04/02/08 04:38ID:CoCrlWqN0358名前は開発中のものです。
04/02/08 07:49ID:fe0e/CMI最初は本が手元にあったほうがよいよ。
プログラミングWindowsとあとはごく基本的なゲームプログラミングの本。
0359名前は開発中のものです。
04/02/08 09:50ID:i+ctVYKxなんかウインドウ表示とかのサンプルをコンパイルできないんですが・・・
なんで?
0360名前は開発中のものです。
04/02/08 10:37ID:l8LpgmAm「イベント」って何ですか?
上記検索してもいっぱいヒットしすぎてわからないです。
0361名前は開発中のものです。
04/02/08 10:45ID:d5V45uuZ0362名無しさんは14才
04/02/08 13:36ID:jDa33yn9GarageBandがなんかすごく簡単でいいらしいって聞いた。
そんなに高くないし、お小遣いためて買おうかなぁ。
0363356
04/02/08 16:28ID:HcNW0j0y0364名前は開発中のものです。
04/02/08 21:13ID:b0eOsysj何だ。さっくり教えてくれるのかと思ったのに。
0365名前は開発中のものです。
04/02/08 21:25ID:id/HrN2s0366名前は開発中のものです。
04/02/08 21:35ID:b0eOsysj会議の。中途でゲ会社に入ったんですけど。
話が見えない・・・。
0367名前は開発中のものです。
04/02/08 22:27ID:id/HrN2s噛む練習をするのが良いと思うなぁ。
いつまでも離乳食はつらいっしょ。
0368名前は開発中のものです。
04/02/08 22:28ID:PbkZSuYJ0369名無しさんは14才
04/02/08 22:45ID:jDa33yn9さっくりって言われても……ごめんね。マジあんまり知らないんだ。
誰もがレコポ使ってた頃はこういうの悩まなかったんだけどね。
0370333
04/02/08 23:06ID:i0uC/ppXインターネット上の資料でなんとかしたいんです
0371名前は開発中のものです。
04/02/08 23:22ID:HUImdgWv<いいサイト>の評価基準を述べよ
ゲームで釣りつつ適当な解説でお茶を濁すようなものは
書籍ぐらいでしか見当たらないよ
あとは猫とか
0372名前は開発中のものです。
04/02/08 23:50ID:i0uC/ppXウインドウにキャラクターのビットマップを表示させて
テンキーで上下左右に動かすみたいなシンプルで飾り気のない単純なプログラム
を使って、解説してるようなサイトなんですけど
見つかるまでは猫を参考にして学ぼうと思います
0373名前は開発中のものです。
04/02/09 00:04ID:tCmgrn6pそうでつか。ありがとうございました。
恥をしのんで会社の人に聞いてみまつ。
0374333
04/02/09 03:38ID:dgv0YHUGここのソースをビルドしたらエラーが出て実行できませんでした
このサイトも参考にできないのかな…
0375名前は開発中のものです。
04/02/09 03:45ID:BBUziY6Jどこで質問をするにもそれくらいは書かないと流されると思うが。
0376333
04/02/09 05:11ID:dgv0YHUGこの行に myProg.hbrBackground =GetStockObject(WHITE_BRUSH);
: error C2440: '=' : 'HGDIOBJ' から 'HBRUSH' に変換できません。
'void*' から非 'void' 型への変換には明示的なキャストが必要です。
ってエラーがつきました
0377オレー
04/02/09 05:14ID:LbK50eNj明示的なキャストしてみたらどうだ?
myProg.hbrBackground =(HBRUSH)GetStockObject(WHITE_BRUSH);
とか
0378名前は開発中のものです。
04/02/09 05:19ID:dgv0YHUGありがとうございます
ちゃんと実行できるようになりました
0379名前は開発中のものです。
04/02/09 05:28ID:Yiz201vx私はパソコン暦1年目で、ワードやエクセルもわからない人ですが、、、
がんばって、マスターしていきたいと思ってます。
それと質問ですが、Cはソフトウェアが必要なのでしょうか?
昨日Cの存在を知った未熟者です・・・レス待ってます^-^
0380名前は開発中のものです。
04/02/09 06:57ID:yluYWkbM本
新訂 新C言語入門 ビギナー編
著 林晴比古
サイト
ttp://www.kumei.ne.jp/c_lang/
>Cはソフトウェアが必要なのでしょうか?
必要です。
プログラムソースから実行ファイル(exe)を生成するのに
”コンパイラ”というソフトが必要。
市販コンパイラなら
Visual C++.net
タダなら
Borland Compailer
がオススメ。
大変かもしれないけど頑張って。
0381名前は開発中のものです。
04/02/09 10:11ID:HbdSiSGGとりあえず一時間くらい本屋にこもれ。
0382名前は開発中のものです。
04/02/09 10:13ID:HbdSiSGGってマルチか。帰れ。
0383名前は開発中のものです。
04/02/09 11:44ID:Yiz201vx0384383
04/02/09 15:32ID:PM9gYJwgあなたには聞いていません^-^
0385356
04/02/09 15:49ID:PAej/ELB音楽製作のイイフリーソフトは探しても見つからないもんだな・・・
素材HPから直接強奪しかないのかな。
0386356
04/02/09 16:02ID:PAej/ELBttp://www.frieve.com/musicstd/
Music Studio Producer フリーソフトウェア
msp111.exe Version 1.11 正式版(7.62MB)
今から使ってみよ
0387名前は開発中のものです。
04/02/09 18:44ID:3mvRD+VMVC++6.0の解説サイトなら腐るほど見つかるんだけど…
0388名前は開発中のものです。
04/02/09 20:56ID:OX8rMmrZ使えるフリーソフトスレ@DTM板 まとめぺーじ
http://www.geocities.co.jp/Hollywood-Cinema/8681/index.html
http://members.at.infoseek.co.jp/mysong2001/index.htm
でも正直、(俺みたいな音楽)ずぶの素人が使えるものはなかったよ
プログラムと同じく王道なしだろうな
音楽ほしいだけなら、素直に著作権フリーのBGMをありがたく使わせてもらうか、
音楽好きの知り合いにおながいするのが早い
0389382
04/02/09 21:16ID:r5i6CdtX釣師に釣られる覚悟で。
電気回線を挟めど人と人との基本的なマナーも守れない。
一人で充分に言語の習得は出来ないにも関わらずだ。
そんな調子でプログラム言語とうまく付き合えるのかね?
0390383
04/02/10 06:49ID:GUZ5KeqK0391モース ◆v6o3ST9mLM
04/02/10 12:14ID:b4IHCPLK0392名前は開発中のものです。
04/02/10 13:16ID:N6fMBtpqID変わってるし名前欄をわざわざ入れてるのは・・・ですね。
(マルチは・・・少ないに越したことはないですが
0393名前は開発中のものです。
04/02/10 15:31ID:/8y/3PIiばれたか。
0394333
04/02/11 02:46ID:APap8/zEhttp://rina.jpn.ph/~rance/directx/index.html
ここのサイトはすごくわかりやすいみたいです
0395名前は開発中のものです。
04/02/11 19:00ID:iiIkz8B80396名前は開発中のものです。
04/02/11 21:13ID:znEGNYAhこれって無謀かなぁ・・・
0397名前は開発中のものです。
04/02/14 21:43ID:tiSnmUSv0398名前は開発中のものです。
04/02/14 21:46ID:t8Nnp+oI2点間の角度って何?
0399名前は開発中のものです。
04/02/14 22:11ID:lHPHsGsSある点から二点をそれぞれ結んだ2本の線分の角度って事だろ。
座標分かってんだから内積使っとけ。
0400397
04/02/15 02:06ID:Y3Owx8fK内積をどう使うのですか?
数学苦手なもので…
0401名前は開発中のものです。
04/02/15 02:14ID:QkNG5rO+vector B
A・B = |A||B|cosθ
ココからcosθを求めて使え。
0402名前は開発中のものです。
04/02/15 08:22ID:4nf88IsWかな?自信ない
0403名前は開発中のものです。
04/02/15 08:23ID:4nf88IsW0404397
04/02/16 02:38ID:nRcHbn7iなんとかやってみます。
0405名無しさんは14才
04/02/16 23:04ID:Y32yY4fFおすすめだけしておしまいっていうのもアレなのでGarageBand買っちゃいました。
ほんとは自分が欲しかったんですけど♪
……ああ、でもこれで当分おやつ抜きだわ。
0406名無しさんは14才
04/02/17 01:05ID:3jAAI9V7簡単です。値段から考えたらかなりお買い得だと思う。
Midiで吐けないのがちょっと難かな。用途次第だけど、Midi欲しいよねえ。
値段考えると文句言えない気もするけど。
打ち込みはあんまり得意そうじゃないので、主旋律入力にはマイクがいるみたい。
楽器って言っても、鼻歌でいいっぽいけど。
ウチにあったマイクは電池切れで試せませんでした。残念。
以下、わが家の会話。
「ね、ね、どう? わたしの曲。一時間で作ったの♪」
「……終わり方だけはそれっぽいわね」
「そう?そうかな?じゃあ、これ2ちゃんにアップしようかしら」
「叩かれて鬱になるわよ」
……わたしに音楽の才能はなさそうです。ってゆうか、そんなにはっきり言わなくてもさー。
0407名前は開発中のものです。
04/02/17 03:25ID:HI+t4Vsaワラタ。
2chに理解のある家族なんか(・∀・)イイ!!ね
数を積み重ねりゃそのうちいいのできるさ。
がんばれー
0408名前は開発中のものです。
04/02/17 10:34ID:hqb34U7d使用言語java
GUI:CPad for Java2 SDK
コンぐらいしかわかんねぇ、それでもヒソヒソ教えてくれる人居ますか?
当方、Cちょっと理解可能、javaはほとんどわからん
オブジェクト指向っぽく作りたいです
0409名無しさんは14才
04/02/17 23:28ID:3jAAI9V7わたしも今日こそはもう少しバカにされないものを……!
0410名前は開発中のものです。
04/02/18 03:03ID:uuFEIAL20411名前は開発中のものです。
04/02/18 13:25ID:YDmkdr/c0412名前は開発中のものです。
04/02/18 22:31ID:su9YvBQ+>>397
アークタンジェントでは?
Cなら math.hに入ってる atan又はatan2
シューティングの追尾弾とかでよく使うます(・ω・)
0413名前は開発中のものです。
04/02/18 22:52ID:Zr4t4JERそれは、x,yの2次元座標じゃないの?
二点間って事は、片方の座標をoffsetで原点扱いにでもする?
つーか、3次元でも使える内積が無難でしょ。
0415名前は開発中のものです。
04/02/20 17:03ID:qnhxR2WO0416名前は開発中のものです。
04/02/21 18:34ID:xUxW4pvaデジトキに登録して、自称(詐称)すればいっちょあがり
0417名前は開発中のものです。
04/02/21 23:11ID:XiRsPFUiすでに三流だから安心しろ。
0418397
04/02/22 04:18ID:hRI1ig6Xよくわからんけど、もう一度やってみます。
0419名前は開発中のものです。
04/02/22 21:44ID:fz/BpWBqif文100個ぐらいに分岐しそうで怖いんですが普通こういうのは
どうすればいいんでしょうか?
関数へのポインタ使ってやればいいのかとも思ったりしたけど、結局
100個も関数へのポインタに入れてやる方法しか思いつかないしなあ・・・。
0420名前は開発中のものです。
04/02/22 22:03ID:sRJhcXYBWIN API
やって
その次DirectSDK
やればいいんですか?
0421名前は開発中のものです。
04/02/22 22:27ID:kwjkiYoP0422名前は開発中のものです。
04/02/23 00:53ID:VMGjuvjoマクロやBOTを作るにあたって参考になるサイトなどありませんか?
もし有益なアドバイスなど頂けたら、形としてお礼をします
0423名前は開発中のものです。
04/02/23 12:40ID:CndOTp3o話はそれからだ
0424名前は開発中のものです。
04/02/23 15:29ID:tx5Vu6A00425名前は開発中のものです。
04/02/24 00:27ID:egxTU+So│\|/ \ 三||
│ / _______| ....... _|| ガラッ
│| /../ __ ___ | 二||
│ | / ./ \/ || ||
│ ( 6----| > ||< ||.... ドラエも〜ん!||
│ .| \_/ ).__/.| ジャイアンが ||
│ | ________) スネ夫が ..||
│ ..\ .. / ...ノノ__ ||
│/ ̄ ̄\  ̄ ̄ ̄/... . ̄ ̄ ̄ ̄ ̄ ̄ ̄||
│  ̄ ̄ ̄ ..... 三||
│ ... ... ||
____
/∵∴∵∴\
/∵/∴∵\∵\ . .. \|
/∵<・>∴∴.<・>∵| . . / ̄ ̄ ̄
|∵∵/ ●\∵∵| . /
|∵ /三 | 三|∵ | |
|∵ |\_|_/| ∵| ∩
\ | \__ノ |/ . |.|
\___/:、 ∪、
/∵━○━∵ヽ ..| \
/∵人∵∵∵ \:\ \ \
⊂´:_/ )∵∵∵∵ヽ:_`⊃ / ̄ ̄ ̄ ̄ ̄ ̄
/
0426名前は開発中のものです。
04/02/28 15:09ID:FO2lj2+Xdirectx9のhelpを見てもよくわかりません。
directx9を勉強するのに最適なサイトってあるのでしょうか?
0427名前は開発中のものです。
04/02/29 09:45ID:yzlx/o3W0428名前は開発中のものです。
04/03/02 17:53ID:lJhVVoT3データ駆動にする
100個全部が違う効能でないなら、
技に属性を持たせて、属性で処理をわける
後は、属性を組み合わせられるようにする
0429名前は開発中のものです。
04/03/05 20:38ID:Ua6PG82z0430名前は開発中のものです。
04/03/05 21:27ID:w7+3fy9+0431名前は開発中のものです。
04/03/06 22:23ID:GGE+RQF4どうも、ということは技の動きとかもそういうふうにすればいいのかな。
なんとかできそうです、ありがとうございました。
0432名前は開発中のものです。
04/04/09 16:56ID:CEu0SDwR敵の初期配置まではマップチップエディタで作れても動き(エレベーター、
バネ、コング、タル等)が作れません。誰かお助けを・・・
0433名前は開発中のものです。
04/04/09 17:49ID:UK8Ty0N1一つ一つ片付けていけ。
自キャラは動かせられるか?
0434432
04/04/09 17:59ID:CEu0SDwR某サイトからパクっただけですが・・・
0435名前は開発中のものです。
04/04/09 20:58ID:DqZB2HIaハシゴは登れる?
ってか勉強目的ならパクるのはあまりよくない。
0436432
04/04/10 09:23ID:J1HEKCQ/screen 0,256,224,1,dispx/2-125,dispy/2-112
buffer 2,200,200,1;バッファー
picload ".bmp"
gsel 0,1
title "ジャンプ付きマリオ"
carapos=20;キャラクタの位置(x座標)
caramuki=0;キャラクタの向いている方向、0が右、1が左
jumpryou=0
zimen=200;地面の高さ。
repeat
redraw 0
stick k,47
color 255,255,255:boxf 0,0,winx,winy
color 0,0,0:line 0,200,winx,200
gosub *jump
gosub *walk
gosub *mario;マリオを描写する。
redraw 1
await 16
loop
*mario
if kasoku=0:caraani=0
if jumpryou!0:caraani=5
pos carapos,zimen-16:gmode 2,16,16:gcopy 2,caraani*16,caramuki*16,16,16
return
0437432
04/04/10 09:26ID:J1HEKCQ/walkchk+=1
if walkchk<2:return;ジャンプと同じ速さで移動すると速くなりすぎるから、
walkchk=0;2回に1回しか書き換えたりしないようにする。
kasoku3+=1;ボタンを押した後何回書き換えたか。
if kasoku3\2=0{
if (k=0)|(k=5):{
carabreak=0
kasoku3=0
if kasoku<0:kasoku+=1
if kasoku>0:kasoku-=1
}
if k&4:{
carabreak=0
if jumpryou=0:caramuki=0
if kasoku<0:caraani=4:carabreak=1
if kasoku<6:kasoku+=1:
}
if k&1{
carabreak=0
if jumpryou=0:caramuki=1
if kasoku>0:caraani=4:carabreak=1
if kasoku>-6:kasoku-=1
}
if (kasoku!0)&(carabreak=0){
caraani+=1
if caraani>=4:caraani=1
}
}
kasoku2=kasoku/2;移動量の推移を2回に1回にする。(1,1,2,2、3,3というように)
carapos+=kasoku2
return
0438432
04/04/10 09:32ID:J1HEKCQ/if k&32{
if (jumpryou=0)&(jumpstop=0):jumpstop=1
}else{
if (jumpryou=0)&(jumpstop!1):jumpstop=0
if (jumpstop=1)&(jumpryou>=30):jumpstop=3
}
if jumpstop>=3:jumpstop+=1:goto *jump↑↓
if (jumpstop=2):goto *jump↓
if jumpstop=0:return
goto *jump↑
*jump↑
if jumpryou<=19:jumpkasoku=4:goto *jump↑2
if jumpryou<=40:jumpkasoku=3:goto *jump↑2
if jumpryou<=58:jumpkasoku=2:goto *jump↑2
if jumpryou<=65:jumpkasoku=1:goto *jump↑2
if jumpryou>=67:jumpkasoku=0:jumpstop=2
*jump↑2
if jumpryou=51:jumpkasoku=4
if jumpryou=16:jumpkasoku=3
if jumpryou=38:jumpkasoku=2
if jumpryou=57:jumpkasoku=1
;title ""+jumpstop+" "+jumpryou+" "
jumpryou+=jumpkasoku
zimen-=jumpkasoku
return
0439432
04/04/10 09:41ID:J1HEKCQ/if jumpryou>=62:jumpkasoku=1:goto *jump↓2
if jumpryou>=51:jumpkasoku=3:goto *jump↓2
if jumpryou>=4:jumpkasoku=4:goto *jump↓2
*jump↓2
if jumpryou=62:jumpkasoku=2
if jumpryou=51:jumpkasoku=4
if jumpryou=47:jumpkasoku=5
if jumpryou=22:jumpkasoku=5
if jumpryou<=5:jumpkasoku=jumpryou
jumpryou-=jumpkasoku
zimen+=jumpkasoku
return
*jump↑↓
if jumpstop<=4:jumpryou+=1:zimen-=1
if jumpstop>6:jumpryou-=1:zimen+=1
if jumpstop=9:jumpstop=2
return このプログラムで逝こうかと思ってるのですが。
0440名前は開発中のものです。
04/04/10 21:17ID:8lOF11Ft0441432
04/04/11 09:10ID:A6JtVjTvここの458
0442432
04/04/11 09:16ID:A6JtVjTv0443名前は開発中のものです。
04/04/13 01:51ID:bffhB7DjHSPは読みにくいな…このjumpってサブルーチンの中ではループしてないんだな?
だったら*mario とか呼んでるメインルーチンに、エレベータとか動かすルーチンを
付け加えたらいいじゃないか。
0444432
04/04/13 16:06ID:4DU9oHFH0445名前は開発中のものです。
04/04/13 20:48ID:bffhB7Djんじゃ無理だ。HSPの事なんか忘れて
vectorでも逝ってフリーのゲーム落として遊んどけ。
どうしても作りたいなら、とりあえずこのパクったソースの数字を1ずつ変えては動作させて
なんとなく動作がわかるまで続けろ。
0447名前は開発中のものです。
04/04/14 22:23ID:QzJ05j2p「Binblock Patchvalidation failed」
と表示されるのですが、どうすれば上手く当てることが
できますか?アドバイスお願いします。
0448名前は開発中のものです。
04/04/15 20:48ID:Mhaj1jFGCを勉強するつもりです。そこで質問なんですが、Cでいいんでしょうか。
もっと初心者がやるべき言語があるんでしょうか?
0449名前は開発中のものです。
04/04/15 21:43ID:KL9zvr3b初心者には敷居が高いね。漏れはあまりオススメしない。
Delphiあたりがすぐにビジュアルな表示が出来るから
プログラミングの面白さを感じやすいと思う。
一つの言語覚えたら二つ目、三つ目を覚えるのはそこまで苦痛にならんし。
0450名前は開発中のものです。
04/04/15 22:13ID:cgpTXQVvVisual C++まで行けばウインドウズゲームが作れるけどそこまで半年ちょいぐらいかかったかな。
それまでは文字しか表示できなくて地味なプログラムだったな...
ようは地味な下積みを耐えられるかどうか、とりあえずお手軽に見栄えのいいものが作れたほうが
楽めて長続きしそうって人は449さんの言うようにDelphiから初めたほうがいいかも。
一刻も早くゲームプログラムを極めたいって人はCかC++かな。
C++言語はC言語を内包しているから、C++言語から勉強を始めてもいいと思うけど、
いきなりたくさんの情報に混乱しそうと思う場合はC言語から始めたほうがいいかも。
0451名前は開発中のものです。
04/04/15 22:17ID:Mhaj1jFGレスありがとうございます。少しずつがんばって面白いゲーム作れるように
なります!!!!!
0452名前は開発中のものです。
04/04/16 02:20ID:g/W+Go020453名前は開発中のものです。
04/04/16 21:57ID:gLXzG93zどの言語から勉強していけば良いのか質問しようとしたら
450に答えが…(`・ω・´)printf カラ、ガンバルッス!!
0454名前は開発中のものです。
04/04/17 16:08ID:Iaz63Ew/0455名前は開発中のものです。
04/04/17 21:58ID:u6Fa0MOe3月中旬に家にVCのCDがあることを知り、
3月下旬からプログラムを書けるようになって、
4月1日からできたプログラムを保存しております
もうすごい楽しい!現在進行形で頑張ってます
今ブロック崩しができました。これに少し独自のルールを付け加えて終りにしたいと思います
次は何を作ろうかな?テトリスは難しいか!?
0456名前は開発中のものです。
04/04/18 21:03ID:4spkHYFpプログラムは言語の仕様・書式を覚えたらアルゴリズムの発想しだいだし。
0457455
04/04/19 20:57ID:YPIC9Z/aでもやっぱりステップアップするには、常套手段に従ってありふれた簡単なゲームを作っていく方がよくないですか?
目的も持てるし、できたら嬉しいし
そういうわけで、とりあえずテトリスは難しそうなので、今から五目並べやってみます
0458名前は開発中のものです。
04/04/20 01:02ID:byeyzMFHですが思うように、というか全然アホCPUしか作れません。
なにかアドバイスをいただけませんか。
0459455
04/04/20 01:25ID:Hld2EAauいやー、楽しいですね
できればCPU対戦のことも考えたいけど、無理だろうな
コンピューターの動きのアイディアが全然思いつかない
0460名前は開発中のものです。
04/04/23 00:37ID:pRqu8Vw+とりあえず三目並べ(要するに○×)でCPU作ってみたら?
0462練習帳著者
04/04/25 10:45ID:LyJsr1s0とりあえず、以下の処理を試してみましょう。
1 可能な手を列挙する(制約のない五目並べなら空白の場所を列挙するだけ)。
2 その中から「ランダムに」打つ手を選ぶ
3 コンピュータがその手を打つ処理を実装する
これができれば、あとは2の部分でよりましな手を選べるよう改良していくだけ。
0463455
04/04/29 00:57ID:vcMIXweaあ。わざわざすいません
でも先日から別のプログラムを作り始めてしまって・・・
後回しにすると忘れてしまいそうなので、それが終ってからやってみます
0464名前は開発中のものです。
04/04/30 17:12ID:bNvYLXW7これ使っていろいろやってみようかな、と思ってたんです。
で、簡単な文をコンパイルしようとしたら「d3drm.libが開けません」ですって。
なんか他のプログラムでもこのライブラリのせいでエラーが出ます。
↑の文だけで原因っぽいもの分かりますか?
0465名前は開発中のものです。
04/04/30 17:15ID:La2rD6H90466名前は開発中のものです。
04/04/30 18:10ID:bNvYLXW7どうも
もう一回しっかり見てみます
0467464
04/05/02 13:59ID:y/UaHwjTそれより上のより簡単そうなEasy Link Libraryってのを見つけたんです
サンプルのテトリスとかがありまして、実行ファイルはもちろん動くのですが
自分でプロジェクトを開いてビルドするとエラーが出ます。
この件に限らずサンプルは殆ど++6なので、自分が使ってる.NETだと
開いた時の++7形式に変換しますか?→はい でおかしくなってるのだと思います
こういう場合は何か書き足す必要があるのでしょうか?
0468名前は開発中のものです。
04/05/02 14:35ID:a+vlsVTZ04696にすればよかった・・・
04/05/02 15:12ID:y/UaHwjTttp://www3.justnet.ne.jp/~botchy/el/el63.htm
ここの手順通りにやったのですが・・・
ビルドすると
・Project fatal error LNK1136: ファイルが無効であるか、 または壊れています。
と出ます
続きます
0470名前は開発中のものです。
04/05/02 15:16ID:y/UaHwjT#include<simpleX.h>
void StartUp()
{
}
void MainLoop()
{
Clear();
Text(0,0,"Hello World");
}
そうすると
・resu warning LNK4003: ライブラリの形式が無効です。ライブラリは無視されます。
この警告が4つと
・resu fatal error LNK1561: エントリー ポイントを定義しなければなりません。
となりました
resuってのはプロジェクト名です
0471464
04/05/04 20:27ID:Nhb0M37dパスの順番変えたり、いろいろしたら出来ました
0472名前は開発中のものです。
04/05/07 09:39ID:7PPmi+4T0473名前は開発中のものです。
04/05/09 18:56ID:FkW++Xq50474464
04/05/10 20:05ID:XWABRbZ8http://www3.justnet.ne.jp/~botchy/sample/Sam0201.cpp
>// 3Dを使って開発する場合、必ず必要です。
>#define DIRECT3D_IM
これってDirectXSDKにある何かですか?
具体的にどのように設定すれば上のコードをビルドできますか?
0475名前は開発中のものです。
04/05/10 20:31ID:XWABRbZ8「質問書く前にいろいろ試せや、このタマキン野郎が!」って罵ってください
0476名前は開発中のものです。
04/05/10 23:11ID:b3c9N5XP0478名前は開発中のものです。
04/05/16 15:21ID:cS86WeRiシューティングってほどでもないんだけど、自機が弾を撃つのね。
でも画面上に一つしか出ないのよ、次撃つと前のが消える。
弾の座標が一個分しかないからなんだろうけど。で、サンプルみたいなのを見てみたら
配列を使ってたのかな?当たり前なんだろうけど、それで弾を一つ一つ管理してたのかと
少し分かった気がしたのですよ。でもどう組めばいいのか解らない・・・・
普通はどのようにしてるのでしょうか?
0479名前は開発中のものです。
04/05/16 17:51ID:b74ZsW5L//弾定義
struct _Tama
{
int x;
int y;
bool isAlive;
};
//定義した弾を配列で宣言
struct _Tama tama[16];
//撃つとき
for(i=0;i<16;i++)
{
if(!tama[i].isAlive)
{
tama[i].isAlive = true;
tama[i].x = 弾出現位置X
tama[i].y = 弾出現位置Y
break;
}
}
が、一番シンプルかな・・・。
0480名前は開発中のものです。
04/05/17 17:08ID:6yEm3iSBMOTHERでいうと最初の電気スタンドを倒したところです
0481名前は開発中のものです。
04/05/18 16:37ID:H7HjmD2rすいません、elだとどんな感じになりますか?
bool ってのは真偽の為のものですよね?
0482名前は開発中のものです。
04/05/18 17:57ID:mlpq/arSint isAlive;//弾の生存フラグ
で、isAlive=0が画面に出てないヤツ、isAlive=1が画面に出てるヤツとか、
2つの状態を区別できれば、型はなんでも大丈夫だよ
0483名前は開発中のものです。
04/05/18 20:20ID:oOiAEM3V0484名前は開発中のものです。
04/05/18 21:56ID:z93EQDk5つまり作れないって事です
0485名前は開発中のものです。
04/05/18 23:04ID:oOiAEM3V479さんの上げた例はCなので多分問題なくいけるはずですが。
使用言語の基本書式とか理解してないとゲーム以前の問題になりませんか。
「猫でもわかる」でぐぐったりしてもう少し基礎の所からはじめるのをお勧めします。
もしくはツクール。
0486名前は開発中のものです。
04/05/19 02:06ID:39xvAhxl0487名前は開発中のものです。
04/05/19 02:48ID:KEtzYPtB学習ガイドライン
1.Cを覚える(教科書は「猫でもわかる〜」でOK)
↓
2.elのサンプルコードを読む(判らない部分はとりあえずgoogleへ)
↓
3.elのサンプルコードを改造する(一ヶ所変えるたびにコンパイルして実行)
↓
4.本番(もう何も言うことはない)
途中のステップをとばすと「自分が何を判らないのか判らない」状態にはまるから
トータルで考えれば時間の無駄になるよん。
0488478
04/05/19 16:33ID:ryT9K2cQCは基礎は大丈夫だと思います。まあ、これも勉強します。
>2.elのサンプルコードを読む(判らない部分はとりあえずgoogleへ)
↓
>3.elのサンプルコードを改造する(一ヶ所変えるたびにコンパイルして実行)
で、今ここら辺をやっているわけですがSc2のコードを見て弾の部分を理解しようと試みています。
余計なものが多くてややこしいですが、頑張ってれば理解できそうな感じです。
0489名前は開発中のものです。
04/05/19 16:52ID:ryT9K2cQもう少し頑張ってみれば何とかなりそうです。
やっぱ成長するにはいろいろ悩まないと駄目ですね。
0490名前は開発中のものです。
04/05/19 20:50ID:AQMqopBj0491名前は開発中のものです。
04/05/20 17:21ID:Mw1SlL99いや、同じです
というか>>484以外はだいたい自分です、>>464です。
0492464
04/05/22 14:11ID:ptk8g+iv最初は何のことだか解らなかったのですが、構造体ということがやっと解りましたw
これは便利ですね、少し賢くなりました。どうもです
0493464
04/05/25 16:53ID:QdGCgPCN0494名前は開発中のものです。
04/05/25 19:01ID:FiBx1oTV{
int a;
};
と
class X
{
public:
int a;
}:
はかなり似てます。
0495名前は開発中のものです。
04/05/25 19:02ID:FiBx1oTV誤) }:
正) };
0496464
04/05/26 22:39ID:U7ffWaSi0497HSPビギナー
04/06/21 18:45ID:CIr1o5igそれで、さっき5時間くらいかけて初めて数当てゲームぽいものできたのですが、ここにソース貼り付けたら何かアドバイスしていただけるのでしょうか?
0498名前は開発中のものです。
04/06/21 23:04ID:M6UaUL66数当てゲーム程度の規模だとあまり工夫の余地がないのでアドバイスしにくいかもなあ。
「上手く動かない」とかならともかく
0501名前は開発中のものです。
04/06/23 12:50ID:MYfPkn/Q15パズル。
数当てで使ってると思われるinputなどのコントロールを使わないやつを練習すべし。
0502HSPビギナー
04/06/30 20:16ID:vWGgncp315パズル作ろうとしてるんですが、どうやったら作れるのかまだ分かりません。
自分的に考えているのは↓
1.まず○を → ○○○○
○○○○
○○○
と表示し、
2.次に○のなかに数字を振り分け、
3.最後にクリックすれば○が無い方向に動く
というようにすればできると思うのですがどうなのでしょうか?
これであっているのなら、まず初めのどうやったら○が並ぶのかがいまいち分かりません_| ̄|○
教えて君ですいませんが、お願いします。
P.S 長文&読みにくい文章でスマソです_| ̄|○
0503HSPビギナー
04/06/30 20:24ID:vWGgncp3○○○○
○○○○
○○○
と表示させたかったのですがずれました_| ̄|○
0504名前は開発中のものです。
04/07/01 02:59ID:Er33M+6r01020304<改行>
05060708<改行>
09101112<改行>
131415■<改行>
HSPはしらないけど、↑みたいに表示すれば文字だけでも表示できる。
上下左右を押すと■がその方向の数字と入れ替わるようにすれば充分かと。
0505501
04/07/01 16:23ID:Uuze0tzS504の言うように、空白が移動方向のパーツと入れ替わるようにすればいい。
ポイントは配列変数、空白の座標の管理だな。
表示は各パーツごとに表示する。こんな感じ。テキトーに改行してくれ。
//パーツの表示サイズ
#define PARTX 32
#define PARTY 32
#const PARTBX PARTX-2
#const PARTBY PARTY-2
dim part,4,4:px=3:py=3//配列宣言と空白の座標
//配列に数値を格納
i=1:repeat 4:y=cnt:repeat 4:part.cnt.y=i:i++:loop:loop
part.px.py=0//空白部分は0にする
//表示してみる
color:boxf
repeat 4:y=cnt:repeat 4
if part.cnt.y {
xx=cnt*PARTX:yy=y*PARTY
color ,,255:boxf xx,yy,xx+PARTBX,yy+PARTBY
color 255:pos xx,yy:mes part.cnt.y
}
loop:loop
stop
0506名前は開発中のものです。
04/07/02 12:25ID:u1M+Bkgkwin98を使っています
0507名前は開発中のものです。
04/07/03 21:18ID:dqxJIYXl0508名前は開発中のものです。
04/07/04 02:44ID:/gx8vrG/0509HSPビギナー
04/07/12 01:52ID:NjMiC/7h自分なりに解釈してみました。
//パーツの表示サイズ(定義しておく)
#define PARTX 32 //PARTXは32である
#define PARTY 32 //PARTYは32である
#const PARTBX PARTX-2 //PARTBXはPARTX-2である(つまりこの場合は30である)
#const PARTBY PARTY-2 //PARTBYはPARTY-2である(つまりこの場合は30である)
dim part,4,4 //配列宣言(part 0,0 から3,3 まで使用できるようにする)
px=3:py=3 //空白の座標
//配列に数値を格納
i=1 //とりあえずiに1を代入
repeat 4 //4回繰り返す
y=cnt //とりあえずyにcntを代入(初めのリピートについての回数になる)
repeat 4 //4回繰り返す
part.cnt.y=i //part.cnt.yの座標の値はi(この場合のcntは後の方のリピートについての回数)
i++ //iに1を加える
loop //後のrepeatについてのループ
loop //初めのrepeatについてのループ
part.px.py=0 //空白部分は0にする(つまりpart 3.3は0)
0510HSPビギナー
04/07/12 01:55ID:NjMiC/7hcolor //色の設定(ここでは黒)
boxf //塗りつぶし(指定していないので背景が塗りつぶされる)
repeat 4 //4回繰り返す
y=cnt //yにcnt(ループ回数)を代入
repeat 4 //4回繰り返す
if part.cnt.y { //もしpart.cnt.yなら
xx=cnt*PARTX //cnt*PARTXをxxとする
yy=y*PARTY //y*PARTYをyyとする
color ,,255 //ここでは青色に設定している
boxf xx,yy,xx+PARTBX,yy+PARTBY //(xx,yy)と(xx+PARTX,yy+PARTBY)を左上、右下の点として、矩形(四角形)を塗りつぶす。
//描画色は、color命令で設定されたものになる。
color 255 //色の変更(ここでは赤色にしてある)
pos xx,yy //カレントポジションを(xx.yy)に指定
mes part.cnt.y //カレントポジションからpart.cnt.yを表示
} //上のことをまとめてする(xx=からmesまで)
loop //後のrepeatについてのループ
loop //初めのrepeatについてのループ
stop //プログラムの実行を一時中断
一行ごとに説明入れてみたので長くなりました_| ̄|○
違ってたら指摘おねです_| ̄|○
(ってかこんな説明いれるのに凄い時間がかかった俺って・・・| ̄|○)
0511501
04/07/12 21:06ID:Fg4Dow09あってる。準備と表示の基本がわかったと思う。
あとは表示部分をサブルーチンにしてしまい、以下の段取りで作っていけばいいかと。
*スタート
・準備。(配列に数字を格納する)
・最初の配置表示。(表示サブルーチンを呼ぶ)
・キー入力を待つ。(いわゆるスタートボタンを待つ待機)
この時、開始のキーを画面に表示してアナウンスするのが望ましい。
例:「クリックでスタート」とか。
・シャッフル開始。(空白を300回くらいランダム移動させる)
・シャッフル後の配置表示。(表示サブルーチンを呼ぶ)
この時、シャッフルで空白を一回動かす度に呼べば、
プレイヤーにシャッフル中の画面を見せる事になる。そこはお好みで。
*メインループ
・プレイヤーのキー入力を待つ。(マウスでもキーボードでもお好きに)
・空白が動いたら配置表示。(表示サブルーチンを呼ぶ)
・揃ったかどうか判定。
・揃ったらメインループを抜ける。(*揃ったへ)
・揃ってなければ *メインループへ。
*揃った
・揃ったうまを表示。
・プレイヤーのキー入力を待つ。
・*スタートへ。(繰り返し遊べるようにする)
メインループは当然無限ループになるから、waitかawaitは忘れずに。
わからなくなったらまた聞いてくれ。
0512HSPビギナー
04/07/13 22:14ID:OxDPuipyで、いきなりなんですが空白と移動方向のパーツをどうすれば入れ替わるのかが分かりません・・・
repeat
await 10
stick key,0
if key!0 : gosub *keyget
loop
*keyget
if key=1 :
if key=4 :
if key=2 :
if key=8 :
return
ifの後に空白と移動方向のパーツの入れ替えを行いたいのです。
よろしくお願いします。(表示は504にあるソースを引用させてもらってます)
0513名前は開発中のものです。
04/07/13 22:43ID:N2yNRIPu0514名前は開発中のものです。
04/07/13 23:14ID:hVT4K+XEo 「よろしくお願いします」
これも嫌われるのでやめた方がいいですよ
0516名前は開発中のものです。
04/07/14 08:33ID:x4u7RW7f自分のやりたいことを実現するには、作業を細分化して考えるんだ。
表示方法、盤の状態をどんなデータで持つか、どんな条件の時は入れ替えないのか。
データの入れ替え自体はそんなに面倒でもないだろ?
0517HSPビギナー
04/07/15 23:33ID:fffn1Y5+とりあえず数字のみが動くようにしました。一応はっときます↓
http://www66.tok2.com/home2/ankokunosyoujo/cgi-bin/up/source/9pazru.as
ぐちゃぐちゃですが「こうしたほうがいいよ」みたいなことがあればレスおねです。
0518501
04/07/16 05:25ID:KYwEYXqCこれらの命令を調べてくれ。エディタで命令を書いて、そこでF1を押せば説明が出る。
・gosub、return、repeat、loop、gcopy
すぐに使うことになるから、よくわからなくても説明だけは読んでおく事。
できれば、「これらの命令を使えば物凄くソースが短くなるかも」という事に気が付いてもらいたい。
・シャッフルについて
このシャッフル法だと絶対に解けない場合が出てくる。空白をランダムに移動させる方法をとるべし。
配列変数ってのは、小学校とかに下駄箱あるじゃん?あれが配列変数。
横と縦のそれぞれ何番目かを指定する必要があるが、マス目で並んでるので便利。
4x4の配列変数を作った場合、15パズルと見た目が同じになるから使わない手はない。
当然9パズルの時は3x3の配列変数を作ればよい。
配列変数の作り方は・・・。詳しくはマニュアル読んでくれ。
ちなみに3x3の配列変数を作るには dim 変数名,3,3 と書く。
こうするとメモリに
□□□
□□□
□□□
というふうに変数が並ぶ。(下駄箱ができると思えばいい)
左上にアクセスするには、変数名.0.0。一番下の段の真中は、変数名.1.2。
とりあえず、意地でも配列変数を使ったバージョンに書き直してほしい。
(これができないと、ロールプレイングもシューティングも作れないから)
0519HSPビギナー
04/07/16 20:47ID:Y+cW3MUc使い方合ってるかどうか分かりませんが一応形になったので乗せます
http://www66.tok2.com/home2/ankokunosyoujo/cgi-bin/up/source/9pazuru02.as
少しは短くなったような気はしますがまだまだ多いです_| ̄|○
reprat,gosubあたりをもう少し効率よくつかえればなぁ・・・
0520名前は開発中のものです。
04/07/16 22:07ID:70qYYQBd「字下げ」も覚えたほうがいいだろうねぇ。(解らなかったらぐぐってみてね)
ところで自分でリストを見直してみて、ほとんど同じような処理を
延々と書き続けていることには気が付いているかい?
何故そう書くことになったのか考えてみよう。
共通の処理で済ませるにはどうしたらいいかな。
まったく同じcolor命令がずらずら並ぶのをなんとかしてみよう。
0521501
04/07/17 03:55ID:GnjMzHwjソース見せてもらった。だいぶスッキリしたじゃないか。
あのラベルとifの羅列は自分でもなんとかしたいだろう。
そのためには、パーツ移動の考え方を変える必要がある。
つまり、入れ替える方法だな。
上のレスで配列変数を小学校の下駄箱に例えたが、入れ替える方法もそのまんまだ。
□□□ □□□
□□□→□□□
□□■ □■□
黒い所に自分の靴が入っているとする。それを左に移したい場合どうするか?
519ならどうする?
まず、動かしたい靴を自分の手に持たないか?
つまり、一旦別の場所に保管するわけだ。プログラミングで値を保管したい場合どうする?
変数に入れるだろう。答えは、「一時保管用の変数を用意」するだ。
2箇所の靴を入れ替えたい時は?・・・両手を使うだろう。保管用の変数が2個必要ってこった。
何も難しい事はないだろう。
サブルーチン(gosubで飛んだ先の事)の中でgotoはやってはいけない。これはプログラマーの暗黙の了解。
俺は519が作った数当てゲームのソースを見ていないから15パズルを薦めたが、荷が重かっただろうか。
0522名前は開発中のものです。
04/07/17 16:51ID:NsP+EN2X*za02から*xy802までがまるまるコピーしたルーチンだね。
まるっきり無駄なのは本人もわかってるんだろうケド。
0523HSPビギナー
04/07/20 22:25ID:E/KOizbb少し直してみました。変数を使ってやってみましたが、考え方はこれであってるのでしょうか?
http://www66.tok2.com/home2/ankokunosyoujo/cgi-bin/up/source/9pazuru03.as
そもそもクリックの座標の取り方を変えなきゃだめですかねぇ・・
0524501
04/07/21 20:06ID:KwUOdNli考え方はあってると思うが、無駄が多いのは確か。
お題変えていいか?15パズルはまだ無理だと判断したぜ。
休憩がてらにこの課題をやってみてくれ。
523の実力がどんなもんかを把握しておきたい。
課題:キーボードの十字キーで●を動かすプログラム。
シューティングの自機を動かす練習でもあり、メインループという仕組みを学ぶ事もできる。
stop命令を使わずにこの課題をクリアしてみそ。
0525HSPビギナー
04/07/22 17:45ID:fcznb9Ajこんなもんでしょうか
http://www66.tok2.com/home2/ankokunosyoujo/cgi-bin/up/source/idou.as
0526名前は開発中のものです。
04/07/22 18:56ID:O9iIDjrWそれができるなら>>523のソースはありえないと思うんだが……
0527501
04/07/23 21:20ID:QxYTfUZ3あのさ、526に同意だぜ。それができるなら523のソースはありえんかと。
メインループってのがわからない人かと思ってた。
自分で考えたよな?どっかのサイトのをコピペしたんじゃないよな?
悪いけどコピペしたように見えちまうぜ。
メインループもしっかりしているし、どの部分をサブルーチンにするかの選別も完璧だ。
画面外処理にも気をつかってるようだし、523のソース書いた人と同じとは信じがたい。レベルアップしたって事なら心から祝福するが・・・。
とりあえず自分で考えたって事で話を進めるぜ。実力はわかった。
ここまでできれば15パズルなんざ屁でもないはず。
メインループを使って組んでみてくれ。
0528HSPビギナー
04/07/27 22:13ID:MycCT3Obhttp://www66.tok2.com/home2/ankokunosyoujo/cgi-bin/up/source/9pazuru04.as
いつdim関数を入れ替えればいいのかがまだ理解できません_| ̄|○
0529520
04/07/28 08:06ID:dtD/YKE5でもまだ似たような処理が複数あるし、ループ内で行う処理の流れも把握し切れてないみたいだ。
たとえば『*move』で行う処理を単純化して変数keyの値(stick命令で得た情報)をもとに
「→が押されたときの処理」など別のサブルーチンに飛ばすだけにしてみたらどうだろう。
その飛び先で例外処理(528の『if n>358』みたいな場合、処理前にそのサブルーチンから抜ける)を行う。
配列内の値(マスの数字)はそこで入れ替えればいい。
ただし、この方法で行うにしてもメインループから『*sub』が毎回呼ばれるようでは
配列内の数値が毎回初期化されてしまうよね?
それは『*sub』内で配列に数値を入れているからだよね?
だからループ内で行うべき処理とそうでない処理を分割してみよう。
0530501
04/08/07 01:45ID:2Nt1AYKGマイルール作ろうぜ。
if key=8と書いてる所とif key = 128と書いてる所があるが、イコールの前後に空白を開けるか開けないか決めたほうがいい。
あと、変数の名前の付け方とかも決めたほうがいいな。
それを決めるとプログラミングの上達が速いから。騙されたと思って統一させてみな。
いつdim関数を入れ替えるか?中身をいつ入れ替えるかってこと?
当然空白が移動した時。順番はこう。
1、空白が移動できるなら元の位置を捨て変数に代入して移動。移動できなければ何もしないでメインループに戻る。
2、元の位置と現在の位置の中身を入れ替える。
3、画面に反映させる。(描画サブルーチンを呼ぶ)
こんな感じ。
空白の位置がどこかは配列を調べていってゼロの場所を探せばいいが、
>>505の俺のサンプルでは空白の位置をわざわざpx,pyに格納してるよね。なんでだと思う?
>>528の修正版ではわけもわからずpx,pyを使ってるみたいだね。
こうやって空白の位置を専用の変数に入れてるのは、こうしたほうが入れ替えが楽だから。
カーソルキーを押した時に変化させる数値はpx,pyって事。
空白はRPGの主人公と同じ意味。とりあえず今回はこんだけのヒントでなんとかなるかも。
0531名前は開発中のものです。
04/08/10 13:20ID:GK5zdL7Gご助言を受け賜りたいです。
0532名前は開発中のものです。
04/08/10 13:49ID:hjsHi1LT使用する言語は何かわからんけど
とりあえず絵の表示とキー入力の取得が先かな
まぁ、これはマインスィーパに限った話じゃないが
0533名前は開発中のものです。
04/08/11 09:34ID:2huBTHVu何がわからないのか書いてくれないと答えようが無いんだが……。
ホントになにもできないなら>532の言うとおりになる。
とりあえず
配列を用意して機雷を配置 (機雷が規定個数入った配列を用意して乱数で並び替え)
配列を順にチェックして、空欄の時は周囲8マス内にある機雷の数を入れる
マスが隠されているか開いているかの状態を表す配列を用意(531ができるなら上と同じ配列を使って処理しても良い)
クリックしたマスが隠されたマスなら中身を表示(機雷ならゲームオーバー)
周囲の機雷が0だったときの処理はひとまずおいといて、
ここまでやってみれ。
0534名前は開発中のものです。
04/09/11 21:03:54ID:6KaBvFrnプロシージャは窓ごとに別に持つのでしょうか
0535名前は開発中のものです。
04/09/12 17:41:51ID:1J5Jinh80536名前は開発中のものです。
04/09/12 20:34:36ID:Fy//4hU/それでかまわないという事でしょうか
遠まわしにありがとうございます
0537('Д`)
04/10/09 00:24:07ID:lQ9GPwTv最近VC++はじめた。
とりあえずC、C++勉強しつつ、パイナッポみたいなゲームを作ろうと思う。
0538('Д`)
04/10/09 00:32:13ID:lQ9GPwTvttp://www.mercury.sannet.ne.jp/yy3_yudai/freegame_guide/pinappo_guide/pinappo_index.htm
ダウンロードはvectorからドゾー(C&Cランタイムが必要)
ttp://www.vector.co.jp/games/soft/win95/game/se257409.html
0539名前は開発中のものです。
04/10/09 12:02:19ID:YEj74aTw通常
http://ccfa.info/cgi-bin/up/src/up6842.png
撃ち
http://ccfa.info/cgi-bin/up/src/up6843.png
http://ccfa.info/cgi-bin/up/src/up6844.png
歩き
0540名前は開発中のものです。
04/10/09 17:00:00ID:wN3VFUnf0542名前は開発中のものです。
04/10/09 23:11:08ID:5Wk9KMOv右向き
http://ccfa.info/cgi-bin/up/src/up6865.png
右向き(歩き
http://ccfa.info/cgi-bin/up/src/up6864.png
左向き
http://ccfa.info/cgi-bin/up/src/up6866.png
左向き(歩き
http://ccfa.info/cgi-bin/up/src/up6868.png
上向き
http://ccfa.info/cgi-bin/up/src/up6869.png
上向き(歩き
0543名前は開発中のものです。
04/10/10 02:19:16ID:LGf+Gaaw参考になるサイトってありませんか?サンプルソースとかがあったりしたらサイコーです。
アルゴリズムとかがなかなか思いつかない。
0544名前は開発中のものです。
04/10/10 02:54:41ID:XFGTmMvI昔ベーマガに載ってた記事
ttp://www.marchen.to/_old/bm15.pdf
0546('Д`)
04/10/11 10:37:25ID:wxx0x9uVスペースキーで弾も出るけど動きはなし
今はクラスの継承とマクロ定義?なるものを勉強中
それと素材くれた方ごめんなさい
http://gamdev.org/up/img/1528.zip
0547名前は開発中のものです。
04/10/11 20:26:42ID:6Zwl7lU+0548名前は開発中のものです。
04/11/04 19:38:23ID:vl8uXPTK0549DelphiでSLG製作中
04/12/18 12:47:10ID:iheJYytz今、ヘクス型のSLGを作成していてマウスの乗っているヘクスに枠を乗せたい訳です。
しかし、どうしても画面のちらつきが発生してしまい困っています。
Form1.DoubleBuffered := True;
にもしているんですがちらつきを抑えられません。
因みにヘクス枠の描画方法は、表示するイメージとは別の、枠の無いイメージを用意し、マウスがポイントするヘクスが移動する度にそこから前にマウスがあったヘクスの部分を切り取って表示するイメージに貼り付けし、新しいヘクスに枠を書き込むという方法です。
コードはこちら
if (X3 <> X4) or (Y3 <> Y4)
then
begin //外枠描画
Image1.Canvas.CopyRect(Rect(X4,Y4,X4+48,Y4+48),Image2.Canvas ,Rect(X4,Y4,X4+48,Y4+48));
Image1.Canvas.Draw(X3,Y3,MouseTip);
X4 := X3;
Y4 := Y3;
end;
X3,Y3…マウスが乗っているヘクス
X4,Y4…その前にマウスが乗っていたヘクス
Image1,2…1が表示するイメージ、2が非表示のイメージ
Mousetip…ヘクス枠のBitmap名
0550DelphiでSLG製作中
04/12/18 16:11:49ID:iheJYytzちらつきというのは、ずっと画面がちらつくというのではなく
新しい枠を描画する毎にちらつきの様なものが発生するという意味です。
その為、
procedure TMainForm.WMEraseBkgnd(var m : TWMEraseBkgnd);
begin
m.Result := LRESULT(False);
end;
をやってみましたが効果はありませんでした。
0551騎士の紋章 ◆H611rReG66
04/12/19 03:36:31ID:mkdjQU32とりあえず、目の前の問題解決から。
A Cでコンソールによるファイルの入出力。
B 自動ダンジョンもどき(ファイル出力)。
C 数当て。
0552騎士の紋章 ◆H611rReG66
04/12/19 04:19:14ID:mkdjQU32でも、ソースをUpできない・・。(Gamedevに繋がらない。
0553名前は開発中のものです。
04/12/22 11:38:48ID:zs0cHsG2俺にポポロクロイス物語シリーズの最新作を任せてほしい
Tを上回る史上最高の傑作を作る自信がある。どうですかソニーさん
今のPS2になり余計なことばかりして自家撞着してるポポロを俺が
世紀の名作に戻してあげますよ。
その点では幻想水滸伝も同じか・・・Tであれほど名作だったのに続編になるごとに
退化を続け、PS2版になると完全に別のゲームに成り果ててファンを引き裂いた幻想水滸伝
あれも俺に最新作を任せてもらえれば完全にもとの輝きを取り戻してあげますよ、どうですかコナミさん
×××@hotmail.co.jp連絡はここまでお願いします
しかしRPG不作の時代は続きますねー PS2になって5年も経つというのに
PS2でのRPGの名作はまだゼロ。佳作としてグローランサーWがあるぐらいですかね
ちょっと肉付けしてシナリオとストーリーを変えるだけで新たに遊べるのに、
そのレベルにすらいかない。退化を続けるRPGの歴史に歯止めをかけたい
0554名前は開発中のものです。
04/12/22 19:03:53ID:JZkoDinq一度、画面に表示するまえにTBitmapを作ってそこに描画する
すべて描画が完了したら実際にformに表示する
0555名前は開発中のものです。
04/12/23 12:28:15ID:Pdlo8kEQすいませんでした。
0556名前は開発中のものです。
05/01/20 01:22:23ID:cRp2WmOqゲーム作ろうとしている初心者以前の存在なんだけど
ゲーム製作に必要なソフトって何?
「RPGツクール」とかはなしで
0557名前は開発中のものです。
05/01/20 08:04:01ID:yg5XQfov0558名前は開発中のものです。
05/01/20 20:10:57ID:ah8XuYc5まずはツクール体験版落として使ってみろ、絶対挫折する
0559名前は開発中のものです。
05/01/20 22:28:46ID:cRp2WmOqもう持ってる
0560名前は開発中のものです。
05/01/20 22:45:05ID:ArQp7UllCの基本的なプログラミングの流れは
テキストエディタでソースファイルにC言語で記述する(コーディング)
ソースファイルをコンパイラを使ってオブジェクトファイルに変換する(コンパイル)
オブジェクトファイルやライブラリをリンカを使って実行可能ファイルに変換する(リンク)
流れがわかれば何が必要なのかわかるだろってこれくらいは調べろよ
入門書も初心者向けサイトもそろってるこのご時世に掲示板でわざわざそんな
基本的なことを質問するのは恥じと知れ!
0561名前は開発中のものです。
05/01/20 23:10:10ID:Qn0XB5We0562名前は開発中のものです。
05/01/21 10:10:43ID:Cb/R40jt0563名前は開発中のものです。
05/01/22 00:06:50ID:peyOAfhZint WINAPI_WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
){
MessageBox(NULL,"シャイニングアギト","メッセージです", MB_OK);
return 0;
}
エラー発生するんだが何がおかしいかわからない…助けてくれ
0564名前は開発中のものです。
05/01/22 00:14:31ID:SMeoGQLY>#include <windows>
#include <windows.h>
>int WINAPI_WinMain(
int WINAPI WinMain(
0565名前は開発中のものです。
05/01/22 00:20:00ID:peyOAfhZError: 外部シンボル '_main' が未解決
だそうだ、言われた通り直してみたが。
すまん、感謝してるが直らんようだ。
とりあえずぐぐってみる
0566名前は開発中のものです。
05/01/22 00:38:51ID:asf0tt+tVCか?プロジェクトはWin32プロジェクトで作ってるか?
BCCあたりならコンパイルオプションはつけてるか?
0567名前は開発中のものです。
05/01/22 00:43:46ID:peyOAfhZそれだ。BCC使用中
オプション付け方わからんがそれは調べながらやってきます
0568名前は開発中のものです。
05/01/22 01:10:00ID:peyOAfhZそりゃうごかねぇわ
0569名前は開発中のものです。
05/01/22 01:35:13ID:asf0tt+tオメ
0570名前は開発中のものです。
05/01/24 00:41:22ID:Ezc4NcwJusing namespace std;
int main()
{
double a;
do{
cout<<"何フィートか入力。0で終了";
cin>>a;
cout<<a*12<<"インチです。\n";
}while (double !=0.0);
return 0;
}
main関数のエラーらしいが…色々替えてみても解決しないんだが誰か助けてくれないか
0571名前は開発中のものです。
05/01/24 00:48:20ID:PdrGtBBl>}while (double !=0.0);
}while (a !=0.0);
0572名前は開発中のものです。
05/01/24 01:04:52ID:Ezc4NcwJあり得ないほど単純なミスの指摘ありがとうございましたorz
0573名前は開発中のものです。
05/01/28 16:24:28ID:NMVzdjq4色分けできるエディタでも使ってみたらどうだい?
0574名前は開発中のものです。
05/01/31 02:08:04ID:ywW+fA0qサクラエディタがイイ感じ
0575名前は開発中のものです。
2005/04/29(金) 23:05:09ID:pQOGYAUXWINAPIで文字列を描画するさいに行間、字間をあけると指定したRECT構造体の範囲に入りません
SetTextCharacterExtra()で幅を決めていますがどうしてもずれてしまいます。
何かうまい方法は無いでしょうか?
0576名前は開発中のものです。
2005/04/29(金) 23:25:20ID:Ltz+njiU詳しくはしらんが、等幅フォントとプロポーショナルフォント(文字によって幅が違う)
ってのがあるから、そのへん見てみたら?
0577名前は開発中のものです。
2005/04/29(金) 23:29:35ID:pQOGYAUXですがなぜか字幅を増やせば文字が重なる、という状況に。
やっぱりソースコード全部乗っけた方が良いでしょうかそれともどこかにUPする方でしょうか
0578名前は開発中のものです。
2005/05/01(日) 10:22:06ID:O5JkL057AVGで画面のサイズを取得してテキストの量と比較して一ページ、というのを作り出す
っていうのは改行の回数を取得してやるしかないんでしょうか?
0579名前は開発中のものです。
2005/05/01(日) 11:42:19ID:WfF8UdlQ同じページ内の情報が場合によって変わるようになると、
変な位置で改ページが挟まることになって可読性が落ちてしまわないか?
0580名前は開発中のものです。
2005/05/01(日) 11:58:18ID:O5JkL057変な位置で改ページが挟まる可能性は無い…と思います。
0581名前は開発中のものです。
2005/05/01(日) 13:35:00ID:O5JkL057っていうのなら出来そうなのですが、問題は一行ごとに読み込むにはfgets()しか知らないということなのです(´・ω・`)
Readfileで一行ごとに読み込む、ような形式の関数はないでしょうか?
0582名前は開発中のものです。
2005/07/01(金) 23:38:04ID:TgYhWr9IC++を勉強してるんですが知り合いからは
C++で作る意味はないんじゃないか?と言われます。
最低でもC言語は通る道だから覚えていいけど
もっと最適なプログラムあるだろうと言われましたが・・・、
ついでにビジュアルベーシックがいいとかも聞きましたが・・・
シミュレーションゲームを作るとして何が一番いいのでしょうか?
吉里吉里などではなく、0から作るつもりなのでよろしくお願いします。
0583名前は開発中のものです。
2005/07/01(金) 23:40:45ID:I7hFACH/0584名前は開発中のものです。
2005/07/02(土) 00:54:15ID:c/vA3z+6君は2つの悩みを抱えているね
・どんな言語を習得するべきか
・どんな言語でゲームを製作するべきか
これは似たようでいて全然別のことなんだ
前者については沢山の言語を覚えろとしかいいようがない
このサイトが参考になるんじゃないかな
http://www.yamdas.org/column/technique/21-daysj.html
後者についてはもうちょっと詳しく知らないと無責任なことしかいえないけど
おそらく10人に聞いたら8〜9人はCかC++って答えると思うよ
今まで発売された中で最もクールなSLGの一つ「かえるにょぱにょ〜ん」はアリスソフトの「System」という
スクリプト言語で書かれているし生産性を重視するならRubyやPythonを薦める人もいるだろう
でもC/C++はほんとにパワフルでクールな言語なんだ
君は「0から作るつもり」と言っている。数字を0から数えるのはとても大事だ
これはC/C++を使う資質があるってことだから自信をもっていいと思うよ
0585名前は開発中のものです。
2005/07/02(土) 05:11:42ID:DaKyZ7xPCやその系列の言語が広まったのは、やっぱり幅の広さが
他の言語に比べて半端ない(そしてCの概念がほとんどの言語でも通る)ってことで、
もちろん普通に当たり障りなく勧めるならC++かもしれないけど、
とにかく色んな言語を『かじって』みて、自分の読みやすい言語から飛びついてみるのはどうだろう
基礎からコツコツ積み上げるのも大事だけど、好きな場所から喰らいついていけば楽に進めると思う
っていう俺もまさしく『ズブの初心者』なんだ(´・ω・`)ゴメンヨ
ただ、この世界って広くて数え切れないほどの言語があるけど、
「自分が想像しているゲーム」でやりたいこと、見つけたかったものが
簡単に出来る言語はやっぱり理解の進みが恐ろしいほど早いと思う
ま、俺が習得してるのはテラヨミヤススなPerlってこともあるんだけど(;´∀`)
0586名前は開発中のものです。
2005/07/02(土) 13:09:34ID:reo3tl9Qこのスレ序盤にあやかって五目並べでも作ってみるか…。
0587名前は開発中のものです。
2005/07/02(土) 13:40:52ID:DaKyZ7xPあるあるwwwwww
ゲームを作りたい一心で勉強して、ある程度わかるようになったときに
「ゲームを作りたい」気持ちはあるんだけど
「どんなゲームを作りたい」って言うのが曖昧なままであることに気がついて
抜き差しならなくなって途方に暮れていたりな
0588名前は開発中のものです。
2005/07/02(土) 16:45:08ID:RRxqt4uN0589名前は開発中のものです。
2005/07/02(土) 18:24:44ID:cHnBxvpJそれが一番楽しめると思う
0590名前は開発中のものです。
2005/07/02(土) 18:40:12ID:cHnBxvpJ0591名前は開発中のものです。
2005/07/02(土) 19:20:51ID:oFMG/Sl1俺とおまえはハメあってるよ
0592名前は開発中のものです。
2005/07/02(土) 19:26:43ID:reo3tl9Qプログラムの勉強が先にあって、それで何やりたいかって考え方してました。
理想とか作りたいもんとかはないけど、何かを作りたい、って言ったら変だと思われるんだろなあ。
とりあえず五目並べむずいっす。
0593名前は開発中のものです。
2005/07/03(日) 19:59:15ID:nAptENyFよかった(´・ω・`)
書いた後で的外れかもしらんと思った
>>588
なんつーか、作りたいゲーはあるんだけど、
いざプログラム組めるようになるとアイディアの部品が足りない感じ
厚紙で三角柱(ゲーム)を作ろうとがんばってるときに、
四角い紙(自分の理想)ばっかり思い浮かべて準備したって、
実際に三角柱作ろうとしたら三角の紙もいるでしょ
それに気づかないまま、セロテープ(プログラム)を準備したって
三角柱は作れないし、紙とテープ持って呆然とするだけだよね
だけど紙を持ってないわけじゃないんだ、足りないだけで
どうしたらいいのか分からなくなって、人によっては
ガムテープとか持ってきて手を変え品を変え試行錯誤することもあるし
たとえが小難しくてすまんけど、なんだかそんな感じ
0594名前は開発中のものです。
2005/07/04(月) 13:48:35ID:coMm4scdジャンルはRPGを考えています。
言語はC、ソフトはVC++が良いかなとか思ってます。(敷居は高いみたいですが^^;
で、質問です。
1:画像関係はどんなソフトが良いでしょうか?DirectXとやらが2Dにいい感じに思いました。
もし3Dだとお勧めはありますか?
2:アイテムなんかはデータベースがあったほうがいいでしょうか?
(メタルマックスとか好きだったので無駄アイテムとか一杯作りたいのですw)
オラクル、SQL、と言うのをデータベースで見ました。
このデータベースお勧め、等ありましたら教えてください。
0595名前は開発中のものです。
2005/07/04(月) 14:22:17ID:NlX6Fayzインストールに何GB用意させるつもりなんだろう?
いったいいくらライセンス料を支払うことになるのやら。
0596名前は開発中のものです。
2005/07/04(月) 14:27:06ID:coMm4scdどうやら、とてもサイズがでかくなる、高い、のですね^^;
あまりお勧めでは無いということがわかりました。
どうもありがとうございますm(._.*)mペコッ
0597名前は開発中のものです。
2005/07/04(月) 15:28:03ID:L7mrHbllCSVで用は足りるだろ?XMLでもいいぞ
3Dは http://irrlicht.sourceforge.net/ これが楽そうだぞ
0598名前は開発中のものです。
2005/07/04(月) 15:59:07ID:coMm4scd英語ページ:ダウンロードしてみました。
早速何か書いてみます。
ありがとうございます!m(._.*)mペコッ
0599名前は開発中のものです。
2005/07/04(月) 16:35:35ID:EptZztwIつーか、プログラムにする前に、ゲームの構造を考えるのが難しい。
こんな感じにしたいなぁという妄想は有っても、じゃあここはどうするの?
あそこはどうなるの?っていう、細かいところがどんどん出てきて泣きそうになる。
0600名前は開発中のものです。
2005/07/04(月) 18:17:53ID:7BaigaRU0601名前は開発中のものです。
2005/07/04(月) 20:03:00ID:coMm4scd相当、、、苦労しますか
まぁ言語の最初からですし
一気にはとても無理ですので(;_; )Cの勉強度合いによって少しずつ・・・
絵は思いついたとき(ストーリーも完全にはできてませんが)書いて貯めていけたら
という思いです。
指導、応援ありがとうございました。
(^人^)感謝♪
0602名前は開発中のものです。
2005/07/04(月) 23:12:43ID:Hr3Bv2Nnまあでも自分の作りたくないもの作り始めても
イライラして挫折するタイプの香具師はいる
俺とか orz
0603とーしろー
2005/07/07(木) 18:57:22ID:nMC2NI3dどんなプログラムやコンピューターの知識・技術が必要ですか?
0604名前は開発中のものです。
2005/07/07(木) 20:34:39ID:D4AG0Gh5アルゴル系の言語の知識
データベースの概念
ゲームの基本構造
ビットマップの概念
アニメーションの概念
・・・
0605名前は開発中のものです。
2005/07/07(木) 23:04:25ID:WJmWSz/tステップとしては、
1.文字だけで動くようなゲーム(ex. じゃんけんゲーム、数当てゲーム)
2.グラフィカルな表示をするゲーム(ex. ○×ゲーム、五目並べ)
3.アクションというか、ユーザーが操作しなくても時間で勝手にゲームが進行していくようなもの(テトリス、ブロックくずし)
ここまでくればどんなゲームも作れるよ。単純か複雑かの違いはあるけどね。
後は
・プログラムの構造(複雑で大きなプログラムをどう分割し、整理するか)
・ネタ(ゲームの内容)
だね。
0606605
2005/07/07(木) 23:14:18ID:WJmWSz/t以前に自分が作ったプログラムと同じ仕様のプログラムをもう一度作ってみるのもいい。
以前のソースを見てみると「うわー、なんだこの糞ソースは」と思うと思う。いや、思わなきゃまずい。成長してないってことだからね。
0607名前は開発中のものです。
2005/07/09(土) 17:56:01ID:NCrbWDmKパワー不足だと感じたら、ほかのを試せば良いんじゃないか?
ただ、VBとかだと変な癖がつくって言うね。
0608603
2005/07/09(土) 22:51:26ID:645gHNAv親切なレスが書かれてあり感激しました。
自分に出来ることから始めていきたいと思います。
0609名前は開発中のものです。
2005/07/10(日) 11:06:02ID:H2c7DvsiC++もいいけど、メモリの管理やらなんやら、自分の作りたいと思っているゲームとは直接関係のないコンピューターの処理の部分で大変だからね。
ズブの初心者なら特に。
そしてC#ではDirectXも使える。内部の難しい処理はManagedDirectXのクラスでカプセル化されているので、そんなに複雑なことをせずにDirectXを使える。
ゲームっていうからには、やっぱり文字だけや紙芝居じゃ満足しないでしょ?
「じゃあGDIからステップアップしてしてDirectXを使おう」ってことになった時にC++だと初期化処理だけで挫折しそうで。(ちなみに私はC++でDirectXはできない)
なんでVB.NETじゃないかというと、あれはVBで作られたソース(とVBプログラマ)を.NET環境に移行させるために作られた言語だから。
仕事でVB.NETを使っているし、趣味でC#を使っているから分かるんだけど、VBのソースと知識を引きずってるんでなければ選ぶ価値はないね。
ManagedDirectXのサンプルもC#だし。
0610名前は開発中のものです。
2005/07/10(日) 14:37:07ID:byzcfRe/具体的に言うと、最初の言語 何から始めたのかなって。
自分は、プログラムの基本概念を掴む為にBASICから入ったんだけど、
いきなりCとかやって、頭って付いていった?
自分だけだったら恥ずかしいな・・・
0611名前は開発中のものです。
2005/07/10(日) 16:11:45ID:6UX+xkaxまたCやったらわかるようになった。
0612名前は開発中のものです。
2005/07/10(日) 17:43:26ID:Zc5Q+m2+アルゴリズムとデータ構造を覚えるとCのが効率よく書けるようになるよ
0613名前は開発中のものです。
2005/07/10(日) 19:01:28ID:fRXxGGT80614名前は開発中のものです。
2005/07/10(日) 19:23:20ID:EmFjwcNsRubyの講師がなんの説明もせずにさっさと先へ進むから、ほとんどのやつがついて行けなかったな。もちろん俺も。
そのせいで、Cをやったときは、Rubyとは比べものにならないくらいのわかりやすさだ!って感動した。
きちんとやれば、Rubyも強力な言語なんだろうけど、なんかアレルギー見たくなっちゃって、やりたくもないw
0615名前は開発中のものです。
2005/07/11(月) 05:08:33ID:HabbrA0p(子供時代---------------学生--------------仕事)
Windowsのアプリケーションじゃなくて、ゲームが作りたいならネット上で公開されている
実績のあるライブラリの力を借りた方がいいんじゃないかな。
言語はCでもC++でもいい。
Windowsはとにかくめんどくさい。作法を覚えることが多い。
最近のDirectXは初期化からテクスチャ表示までが激しく簡単になってるから、
なれてくればライブラリに頼らず移行できるかもしんない。
>>603
最初からは無理。壁にあたって挫折し、プログラム自体が嫌になるかもしれないから
もっと規模の小さいゲームからステップアップした方がいい。
オセロ → テトリス → シューティング/アクション → SLG/RPG とかね。ガンガレ若者。
0616名前は開発中のものです。
2005/07/11(月) 15:53:54ID:8pxInMGXなにやりゃいいかわかんないんだよな。
0617名前は開発中のものです。
2005/07/11(月) 21:32:34ID:52olu18RC#を一から勉強しようと思ったら、どの本読んだらいいですか?
アマゾンで検索したら、たくさん出てきてわかりません。
0618名前は開発中のものです。
2005/07/11(月) 21:52:00ID:ZIKMY+Oi0619名前は開発中のものです。
2005/07/11(月) 23:20:40ID:XgiYnzTlそうかい?
「いきなりC++でオブジェクト指向は無謀だろ」なら分かるけど、美しいコードを書ける書けないは別として、
初めに触れる言語がC#ってのは別に悪い選択ではないと思うけど。
VBから始めろって?
0620名前は開発中のものです。
2005/07/12(火) 03:15:09ID:DN/b18Hvちょっと調べてみたが、無謀ってほどじゃないかもしれない。
でも、初心者向けの情報が少ない気がする。
0621名前は開発中のものです。
2005/07/12(火) 03:19:59ID:v1s94sc5語ってるとこが多いことかな…。
もっと浸透して情報が充実してくれば、ズブの初心者にも
薦めやすいね。
0622名前は開発中のものです。
2005/07/12(火) 17:36:54ID:j3DbxfBu早速VS.NETを買ってお試し版をインスコしてC#をいじったら、あまりの簡単さに驚きました。
C#楽しすぎです。ハマりました。このスレに来て本当に良かった。
0623名前は開発中のものです。
2005/07/12(火) 17:42:52ID:mK2p84gbサムライワークス)は、英国The Game Creators社の開発した『DarkBASIC Professional』
の日本市場での独占販売権を取得し、『DarkBASIC Professional日本語版』を、
2005年7月8日にダウンロード版にて発売開始致します。
■概要
『DarkBASIC Professional日本語版』は高度な3Dゲームが作成可能な言語ソフトです。
さらにネットワーク対戦ゲームの作成にも対応しております。
今まで難しい言語ソフトを用いる必要があったPCゲームが、『DarkBASIC Professional
日本語版』を使うことにより、豊富な関数を利用して複雑なポリゴン処理を実現する高度な
3Dゲームが作成可能となります。
『DarkBASIC Professional日本語版』で作成したプログラムは、ライセンス使用料及び
著作権使用料がかかりません。
『DarkBASIC Professional日本語版』には、3Dキャラクター作成が可能な『Game Space
Lite』(英語版)とテクスチャ素材や3D素材を数百点を収納した『DarkMATTER』(英語版)
も同梱されていますので、すぐに3Dゲームの作成を始められます。充実した3D
キャラクターや素材があれば、市販ソフトに引けを取らない3Dゲームの制作が可能です。
製品種:Windows用ソフトウェア
製品名:DarkBASIC Professional日本語版
発売元:サムライワークス株式会社
発売日:2005年7月8日(金)
価 格:ダウンロード版 10,500円(税込)本体価格10,000円
パッケージ版 15,750円(税込)本体価格15,000円
http://shop.vector.co.jp/service/catalogue/sr062902/
0624名前は開発中のものです。
2005/07/12(火) 20:40:01ID:MPaBAssW使ってみた人いる?
どうもBASICと付いてると敬遠しがちなんだよなぁ…。
0625名前は開発中のものです。
2005/07/12(火) 22:25:25ID:honq1ZP2>早速VS.NETを買ってお試し版をインスコして
どっちやねん
0626名前は開発中のものです。
2005/07/12(火) 23:04:53ID:5GtjuwsbHLとかDoomみたいなのは作れるってかいてあるね。
俺はまず、2Dドット絵でハアハアしたいからスルーする。
PCのスペックもぎりぎりだし。
C++覚えたら、メタセコ(もしくはGmax)使っての3Dゲーム作成になるだろうし。
0627名前は開発中のものです。
2005/07/12(火) 23:12:55ID:AeOdkOx2VS.NETのtheSpokeには一ヶ月のお試し版が入ってたけど
通常のVS.NETにも似たようなの入ってるんじゃないのかな。
0628名前は開発中のものです。
2005/07/13(水) 01:12:38ID:IYsXcMZv安く始める方法って無いもんだろうか?
0629名前は開発中のものです。
2005/07/13(水) 01:40:21ID:FCH2Av4uその前にβ版がタダで落とせたような。。
0630名前は開発中のものです。
2005/07/13(水) 02:00:51ID:JBA0rRHTとりあえずそれ使ってみればいいんじゃないかな。
0631名前は開発中のものです。
2005/07/13(水) 03:47:27ID:NDTMMzDZ関連
ttp://dbp.cool.ne.jp/program/darkbasic/darkbasic.htm
ttp://dbp.cool.ne.jp/program/
あんまりよくないのかな?
0632名前は開発中のものです。
2005/07/14(木) 03:50:28ID:UjMzKf6R印象最悪。
0633名前は開発中のものです。
2005/07/14(木) 21:09:34ID:3wh0u5ts┏┓ ┗┛ ┏┓ ┗┓┃┏┓┏┓ ┏┛┗━━┓┏━┓ ┃┏━━┓┃
┏┛┗━┓┏┓┏┛┗━┓┃┃┃┃┃┃ ┗┓┏━━┛┗┓┃┏┓┏━━━┓┗┛ ┃┃
┗┓┏━┛┗┛┗┓┏┓┃┗┛┃┃┗┛ ┃┃ ┏┓┗┛┃┃┗━━━┛ ┏━┛┃
┏┛┃┏━┓ ┏┛┃┃┃ ┃┗━━┓ ┃┃┏━┛┗┓ ┃┃ ┃┏━┛
┃┏┛┗━┛ ┗━┛┃┃ ┗━━┓┃ ┃┃┃┏┓┏┛ ┃┃┏┓ ┗┛
┃┃┏━━┓ ┏┛┃ ┏━━┛┃ ┃┃┃┗┛┃ ┃┃┃┗━━┓ ┏┓
┗┛┗━━┛ ┗━┛ ┗━━━┛ ┗┛┗━━┛ ┗┛┗━━━┛ ┗┛
0634名前は開発中のものです。
2005/07/19(火) 20:46:29ID:qScSwJS30635名前は開発中のものです。
2005/07/19(火) 21:10:48ID:ZZ0S2QrVパンチカードだよ
0636名前は開発中のものです。
2005/08/09(火) 00:10:49ID:2wwMbEFD本調べても出し方すら書いてなくて困惑したあの日。
…なんだよ、「WinAPI」って…
0637名前は開発中のものです。
2005/08/09(火) 14:38:43ID:Pzyt95F+いつになったらゲームが作れるんだよ!って思った
0638名前は開発中のものです。
2005/08/09(火) 20:58:24ID:LJpo9fga「どうやってゲーム作るんだよ!」
と思ってた俺よりはましじゃん
0639名前は開発中のものです。
2005/08/10(水) 01:47:11ID:HEQI2yKvそのマニュアルってN88日本語BASIC(86)リファレンスマニュアルとかいうやつ?
C言語にくらべりゃよっぼどゲームに近い事柄が書いてあるはずだけど。
0640名前は開発中のものです。
2005/08/10(水) 22:08:50ID:/D2x7N+EDOSのマニュアルだよ
そのあとにいろいろ勉強して
Works動かしてたんだけどN88BASICの起動の仕方が分からなくて
フロッピーで手に入れてからは毎日プログラミングしていたのは懐かしいおもひで
0641名前は開発中のものです。
2005/08/15(月) 21:01:52ID:Bbh+qhM20642Z
2005/08/15(月) 23:23:31ID:Gue0lvFUwinAPIと言うのはkんたんにいうとウインドウズを動かす命令。
初心者がこれに手を出すのはムボー。まぁ俺はやったけどな。
まずはコマンドラインプログラムから始めれ。
絵は出ないけどCの基本的なプログラムは全部これで出来る。
つうかAPIを使うのは基本的に入出力に対応する部分だけだ。
0643Z
2005/08/15(月) 23:36:29ID:Gue0lvFUおれは学生やってるが片手間にプログラム勉強してWINAPIでしょぼいシューティングを作れたのはプログラムの勉強一から始めてから大体一年か一年半くらいだ。
ま、俺より習得が早い奴はいっぱいいると思うが、凡人はこれくらいかかると思う。
それなりにしんどい。
が、自分の書いた絵が自分のプログラムで自分の思った通りに動いた時はマジで感動した。
ゲーム企画する奴等の殆どはゲーム考えるのはいいけど作るのはめんどい、とか思ってるだろーが、ゲーム作るのはゲームやるよりゲーム企画するより何倍も面白い。
0644名前は開発中のものです。
2005/08/17(水) 01:22:57ID:ouEi3Yb9あれだけ時間がかかったのは俺だけかと思ってた(´Д`)
そうか、やっぱり似たような者はいるものなのだなあ
0645名前は開発中のものです。
2005/08/20(土) 01:57:28ID:LVdXEc+N0646名前は開発中のものです。
2005/08/20(土) 04:36:54ID:rDfBnAE90647名前は開発中のものです。
2005/08/21(日) 00:13:33ID:iqj8Gl3NJAVAだけとは限りません。
0648名前は開発中のものです。
2005/08/21(日) 17:29:54ID:+Hh5s4iZ0649名前は開発中のものです。
2005/08/22(月) 17:29:45ID:fa4xGUL6プレイヤーに見せたくないデータ(セーブや敵キャラの能力)ってどう扱えばいいんですか?
テキストからだた読み取るだけでは見えてしまいます。
APIはwindowsゲームプログラミングを読んだだけの初心者です。
0650名前は開発中のものです。
2005/08/22(月) 18:37:48ID:EYMkfiIXやりかたは知らん('A`)
0651名前は開発中のものです。
2005/08/22(月) 18:46:03ID:Vy3xG4BS0652名前は開発中のものです。
2005/08/22(月) 18:56:01ID:zc7K9NgNstruct {
...
} CData;
CData data;
fwrite(fp, &data, sizeof(CData)); // 多分
バイナリエディタで読み込まれたら終わりだけど★
まあ、公開鍵暗号を使わないと、理論的に完璧な暗号化は無理だし〜
こんなんでいいんとちゃう?
0653名前は開発中のものです。
2005/08/22(月) 19:30:09ID:9J9MKiDwdatとか。それだけで大抵の香具師は読まない。
0654名前は開発中のものです。
2005/08/22(月) 19:35:36ID:9J9MKiDw>まあ、公開鍵暗号を使わないと、理論的に完璧な暗号化は無理だし〜
別に。文字コードに1足すだけでも、それをわざわざ解析してやろうとか
思う香具師は皆無だろ。顧客の個人情報を管理するソフトとか作ろうって
わけじゃないんだし。たとえ解析した香具師がいたとしても製作者のサイト
のランキングページが荒れるだけだろ。
0655名前は開発中のものです。
2005/08/22(月) 19:41:13ID:Vl40RWWU馬鹿の一つ覚えで言ってみたかっただけだろう。
fwriteの使い方も間違えてるし。
0656名前は開発中のものです。
2005/08/22(月) 19:50:42ID:fa4xGUL6レスありがとうございます。
暗号化って以外に難しいんですね。
653さんが仰ってるやり方が簡単そうでいいと思うんですが、
拡張子をdatに変えた場合、ファイルの操作方法はどうなるんでしょうか?
0657名前は開発中のものです。
2005/08/22(月) 20:43:23ID:Vy3xG4BS拡張子なんて、ファイル名の一部に過ぎないでしょ。拡張子でフォーマットが決まるわけではない
0658名前は開発中のものです。
2005/08/22(月) 21:42:19ID:ZXzZUSSsたとえば、.mp3ならWindowsMediaPlayer、.txtならメモ帳、.docならWord というように
プログラム内でファイルをfopen()などで開いて書き込んだりする場合は、拡張子はファイル名の一部の様なものなので、気にする必要はないです
暗号化は、
char chr='a';
printf("%c\n", chr);
printf("%d\n", chr);
これを実行すれば分かるけれど
char型っていうのは出力時に「文字で出力するよ」っていうだけで、中身はint型のように数字で出来てる
これを暗号化用関数と復号化用関数を作って変換させるんですよ
0659名前は開発中のものです。
2005/08/22(月) 21:44:58ID:ZXzZUSSs>OSと
ではなくて
>OS(レジストリ)で起動すべきプログラムと
だった
0660名前は開発中のものです。
2005/08/22(月) 22:35:43ID:jo3Q7A500661656
2005/08/23(火) 00:30:50ID:KDjDsV1vCじゃなくてAPIで操作したいのですが、
その場合も拡張子はファイル名の一部のようなものでしょうか?
0662名前は開発中のものです。
2005/08/23(火) 01:46:47ID:SrVU/fFI0663名前は開発中のものです。
2005/08/23(火) 04:22:41ID:vDlV54JHああ、そうだよ。
君は、このサイト記事が参考になると思う。
ttp://www4.nasuinfo.or.jp/~hobby/Seminer/PG/prog_Text_46/prog_Text_46.html
0664名前は開発中のものです。
2005/08/23(火) 16:36:11ID:qx2o7Jdy一部な上ファイル名そのもの。切れない。
0665656
2005/08/23(火) 20:47:08ID:KDjDsV1vありがとうございます。ファイル名そのものですね。
データを編集したいときはテキストで開けば簡単に数値を変更できますし便利です。
0666656
2005/08/24(水) 00:25:18ID:WpgnZb3T敵キャラの数値をファイルにまとめて読み取る時などは
SetFilePointer()を使ってファイルポインタを動かして
ReadFile()で読み取る以外に方法はないでしょうか?
0667名前は開発中のものです。
2005/08/24(水) 07:00:40ID:63OjkXBDその方法に何か問題点があるなら、それに応じた代替策を提案できるかもしれないけど、
問題ないならそのまま使ったら?
大きく異なる手法を上げるとすれば、
・起動時(またはステージ開始時)に全ての(またはステージ単位の)敵パラメータを読み取っておく
・敵の種類の数だけパラメータファイルを用意する
0668名前は開発中のものです。
2005/08/24(水) 16:44:17ID:b1O43wpTファイルは1個単位で読むのを前提で。
0669名前は開発中のものです。
2005/08/31(水) 14:28:09ID:YTD8Lfou0670名前は開発中のものです。
2005/08/31(水) 15:07:11ID:3y1P0j8fそんな難解じゃないっすよ。
0671名前は開発中のものです。
2005/08/31(水) 15:19:59ID:YTD8Lfou0672名前は開発中のものです。
2005/08/31(水) 17:32:28ID:9MtA7DCZCそのものには画像関連の命令は無いから。
0673名前は開発中のものです。
2005/08/31(水) 17:56:55ID:YTD8Lfou0674名前は開発中のものです。
2005/08/31(水) 20:58:13ID:ImYSjo8H0675名前は開発中のものです。
2005/09/01(木) 09:10:39ID:oU/myrOm0676名前は開発中のものです。
2005/09/01(木) 16:42:33ID:80i9041u0677名前は開発中のものです。
2005/09/04(日) 15:49:08ID:2rlENL7S0678名前は開発中のものです。
2005/09/04(日) 16:17:53ID:pY5fU6eFまずは "Hello C World" を出すんだ!
0679名前は開発中のものです。
2005/09/05(月) 14:11:53ID:/Uvy9rK9でもやるんならCの方がいいかも
どっちを勧める?
0680名前は開発中のものです。
2005/09/05(月) 15:01:42ID:vOn7KYUn0681名前は開発中のものです。
2005/09/13(火) 19:06:39ID:R1ekNPn80682名前は開発中のものです。
2005/09/23(金) 04:40:11ID:mAdwWCmoとりあえず、なにか作りたいならVB.net(習得だけで、ゲームは作れるし。2ヶ月あればそこそこいける)
そうじゃないなら、C
ただし、後者の場合C自体の習得に1ヶ月さらにC++とAPIでもう一ヶ月。DirectXでさらに2ヶ月
ぐらいは掛ると思ったほうがいい。その分、できるようになれば、あれもこれも・・・・
まぁ、無難にVBを薦めておく。
0683名前は開発中のものです。
2005/10/14(金) 12:59:39ID:fMOmUg/Bエロゲを、Nスクとかツール使わずに1からC++で作ろうと思って勉強してますが、難しい…。初心者がコンパイラとサクラエディタだけでやるのは無謀でしょうか?
あとC++以外にも必要ですよね?
0684名前は開発中のものです。
2005/10/14(金) 17:20:55ID:gkfk5Q0Wウィンドウズプログラムが作れるならそれだけでできる。
0685名前は開発中のものです。
2005/10/14(金) 17:34:10ID:aeaumi7fキーボードやマウスの入力に応じてアクション。
とりあえずこれらができればゲームにはなると思うけど。
0686名前は開発中のものです。
2005/10/14(金) 17:52:44ID:fMOmUg/B何のC++と言ってましたが、種類あるんですか!?
今はコンパイラはボーランドの無料体験のを使って勉強してます。
0687名前は開発中のものです。
2005/10/14(金) 19:47:19ID:aeaumi7fC++ も規格で定められた標準があって、Visual C++ なり Borland C++ なりそれぞれの
処理系でしか使えない方言のようなものがある。また、
あなたのいう「C++以外」がどのようなものを想定しているのかは分からないが。
0688名前は開発中のものです。
2005/10/14(金) 20:16:09ID:fMOmUg/BC++以外というのは、(私がおそらく勉強しはじめだからと思うんですが)、コンパイルしてできたexeファイルがコマンドプロンプトの画面でしか実行できないんで、何か他のプログラム?(MFCみたいなの)が必要なのかなと思ってるんです。
ちなみに、まだ入門のクラスやらデストラクタをやっているくらいのレベルです。
0689名前は開発中のものです。
2005/10/14(金) 21:01:53ID:aeaumi7fBCC では使えないので今は気にしなくていい。
Windows っぽいプログラムを作るには Win32 API というものを使う。
↓の MessageBox が API を使う関数。
#include <windows.h>
int main() {
MessageBox(NULL, "こんにちは", "ご挨拶", MB_OK) ;
return 0 ;
}
0690名前は開発中のものです。
2005/10/14(金) 21:46:02ID:fMOmUg/Bきっかけがわかったので、あとはググって調べてみたいと思います。
ゲームできるように頑張ります。ありがとうございました。
0691名前は開発中のものです。
2005/11/06(日) 00:21:26ID:mbThmoV0って本を読んで
最初の「単なるウィンドウを出す」ソースを打ち込んでみました。
・・エラー二つ出てコンパイル不可。
自分の入力がおかしかったのかと思い
付属ディスクのソースでコンパイル。
・・やっぱりエラー二つ出て不可orz
始まって9ページ目からつまづきました。
本は買わずに、図書館で借りてきてよかったけれども。
VC++5.0を使っているのですが、こんなこともあるんですね。
とりあえずウィンドウ出してみたいんだけどなあ。
また本探しだ。
0692名前は開発中のものです。
2005/11/06(日) 02:16:19ID:H89u4wz4猫でもわかるのソースは新しいコンパイラだとエラーが出るよ
多分キャストされてないからだと思う
0693名前は開発中のものです。
2005/11/06(日) 02:19:39ID:H89u4wz4を
(HBRUSH)GetStockObject(WHITE_BRUSH)
とキャストするべし
0694名前は開発中のものです。
2005/11/06(日) 11:45:36ID:/qYnhYYiお返事ありがとうございます。
教えていただいたキャストは行われていたようです。
すみませんです^^;
(ソースの冒頭より一部)
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
ATOM InitApp(HINSTANCE);
BOOL InitInstance(HINSTANCE, int);
char szClassName{} = "sample01"; //ウィンドウクラス
int WINAPI WinMain(HINSTANCE hCurInst, HINSTANCE hPrevInst,
LPSTR lpsCmdLine, int nCmdShow)
{(←ここでエラー出されてます)
(エラー内容)
無効なトークン '{' が 'szClassName' の宣言の後にあらわれました。
'int' : 指定された型は、識別子の名前を指定せずに宣言されています。
このようなエラー内容なのですが、おかしいのはどこなのでしょうか。
0695名前は開発中のものです。
2005/11/06(日) 11:58:51ID:5AL+nx1Zchar配列は {} じゃなくて [] だろう。
Windows云々の前にC言語をちゃんと勉強したほうがいいと思う。
0696名前は開発中のものです。
2005/11/06(日) 12:11:51ID:/qYnhYYiあ、すみません。打ち間違えですね。
けれど、打ち変えても同じエラーが出るのですが・・
(本付属のディスクのサンプルプログラムを使用しても同じエラーです)
0697名前は開発中のものです。
2005/11/06(日) 13:54:49ID:5AL+nx1Z助言したくてもどんな状況か分からないと出来ないよ。
そこは直したって事は別の箇所でしょ?
0698名前は開発中のものです。
2005/11/06(日) 16:42:55ID:dJcGHn62エラー場所は同じ箇所です。
状況は>>694から全く変わっていないです。
>>696の「同じエラーがでるのですが・・」では意味が通らなかったでしょうか。
すみません。
0699名前は開発中のものです。
2005/11/06(日) 18:28:31ID:5AL+nx1Zソースの全文上げてみたら? どこがおかしいか分かるかもしれない。
0700名前は開発中のものです。
2005/11/06(日) 19:56:10ID:UGRO2i2zまた本読み直したりしてみます。
ご親切に色々お付き合い頂きありがとうございましたm(_ _)m
0701名前は開発中のものです。
2005/11/11(金) 12:28:04ID:FFStqdSM1からC++をはじめたら、エロゲーみたいなのが作れるようになるまでどんくらいかかりますか?
あとCPPだけであんなふうにゲーム作れるんでしょうか?
0702名前は開発中のものです。
2005/11/12(土) 11:32:48ID:RI28v1Tc人によるとしか言い様がありません。
> あとCPPだけであんなふうにゲーム作れるんでしょうか?
CPPとは? C++ のことならプログラミング面でなら C++ の処理系だけで基本的には事足りるでしょう。
「あんなふう」がどんなのなのか具体的に分かりませんが。エロゲーといってもいろいろあるだろうし。
0703名前は開発中のものです。
2005/11/20(日) 04:02:52ID:PktMjKAY答えます。
貴方には一生不可能です。断言できます。
0704名前は開発中のものです。
2005/11/27(日) 01:04:59ID:/NJpQ+YX言語はC++ならちょくちょく出来ます。
0705名前は開発中のものです。
2005/11/27(日) 03:05:29ID:p26Hn0q50706704
2005/11/28(月) 01:44:03ID:C7MsayDa時間はかかると思いますが。
でも、設計や実現方法などがよくわからなくて・・・。
ソースを添削したり、ご意見などを頂ければうれしいのですが。
ちなみにこのようなゲームはアクションゲームを参考に作った方が良いのですか?
0707名前は開発中のものです。
2005/11/28(月) 09:44:35ID:WgbuxrsV少なくともWin32プログラムに関しては、私よかできるっぽい。
まずはゲーム作りのさわりの部分だけなら、
少しだけお役に立てるかも。てゆか、プログラム晒したらここ見てる
私以外のすぺしゃるなプログラマさんもアドバイスくれるかと。
私はWindowsのDDBとDIBしか知らないので、
それ以外の描画法ではお役に立てないっぽいです。。
さて、では現在以下の事項のどれぐらいが可能ですか?
・窓出す
・絵出す
・Bitmap読み込み関数作れる
・キー入力で絵を動かす
・ダブルバッファリング
・背景を切り抜いてキャラ表示
あ、例がほしいなら言ってくだされ。
ぶっちゃけ超雑魚である私も一緒にお勉強したいから ^^
0708名前は開発中のものです。
2005/12/02(金) 19:30:32ID:F4c1AUXc0709名前は開発中のものです。
2005/12/03(土) 17:15:18ID:2thd4ss9日曜プログラマー再開した俺も混ぜてクレ
・Bitmap読み込み関数作れる :
これはLoadImageでFile、リソースを読むのと、
BITMAPファイルヘッダBITMAPINFOでDIB作ってそこに読み込むのあるよね。
DIBはMicrosoftのCDibってクラスがネットにころがってるのを利用してる(便利だとおも)
LoadImageでしばらく苦労した。
リソースを読み込む場合
m_hImg1 = ::LoadImage(GetModuleHandle(NULL), MAKEINTRESOURCE(IDB_BITMAP1),
IMAGE_BITMAP,0,0,LR_LOADTRANSPARENT);
MAKEINTRESOURCE()を使ってやっと読み込めた。これって普通なのかな?
・ダブルバッファリング
やろうとしてそのタイミングで悩みました。MFCでやってるからかな。
今は
void CChildView::PreSubclassWindow() {
...
AfxGetApp()->m_pMainWnd->GetWindowRect(rct); //ClientRectでは駄目みたい
CClientDC dc(this);
m_pdcView = new CDC;
m_pdcView->CreateCompatibleDC(&dc);
m_memView.CreateCompatibleBitmap(&dc,rct.Width(),rct.Height());//適切な大きさってなんだろう?
m_pOldbmp = m_pdcView->SelectObject(&m_memView);
...
}
PresubclassWindow newしてますが他にもっと自然な方法とかありますか?
0710名前は開発中のものです。
2005/12/03(土) 17:25:58ID:dfndRTr40711名前は開発中のものです。
2005/12/03(土) 19:21:57ID:2thd4ss9げげげ、ななななぜですぅ?
0712名前は開発中のものです。
2005/12/04(日) 04:55:45ID:CQnjNx+rなんだこれは。暗号か?嫌がらせか?みんな、こんな難しいことやってんのか?
…これからは、どんなにしょぼいゲームでも馬鹿にしないようにしよう…
0713名前は開発中のものです。
2005/12/04(日) 13:58:01ID:vtdx6wPJ0714名前は開発中のものです。
2005/12/04(日) 15:42:06ID:oNAAJPS20715名前は開発中のものです。
2005/12/04(日) 17:27:23ID:DkqQT6e2GUIを使わないなら利点を得られないってことかな。
ゲームはWindows特有のコード部分はあまりないんで。
細かいとこもいじりやすいし。
0716名前は開発中のものです。
2005/12/04(日) 19:45:24ID:6fWhhFktあれは意外と良いモノだ。
0717名前は開発中のものです。
2005/12/08(木) 01:20:21ID:3+4J7RKTWTL7.1はダウソしてありますが、まだ未熟者なのでしばらくMFC環境でシコシコやってました。
でも、704も707も居なくなってしまったんですな…
漏れが混ぜてクレなどと書いたのがいかんかったかなとか思って書き込みやめてみたんですが
0718名前は開発中のものです。
2005/12/08(木) 01:31:21ID:3+4J7RKT「背景を切り抜いて」
なんですが、これはやぱりモノクロビットマップでマスク用DDBを作りますよね?
で、基本はファイルからDIBに読み込んで置いて、からDDBを作って同時にマスク用DDBも作る
って感じで DIBとは別にDDBのクラスを作っているところ
この場合、別のクラスにしてしまうつもりなんですが、DIBのクラスを継承してDDBイメージも持たせちゃう方がいいですかねぇ?
0719名前は開発中のものです。
2005/12/08(木) 16:32:55ID:e3zTKzAY0720名前は開発中のものです。
2005/12/09(金) 00:48:19ID:6JCB2/dT707で
・背景を切り抜いてキャラ表示
なのでてっきりマスクDDB作るのかなあと思ってました。
DIBだけの処理なんですが、学習中なので24bitビットマップ同士とかの処理しかできませんorz
最近DIBからImage本体とMask用のDDBをセットでクリエイトする方法をやってみようとしてたところだったんで
その方向で書いてました。
マスクビットマップあると何気に面白いッス
0721名前は開発中のものです。
2005/12/11(日) 21:55:14ID:A2uaBpyMおれもここに来て勉強するぞー
0722名前は開発中のものです。
2005/12/12(月) 03:10:23ID:FQHOjORN無料だよ?
0723名前は開発中のものです。
2005/12/12(月) 16:39:01ID:/6d62phh0724名前は開発中のものです。
2005/12/12(月) 17:06:07ID:6Xf+w43J0726名前は開発中のものです。
2005/12/12(月) 22:22:17ID:6zRxv5j6頑張れよー
ここを読んでおくといいかもWTL(>>716お勧めのやつ)を使えるようにする方法
ttp://pc8.2ch.net/test/read.cgi/tech/1131590396/16-18
俺はVC6のままなんでやってない
0727721
2005/12/13(火) 21:39:35ID:+8731oKE('`)ァァァァァァ
0728名前は開発中のものです。
2005/12/14(水) 00:59:33ID:gXhStAxvEXPRESSでHDDってどれぐらい食うの?
0729名前は開発中のものです。
2005/12/14(水) 01:03:51ID:gXhStAxv自己解決 1.3GBだな、漏れはXPのSP2入れてないから…
0730名前は開発中のものです。
2006/01/03(火) 01:19:16ID:ILudQXI1また、誰も居なくなってしまったなー
一般的なズブの初心者にはMSの要求スペックは高すぎってことかなと
ズブの初心者が始められる環境を考えてみようと調べてみた。
(漏れも初心者級なので自分のためにもなる)
ズブの初心者でも周りに仲間が居る場合は問題ないのでそうじゃない場合を考えてみる。
0731名前は開発中のものです。
2006/01/03(火) 01:21:18ID:ILudQXI1言語:HSPに行っちゃう方が自然だが9月からの流れはCというかC++
C++でエロゲ、猫でも本のコンパイルが出来ない(これはCなんだがキャストがウザイのはC++風味)
なんだかC++以前の気もするが気を取り直してつづきを
0732名前は開発中のものです。
2006/01/03(火) 02:08:57ID:ILudQXI1書く元気がなくなりましたorz
0733だめぽ
2006/01/04(水) 02:01:11ID:NsRcQhHm0734名前は開発中のものです。
2006/01/05(木) 12:15:09ID:opsCm8oAネット環境が携帯しかないのでなかなか検索にそういうサイトがひっかかりませんors
0735名前は開発中のものです。
2006/01/05(木) 15:14:18ID:nA3IOc/i0736名前は開発中のものです。
2006/01/05(木) 18:53:07ID:wT0vTzhf0737名前は開発中のものです。
2006/01/05(木) 22:49:38ID:VxCiBCK1がんばってみようかと思います。
手元にあるのはVC6.0。何年かかるか分からないけどコツコツいくかー。
0738名前は開発中のものです。
2006/01/05(木) 23:52:20ID:Iwa/nYiX0739名前は開発中のものです。
2006/01/06(金) 00:48:35ID:3rlWXs0P0740BM777
2006/01/06(金) 23:46:58ID:9HXkPUFz漏れも、この間からC言語を独学で勉強し始めた
お互いがんがろう
0742名前は開発中のものです。
2006/01/07(土) 02:42:54ID:CYKFf4iJ猫さんの最初のソースをビルドしたら、キャスト作れみたいになった。調べたらキャストってC独特みたい。難しい。ビルドできない。最初の壁かも。
0743名前は開発中のものです。
2006/01/07(土) 03:33:27ID:pvfxVtyV0744名前は開発中のものです。
2006/01/07(土) 06:56:37ID:i8N5i8L1char* test = (char*)hoge;
0745名前は開発中のものです。
2006/01/07(土) 07:02:38ID:Oh/tRVLDどこの何行目で引っかかってるかを言え。
さすれば道が開けるかもしれん。
0747名前は開発中のものです。
2006/01/07(土) 11:55:24ID:CYKFf4iJ明示的なキャスト…Cの本も必要かな。買ってこよう。
0748名前は開発中のものです。
2006/01/07(土) 14:53:35ID:f7WS+7/d恐らく、キャストしろってのは
CのソースをC++でコンパイルしているから言われるんだと思う。
ここからはソース見ずに憶測で書くので
見当違いなこと言ってるかもしれんが、ソースの最後の方に
return msg.wParam;
ってのがあって、そこでキャストしろと言われたりしていないか?
そこでは
return (int)msg.wParam;
と直せばうまくいくはず。これでエラーが消えたと思われ。
もしかしたら、HBRUSHにキャストしろというエラーも出てるかもしれんが
これは自分でエラー文見てどこ直せばいいか探してくれ。
0749748
2006/01/07(土) 14:59:28ID:f7WS+7/dttp://www.s34.co.jp/cpptechdoc/article/newcast/
正直C++もこなせていない予感がする。
焦らずに基本的な文法を復習してから
ウインドウズプログラミングに臨むといいと思われ。
0750名前は開発中のものです。
2006/01/07(土) 15:54:29ID:h1OItEz00751名前は開発中のものです。
2006/01/07(土) 16:50:54ID:CYKFf4iJちなみにエラーは、HBRUSH関連のキャストでした。
0752名前は開発中のものです。
2006/01/07(土) 17:36:04ID:Oh/tRVLDそれたぶん普通にCタイプのキャストすれば通るよん。
0753名前は開発中のものです。
2006/01/07(土) 21:21:21ID:CYKFf4iJはい。それはわかるんですが、勉強不足のため、どうキャストしたら良いのかわからないんです。
なのでCでキャストについて勉強してみたいと思います。皆さん、御返答ありがとうございました。
0754名前は開発中のものです。
2006/01/07(土) 21:59:01ID:/sz4CCM9myProg.hbrBackground =(HBRUSH )GetStockObject(WHITE_BRUSH);
0755名前は開発中のものです。
2006/01/07(土) 22:59:56ID:CYKFf4iJキャストの意味が理解できました。感謝です!
0756754
2006/01/08(日) 00:44:22ID:o+AQmuYaでも.CPPじゃなしに.Cでやってればキャストなしで通ってwindowでたッスよ
(cppでやるぜって気概は買いますが)
0757名前は開発中のものです。
2006/01/08(日) 02:35:41ID:d3j6rpHj.Cでやると、fatal error LNK1181でファイルが開けませんってエラーが出るんです。
使用環境は、VC2005EEにPSDKとDXSDKを足してやってます。
ちなみに、.CPPでキャストをしたら、ビルドできました。中の文字は意味不明になってましたが順次解決していきます。
0758名前は開発中のものです。
2006/01/08(日) 02:51:25ID:d3j6rpHj.Cのビルドについては自己解決しました。
あとはこの文字化けをなんとかして先にすすみます。早くゲーム作りたいです。
0759名前は開発中のものです。
2006/01/08(日) 02:59:44ID:o+AQmuYaLINKエラーの1181はファイルがないよーーってやつでコンパイルはOKだったってことだとオモ
VC2005は持ってないので分かんないけどVC6では普通に一発OKだった。
BCC5.5.1も -WでBCC32で一発OKでした。
VC++ではWIN32Applicatinで空のプロジェクトを作ってそこに入れただけだったんだがなあ。
別のPCにExpressを入れる予定だから入れたらやってみます。
0760名前は開発中のものです。
2006/01/08(日) 03:00:31ID:o+AQmuYaあ、解決してたのね
0761名前は開発中のものです。
2006/01/08(日) 10:20:02ID:DwXHldUB0762737
2006/01/08(日) 22:45:59ID:RME4f8+W以上チラシの裏
0763名前は開発中のものです。
2006/01/09(月) 20:50:10ID:KX7zE/S40764名前は開発中のものです。
2006/01/10(火) 00:52:51ID:rFvJ1h8qお恥ずかしながら、まだ原因を調べてます。
UNICODE関連であることはLPCWSTRとかでわかったのですが、まだ頑張ってます。ゲーム作るためにも技術をものにします。
0765名前は開発中のものです。
2006/01/10(火) 01:01:16ID:rFvJ1h8q0766名前は開発中のものです。
2006/01/10(火) 01:16:32ID:/DfQw9pI解決おめー
0767名前は開発中のものです。
2006/01/13(金) 12:32:42ID:pjySecNp0768名前は開発中のものです。
2006/01/13(金) 20:26:46ID:bAYwWLWcゲーム製作のためにこの板に辿り着いた奴は応援する!!
でも、面倒なので、面倒はみませんよ?
0769名前は開発中のものです。
2006/01/14(土) 02:17:49ID:wEcomfFF0770名前は開発中のものです。
2006/01/15(日) 15:23:59ID:QdXt5qeiよーし、それじゃ使用するC++のコンパイラを決めよう
Visual Studio C++ 2005 Express か BCC5.5.1どちかを使うか決めてくれ
(gccやdev-cこのスレでは無理っぽいぞ)
0771名前は開発中のものです。
2006/01/15(日) 15:29:14ID:QdXt5qeiまー、>737はVC6だが、その上の椰子も一人はVC6後は消えた
0772名前は開発中のものです。
2006/01/15(日) 16:45:34ID:ldWKl/mO0773名前は開発中のものです。
2006/01/15(日) 19:24:40ID:QdXt5qeiソリューション エクスプローラで
***.rcをクリックするとリソースビューが出てしまいますよね。
これは腹が立つので、**.rcを右クリックしてとりあえずTextEditorを既定値にしませうw
メニューの追加などは、しばらくエディターでやるしかないんですが
同時にResouce.hを開いて、
#define _APS_NEXT_SYMED_VALUE110
の値をみると110なので追加するときは上で#fdefine ID.... 110以上の値を書いてやる。
それに応じて#define _APS_NEXT..もつじつまがあうように直しておくと良いかも。
これでメニューの追加ぐらいは何とかなりますね。
772を読んでからBCCFormを関連付けしてやってみたら、DialogBoxでウザいことになってしまったorz
0774名前は開発中のものです。
2006/01/15(日) 20:43:32ID:ldWKl/mO>772はExpressでつ。最初からリソース自体がグレーアウトしてて選択できないんで、resouce.hも作れないんで自分でヘッダ、リソースファイル書いてます。
0775名前は開発中のものです。
2006/01/15(日) 20:52:28ID:Bt49Np5Dよーしそれじゃ前者だ
ってか有償ソフト必要?
0776773
2006/01/15(日) 21:27:46ID:+fLmdGs2え?俺の773はExpressでやった結果だよ?
もしかしてSDK入れた後に設定変更やってないの?
MSの 「Visual C++ 2005 Express Edition と Microsoft Platform SDK を一緒に使う」
http://www.microsoft.com/japan/msdn/vstudio/express/visualc/usingpsdk/
とか
ttp://nrttkr.cocolog-nifty.com/blog/2005/12/visual_c_2005_e_482f.html
とかで書いてあるように
パスを通した後
corewin_express.vspropsでLIBのリンク対象を増やして
AppSettings.htmの 441行目から444行までの4行をコメントアウト
上記が終わっていれば:
するとMSの説明とは微妙に違うけど
1)Win32コンソールアプリケーション
2)現在のプロジェクト設定
・コンソールアプリケーション
ここで完了しないで<次へ>を押せばWINDOWsアプリケーションが選べるようになってるはず
0777名前は開発中のものです。
2006/01/15(日) 21:38:16ID:hwi3ZD0n上の方で>721が Visual StudioC++2005 ExpressをダウンロードしたけどHDDの容量不足で泣いたようだ。
自分のPCに合わせてBCC5.5,1かExpressかを選ぶことになる。
PSDKは無料、DirectXSDKも無料だから始めるには無料ですむ。
BCCは無料の開発環境を見つける。BccDev,Visual Windows for BC++,CPad,あたりだと思う。
私もズブの素人なのでこの程度しか知らない。
0778774
2006/01/15(日) 22:11:16ID:ldWKl/mO0780名前は開発中のものです。
2006/01/15(日) 23:10:21ID:i/VC3fIaああー、余計なお世話だったのね
リソースエディタですが、先ほど言ったBCCFormでMENUとかは行けると思いますよ。
0781名前は開発中のものです。
2006/01/16(月) 02:00:54ID:trG9y2lEいえ、情報感謝しております。ム板でフリーのリソースエディタ公開してるサイトが貼られていたので、試しにそれも使ってみます。
0782名前は開発中のものです。
2006/01/16(月) 12:44:55ID:MB7AKpRcttp://www.wilsonc.demon.co.uk/d10resourceeditor.htm
XN Resouce Editorっスな、それ使えますなあ(日本語とか選べるし)
私の実力ではBBCForm、XNどちらを使うときもプロジェクトをUNCODEからMBCSにしないと駄目だけど
Expressの使い方で発見とかあったら教えてくだしあ(UNICODEは参考になったっス)
0783名前は開発中のものです。
2006/01/16(月) 19:12:30ID:trG9y2lEそれでつ。
お互い頑張りましょう!
ちなみに、私はノベルゲーム作りたく頑張ってます。
0785名前は開発中のものです。
2006/01/30(月) 01:34:04ID:HLYcyJ8jウィ
0786名前は開発中のものです。
2006/01/31(火) 20:59:07ID:O6FIK+STすれ違いかもしれませんが次おすすめの本あるでしょうか?
ちょっと背伸びすると急に難度が高くなってさっぱりで困ってます。
0787名前は開発中のものです。
2006/01/31(火) 21:33:34ID:EQhJsvLP0788名前は開発中のものです。
2006/01/31(火) 21:50:25ID:d111+hE/Windowsでのプログラムを前提として答えると
翔泳社 プログラマ養成入門講座 VisualC++(1)山本信雄 が良いかな。
背伸びしなくて行けます
それと折角C++をやってるんだから気分を出すために、オライリーのリファレンス2冊
C++ライブラリ、C++ランゲージ、お金に余裕があるならこの2冊は持っててOk
背伸びしないにしても、読まないにしてもリファレンスは持っていたほうが良いです。
0789名前は開発中のものです。
2006/02/05(日) 00:58:34ID:6a/MIZ7zそしてサウンドノベルを作って公開しようという
創作文芸板の企画です。
ミステリ編のメインシナリオは完成し、体験版もできています。
こちらに関してはあとは音、画像の挿入。分岐シナリオライター募集など。
ほかにホラー編も作成中。==ライターは別の人。
現時点において人手不足のため、スタッフを募集しています。
現在作成決定中のシナリオ
【ミステリー編 】 メインシナリオ完成
揺光の下、白日を待つ。 ―disaster&light―
【島の謎 脱出編 】企画段階
赤い月夜に、鬼が哭く。 -Demon cries over the night of a red moon-
【島の謎 解明編】シナリオ執筆中
夜を謳う、悪夢と共に。 ―nightmarescatter―
サウンドノベル企画6改-鬼哭島殺人事件
http://book3.2ch.net/test/read.cgi/bun/1105746809/
1◆VSiZ17Eht氏の運営する総合案内・リンクサイト
http://akasaka.cool.ne.jp/novel2ch/index.html
まとめページ(体験版=選択肢なしであるけどミステリ編メインシナリオ)
[創作文芸]サウンドノベル企画
http://www.aaa-www.net/~sosaku/
0790名前は開発中のものです。
2006/02/05(日) 01:08:54ID:PsBnitWb0791名前は開発中のものです。
2006/02/05(日) 08:23:07ID:xrnjocLM0792名前は開発中のものです。
2006/02/05(日) 09:41:20ID:c7olZgCS0793名前は開発中のものです。
2006/02/05(日) 11:42:15ID:IblN+hmcなんだこれw
タイトルが大仰な所が厨くせえw
0794名前は開発中のものです。
2006/02/05(日) 18:31:02ID:KXWCIvRf初心者にお勧めの簡単なお題ををお願いいします
0795名前は開発中のものです。
2006/02/05(日) 18:33:36ID:bCNcEVl1まずブロック崩し
そしてシューティング
が王道じゃね?
0796名前は開発中のものです。
2006/02/05(日) 18:33:57ID:laLI4TA8消えろ
0797名前は開発中のものです。
2006/02/06(月) 00:20:35ID:vMsEOgkQお題をくれてやるから
できたら必ず申告しろ
1:「ゲムデヴ wiki」とぐぐる
2:その中の段階的学習を読んで感想文を書く
0798名前は開発中のものです。
2006/03/13(月) 15:51:09ID:SdjQ4hhJまずHSPいれた
mes "hello, HSP"
F5を押した
「実行用ランタイムファイルが見つかりません。」
挫折した
0799名前は開発中のものです。
2006/03/13(月) 16:08:45ID:OU7yAgnPゲーム作るまで実況するんだろ?
そんなことで挫折してどうする
0800名前は開発中のものです。
2006/03/13(月) 16:16:41ID:SdjQ4hhJさっきは3.1βを入れたのがまずかったらしい
過去ログ読んで勉強中
>>32に感動した
でもそれは3目並べじゃないと思った
0801名前は開発中のものです。
2006/03/13(月) 16:32:48ID:SdjQ4hhJawait 1
cls
pos 0,0: mes mousex
pos 0,16: mes mousey
goto *start
うまく動かない
clsとawaitの位置を入れ替えたらうまくいくが理由がわからない
気にしても仕方がないので次いってみよー
>>799
人間は挫折の数だけ賢くなるんやでってあんちゃんがいってた
0802名前は開発中のものです。
2006/03/13(月) 17:19:17ID:SdjQ4hhJmap_width=79
map_height=59
dim map, map_width, map_height
//一番外の壁
for y, 0, map_height
for x, 0, map_width
map.x.y=1
next
next
for y, 1, map_height-1
for x, 1, map_width-1
map.x.y=0
next
next
//1マス間隔で置く
for y, 2, map_height-2, 2
for x, 2, map_width-2, 2
map.x.y=1
next
next
0803名前は開発中のものです。
2006/03/13(月) 17:21:43ID:SdjQ4hhJ//計算用の補助変数
dim ax,4
dim ay,4
ax.0=0
ax.1=1
ax.2=0
ax.3=-1
ay.0=-1
ay.1=0
ay.2=1
ay.3=0
//1マス間隔の壁のまわりにランダムに置く
for y, 2, map_height-2, 2
for x, 2, map_width-2, 2
rx=x+ax.rnd(4)
ry=y+ay.rnd(4)
map.rx.ry=1
next
next
for y, 0, map_height
for x, 0, map_width
if map.x.y=1:boxf x*8, y*8, x*8+7, y*8+7
next
next
0804名前は開発中のものです。
2006/03/13(月) 17:30:32ID:SdjQ4hhJ迷路風の模様を表示するプログラム作成
スクリーンショット
http://gamdev.org/up/img/4977.png
ソース
>>802-803
キー入力がよくわからないのでうpろだとwiki見てくる
0805名前は開発中のものです。
2006/03/13(月) 17:47:11ID:SdjQ4hhJCやDelphiだらけでちょっと焦る
HSPやってる場合じゃないのか・・・・
ジエンの無人島
http://gamdev.org/w/?%5B%5B%A5%B8%A5%A8%A5%F3%A4%CE%CC%B5%BF%CD%C5%E7%5D%5D
やっとHSPのソースをみつけた
stick命令の使い方を把握
変数に日本語を使えることに感動
if ゲーム状態==移動モード {
if 入力キー==32 : ゲーム状態=会話モード : gosub *チャット窓表示 : return
if 入力キー==1 : MOVE送信="move,"+NO+",-1,0" : ゲーム状態=待機モード : return
if 入力キー==2 : MOVE送信="move,"+NO+",0,-1" : ゲーム状態=待機モード : return
if 入力キー==4 : MOVE送信="move,"+NO+",1,0" : ゲーム状態=待機モード : return
if 入力キー==8 : MOVE送信="move,"+NO+",0,1" : ゲーム状態=待機モード : return
}
ひょっとしてこれMMORPGですか
スゲー!
0806名前は開発中のものです。
2006/03/13(月) 17:53:06ID:SdjQ4hhJstick 入力キー,15,1
0807名前は開発中のものです。
2006/03/13(月) 18:28:11ID:SdjQ4hhJawait 1
cls
boxf x,y,x+8,y+8
stick keyboard,15,1
switch keyboard
case 1
x=x-1
swbreak
case 2
y=y-1
swbreak
case 4
x=x+1
swbreak
case 8
y=y+1
swbreak
swend
goto *start
stick命令は把握した
次は画面にbmpファイルとか絵を出す
0808名前は開発中のものです。
2006/03/13(月) 19:00:53ID:SdjQ4hhJpicload "utada.jpg",2 //裏画面に読み込み。これも非表示なので2
screen 0,640,480 //表示する画面は0、大きさを640x480に設定
*start
await 1 //これ絶対いれないとフリーズする
gcopy 2,i,0,640,480 //画面2からコピーする。コピー先はscreenで指定した画面
i=i+1
goto *start
stop
screen命令がちょっとやっかいだった
これは二種類のことを同時にしてるんだと理解した
・画面をつくる
・描画する画面を切り替える
で、疑問に思ったのが切り替えだけする方法がないの?ってこと
screen命令だと今まで描いた絵が消されてしまう
とにかく入力と描画ができたのでなんかゲームつくりはじめてみる
0809名前は開発中のものです。
2006/03/13(月) 20:01:07ID:kuAEAR8Z0810名前は開発中のものです。
2006/03/13(月) 21:32:02ID:SdjQ4hhJサンキュー
これでチラツキを抑えることができる!
0811名前は開発中のものです。
2006/03/13(月) 22:03:40ID:HzWMyKDs0812名前は開発中のものです。
2006/03/13(月) 22:05:55ID:Lc/l5cjL初心者卒業かと。。。
0813名前は開発中のものです。
2006/03/14(火) 00:31:13ID:gjKc/A8Oマウス座標はwait等でOSにタスクを移した時にmousex,yに代入される
clsは画面だけでなく他の情報もクリアされる
801の場合
await 1 ;マウス座標収得
cls ;マウス座標クリア
当然mousexは0
画面クリアを他の命令で行うか、clsの後にawait 0にする
しかし、clsを使う場合はclsからawait中にマウスの動きが無い場合
マウス座標収得はできない
0814名前は開発中のものです。
2006/03/14(火) 00:36:39ID:gAnxDyH2「設計」って言葉の意味がわからない。
そんなオレのプログラムはいつも途中で破綻しちゃうのさ・・
0815名前は開発中のものです。
2006/03/14(火) 14:18:43ID:cumlLL/Uメインループにあれもこれも積んで
1フレーム中にすごい数の処理をするようになってしまいました
必要な時に呼び出すタスクシステムってのを見たんですが
むずいですね・・・
あまりにソースがごちゃごちゃなんで今1から作り直してます・・
0816名前は開発中のものです。
2006/03/14(火) 20:16:51ID:BjyEc4sd設計図=フローチャートや変数表とか?UMLってやつもそうなのかな
だいたいこんな理解だ
0817名前は開発中のものです。
2006/03/14(火) 20:55:57ID:BjyEc4sdscreen 1,640,480,2
//自機
screen 2,32,32,2
picload "jiki.bmp",2
//敵機
screen 3,128,128,2
picload "teki.bmp",2
//変数
cx=320
cy=400
cx_min=0
cx_max=640-128
tx=100
ty=32
tx_min=0
tx_max=640-128
tx_speed=8
tx_dir=tx_speed
0818名前は開発中のものです。
2006/03/14(火) 20:56:28ID:BjyEc4sdcls 4
repeat
//敵を動かす
tx=tx+tx_dir
if tx>tx_max : tx_dir=-1*tx_speed : ty=ty+8
if tx<tx_min : tx_dir= tx_speed : ty=ty+8
//裏画面を作る
gsel 1,-1
cls 4
await 1
pos cx,cy: gcopy 2, 0,0
pos tx,ty:gcopy 3, 0,0,128,128
//表画面へコピー
gsel 0,1
pos 0,0: gcopy 1,0,0,640,480
loop
0819名前は開発中のものです。
2006/03/14(火) 21:02:21ID:BjyEc4sdやっぱ作りながら覚えるのがプログラミングですよね
昨日教えてもらった命令を使ってチラツキ対策完了
敵が左右に動くところまで作った
次は自機の操作を作ってくる
0820名前は開発中のものです。
2006/03/14(火) 21:26:18ID:BjyEc4sdstick keyboard,15,1
switch keyboard
case 1
cx=cx-cx_speed
swbreak
case 4
cx=cx+cx_speed
swbreak
case 64
if benable=0 {
benable=1
bx=cx+16
by=cy
}
swend
if cx>cx_max : cx=cx-cx_speed
if cx<cx_min : cx=cx+cx_speed
//自機弾
if benable=1 {
by=by-bspeed
if by<0 : benable=0
}
0821名前は開発中のものです。
2006/03/14(火) 21:33:19ID:BjyEc4sdhttp://gamdev.org/up/img/5002.jpg
ゲームっぽいふいんき(なぜか変換できない)になってきた
移動中に攻撃(なぜか反応しない)のバグがある
弾や敵をいっぱい出す方法を考え中
>>815で話題にでてたタスクシステムって奴を勉強しないといけないのか……
0822名前は開発中のものです。
2006/03/14(火) 23:19:42ID:BjyEc4sdscreen 1,640,480,2
//自機
screen 2,32,32,2
picload "jiki.bmp",2
//敵機
screen 3,128,128,2
picload "teki.bmp",2
//変数
cx=320
cy=400
cx_min=0
cx_max=640-32
cx_speed=4
tx=100
ty=32
tx_min=0
tx_max=640-128
tx_speed=8
tx_dir=tx_speed
dim bx,10
dim by,10
dim bspeed,10
dim blength,10
dim benable,10
0823名前は開発中のものです。
2006/03/14(火) 23:20:26ID:BjyEc4sdbspeed.i=16
blength.i=16
benable.i=0
next
screen 0,640,480
cls 4
repeat
//敵を動かす
tx=tx+tx_dir
if tx>tx_max : tx_dir=-1*tx_speed : ty=ty+8
if tx<tx_min : tx_dir= tx_speed : ty=ty+8
//自機操作
stick keyboard,15,1
switch keyboard
case 1
cx=cx-cx_speed
swbreak
case 4
cx=cx+cx_speed
swbreak
case 64
for i, 0, 10
if benable.i=0 {
benable.i=1
bx.i=cx+16
by.i=cy
goto *fire_end
}
0824名前は開発中のものです。
2006/03/14(火) 23:20:57ID:BjyEc4sd*fire_end
swend
if cx>cx_max : cx=cx-cx_speed
if cx<cx_min : cx=cx+cx_speed
//自機弾
for i,0,10
if benable.i=1 {
by.i=by.i-bspeed
if by.i<0 : benable.i=0
}
next
//裏画面を作る
gsel 1,-1
cls 4
await 1
pos cx,cy: gcopy 2, 0,0
pos tx,ty:gcopy 3, 0,0,128,128
for i,0,10
if benable.i=1 : color 255,255,255: line bx.i, by.i, bx.i, by.i+blength.i
next
//表画面へコピー
gsel 0,1
pos 0,0: gcopy 1,0,0,640,480
loop
0825名前は開発中のものです。
2006/03/14(火) 23:45:46ID:BjyEc4sd配列確保して弾を使い終わったらフラグをオフにしてる
ソース
>>822-824
最高何発まで出せるかが配列に制限される
これをなんとかしたい
案1.配列をたくさん確保しておく
何の解決にもなってないけど今の知識では現実的な妥協点
メリット:実現の目処が立っている
デメリット:必要な配列数を事前に計算する必要がある
あまりデメリットはないかもしれない
案2.動的に確保する(線形リスト)
思いついたコードがこれ
pNext=5
dim task, 5
dim a.pNext, 5
配列に配列を入れるっていう方法で線形リストを作れないか試したけど失敗
案3.動的に確保する(動的配列)
まず2つの配列を用意する
増減があるたびにdimで配列を確保してコピーする
増減が多いと配列全体のコピーが頻発するからゲームには向かないっぽい
増減が少ない場合は空の配列をチェックしなくて済むので案1.より高速
どれもいまいちピンとこない
0826名前は開発中のものです。
2006/03/15(水) 08:54:51ID:BmU2n3lC案1でとりあえずはいいんじゃないか。
0827名前は開発中のものです。
2006/03/15(水) 11:18:33ID:IR0XDvMy案3でいけ
0828名前は開発中のものです。
2006/03/15(水) 22:53:10ID:CsslkguR0829名前は開発中のものです。
2006/03/15(水) 23:43:00ID:CsslkguRタスクは次の情報をもっている
・キャラクタ1体の情報(X、Y座標やHPなど)
・キャラクタの振る舞い(どのサブルーチンを呼ぶか)
・次のキャラクタ(次にどのタスクを実行すればいいか)
タスクが繋がった状態のデータ構造をタスクリストという
タスクシステムは次の機能をもっている
・タスクの追加
・タスクの削除
ほかの言語だと「次のキャラクタ」にポインタを使う
そうすれば動的に確保したタスクを使えるからだ
でもHSPにはポインタがない
代わりに配列の添え字を使う
もし配列のサイズが足りなくなれば案3(>>825)の方法で配列を大きくする
ただし頻繁にサイズを変更するとデータのコピーに時間が時間がかかる
そこでサイズを変更するときは1つずつ増やすのではなく一気にたくさん増やす
まとめ終わり
とりあえず今考えてることをまとめてみた
Dim命令で配列サイズ変更すると内容がすべて0クリアされるのが痛い
「1つずつ増やすのではなく〜」の部分はこれを書いている最中に思いついた
これさえうまく組めばサイズ可変は速度低下ほぼなしでいけそう
0830名前は開発中のものです。
2006/03/16(木) 03:29:18ID:gXQpHvOVタスク追加とサブルーチン呼ぶところまでできた
0831名前は開発中のものです。
2006/03/16(木) 04:04:18ID:UYzIbXI8ズブってなんですか?
ゲーム作るのに金かかりますか?
一般人の俺はゲーム作っていいんですか?
オンラインアクションゲームを作るのは可能ですか?
0832名前は開発中のものです。
2006/03/16(木) 10:13:31ID:M0PRq3Kf0833名前は開発中のものです。
2006/03/16(木) 10:23:03ID:Je4b2YY9すごいまとまってて参考になる
0834名前は開発中のものです。
2006/03/16(木) 11:40:58ID:bQj4ToZf0835名前は開発中のものです。
2006/03/16(木) 11:53:42ID:Je4b2YY9ベストじゃないです。
余程の意思がない限り大学に行くべきです。
俺は専門学生ですが。
0836名前は開発中のものです。
2006/03/16(木) 18:11:24ID:EYKWwJp5釣り乙
0837名前は開発中のものです。
2006/03/16(木) 21:49:10ID:gXQpHvOVオンラインアクションゲー作りたいよねー
O2ってのがいいらしいから、もう少しHSPに慣れたらやってみたい
お金かかるのってやっぱ本代だよね、クオリティ高い3Dだとグラフィックボードも必要だし
>>833
情報サンクス
http://gamdev.org/w/?%5B%5B%A5%BF%A5%B9%A5%AF%A5%B7%A5%B9%A5%C6%A5%E0%5D%5D
タスクシステムってページ(↑)だよね
今ちょっと詰まってるから気分転換に読んでる
>>834
ゲームクリエイター志望ですか?スゲー
難関らしいですががんばってください
0838名前は開発中のものです。
2006/03/16(木) 22:02:29ID:gXQpHvOVgosub *init_task
screen 0,640,480
screen 1,640,480,2
repeat
gsel 1,-1
cls 4
await 1
color 255,255,255
gosub *task_factory0
//タスクシステム実行
gosub *run_task
//デバッグ情報
mes "---sp---"
mes sp
mes "---np---"
mes np
mes "---TaskList---"
gosub *show_task_busy
// gosub *show_task_null
// gosub *show_task_all
//裏画面を表にコピー
gsel 0,1
gcopy 1,0,0,640,480
loop
stop
0839名前は開発中のものです。
2006/03/16(木) 22:03:02ID:gXQpHvOV*sub0
tl.it.2=tl.it.2+cos(tl.it.4/100)*10
tl.it.3=tl.it.3+sin(tl.it.5/100)*10
pset tl.it.2, tl.it.3
if (tl.it.2 < 0) or (tl.it.2 > 640) or (tl.it.3 < 0) or (tl.it.3 > 480) {
tl.it.6=1
}
return
*sub1
return
*sub2
return
*sub3
return
*sub4
return
0840名前は開発中のものです。
2006/03/16(木) 22:03:32ID:gXQpHvOV*init_task
Dim tl,100,10 //タスクリスト 2番目の添え字の0は次のタスクへのポインタ、1は呼び出すサブルーチン、2以降はキャラデータ
//2,3座標 4,5加速度 6死亡フラグ
sp=0 //使用中タスク先頭
np=1 //空きタスク先頭 0なら残りなし
repeat 100
tl.cnt.0=cnt+1
loop
tl.0.0=0
tl.99.0=0
//この初期化でリストは次のように繋がる
//sp -> 0
//np -> 1 -> 2 -> 3 -> ... -> 0
return
0841名前は開発中のものです。
2006/03/16(木) 22:36:03ID:gXQpHvOV*add_task
//空きタスクが無ければ何もしない
if np=0 : return
//空きタスクから一つ取り出す
tmp=np
np=tl.np.0
//新しいタスク(=取りだしたタスク)がどのサブルーチンを呼ぶか設定
tl.tmp.1=add_task_sub
//新しいタスクにゲームデータを代入
tl.tmp.2=add_task_2
tl.tmp.3=add_task_3
tl.tmp.4=add_task_4
tl.tmp.5=add_task_5
tl.tmp.6=add_task_6
//取り出したタスクに利用中タスクの先頭ポインタを渡す
tl.tmp.0=sp
//先頭ポインタを新しく追加したタスクにする
sp=tmp
return
0842名前は開発中のものです。
2006/03/16(木) 22:36:34ID:gXQpHvOV*del_task
//SP直後の要素を書き換える場合はSPを書き換える必要があるので
//特別な処理をする
if del_task_index=0 {
//空タスクに移動
tmp=tl.sp.0
tl.sp.0=np
np=sp
//切れたタスクリストを繋ぐ
sp=tmp
return
}
it=sp
repeat del_task_index-1
it=tl.it.0
loop
//削除するタスクを待避
tmp=tl.it.0
//待避した穴を埋める
tl.it.0=tl.tmp.0
//待避したタスクを空リストに入れる
tl.tmp.0=np
np=tmp
return
0843名前は開発中のものです。
2006/03/16(木) 22:37:07ID:gXQpHvOV*show_task_all
repeat 100
mes tl.cnt.0
loop
return
//タスクリストの状態表示 使用中タスク(Debug用)
*show_task_busy
its=sp
while its ! 0
mes tl.its.0
its=tl.its.0
wend
return
//タスクリストの状態表示 空きタスク(Debug用)
*show_task_null
its=np
while its ! 0
mes tl.its.0
its=tl.its.0
wend
return
0844名前は開発中のものです。
2006/03/16(木) 22:37:39ID:gXQpHvOV*run_task
it=sp
while it ! 0
switch tl.it.1
case 0
gosub *sub0
swbreak
case 1
gosub *sub1
swbreak
case 2
gosub *sub2
swbreak
case 3
gosub *sub3
swbreak
case 4
gosub *sub4
swbreak
swend
it=tl.it.0
wend
gosub *check_kill
return
*check_kill
return
0845名前は開発中のものです。
2006/03/16(木) 22:38:22ID:gXQpHvOVadd_task_sub=0
add_task_2=320
add_task_3=240
add_task_4=rnd(628)
add_task_5=rnd(628)
add_task_6=0
gosub *add_task
return
*task_factory1
add_task_sub=1
gosub *add_task
return
*task_factory2
add_task_sub=2
gosub *add_task
return
*task_factory3
add_task_sub=3
gosub *add_task
return
*task_factory4
add_task_sub=4
gosub *add_task
return
0846名前は開発中のものです。
2006/03/16(木) 23:12:27ID:DsY5+sJ30847名前は開発中のものです。
2006/03/16(木) 23:53:12ID:EYKWwJp5そんな知能ないんだろ
黙って猿の曲芸を見守ってようぜww
0848名前は開発中のものです。
2006/03/17(金) 00:17:11ID:sXFQVN9ihttp://gamdev.org/up/img/5037.jpg
ソース
>>838-845
画面中央から球が発生して四散するプログラム
画面外に出た弾はフラグたてて後からまとめて削除してるんだけどうまくつくれない
タスクシステムってデバッグが難しいな
>>829の時点でまとめて削除する場合のこと考えてなかったから何か破綻してるのかも・・・・
もう少し弄ってうまくいかなければ一時凍結して他のこと始める予定
一度離れたほうが冷静になれるよね
0849名前は開発中のものです。
2006/03/17(金) 00:37:57ID:sXFQVN9i2ちゃんに書き込んでおくと時系列で思い出しやすいし備忘録として使える
本当は↓こういうのに連動したアップローダがあればいいのにって思うけどな
http://www.krugle.com/
http://www.koders.com/
http://www.codefetch.com/
見づらいかもしれないから何かいい方法ないか考えとく
gamdevろだはテキスト不許可だしzipにすると解凍まんどくせ
0850名前は開発中のものです。
2006/03/17(金) 00:57:18ID:sXFQVN9i:;' /:/ `メ、 i: ハ: i: : ii:i ヽ: i: :ii; : : : :iヽ: :
i: :i: i: i/,ィ=ミヽi: iヽNi:i_`iL:H---i:i: ヽ
i: :i :i / {.iトgj:i ヽ! lルィ丁゙)‐ミ「!: :ii/: : i
;':/ヾム⊂つ'´ i:.;{iil1:ソ i:i:::i !: : i:
: i: /: iト 、,,ミニっ /i/゚: o i .
: i:/: : i 、`_  ̄/.:/: : : i: :
: /: .::ハ ゙llllllル `ヽ //. : :/! i: . <あやまれ!お猿さんにあやまれっ
/: .::/:::/`、 lll/: : : : :} /〃:./: /i iハ!
i. ::/i::/::::::i::ヽ`三ー 'ノ , イ/: /: /.::i i::::::
::::///::::::::i:::i:..ヽ---<::::/:::/: :/: : i iヽ::
0851名前は開発中のものです。
2006/03/17(金) 22:57:46ID:sXFQVN9i0852名前は開発中のものです。
2006/03/18(土) 00:09:23ID:UdlfWr/Sでもこれ名前つけられるようになってる意味がわからん
0853名前は開発中のものです。
2006/03/18(土) 00:26:22ID:UdlfWr/S・・・・ひとつの配列ですべての種類のデータを格納できれば・・・・いらないはず・・・・
配列の増減をDimでするなら・・・・・・ポインタで繋ぐ意味はない・・・・
0854名前は開発中のものです。
2006/03/18(土) 01:15:18ID:UdlfWr/S■タスクシステム
・すべての種類のデータを一つのリスト構造に納めることができる
・データの増減が可能
・HSPで擬似的に実現してるために前者はワーク領域のデータ型が制限される、
・後者は増減時に時間がかかってしまうのでメリットは少ない
■フラグ法
・タスクの利用可否をフラグで判断する方法
・実行時に配列すべてを走査する必要がある
・平均実行時間がタスクリストの最大実行時間と同じ程度になる
■最大値可変法
・擬似的な動的配列を実現する方法
・追加するときは配列の最大値を加算し末尾に代入する
削除するときは削除するタスクに末尾のタスクを上書きコピーし配列の最大値を減算する
・平均実行時間はタスクリストと同じ程度
0855名前は開発中のものです。
2006/03/18(土) 02:14:46ID:pDqUPpztHSP暦1年6ヶ月の漏れからアドバイスだ
0856名前は開発中のものです。
2006/03/18(土) 09:15:01ID:UdlfWr/S0857名前は開発中のものです。
2006/03/18(土) 10:08:17ID:vA7d8xvUHSPは2.6? 3.0からは配列変数は越えた分は自動確保されますよ。いきなり読み込むと
エラーになりますが。
0858名前は開発中のものです。
2006/03/18(土) 10:53:43ID:UdlfWr/S確認してきた
ほんとだ、スゲー!感動した
>>825>>829>>854あたりの発言は取り消す
根本的に発想を変えなきゃいけないみたいだ
0859名前は開発中のものです。
2006/03/18(土) 11:16:12ID:xi+rxGkkタスクシステムの。
0860名前は開発中のものです。
2006/03/18(土) 22:38:18ID:UdlfWr/Sturn=0
//変数
Dim tl,MAX,3 //敵
repeat MAX
tl.cnt.0=1 //利用中(0=否)
tl.cnt.1=0 //呼び出すサブルーチン
tl.cnt.2=(cnt*64)\640 //X座標
tl.cnt.3=(cnt*64)/640*64 //Y座標
loop
cx=320
cy=440
//裏画面
screen 1,640,480,2
//自機
screen 2,32,32,2
picload "jiki.bmp",2
//敵機
screen 3,32,32,2
picload "teki.bmp",2
screen 0,640,480
0861名前は開発中のものです。
2006/03/18(土) 22:38:49ID:UdlfWr/Srepeat
//裏画面を作る
gsel 1,-1
cls 4
await 1
//自機
cx_speed=8
stick keyboard,15,1
switch keyboard
case 1
cx=cx-cx_speed
if cx<0 : cx=0
swbreak
case 4
cx=cx+cx_speed
if cx>639-32 : cx=639-32
swbreak
case 64
if benable=0 {
benable=1
bx=cx+16
by=cy
}
swend
pos cx,cy: gcopy 2, 0,0
0862名前は開発中のものです。
2006/03/18(土) 22:41:48ID:UdlfWr/Sif benable=1 {
by=by-8
if by<0 : benable=0
color 255,255,255
line bx, by, bx, by-16
}
//敵機
turn=0
ndir=dir
repeat MAX
if tl.cnt.0 = 1 {
pos tl.cnt.2,tl.cnt.3:gcopy 3, 0,0,32,32
tl.cnt.2 = tl.cnt.2+dir
if (tl.cnt.2 <= 0) : ndir=1
if (tl.cnt.2 >= 602) : ndir=-1
//あたり判定
if benable and tl.cnt.2<bx and tl.cnt.2+32>bx and tl.cnt.3<by and tl.cnt.3+32>by: tl.cnt.0 = 0
}
loop
if dir!ndir {
repeat MAX
tl.cnt.3=tl.cnt.3+4
loop
}
dir=ndir
0863名前は開発中のものです。
2006/03/18(土) 22:42:30ID:UdlfWr/Sgsel 0,1
pos 0,0: gcopy 1,0,0,640,480
loop
0864名前は開発中のものです。
2006/03/19(日) 01:32:22ID:AaENy85a・敵がインベーダーっぽく動く
・自機が左右に動く
・自機が弾を発射できる
・弾が敵に当たると消滅する
ソース
>>860-863
左右移動中にCTRLを押しても弾が撃てないorz
タスクシステムに変わって配列でデータを管理することにした
インベーダーゲームなら敵は減るばかりだから問題はない
タスクシステムと比べて
・単純でデバッグもしやすい
・速度も問題はない
タスクシステムの存在意義がわからなくなってきた
やっぱり>>855が結論なのか・・・・
でも>>859が気になる
0865ホスプロ ◆HOTsoUpxjY
2006/03/19(日) 01:48:59ID:nuu57z8E一人で作る場合タスクはなくてもなんとかなる。
複数人で仕様も変わる状況への対処法だから。
それよりルーチンを切り分けてモジュール化して
一からやり直すハメにならない方が大事だと思う。
メインループから外注に出せば把握できるでしょ。
とかいって「そんなのは嘘だ!」とか
ここから1000まで叩かれまくったりして…
0866名前は開発中のものです。
2006/03/19(日) 02:55:38ID:iAmpuYbz0867名前は開発中のものです。
2006/03/19(日) 07:27:37ID:VCd0X5P4HSP2.xでのscreen 1はスクリーンセーバーとかで使う特殊な画面なので、バッファ用には
2以降を使うのがセオリーです。っと、裏画面がscreenって、ちゃんとbufferという非表示の
スクリーンを作る命令がありますぜい。
>>864
キー入力の判定でswitch命令を使ってるけど、それぞれにswbreakがあるんで、ひとつでも
該当すると構文から抜け出ちゃいます。それにswitch文での比較判定は単純にイコールだけ
になっちゃうので、左を押しながら弾を撃つという状態のチェックができません。
ここは素直にif文で
if keyboard & 1 : cx=cx-cx_speed : if cx < 0 : cx=0
if keyboard & 4 : cx=cx+cx_speed : if cx > 639-32 : cx=639-32
if keyboard & 64 : if benable == 0 : benable=1 : bx=cx+16 : by=cy
というふうに。(=ではなく&で)
0868名前は開発中のものです。
2006/03/20(月) 05:09:20ID:5iZ2gAyz//初期化
gosub *Boot_Initialize
gosub *Play_Initialize
*Start
repeat
//裏画面を作る
gsel 2,-1
cls 4
await 1
//自機
cspeed=8
stick keyboard,15,1
if keyboard & 1 {
cx=cx-cspeed
if cx<0 : cx=0
}
if keyboard & 4 {
cx=cx+cspeed
if cx>639-32 : cx=639-32
}
if keyboard & 64 {
if benable=0 {
benable=1
bx=cx+16
by=cy
}
}
0869名前は開発中のものです。
2006/03/20(月) 05:12:32ID:5iZ2gAyz//自機弾
if benable=1 {
by=by-8
if by<0 : benable=0
color 255,255,255
line bx, by, bx, by-16
}
//敵機
ndir=dir
repeat MAX
if tl.cnt.0 = 1 {
pos tl.cnt.2,tl.cnt.3:gcopy 4, 0,0,32,32
tl.cnt.2 = tl.cnt.2+dir
if (tl.cnt.2 <= 0) : ndir=1
if (tl.cnt.2 >= 602) : ndir=-1
//あたり判定
if benable and tl.cnt.2<bx and tl.cnt.2+32>bx and tl.cnt.3<by and tl.cnt.3+32>by: tl.cnt.0 = 0 : Score=Score+10 : Teki_Rest = Teki_Rest - 1
//敵が接地したか
if tl.cnt.3 > 448 : invasion = 1
}
loop
if dir!ndir {
repeat MAX
tl.cnt.3=tl.cnt.3+4
loop
}
0870名前は開発中のものです。
2006/03/20(月) 05:13:03ID:5iZ2gAyzColor 255, 255, 255
pos 200,0 : mes "Score"
pos 300,0 : mes Score
if Score > HighScore : HighScore = Score
pos 0,0 : mes "High-Score"
pos 100,0 : mes HighScore
//表画面へコピー
gsel 0,1
pos 0,0: gcopy 2,0,0,640,480
if Teki_Rest=0 : gosub *Stage_Initialize
if invasion=1 : gosub *Play_Initialize
loop
//ステージ初期化
*Stage_Initialize
Stage_Num = Stage_Num + 1
Dim tl,MAX,3 //敵
repeat MAX
tl.cnt.0 = 1 //利用中(0=否)
tl.cnt.1 = 0 //呼び出すサブルーチン(未使用)
tl.cnt.2 = ( cnt * 64 ) \ 640 //X座標
tl.cnt.3 = ( cnt * 64 ) / 640 * 64 //Y座標
loop
cx=320
cy=440
0871名前は開発中のものです。
2006/03/20(月) 05:13:36ID:5iZ2gAyzTeki_Rest=MAX
invasion = 0
cls 4
Color 255, 255, 255
pos 280,240 : mes "Stage"
pos 340,240 : mes Stage_Num
AWait 1000
return
//プレイ初期化
*Play_Initialize
Stage_Num=0
Score=0
gosub *Stage_Initialize
return
//起動時の初期化
*Boot_Initialize
HighScore=74
Score=0
//裏画面
buffer 2,640,480
0872名前は開発中のものです。
2006/03/20(月) 05:14:08ID:5iZ2gAyz//自機
buffer 3,32,32
picload "jiki.bmp"
//敵機
buffer 4,32,32
picload "teki.bmp"
screen 0,640,480
cls 4
return
0873名前は開発中のものです。
2006/03/20(月) 07:00:23ID:PMTGalOb0874名前は開発中のものです。
2006/03/20(月) 08:45:22ID:mOdDXP9C0875名前は開発中のものです。
2006/03/20(月) 14:47:22ID:pEmfXrsX0876名前は開発中のものです。
2006/03/20(月) 15:05:28ID:B4K2jB010877名前は開発中のものです。
2006/03/20(月) 17:45:46ID:piMMOlj9HSPでは速度的に辛い
特にswitchで死ねる
0878名前は開発中のものです。
2006/03/20(月) 21:00:31ID:nDP36KvpPascalみたく宣言部つくって、
定数や変数、サブルーチンを宣言しておけば
けっこう大丈夫じゃない?
いや、もちろんしなくていいんだけど
漏れはそうしてるよ。
0879名前は開発中のものです。
2006/03/20(月) 23:23:08ID:jcANfyCOやっぱポインタは初心者を遠ざけるのか?
0880名前は開発中のものです。
2006/03/20(月) 23:33:27ID:mOdDXP9C俺がそうだったw
0882名前は開発中のものです。
2006/03/21(火) 00:11:53ID:jcmOwNd8ましてや統合環境が欲しいならさらに使い方を覚えなくちゃいけないな。
GUIはそんなに難しくないと思うけど?
むしろ、GUIに辿り着くまでのが厳しいと思う。
とはいえ、ゲームだからGUIは避けて通れないな
0883名前は開発中のものです。
2006/03/21(火) 04:31:56ID:KZa94AFT簡単に作れる というのと
手軽さ というのは違うぞ。
確かにC++やRubyで組んだほうが最終的には
”カンタン”に済ませられるのはモチロン知っているが
この”手軽さ”はやめられない
0884名前は開発中のものです。
2006/03/21(火) 08:51:03ID:TsEgs7Ul気になる点をいくつか。
>//自機
>cspeed=8
これが定数ならば、メインループから外して初期化ルーチンで記述したほうがよいです。
毎フレームで定義されてて無駄な処理になってるんで。
あと、
>pos 200,0 : mes "Score"
>pos 300,0 : mes Score
これは
pos 200,0 : mes "Score : "+Score
でもok(" : "は任意で)なんだけど、なにかしら別の意図が?
awaitの使い方も気になるけど、今のところは実害ある利用方法じゃないので、とりあえず
のちほど。…でもawait 1はPCスペックによって実行速度に差がでるか。
0885名前は開発中のものです。
2006/03/22(水) 08:51:55ID:4wbvXuWaインデントはもう全部タブに書き換えたから大丈夫
さらに続いて撃ち返し弾を実装したソースをうp予定
インデント失敗orz
HSPのエディタはタブが2個並んでると置換されないことがある(メモ帳だとうまくいった)
行頭にタブとスペースが混ざってるのもインデントが崩れた原因
ソース
>>868-872
・敵を全滅させると次のステージに進む
・スコア、ハイスコア機能追加
・敵が地面にくるとゲームオーバー(ステージ1から再スタート)
・screenを>>867で教えてもらったbuffer命令に置き換えた
・移動中に弾がでない不具合を修正(>>867)
0886名前は開発中のものです。
2006/03/22(水) 08:54:20ID:4wbvXuWa置換されなくなるまで同じ操作を繰り返してスペースを&nbsp;に置換完了
0887名前は開発中のものです。
2006/03/22(水) 08:54:51ID:4wbvXuWa#define cspeed 8 //自機移動速度
#define EBULLET_MAX 50 //敵弾数最大
//初期化
gosub *Boot_Initialize
gosub *Play_Initialize
*Start
repeat
//裏画面を作る
gsel 2,-1
cls 4
await 1
//自機
stick keyboard,15,1
if keyboard & 1 {
cx=cx-cspeed
if cx<0 : cx=0
}
if keyboard & 4 {
cx=cx+cspeed
if cx>639-32 : cx=639-32
}
if keyboard & 64 {
if benable=0 {
benable=1
bx=cx+16
0888名前は開発中のものです。
2006/03/22(水) 08:55:38ID:4wbvXuWa}
}
pos cx,cy: gcopy 3, 0,0
//自機弾
if benable=1 {
by=by-8
if by<0 : benable=0
color 255,255,255
line bx, by, bx, by-16
}
//敵機
ndir=dir
repeat MAX
if tl.cnt.0 = 1 {
pos tl.cnt.2,tl.cnt.3:gcopy 4, 0,0,32,32
tl.cnt.2 = tl.cnt.2+dir
if (tl.cnt.2 <= 0) : ndir=1
if (tl.cnt.2 >= 602) : ndir=-1
0889名前は開発中のものです。
2006/03/22(水) 08:56:09ID:4wbvXuWaif benable and tl.cnt.2<bx and tl.cnt.2+32>bx and tl.cnt.3<by and tl.cnt.3+32>by {
tl.cnt.0 = 0
Score = Score + 10
Teki_Rest = Teki_Rest - 1
gosub *Enemy_Fire
}
//敵が接地したか
if tl.cnt.3 > 448 : invasion = 1
}
loop
if dir!ndir {
repeat MAX
tl.cnt.3=tl.cnt.3+4
loop
}
dir=ndir
0890名前は開発中のものです。
2006/03/22(水) 10:49:46ID:4wbvXuWarepeat EBULLET_MAX
color 255,255,255
if bl.cnt.0 = 1 {
line bl.cnt.2, bl.cnt.3, bl.cnt.2, bl.cnt.3 + 16 //描画
bl.cnt.3 = bl.cnt.3 + 8 //移動
if bl.cnt.3 > 480 : bl.cnt.0 = 0 //画面外なら使用終了
if bl.cnt.2 > cx and bl.cnt.2 < cx + 32 and bl.cnt.3 > cy and bl.cnt.3 < cy+32 : Dead = 1 //自機との当たり判定
}
loop
Color 255, 255, 255
pos 200,0 : mes "Score : " + Score
if Score > HighScore : HighScore = Score
pos 0,0 : mes "High-Score : " + HighScore
//表画面へコピー
gsel 0,1
pos 0,0: gcopy 2,0,0,640,480
if Teki_Rest=0 : gosub *Stage_Initialize
if invasion=1 or Dead = 1 : gosub *Play_Initialize
loop
0891名前は開発中のものです。
2006/03/22(水) 13:19:37ID:DEs7YkunCの半分くらいの時間でソース書けるんだが
短すぎて書いた気がしない
0892名前は開発中のものです。
2006/03/22(水) 16:53:56ID:4wbvXuWa*Stage_Initialize
Stage_Num = Stage_Num + 1
Dim tl, MAX, 3 //敵
Dim bl, EBULLET_MAX, 3 //敵の弾
repeat MAX
tl.cnt.0 = 1 //利用中(0=否)
tl.cnt.1 = 0 //呼び出すサブルーチン(未使用)
tl.cnt.2 = ( cnt * 64 ) \ 640 //X座標
tl.cnt.3 = ( cnt * 64 ) / 640 * 64 //Y座標
loop
cx=320
cy=440
benable=0
Teki_Rest=MAX
invasion = 0
Dead = 0
cls 4
Color 255, 255, 255
pos 280,240 : mes "Stage " + Stage_Num
AWait 1000
return
0893名前は開発中のものです。
2006/03/22(水) 16:54:27ID:4wbvXuWa*Play_Initialize
Stage_Num=0
Score=0
gosub *Stage_Initialize
return
//起動時の初期化
*Boot_Initialize
HighScore=74
Score=0
//裏画面
buffer 2,640,480
//自機
buffer 3,32,32
picload "jiki.bmp"
//敵機
buffer 4,32,32
picload "teki.bmp"
screen 0,640,480
cls 4
return
0894名前は開発中のものです。
2006/03/22(水) 16:54:57ID:4wbvXuWa*Enemy_Fire
// bl.cnt.0 //使用中かどうか
// bl.cnt.1 //弾道サブルーチン(未使用)
// bl.cnt.2 //X座標
// bl.cnt.3 //Y座標
teki_num=cnt
repeat EBULLET_MAX
if bl.cnt.0 = 0 {
bl.cnt.0 = 1
bl.cnt.2 = tl.teki_num.2+16
bl.cnt.3 = tl.teki_num.3
break
}
loop
return
0895名前は開発中のものです。
2006/03/22(水) 19:50:05ID:4wbvXuWa>>887-894
文字列が足し算できるなんて・・・メチャクチャ楽じゃないか・・・
スレの流れ的にC++まんせーですね
今ちょうど区切りがいいので移植に挑戦してみようかな
グラフィックの複雑さがネック
dupptrやvarptrを使えばHSPでもポインタが使えるみたいなので
ひょっとしてタスクシステム作れるかもしれない
前回は無計画に作って想定してない箇所(タスクの削除がうまく作れなかった)でハマったので
今度は計画的に
敵や敵弾のバリエーションを増やしてギャラクシアン風に作り替えたい
動きにバリエーションをつけるのは初めから考えていたこと
いかにもゲームらしい部分なのでおもしろそう
やりたいことが3つもできてしまったのでとりあえず寝てきます
どれから手をつけようか……
0896名前は開発中のものです。
2006/03/22(水) 21:51:47ID:quA0O7ZOまぁポリゴンとかは出来ないけどさ。
0897名前は開発中のものです。
2006/03/23(木) 10:01:54ID:5WNqQ2iY#define MAX 50 //敵の数最大
#define cspeed 8 //自機移動速度
#define EBULLET_MAX 50 //敵弾数最大
#include "DxLib.h"
//プロトタイプ宣言
void Boot_Initialize();
void Play_Initialize();
void Stage_Initialize();
void Enemy_Fire(int cnt);
//変数宣言
int tl[MAX][4]; //敵
int bl[EBULLET_MAX][4]; //敵の弾
int cx=0, cy=0;
int bx=0, by=0, benable=0;
int ndir=0, dir=0;
int tspeed=0, Teki_Rest=0;
int Score=0, HighScore=0;
int Dead=0, invasion=0;
int Stage_Num=0;
int HGJiki=0;
int HGTeki=0;
0898名前は開発中のものです。
2006/03/23(木) 10:02:25ID:5WNqQ2iYLPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
//初期化
Boot_Initialize();
Play_Initialize();
//裏画面
SetDrawScreen( DX_SCREEN_BACK ) ;
//*Start
while (1)
{
ClsDrawScreen() ;
WaitTimer( 1 ) ;
//自機
if( CheckHitKey( KEY_INPUT_LEFT ) == 1 )
{
cx=cx-cspeed;
if (cx<0) cx=0;
}
0899名前は開発中のものです。
2006/03/23(木) 10:03:24ID:5WNqQ2iY{
cx=cx+cspeed;
if (cx>639-32) cx=639-32;
}
if( CheckHitKey( KEY_INPUT_LCONTROL ) == 1 )
{
if (benable == 0) {
benable=1;
bx=cx+16;
by=cy;
}
}
DrawGraph( cx , cy , HGJiki , FALSE ) ;
//自機弾
if (benable == 1) {
by=by-8;
if (by<0) benable=0;
DrawLine(bx, by, bx, by-16, GetColor(255,255,255));
}
0900名前は開発中のものです。
2006/03/23(木) 10:04:13ID:5WNqQ2iYndir=dir;
for (int cnt=0 ; cnt<MAX ; cnt++)
{
if (tl[cnt][0] == 1)
{
DrawGraph( tl[cnt][2], tl[cnt][3], HGTeki , FALSE ) ;
tl[cnt][2] = tl[cnt][2]+dir;
if (tl[cnt][2] <= 0) ndir = tspeed;
if (tl[cnt][2] >= 602) ndir = -tspeed;
//あたり判定
if (benable && (tl[cnt][2] < bx) && ((tl[cnt][2] + 32) > bx) && (tl[cnt][3] < by) && ((tl[cnt][3]+32) > by) )
{
tl[cnt][0] = 0;
Score = Score + 10;
Teki_Rest = Teki_Rest - 1;
0901名前は開発中のものです。
2006/03/23(木) 10:04:46ID:5WNqQ2iY}
//敵が接地したか
if (tl[cnt][3] > 448) invasion = 1;
}
}
if (dir != ndir) {
for (int cnt=0 ; cnt<MAX ; cnt++)
{
tl[cnt][3] = tl[cnt][3] + 4;
}
}
dir = ndir;
0902名前は開発中のものです。
2006/03/23(木) 13:33:20ID:5WNqQ2iYfor (int cnt=0 ; cnt<EBULLET_MAX ; cnt++)
{
if (bl[cnt][0] == 1)
{
bl[cnt][3] = bl[cnt][3] + 8; //移動
DrawLine(bl[cnt][2], bl[cnt][3], bl[cnt][2], bl[cnt][3] + 16, GetColor(255,255,255)); //描画
if (bl[cnt][3] > 480) bl[cnt][0] = 0; //画面外なら使用終了
if ((bl[cnt][2] > cx) && (bl[cnt][2] < cx + 32) && (bl[cnt][3] > cy) && (bl[cnt][3] < cy+32)) Dead = 1; //自機との当たり判定
}
}
DrawFormatString( 200, 0, GetColor(255,255,255), "Score : %d", Score);
if (Score > HighScore) HighScore = Score;
DrawFormatString( 0, 0, GetColor(255,255,255), "High-Score : %d", HighScore);
// 裏画面の内容を表画面に反映させる
ScreenFlip() ;
0903名前は開発中のものです。
2006/03/23(木) 13:33:50ID:5WNqQ2iYif (Teki_Rest <= 1) tspeed=4;
if (Teki_Rest == 0) Stage_Initialize();
if ( (invasion == 1) || (Dead == 1) ) Play_Initialize();
// Windows システムからくる情報を処理する
if( ProcessMessage() == -1 ) break ;
// ESCキーが押されたらループから抜ける
if( CheckHitKey( KEY_INPUT_ESCAPE ) == 1 ) break ;
}
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
0904名前は開発中のものです。
2006/03/23(木) 13:34:21ID:5WNqQ2iYvoid Stage_Initialize()
{
Stage_Num = Stage_Num + 1;
ZeroMemory(tl, sizeof(tl)); //Dim tl, MAX, 3 //敵
ZeroMemory(bl, sizeof(bl)); //Dim bl, EBULLET_MAX, 3 //敵の弾
for (int cnt=0 ; cnt<MAX ; cnt++)
{
tl[cnt][0] = 1; //利用中(0=否)
tl[cnt][1] = 0; //呼び出すサブルーチン(未使用)
tl[cnt][2] = ( cnt * 64 ) % 640; //X座標
tl[cnt][3] = ( cnt * 64 ) / 640 * 64; //Y座標
}
cx=320;
cy=440;
benable=0;
tspeed=1;
0905名前は開発中のものです。
2006/03/23(木) 13:34:52ID:5WNqQ2iYinvasion = 0;
Dead = 0;
ClsDrawScreen();
DrawFormatString( 280, 240, GetColor(255,255,255), "Stage : %d", Stage_Num);
ScreenFlip() ;
WaitTimer( 1000 ) ;
return;
}
//プレイ初期化
void Play_Initialize()
{
Stage_Num=0;
Score=0;
Stage_Initialize();
return;
}
0906名前は開発中のものです。
2006/03/23(木) 13:35:36ID:5WNqQ2iYvoid Boot_Initialize()
{
HighScore=74;
Score=0;
HGJiki = LoadGraph( "jiki.bmp" ) ;
HGTeki = LoadGraph( "teki.bmp" ) ;
ClsDrawScreen();
return;
}
//敵が弾を発射
void Enemy_Fire(int cnt)
{
// bl.cnt.0 //使用中かどうか
// bl.cnt.1 //弾道サブルーチン(未使用)
// bl.cnt.2 //X座標
// bl.cnt.3 //Y座標
0907名前は開発中のものです。
2006/03/23(木) 14:22:32ID:sWF0/S5O乙。未実装の敵弾以外は普通に動いたよ。
とりあえず、敵のフラグと座標は構造体にしてみては?
0908名前は開発中のものです。
2006/03/24(金) 03:47:56ID:r2mkgPf1for ( cnt=0 ; cnt<EBULLET_MAX ; cnt++)
{
if (bl[cnt][0] == 0) {
bl[cnt][0] = 1;
bl[cnt][2] = tl[teki_num][2]+16;
bl[cnt][3] = tl[teki_num][3];
break;
}
}
return;
}
0909名前は開発中のものです。
2006/03/24(金) 04:43:33ID:r2mkgPf1>>897-908
・グラフィック
>>896で出てきたDXライブラリを使っています
ライン命令やフォーマット付きの文字描画があったので
HSPからあまり修正せずに移植できました
・変数宣言
やはり>>891で指摘された通りソースが長くなります
しかし移植中に配列サイズを間違っていることに気づきました
実は>>857で説明されている機能である
>配列変数は越えた分は自動確保されますよ
に助けられたいたので今まで発覚しなかったのです
Dim tl,MAX,3 //敵
repeat MAX
tl.cnt.0=1 //利用中(0=否)
tl.cnt.1=0 //呼び出すサブルーチン
tl.cnt.2=(cnt*64)\640 //X座標
tl.cnt.3=(cnt*64)/640*64 //Y座標
↑
Dimで3と宣言している(0〜2まで使える)のに0〜3まで使ってる
・C++移植版のバグ
ALT+F4で終了するとエラーがでます
たぶんDxLib_End()を実行してないからだと思います
ゲーム終了時に必ず実行する工夫がないか検討中
0910名前は開発中のものです。
2006/03/24(金) 05:33:06ID:r2mkgPf1構造体を定義してみた
struct stEnemy
{
int x;
int y;
bool enable;
};
↓
自機や弾も使い回しできるな
↓
こういうのって継承すればいいんだっけ
↓
そうだ、classを使おう
0911名前は開発中のものです。
2006/03/24(金) 06:24:23ID:r2mkgPf10912名前は開発中のものです。
2006/03/24(金) 07:45:58ID:r2mkgPf1座標をxやyで書けるのは見やすくていい
HSPには無いのかな、連想配列で似たようなことができそうな気がするけど
ついに240行にまで増えた
20行平均で貼り付けても12レスorz
5レスごとに3時間ぐらい待たされるから全うpまで6時間以上orz...
0913名前は開発中のものです。
2006/03/24(金) 08:28:08ID:4LMnL9n20914名前は開発中のものです。
2006/03/24(金) 13:12:48ID:Keoep/nWいい加減ウザい。
txtファイルにコピペしてgamdevにうpしろっての
0915名前は開発中のものです。
2006/03/24(金) 13:21:58ID:e/LJggH70916名前は開発中のものです。
2006/03/24(金) 17:05:17ID:ynvPJr33そう言ってやるな、せっかくスレを盛り上げてくれてるんだ
それとも藻前らが何かネタを投下できるのか?
まぁ所詮>>909が上げてる程度のコードも書けないやつらの
嫉妬レスなんだろうな(プゲラッチョ
0917名前は開発中のものです。
2006/03/24(金) 18:18:58ID:FlQlv7Bv>>909ぐらいのコードなら書けなきゃゲ制作には来ないって
0918名前は開発中のものです。
2006/03/24(金) 23:21:23ID:kZSgB7pc荒らしている。
0919名前は開発中のものです。
2006/03/25(土) 00:05:23ID:nEkDgcKS見にくいし、試せない。書き出さ無きゃならん時点で見る気もうせる。
0920名前は開発中のものです。
2006/03/25(土) 00:42:47ID:yYvbrmRQ0921名前は開発中のものです。
2006/03/25(土) 08:26:50ID:xoont0lh#define cspeed 8 //自機移動速度
#define EBULLET_MAX 50 //敵弾数最大
#include "DxLib.h"
//プロトタイプ宣言
void Boot_Initialize();
void Play_Initialize();
void Stage_Initialize();
void Enemy_Fire(int cnt);
//変数宣言
struct stEnemy
{
int enable;
int x;
int y;
};
stEnemy Enemies[MAX];
/*
0922名前は開発中のものです。
2006/03/25(土) 08:27:31ID:xoont0lhint bl[EBULLET_MAX][4]; //敵の弾
int cx=0, cy=0;
int bx=0, by=0, benable=0;
int ndir=0, dir=0;
int tspeed=0, Teki_Rest=0;
int Score=0, HighScore=0;
int Dead=0, invasion=0;
int Stage_Num=0;
int HGJiki=0;
int HGTeki=0;
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
/*
0923名前は開発中のものです。
2006/03/25(土) 08:28:25ID:xoont0lh//初期化
Boot_Initialize();
Play_Initialize();
//裏画面
SetDrawScreen( DX_SCREEN_BACK ) ;
//*Start
while (1)
{
ClsDrawScreen() ;
WaitTimer( 1 ) ;
//自機
if( CheckHitKey( KEY_INPUT_LEFT ) == 1 )
{
cx=cx-cspeed;
if (cx<0) cx=0;
}
/*
0924名前は開発中のものです。
2006/03/25(土) 08:29:18ID:xoont0lhif( CheckHitKey( KEY_INPUT_RIGHT ) == 1 )
{
cx=cx+cspeed;
if (cx>639-32) cx=639-32;
}
if( CheckHitKey( KEY_INPUT_LCONTROL ) == 1 )
{
if (benable == 0) {
benable=1;
bx=cx+16;
by=cy;
}
}
DrawGraph( cx , cy , HGJiki , FALSE ) ;
//自機弾
if (benable == 1) {
by=by-8;
if (by<0) benable=0;
DrawLine(bx, by, bx, by-16, GetColor(255,255,255));
}
/*
0925名前は開発中のものです。
2006/03/25(土) 08:31:10ID:xoont0lh//敵機
ndir=dir;
for (int cnt=0 ; cnt<MAX ; cnt++)
{
if (Enemies[cnt].enable == 1)
{
DrawGraph( Enemies[cnt].x, Enemies[cnt].y, HGTeki , FALSE ) ;
Enemies[cnt].x = Enemies[cnt].x+dir;
if (Enemies[cnt].x <= 0) ndir = tspeed;
if (Enemies[cnt].x >= 602) ndir = -tspeed;
//あたり判定
if (benable && (Enemies[cnt].x < bx) && ((Enemies[cnt].x + 32) > bx) && (Enemies[cnt].y < by) && ((Enemies[cnt].y+32) > by) )
{
Enemies[cnt].enable = 0;
Score = Score + 10;
Teki_Rest = Teki_Rest - 1;
/*
0926名前は開発中のものです。
2006/03/25(土) 10:25:51ID:3v7Ny4hZGamDevPukiWiki( http://gamdev.org/w/?FrontPage )に1ページ作ってそこにソースを書
いてみては? そしてここでは変更部分だけとか議論したいところだけ書き出すと。
0927名前は開発中のものです。
2006/03/25(土) 11:26:18ID:nEkDgcKS0928名前は開発中のものです。
2006/03/25(土) 12:22:40ID:Xo5AkaJL0929名前は開発中のものです。
2006/03/25(土) 15:57:33ID:xoont0lhhttp://blog.goo.ne.jp/gamedevhsp/e/e1508c7e7747bb3bfa3118d2be75f58a
ソースをうpできる場所を確保してきました
長いものはこちらにうpします
0930名前は開発中のものです。
2006/03/25(土) 16:20:00ID:dp6Fd2glgcopyやると
チラチラして目が痛いンmだけど対策おしえてくれ!
あと、指定した色透明とかないの?
0931名前は開発中のものです。
2006/03/25(土) 16:26:34ID:Xo5AkaJLリファレンスと公式のチュートリアルも読めないのか池沼
0932名前は開発中のものです。
2006/03/25(土) 20:58:41ID:xoont0lh*/
Enemy_Fire(cnt);
}
//敵が接地したか
if (Enemies[cnt].y > 448) invasion = 1;
}
}
if (dir != ndir) {
for (int cnt=0 ; cnt<MAX ; cnt++)
{
Enemies[cnt].y = Enemies[cnt].y + 4;
}
}
dir = ndir;
/*
0933名前は開発中のものです。
2006/03/25(土) 20:59:11ID:xoont0lhfor (int cnt=0 ; cnt<EBULLET_MAX ; cnt++)
{
if (bl[cnt][0] == 1)
{
bl[cnt][3] = bl[cnt][3] + 8; //移動
DrawLine(bl[cnt][2], bl[cnt][3], bl[cnt][2], bl[cnt][3] + 16, GetColor(255,255,255)); //描画
if (bl[cnt][3] > 480) bl[cnt][0] = 0; //画面外なら使用終了
if ((bl[cnt][2] > cx) && (bl[cnt][2] < cx + 32) && (bl[cnt][3] > cy) && (bl[cnt][3] < cy+32)) Dead = 1; //自機との当たり判定
}
}
DrawFormatString( 200, 0, GetColor(255,255,255), "Score : %d", Score);
if (Score > HighScore) HighScore = Score;
DrawFormatString( 0, 0, GetColor(255,255,255), "High-Score : %d", HighScore);
// 裏画面の内容を表画面に反映させる
ScreenFlip() ;
0934名前は開発中のものです。
2006/03/25(土) 21:31:46ID:dp6Fd2glrddraw 0
redraw 1
に挟んだらちらつきなくなりました〜ヤッホー!
第一段階クリアかな。
今、透明探してる。
0935名前は開発中のものです。
2006/03/25(土) 23:56:51ID:bTVU6xMsgcopy って打ち込めば関連ありそうなの表示されるよ
0936名前は開発中のものです。
2006/03/26(日) 11:29:59ID:erP5z/In0937名前は開発中のものです。
2006/03/26(日) 11:35:24ID:erP5z/In*/
if (Teki_Rest <= 10) tspeed=2;
if (Teki_Rest <= 1) tspeed=4;
if (Teki_Rest == 0) Stage_Initialize();
if ( (invasion == 1) || (Dead == 1) ) Play_Initialize();
// Windows システムからくる情報を処理する
if( ProcessMessage() == -1 ) break ;
// ESCキーが押されたらループから抜ける
if( CheckHitKey( KEY_INPUT_ESCAPE ) == 1 ) break ;
}
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
/*
0938名前は開発中のものです。
2006/03/26(日) 11:36:55ID:erP5z/In//ステージ初期化
void Stage_Initialize()
{
Stage_Num = Stage_Num + 1;
ZeroMemory(Enemies, sizeof(Enemies)); //敵
ZeroMemory(bl, sizeof(bl)); //敵の弾
for (int cnt=0 ; cnt<MAX ; cnt++)
{
Enemies[cnt].enable = 1; //利用中(0=否)
Enemies[cnt].x = ( cnt * 64 ) % 640; //X座標
Enemies[cnt].y = ( cnt * 64 ) / 640 * 64; //Y座標
}
cx=320;
cy=440;
benable=0;
tspeed=1;
Teki_Rest=MAX;
invasion = 0;
Dead = 0;
/*
0939名前は開発中のものです。
2006/03/26(日) 11:37:30ID:erP5z/InClsDrawScreen();
DrawFormatString( 280, 240, GetColor(255,255,255), "Stage : %d", Stage_Num);
ScreenFlip() ;
WaitTimer( 1000 ) ;
return;
}
//プレイ初期化
void Play_Initialize()
{
Stage_Num=0;
Score=0;
Stage_Initialize();
return;
}
/*
0940名前は開発中のものです。
2006/03/26(日) 12:18:50ID:erP5z/In//敵が弾を発射
void Enemy_Fire(int cnt)
{
int teki_num=cnt;
for ( cnt=0 ; cnt<EBULLET_MAX ; cnt++)
{
if (bl[cnt][0] == 0) {
bl[cnt][0] = 1;
bl[cnt][2] = Enemies[teki_num].x+16;
bl[cnt][3] = Enemies[teki_num].y;
break;
}
}
return;
}
/*
ここで終了です
開発環境
VC++
DXライブラリ
*/
0941名前は開発中のものです。
2006/03/26(日) 12:57:44ID:erP5z/In>>933の文頭と文末に*/と/*をつけるのを忘れてたのでその追加だけお願いします
それでコンパイル通ります
外部サイトでも平気な人は>>929に同等のソースがあります
特に理由がなければこちらをどうぞ
0942名前は開発中のものです。
2006/03/26(日) 13:06:08ID:5N7smiYS0943名前は開発中のものです。
2006/03/26(日) 13:27:16ID:erP5z/In//起動時の初期化
void Boot_Initialize()
{
HighScore=74;
Score=0;
HGJiki = LoadGraph( "jiki.bmp" ) ;
HGTeki = LoadGraph( "teki.bmp" ) ;
ClsDrawScreen();
return;
}
0944名前は開発中のものです。
2006/03/26(日) 15:01:41ID:5/XI8n21何度言われてもわかんないの?
0945名前は開発中のものです。
2006/03/26(日) 15:08:10ID:0dHxYm65だそうです
0946名前は開発中のものです。
2006/03/26(日) 15:20:13ID:3eYiH+Hgやったーーー!!
透明発見 その名はgmode ですーーーーーすすすすslすslすslすlす!!!!!
これはんまさに透明!!!半透明も簡単うあはぁふあhかゆあじゅhjし最高!!!!
次は球を増やしたいんだけど
変数をどんどん増やしていくの大変なんだけど
なんか対策アル?
0947名前は開発中のものです。
2006/03/26(日) 23:53:49ID:pcdMut/g0948名前は開発中のものです。
2006/03/27(月) 15:39:02ID:TSDimYuGトリップつければNGワードで一網打尽
0949 ◆src/N3iz.2
2006/03/27(月) 15:39:54ID:TSDimYuG0950 ◆src/N3iz.2
2006/03/27(月) 15:40:39ID:TSDimYuGトリップ置いておくのでみなさん使ってください
0951名前は開発中のものです。
2006/03/27(月) 15:45:46ID:TSDimYuG俺は配列変数使ってます
一緒にがんばりましょーヾ(*´∀`*)ノキャッキャッ
0952名前は開発中のものです。
2006/03/27(月) 15:46:49ID:TSDimYuG0953名前は開発中のものです。
2006/03/28(火) 15:39:57ID:vBoe6Dt90954名前は開発中のものです。
2006/03/28(火) 17:21:43ID:ZIZJuDYi0955名前は開発中のものです。
2006/03/28(火) 17:41:17ID:9EyZXfZzDirectXを用いて2Dシューティングを作ろうと思っていたのですが、
まず、C++を学ぶものだと思っていたら
本屋へ行ってDirectXの本を読んだらVISUALC++を用いていたりVISUALC++.NETを使っていたりしていたのですが
まず、結局何を学べばよいのでしょうか?
あと、出来たらその後の簡単なするべき事の工程を教えてくださるとありがたいのですが
0956名前は開発中のものです。
2006/03/28(火) 20:34:42ID:df2C19ZD>ズブ
C++もVC++も、ほぼC言語の上位互換だから、
C言語がわかればおk。ポインタを把握すれば完璧。
痒いところの手が届かないとか、簡潔な記述がしたくなったら、
C++の本を見てレパートリーを増やせばいい。
無理して色々な機能を使ったって糞コード量産するだけ。
>工程
DirectXの本のサンプルプログラムを弄って遊ぶのがいいんじゃないだろうか。
とりあえず動くものがあったほうがやる気が湧きやすいし、維持しやすい。
拡張に行き詰まりを感じたら、新規に零からコツコツ書いていって、
DirectXを研究しながら、然るべきタイミングで然るべき処理をするようにする。
0957名前は開発中のものです。
2006/03/28(火) 23:02:45ID:5LhBke5OCやC++は言語。VisualC++なんかはIDE。
いくらCやC++の文法や規則を覚えて頭の中でコードがかけても
それをexeファイルとかにできんと何の意味もないだろ。
そのコードの作成を補助したり
実際に実行できるexeファイルにしたりするのが、
コンパイラだったりエディタだったりIDEだったり。
この辺のツールの厳密な意味はググってくれ。
0958名前は開発中のものです。
2006/03/29(水) 10:15:41ID:0n+YEyJrbuffer 2,640,480
screen 0,640,480
bx=320
by=240
repeat
gsel 2,0
cls 4
await 1
color 255, 255, 255
circle bx, by, bx+16, by+16, 1
by=by+8
gsel 0,1
gcopy 2,0,0,640,480
loop
実は狙い撃ち弾の作り方がよくわからない
角度のある弾はsin、cos使えばいいってのはわかる
ところで、気づけばもう
情報処理技術者試験まであと18日
そろそろ勉強しなきゃ
0959名前は開発中のものです。
2006/03/29(水) 11:43:32ID:iWwCTn19昔の2種なら高校時代とったが言わせてもらえば
何の役にもたたん。しいて言うなら自己満足か。
そんな勉強より実践で使えるアルゴリズム類を勉強しとけ。
0960 ◆src/N3iz.2
2006/03/29(水) 14:42:56ID:0n+YEyJrscreen 0,640,480
bx=320
by=240
tx=rnd(640)
ty=rnd(480)
//rad=atan(tx-bx, ty-by) //計算箇所1
repeat
gsel 2,0
cls 4
await 1
color 255, 255, 255
mes rad
/*
0961 ◆src/N3iz.2
2006/03/29(水) 14:43:50ID:0n+YEyJrrad=atan(tx-bx, ty-by) //計算箇所2
circle tx, ty, tx+16, ty+16, 1
circle bx, by, bx+16, by+16, 1
bx=bx+sin(rad)*10
by=by+cos(rad)*10
if abs(tx-bx)<16 and abs(ty-by)<16 {
tx=rnd(640)
ty=rnd(480)
rad=atan(tx-bx, ty-by)
}
gsel 0,1
gcopy 2,0,0,640,480
loop
0962名前は開発中のものです。
2006/03/29(水) 14:52:23ID:0n+YEyJr>>960-961
http://blog.goo.ne.jp/gamedevhsp/e/8080023be3115e0fdb2ac4520640e9ca
次々と出てくる標的に弾が飛んでいくプログラムです
計算箇所1で計算すると弾が当たらない
そこで計算箇所2で計算すると当たるようになった
でも弾道が弓なりに曲がるようになる
0963名前は開発中のものです。
2006/03/29(水) 15:15:20ID:ywlDUjDmきっとあの人だろうな・・・・(ス・・
ageんな。
0964名前は開発中のものです。
2006/03/29(水) 17:04:38ID:0n+YEyJrわからなかったorz
>>959で言ってるアルゴリズムの勉強ってこういうことなのか
0965名前は開発中のものです。
2006/03/29(水) 17:58:04ID:0n+YEyJrスではじまるコテハンなんていたっけ?
0966名前は開発中のものです。
2006/03/29(水) 18:18:29ID:0n+YEyJrscreen 0,640,480
dim bx,3
dim by,3
dim rad,3
repeat 3
bx.cnt=320
by.cnt=240
loop
tx=rnd(640)
ty=rnd(480)
//計算箇所1
rad.0=atan(tx-bx.0, ty-by.0)-0.5
rad.1=atan(tx-bx.1, ty-by.1)
rad.2=atan(tx-bx.2, ty-by.2)+0.5
/*
0967名前は開発中のものです。
2006/03/29(水) 18:19:17ID:0n+YEyJrrepeat
gsel 2,0
cls 4
await 1
color 255, 255, 255
repeat 3
// rad.cnt=atan(tx-bx.cnt, ty-by.cnt) //計算箇所2
circle tx, ty, tx+16, ty+16, 1
circle bx.cnt, by.cnt, bx.cnt+16, by.cnt+16, 1
bx.cnt=bx.cnt+sin(rad.cnt)*10
by.cnt=by.cnt+cos(rad.cnt)*10
if abs(tx-bx.cnt)<16 and abs(ty-by.cnt)<16 {
tx=rnd(640)
ty=rnd(480)
/*
0968名前は開発中のものです。
2006/03/29(水) 18:55:25ID:0n+YEyJrbx.0=bx.1
by.0=by.1
bx.2=bx.1
by.2=by.1
rad.0=atan(tx-bx.0, ty-by.0)-0.5
rad.1=atan(tx-bx.1, ty-by.1)
rad.2=atan(tx-bx.2, ty-by.2)+0.5
}
loop
gsel 0,1
gcopy 2,0,0,640,480
loop
0969名前は開発中のものです。
2006/03/29(水) 19:03:06ID:0n+YEyJr>>966-968
今度は3way弾
あ、ソースはトリップつけようと思ってたのに忘れた
これ作って気づいたけど>>962の計算箇所2ってただのホーミング弾だorz
狙い撃ち弾を正確に命中させるには、たぶん対策は大きく分けて二つ
・精度をあげる
・アルゴリズムを変える
意外とムズカシス
0970名前は開発中のものです。
2006/03/29(水) 19:52:28ID:iWwCTn19ウザス
0971名前は開発中のものです。
2006/03/29(水) 20:28:08ID:0n+YEyJr0972名前は開発中のものです。
2006/03/29(水) 20:29:13ID:qXE6Wdy20973名前は開発中のものです。
2006/03/29(水) 21:43:24ID:0n+YEyJr狙い撃ち弾のやり方わかる奴いねーの?
0974名前は開発中のものです。
2006/03/29(水) 21:52:28ID:ENDbob5I0975名前は開発中のものです。
2006/03/29(水) 21:56:20ID:0n+YEyJr今は反省してます
トークも弾も狙いがことごとくはずれるorz
0976名前は開発中のものです。
2006/03/29(水) 22:01:39ID:0n+YEyJrIDがEND
0977名前は開発中のものです。
2006/03/29(水) 22:01:49ID:ffJjCuui0978名前は開発中のものです。
2006/03/29(水) 22:06:03ID:Homs13rz型はfloatがいいな。
0979名前は開発中のものです。
2006/03/29(水) 22:07:01ID:JtrDjhKk0980名前は開発中のものです。
2006/03/29(水) 22:43:32ID:0n+YEyJrなんとなくわかってきました
角度じゃなくてxとyの移動量で計算するんですね
floatってHSPだとどうなるんだろう……
0981名前は開発中のものです。
2006/03/29(水) 22:45:28ID:Homs13rz俺も素人。
0982名前は開発中のものです。
2006/03/29(水) 22:49:05ID:0n+YEyJrbuffer 2,640,480
screen 0,640,480
dim bx,MAX
dim by,MAX
dim rad,MAX
repeat MAX
bx.cnt=320
by.cnt=240
loop
tx=rnd(640)
ty=rnd(480)
repeat MAX
rad.cnt=atan(tx-bx.0, ty-by.0)-6.28/MAX*cnt
loop
0983名前は開発中のものです。
2006/03/29(水) 22:49:35ID:0n+YEyJrgsel 2,0
cls 4
await 100
color 255, 255, 255
repeat MAX
circle tx, ty, tx+16, ty+16, 1
circle bx.cnt, by.cnt, bx.cnt+16, by.cnt+16, 1
bx.cnt=bx.cnt+sin(rad.cnt)*10
by.cnt=by.cnt+cos(rad.cnt)*10
if abs(tx-bx.cnt)<16 and abs(ty-by.cnt)<16 or by.cnt>480 {
tx=rnd(640)
ty=rnd(480)
0984名前は開発中のものです。
2006/03/29(水) 22:50:07ID:0n+YEyJrbx.cnt=320
by.cnt=240
rad.cnt=atan(tx-bx.0, ty-by.0)-6.28/MAX*cnt
loop
}
loop
gsel 0,1
gcopy 2,0,0,640,480
loop
0985名前は開発中のものです。
2006/03/29(水) 22:52:29ID:Homs13rzだが、まず自分で検索することを覚えねば未来は無い。
…だから長いソース貼るなって言われてんだろ!!!!!
0986名前は開発中のものです。
2006/03/29(水) 23:07:31ID:0n+YEyJr>>982-984
http://blog.goo.ne.jp/gamedevhsp/e/6063c8d3fb513f96c332e4f7e748a934
丸く花火のように散る弾です
でも50発ぐらいが限度でそれ以上弾が出てる様子がないです
極端に3000発ぐらいにしても50発のときと変わりませんでした
>>985
HSPplusというプラグインがでてきました
ありがとうございます
ソースを外部にうpすると2chに貼れという人もでてくるので両方にうpしてます
今まではどちらかというとそういう人のほうが多かったので今回の反応にとまどってます
gamdevは例の事件や例のバグもあって絶対踏まない人もいるのでスレが伸びないと思ったんですよ
もう風化してますがひさびさにうpすると早速IPアドレスが漏れたり削除できなくなったりで変わってないなぁと……
ブログのほうはアクセス解析がついてますがIPアドレスは取ってないです
アクセス数が少ないのでやっぱり外部より2chのほうが見やすい(心理的に)のではないかなと分析してます
ご不便をおかけします
0987名前は開発中のものです。
2006/03/29(水) 23:15:05ID:JtrDjhKk正:ご迷惑をおかけします
0988名前は開発中のものです。
2006/03/30(木) 01:30:02ID:J45kuvXnfloatは2.6だと要プラグイン。3.0以降なら a=0.0 と初期化宣言すればok。
あと、内部(算出)値を1000倍、出力するときは1000で割るという手法もありますよ。1024とか
512のほうが相性はいいですが。
>>986
変数bx、by、radが実数値になっていませんよ。
>dim bx,MAX
>dim by,MAX
>dim rad,MAX
をそれぞれdimからddimにして、
>repeat MAX
> bx.cnt=320
> by.cnt=240
>loop
は
bx.cnt=320.0
by.cnt=240.0
にしてください(最初のほうとループ内の二箇所)。あと await は16か32で。
0989名前は開発中のものです。
2006/03/31(金) 01:53:01ID:29R+LSunC++を学ぶ
WinAPIとDirectXの存在を知る
サンプルプログラムをいじる
スケルトンプログラムを利用してちょっとしたゲームを作る←今ココ
・・・
・・・
0から自分で作る
0990名前は開発中のものです。
2006/03/31(金) 15:16:39ID:+8lDizLk作り方を覚えたら、自分でつくる部分を多くしていく、と。
レス数が950を超えています。1000を超えると書き込みができなくなります。