1人でゲームが作れるように修行します。at GAMEDEV
1人でゲームが作れるように修行します。 - 暇つぶし2ch422: ◆PSPI/D/D3o
08/11/22 17:47:19 zNajiGnR
クラス図すげぇ(・∀・)
構造体オンリーの俺とはぜんぜん違うな

423:名前は開発中のものです。
08/11/23 20:10:50 HxMiBrvZ
>>421です。
>>422
ど・・・どうもです~(汗;)
今回の図はクラス同士の関連を表す線も無いし、
単にクラスの宣言を図に移し変えただけなのでクラス図っぽい図といった感じのものです。
頭を整理する方法が見あたらないな~と思ってたところにたまたまこの図の存在を知っていてちょっと
試してみただけなんで、また行き詰るまでは図は書かないで、ソース書きに移ろうと思ってます。
但し現実の方でいろいろあって作業は進んでいないです。(言い訳orz)ちょっと自分に負け気味な状態。

424:358
08/11/27 01:20:32 wnLJrU6F
すっかり3次元の狭間に捕まった為、3D数学とプログラムでの実行結果の間を右往左往してます。
基本的に理論で覚えるタイプではないので座標変換系を頭で理解するのが苦戦しています。

とりあえず3Dオブジェクトを描画する空間、Xファイルオブジェクトのインポート、カメラ制御といった
最低限の3D描画セットを用意してみましたが、Xファイルにテクスチャは反映されないわ、
カメラはどこ向いてるかわからないわでてんてこまいです。

Xファイルへのテクスチャ反映できない理由はすぐ追えそうですが、カメラ位置や注視点の考え方が今市なので
またしばらくテキストとにらめっこです。

>>423
クラス図お疲れ様です。
拝見させていただきました。

同じようにクラス図書こうかなと思っていた時期もありましたが
クラス4個くらいの時点で面倒でやめました(ハッハッハ)
今大小あわせてさらに増えてるのでやる気としてはほとんどありません。

こちらも煮詰まること多いので(現に詰まってますが)定期的にメンテナンスというか整理は必要なのかもしれませんね。

425:名前は開発中のものです。
08/11/27 23:47:47 B1vZP/Rc
>>423です。
>>424
「実例で学ぶゲーム3D数学」、本屋で見てみました。(最近の発売だとその時気付いた)
こ・・・これは、自分にはかなり難しい内容だと思いました・・・。
いつか3Dやりたいと思ってますが、やっぱり自分にはまだまだ難しい感じorz

こちらはしばらく進まないかもしれませんが、寝る時に少しずつですが
「14歳から・・・わくわく・・・C++・・・」の最後の7章に目を通してます。
この本のシューティングを説明してる章は何度か読んでいたけど、
今初めて読んでる部分はシミュレーションゲームを題材にしてマウスも使っているので
>410の参考になるのではと期待w

426:名前は開発中のものです。
08/11/28 00:00:45 mmfEhz1V
>>425です。
クラス図の方ですが、move関数にクラスのオブジェクト?を丸ごと引数として使ってるのがおかしい様な気がしている。
何故だかわからないけどなんとなく勘のようなものw
ソースの手直しも時間みつけて取り組む予定。

427: ◆PSPI/D/D3o
08/12/14 16:33:43 NllPo+j6
だれもいなくなっちまったな(・∀・)

そろそろ残機表示とかのレイアウトつくる

428:名前は開発中のものです。
08/12/14 18:53:49 iDbZG70w
URLリンク(www.caiman.us)

3Dゲームをプログラミングなしで作れるソフトだそうです。
無料らしいです。

429:名前は開発中のものです。
08/12/15 22:49:09 PfjDCaBs
>>426です。
>>427
たまに板を見に来てはいたもののあまり自分の作業が進んでいないので書けずにいました。・・・orz
今のところは>425の本をわからないまま1回目を通しただけ。
もう1~2回読んで感触掴めそうになればソース書き再トライの予定です。
>>428
英語が読めないのでわからないけど世界の広さが感じられる参考になるHPでした。
左側の3D sportsをクリックすると3Dのサッカーゲームが既にあることに気付く・・・orz

430:名前は開発中のものです。
08/12/15 22:53:20 VbZykIE5
? サッカーゲームなんて普通にあるでしょ?
承知で目指してたんじゃないの?

431:名前は開発中のものです。
08/12/16 23:08:17 ooDsGSL3
>>429です。
>>430
確かに進み具合の方はまるで止まっているかのように遅いかもしれません。
2007年8月頃から趣味感覚でゲーム作りの勉強を始めてますがまだまだゲームの形になるのは先になるだろうし
結局出来ない場合もあるので、今サッカーゲームがいくつ出ていたとしても
その事が理由でギブアップする気は無いので大丈夫(?)です。

432:!dama
09/01/02 03:13:47 3+aZDUN0
↑俺が作るゲームの評価

433:名前は開発中のものです。
09/01/02 03:17:36 3+aZDUN0
元日終わってたよ…今年も残す所あと364日ですよ皆さん…

434:名前は開発中のものです。
09/01/02 12:36:09 fa0NZpcB
去年の今頃だったら365日あったのになあ

435:名前は開発中のものです。
09/01/07 21:20:12 5JbPJmc6
>>431です。
残り359日!!!今年も頑張ろうと思いますw
でも生存報告しかできない・・・orz
進み具合はまるで止まっているかのように・・・というよりは、限りなく0に近いのかもしれません。
>425の7章を2回読んでみたけど、まだまだな感じでどうするか考えているところです。
生活、健康面の用事を優先せざるを得ないので、しばらくは時々生存報告するのが精一杯になりそうな感じ・・・。

436:名前は開発中のものです。
09/01/08 00:10:54 2kcs9s3H
うぅ、ボヤボヤしてたら今年も何も出来ず終わってしまう・・・
今までROMしてたマッサラな初心者ですが、参加させて下さい
C言語&DXライブラリの勉強と平行して、徐々に形にして行けたらと思ってます

437:名前は開発中のものです。
09/01/08 23:37:34 eqKx20GH
>>435です。
自分は今、ものすごくゆっくりで止まった感じな進み具合ですが、
まだ357日もあると思ってお互い頑張りましょ~!

438:436
09/01/09 00:26:46 6X36htv/
取り合えず開発環境を揃え、ネットで初心者講座を読み漁りました
まだ途中ですがループ・条件分岐・構造体・自作関数の使い方がなんとなく解った気がする
ポインタは良く解らない・・・
最初なんで、まずは作り易そうなADVで完成を目指します!
>>437
ういっす!頑張りましょう!

439:436
09/01/10 00:16:56 lP2FhPfp
ポインタを理解した気になる、けど使い道が解らないw
オブジェクト指向が主流らしいけど、解説読んでもサッパリ
手続き型のまま作り始めても大丈夫だろうか・・・
取り合えず絵と文字表示を知ったので、かまいたちの夜もどきを表示して今日は終わり

440:名前は開発中のものです。
09/01/10 01:25:58 6Qx6zqqf
修得が早いなw

441:名前は開発中のものです。
09/01/10 22:59:09 GXrYRhwd
>>437です。
習得早いのうらやましいです~。

ついに参加者が4名!←・・・と唐突に言ってみるw

>410で自分が言った目標1は時間が掛かりそう(というかそもそもこう直すべきというイメージが出てこない)なので、
もし現状のプログラムの直しで目標2が出来るならそれだけでもやってみるに方針変更。
目標2もできなかったら・・・、その時考えるつもりw

442:名前は開発中のものです。
09/01/10 23:02:40 GXrYRhwd
>>441です。
修得でした。変換ミスしてしまった・・・(汗;)

443:436
09/01/11 00:55:55 hGxbs0Ew
今日はファイル入出力、キー・マウス入力、フォント周辺、αブレンドや明度変更をちょこっと
なんだかゲーム、作れそうな予感・・・!なのでこのまま手続き型で行きます
フェードイン/アウト等演出効果・場面転換のやり方を考え中
実験用に棒人間と背景を描いて今日は終了

>シュウトク早い
結果だけ書くとスマートですが、実際は訳ワカメ!訳ワカメ!と叫びながらしっちゃかめっちゃかな行間をお察しくださいw

444:名前は開発中のものです。
09/01/11 01:19:17 zwd1Py/X
いやいや、一日でそれだけ進められるって事は
かなりの経験がないと無理でしょう。

でなければかなり頭がいい(勉強が得意)か。


>フェードイン/アウト等演出効果・場面転換のやり方を考え中

フェードイン、アウト程度ならブレンドモードの数値を変化させつつ
画面全体に黒いBOXでも描画すればいいんじゃないかな。

445: ◆Fp.xSEIREI
09/01/11 02:45:25 ZYgWOk/Z
シューティング作ってるPSPIだー 酉かえたぞー

なんか天才が来てるな(・∀・)俺なんか半年になるのにいまだにファイル入出力は恐ろしくてあんまり触ってないぞ

446:名前は開発中のものです。
09/01/11 22:48:35 cacqdQtu
>>442です。
1日でそこまでいくのは本当に凄いと思います~。

!!!。酉変更なんですね~。今年も頑張りましょ~!

今日は>410の目標2を実現するにはどこをどう書き直せば良いか考えて終了!。

447:436
09/01/12 01:22:04 ug24ph9R
早く形にしたくて駆け足で目を通したので、「こんな命令がある」って知識をストックしてるだけで、
実際組み立て始めたらエラーだらけです;

今日はお絵かきソフトをちょっと試すつもりが、気付けば一日経っていました
オープンキャンバスがシェアなだけあって良さげな感じ
本当はフォトショップが良いけど、自分の腕では宝の持ち腐れ過ぎるw
絵は慣れらしいので、これから1イラスト/Dayを目標に描いて行こうと思います

>>444
キャラごとに適用する事ばかり考えてました。そっちの方がお手軽でPCに優しそうですね

>>445
いえいえ紙一重の方です え・・・ファイル操作ってやばいんですか?;

>>446
なんかややこしそうですが頑張ってください!

448:名前は開発中のものです。
09/01/12 20:13:54 LJkMZ6t0
>>446です。
自分もエラーは頻繁にというか必ず出てます・・・orz

プログラムのどこを直すか大体の見当を付けたところで終了。
少しずつ直していく予定。

449: ◆Fp.xSEIREI
09/01/13 00:04:08 ngGUSVZ6
>>447
俺がアホなだけだ(・∀・)ファイル操作できないとなにもつくれんww
ポインタの概念はわかってるがポインタの使い道を知らない頭だぞ(・∀・)

バグの原因はいつも計算ミスやアルゴリズムの欠陥
たまに配列を激しくいじったら関係ない変数がいじられるバグ出てワロタ
ポインタ怖い

450:436
09/01/13 00:14:13 9YgrpDjJ
さっそくイラストを描き逃すw もっと基本の静物模写から練習を始めました
DXライブラリのブレンド命令によって、吉里吉里の様なボーダー・ストライプ・円や渦状の場面転換が出来る事を知った
これは便利と、さっそく関数化しておこうとするも、途中でメインの仕様が決まってないと関数も作り様が無い事に気付く
なので、まずは基本設計を決め打ちしなくては

451:名前は開発中のものです。
09/01/13 00:20:34 9YgrpDjJ
>>449
(゚∀゚il|l)ポインタコワイ

452:名前は開発中のものです。
09/01/13 22:20:43 TsQ0Jtlw
>>448です。
あまり余裕なくて今日の作業はちょっとだけ。
今直そうとしているのは、1ループ毎に移動先位置を計算する部分を
別の関数とでも言うのかクラスにして取り出す作業。

453:436
09/01/14 03:12:28 sQKXpTXd
プライベートで問題発生、烈しくモチベーション下がった・・・
絵を練習してサンプルコードをいじっただけです

454: ◆Fp.xSEIREI
09/01/14 04:18:25 DSJGU7v3
FPSが61.2になる(・∀・)なんだかきもちわるい
ウィンドウだと安定しなくもなる

うーm

455:名前は開発中のものです。
09/01/14 21:59:45 qd0uHzIt
>>452です。

>>453
自分も実生活でいろいろあって作業が止まる事が良くありますが、
マイペースでやってます~。
進まなくてもとりあえず2chでやる気だけは維持して行こうと思ってます。
>>454
こちらのプログラムはループ処理時間平均値を取り、その平均時間での
オブジェクト移動量を60Hzの時の移動量に変換して移動させるみたいな感じなので
14歳シリーズが限界な自分なので、その平均値そのもの(FPS?)を調整する方法については知識0です・・・orz

今日はプログラム書けそうに無いけど、とりあえず寝る時に
ちょっとだけ本に目を通す予定。

456:436
09/01/15 00:53:02 xgElujNM
>>454
GetNowCountを使っていたらGetNowHiPerformanceCountを使うとか・・・
ゲーム自体が重くて動作が遅くなるなら垂直同期を切って見るとか・・・
すいません全部聞きかじりで、書いてる本人は良く解ってませんw;

>>455
ありがとう(つд`)進みたいのに内容が頭に入ってこないです
切り替えの早さが欲しい・・・少しずつでも進めていきます

457: ◆Fp.xSEIREI
09/01/15 02:16:26 nnAj7wD0
FPSが62.5になるのは単純に待機のとり方が悪いみたいだ(・∀・)
もうすこし正確に1Fを待機させるようにせねば

あとFPSが不安定なのは他のソフトに割り込まれてるみたい
東方とかはいつでも60なのになー

458:名前は開発中のものです。
09/01/15 23:53:13 41EHPKeT
>>455です。
み・・・皆さん凄いです。自分もそういう知識を身に付けたいのですが、なかなか時間が作れなくて・・・orz
自分の場合、たぶん1ヶ月単位でほんのわずか進めるかどうか、下手すれば一歩も進まずな予感ですが、
とりあえずまずは14歳シリーズの本やネットで頑張ってみます。

459:名前は開発中のものです。
09/01/16 01:17:42 Gpm/i2u9
基本仕様を構想・リファレンスを眺めて終了
>>457
原因が解って良かったです。動き重視系は難易度高そう・・・
>>458
自分も大して解ってないです
他の専門スレを訳解らないままに目を通して、気になったレスをコピーして
何かの時に役立てられればと溜め込んでます

460:436
09/01/16 01:18:32 Gpm/i2u9
>>459
名前忘れた;

461:436
09/01/17 00:46:44 6JZ7PCSk
のんびりとお絵かき+基本構造を構想・・・特に進展無しです
Frieve Editerと言うエディタを試しに使った所
簡単なフローチャートからシステムの全体像まで
一目瞭然でかなり便利
キャラクターの相関図やストーリーの組み立てにも便利そう

462:436
09/01/18 01:39:40 E+kcrfNd
引き続き基本構造を・・・いい加減次の段階に行きたいw


463:名前は開発中のものです。
09/01/18 17:29:55 AgYI0BNY
FPSにふらつきがないのはVSync待ちだろう

464:名前は開発中のものです。
09/01/18 22:34:50 +nHfuYmN
>>458です。 今週ダメだった。また来週頑張ります・・・orz

465:436
09/01/19 00:20:28 NWUBpW7C
EditerじゃなくEditorでした
基本構造もう少しで出来そう、けど飽きたのでストーリーを考えつつ絵描き
イメージボードっぽいのを描こうとするも、腕の無さに撃沈
可愛い&カッコいいキャラが絶望的に描けませんw修業が足りんなぁ・・・

466: ◆Fp.xSEIREI
09/01/19 09:27:05 X5SZs/u2
>>463
待ってるはずなんだよな。でもスカイプ動いてる時だけはげしくずれる
FPSはどうにかするとして敵機オプション操作についていろいろ。敵機&弾幕制御はほぼ完成形に近づいてきた気がする
暫定の枠も作ってみたりした

467:名前は開発中のものです。
09/01/19 09:29:38 bUUm+BkQ
URLリンク(xn--tor36e.com)

468:436
09/01/20 00:28:55 N9MvLHd9
ちょこっとだけ。構想がようやくまとまる。キー入力処理を作りました

469:名前は開発中のものです。
09/01/20 23:38:54 EGDLC1Bx
>>464です。
早く寝なければならないのにちょっとだけやってみた・・・orz。
>452で言ってた移動の為のクラスが数行程度でそんなに大きくないので、他のクラスのソースに含めて
書いてたら分かりにくくなりそうな予感がしてきたので、面倒でも1つのクラスに対して
クラス宣言のファイルとクラスの中身の関数を定義するファイルを1つずつの構成に直す予定。



470:名前は開発中のものです。
09/01/20 23:49:39 EGDLC1Bx
>>469です。
>469の一行目は今思うとなんとなく書かなかった方が良かった気がしてきた。
と・・・とりあえずそれだけです・・・(汗;)

471:436
09/01/21 00:46:27 XlPVTJuS
ファイルからシナリオ読み込んで表示させただけっす

472: ◆Fp.xSEIREI
09/01/21 01:07:20 /+GwoesL
絵描き絵描き(・∀・)

473:436
09/01/22 00:40:34 b8zSFi5U
気付かれたw;今日は絵描きだけ・・・人物よりクリーチャー・モンスターのが感情移入して描き易い
不気味な絵がどんどん溜まって行く~
推理風味なADVを作ろうと思ってたのに、サバイバル系の方が性に合ってるのかしら・・・


474:名前は開発中のものです。
09/01/22 21:46:32 XXhQB+q5
>>470です。

絵を描くスピード早そうで凄い感じですね~

Zキー押すとマウスカーソルに向かって歩けるようにするところだけがなんとか書けたので、
久々にうpしてみました。
URLリンク(gamdev4.hp.infoseek.co.jp)

移動先を決める処理を関数みたいにして別ファイルにするのはうまくいくかどうかあやしいので、
後回しになってます。理由を書くとものすごく長文になるので省略するかまたは今後のネタにします。・・・orz

475:名前は開発中のものです。
09/01/22 21:54:08 L7DCPZeg
そろそろコテハンつけるとかしてみては。

476:436
09/01/23 00:21:16 MaN9qQQB
今日は絵描き&フルスクリーンとウィンドウを切り替えられるようにしただけ
うまく動かず、=と==を間違ってる事に気付くまですごい時間を無駄にした・・・
>>474
うちのPCではスムーズに動きましたよ~順調ですね!
やっぱり機能ごとに別ファイルにした方が色々いいんでしょうねえ
やり方勉強しなければ・・・

477: ◆Fp.xSEIREI
09/01/23 01:23:54 0rhrZEPm
>>474
おおwちゃんとボールもけれるww相手チームもちゃんと蹴るんだな(・∀・)すげー

478: ◆Fp.xSEIREI
09/01/23 01:27:41 0rhrZEPm
>=と==
あるあるあるあるうあう

479:名前は開発中のものです。
09/01/24 00:17:17 GwwrnR4K
>>474です。
>>475
コテハン付けない理由の1つとして「なりすまし」の被害を気にしていたのですが、
あまり気にせず付けてみるかちょっと考えてみます。例えばコテハン「SGGK」にしてみるとかw
>>476
確かif文の条件って=でも==でもコンパイラを通ってしまったような気が・・・
プログラムって難しい~。
>>477
相手チームがボール蹴れるのはたぶんバグっぽいです。
Zキーでボール蹴るとしていたのをそのままにしているからかもしれません・・・orz

480: ◆Fp.xSEIREI
09/01/24 00:36:48 sVqgjDN6
>なりすまし
そのためにトリップがある(・∀・)俺の名前はトリップ

名前の後に#(好きな半角英数記号1~10個)ってつけると固定でランダムな文字になる
毎回#のあとを同じ記号にしてればなりすましはできない(・∀・)


あれバグだったのかww

481:436
09/01/24 00:58:29 bfIOU/J5
コンフィグファイルから設定を読み込もうと奮闘中(絵はサボり・・・)
>=、==
でもうっかりミスはやるなら早い方がいいですねw

482:436
09/01/25 01:02:53 9YRwrTCX
やっとコンフィグファイルから設定がロード出来た
ifの条件文でまたやってしまって時間かかった;
絵描きはどうもやる気にならないので不定期にします

483: ◆6pZCoAtaxk
09/01/25 22:58:40 4KstzHOL
>>479です。
トリップ付けてみました!どうもありがとうございます~。
ファイル関係難しそうなので自分はまだまだ先になりそうです(汗;

時間見つけて少しずつやっていく予定~!

484:436 ◆Ozi/jnIj0I
09/01/26 00:34:02 EV62Rr3C
トリップお試し
ファイルいじってたらバッファオーバーフローとかでデバッグ不能になって焦りましたw
FPS回りをイジイジしてます

485: ◆Fp.xSEIREI
09/01/26 10:31:34 MupH4yIc
俺の酉は覚えやすいぜ(・∀・)

物理の勉強をいろいろ
平面上の点Aから点Bまでの距離がRで点PがAからBへ単位時間あたり速度Sで移動する。その時徐々に減速しT単位時間後に速度が0で点Pが点Bに到着するようにするには1単位時間当たりいくら減速すればよいか
とか(・∀・)

486: ◆6pZCoAtaxk
09/01/26 22:55:55 PZ6xLh+7
自分も将来ファイル関係やる時には気をつけてみます~。(バッファオーバーフロー難しそう・・・)
そういえば日本語読みで覚えやすそうな感じ!。自分の方はランダムっぽいけど、とりあえずこのトリでやってみます~。(物理についてはボール関係でいつか悩みそうな予感orz)

進捗なし・・・orzなので代わりのネタ→ >474で選手移動方法をカーソル追従化するために使おうとした
DXライブラリのGetMousePointの戻り値の取り方が分からなくて
C言語の「参照渡し」で取れるようになっていると気付くのに実はかなり時間掛かってましたw

487:名前は開発中のものです。
09/01/27 00:46:54 HyCbh5nh
コンフィグロードのソースが読み辛かったので書き直し
誤作動を防ぐ為に、設定ファイルの空白・タブ・無関係な文字を読み飛ばす様にしました
今は異常な数値を訂正させたり、アスペクト比を変えられる様にするか考え中
>物理
動くのを見るのは楽しいけど作るのは大変ですね;
>参照渡し
ポインタとかで見かけた様な・・・自分もマウスは必須なのでそのうち学ぶ事になるなぁ

488:436
09/01/27 00:47:36 HyCbh5nh
>>487
また名前忘れた;

489: ◆6pZCoAtaxk
09/01/27 23:23:07 nvZpC6T/
今日も少しやってみました。
コピペから始めたプログラムだから未だに不完全な理解でやってる部分も多く、時間もないので
自分でここが肝心かな~?と思う部分だけサッと手書きメモレベルで整理してみた。(約30分)
悩んでいるところが見えたような気もするが、でも微妙な感じ。
今日はここまで~・・・orz

490:436
09/01/28 00:46:38 Zv8NeSZ5
今日は全然出来なかった・・・リフレッシュレート関係を作り中です

491: ◆6pZCoAtaxk
09/01/28 22:33:25 BT9wNurf
自分の場合、プログラムは1ヶ月でほんの少し進むかどうかといった感じで
ほとんど止まってることもよくあるぐらいなので、気が乗らないときには休むのも有効かな~と時々思ったりします。
こちらは、この前言っていた移動計算の抜き出し?も出来てないし、とにかく気長にやっていこう~と思ってますw

492:436
09/01/29 00:56:22 0SSs3+bK
FPS表示とリフレッシュレート変更は出来たけど、高い周波数にするほどフレーム数が足りないまま安定しちゃう
30FPSぐらいだと問題ないけど、50、60と上げて行くと、なぜか5フレームほど足りなくなる;
そしてふれ幅も上下5フレームぐらいばらついて安定しない・・・う~むコードが悪いんだろうなぁ
>>491
ありがとう~
毎週火曜は歯医者に行ってるんですが、昨日は詰めた所が痛くてついぼんやりすごしてしまいました;

493: ◆Fp.xSEIREI
09/01/29 12:28:57 TI9WuV0B
敵機のオプション(子機)を操作する関連をいろいろ(・∀・)
もう少し手を加えれば孫機を配置したりもできるようになるはず

目指せ超弾幕(・∀・)


for文をどっかからコピペしてきて使ってたら条件式を書き換えるのを忘れててアドレス異常の書き込み違反が出て一時間悩んだ(・∀・)敵を倒したら黄色いもにょもにょが湧いてきてちょっとしたホラー

494: ◆Fp.xSEIREI
09/01/29 19:39:44 TI9WuV0B
子機操作まではほとんど完成(・∀・)

6機出してみるテスト
URLリンク(www.dotup.org)

495:SGGK ◆6pZCoAtaxk
09/01/29 23:01:47 jKwHiHD0
>>492
自分はFPS関係理解できなくてコピペ気味なプログラムなので、
技術的コメントが困難なレベル(・・・orz)ですが、歯を大事にする事については賛成です!!!
>>494
で・・・出来上がってきてますね~。
弾を目で数えるのはもう不可能・・・と思って右下見たら1000発超えてる!!!

今回からコテハン+トリップにしてみました~(見分けやすくするためですw)

496:436
09/01/30 00:51:26 Ubr3D3FD
FPSが61で安定する;ウェイトのかけ方がまだ悪いみたい
>>494
すごー;;;自分も早く動く部分を作りたい~
>>495
SGGKですかw失ってわかる歯の大切さ・・・

497: ◆Fp.xSEIREI
09/01/30 04:23:48 xtRLKZxM
>>495
重なってるから目で数えるのはむりぽ(・∀・)
5000発くらいまでなら安定して出せるけど避けれなくなる
SGGKてw

>>496
16ミリ秒待機とかにすると61.2FPSになる(・∀・)16.66666…で待機できるようにしないと…

498:名前は開発中のものです。
09/01/30 09:18:22 fJ+jbeBq
うちのノートPC、ウインドウモード45fps安定で俺涙目
全画面にしたら60fpsになるんだけどな。

某弾幕シューも処理落ちでクリア余裕でした!

499: ◆Fp.xSEIREI
09/01/30 10:05:50 rD/YU9yd
>>498
フレームスキップするのと処理落ち率をスコアのファイルに出力しておくようにしておこう(・∀・)

500:436
09/01/31 01:52:27 pjcRan1J
どうしても16.3msになって、あと0.3ms引き伸ばせない・・・もう61Hzでいいかなぁ
キーコンフィグっぽい仕組みを作りました

501:SGGK ◆6pZCoAtaxk
09/01/31 12:25:30 nxG0Rhj8
しばらくSGGKで頑張ってみますw
こちらはまだ言語の文法理解が足りなくてつまづいてる感じです。
>474で言った「移動先を決める処理を関数みたいにして別ファイルにする」に挑戦中。
>489の手書きメモ見て考え中。

502:436
09/02/01 01:22:03 d2a+qgnL
FPSもうヤダー

503: ◆Fp.xSEIREI
09/02/01 04:11:26 ppxlATZm
>>502
URLリンク(dixq.net)

504:436
09/02/02 00:48:40 XcNeBYjh
できた!ありがと~

505:SGGK ◆6pZCoAtaxk
09/02/02 22:53:46 +VJz49//
技術的な話は自分にはまだまだ無理な様ですが、いつかは分かるようになりたいです~orz

昨日、移動先を決める処理を関数みたいにして別ファイルにしてみたつもりでコンパイルしてみたら、
「Warning: パブリックシンボル _chaseballmover がモジュール XXX\DEBUG\SOCCERGAME.OBJ と XXX\DEBUG\FIELDPLAYERCONTROL.OBJ の両方に定義されている」
という警告文がずらりと出てしまった・・・。
それからずっと考えていてフッと思ったのが、移動処理はクラス化したのでその宣言をヘッダファイルに書いていたけど、今回のは宣言と同時にオブジェクトも定義?したから、
クラス{}オブジェクト; が記述されているヘッダファイルを何箇所かのファイルの先頭にインクルードしてたからかな~と思い始めた。
このオブジェクトがいわゆる「外部変数」になってるような感じで
それを複数箇所にインクルードした事で同じオブジェクトが外部変数として複数定義?されたという事になっていたとすれば、それが警告の原因かも???
今日はここまででちょっと試せそうにないです。




506:SGGK ◆6pZCoAtaxk
09/02/02 23:31:37 +VJz49//
と言いつつちょっとだけ書いてみたけどダメだった。
技術だけじゃなく文法的な話もまだ無理みたいな感じです・・・orz

507:436
09/02/03 01:26:13 U+3zAauW
アナログパッド入力出来る様になりました。コンフィグファイルから実数値も読み出せる様になりました
これによりFPSを0.001フレーム単位で指定という無駄な事が出来ますw

FPS関連で解ったんですが、変数型によって有効桁数が当然あって
それを考慮せずにあまりに桁が違う数同士を計算すると
情報落ちと言われる物が起こってしまうらしく。
自分の場合、システムカウント(整数)とμs(実数)と言う桁数が違いすぎる変数同士を計算した為
小数点以下の桁が消失して、細かいフレーム調整が出来なくなってました
自分と同じ様な初心者の方は注意です
計算の順序を考慮してコードを組んだらサックリ動きました。勉強になりました

その他過程で知った事
・時間でタイミングを取るよりフレームでタイミングを取る方がいいらしい
・floatよりdoubleの方が容量が大きく処理も早い
・動きの激しいゲームでは、キャラクター座標を内部で256倍とかして管理するといいらしい

>>505
オブジェクト指向の話はサッパリワカメです;広範囲に手を加えた後に出るエラーには変な汗が出ますw

508: ◆Fp.xSEIREI
09/02/03 02:43:01 b4/cfZ4i
オブ…ジェクト…?

変数はint、double、bool、LONGLONGってのを使ってるな(・∀・)
変数ごとの処理速度の差はあんまり考えたこと無かったなー。intにできるとこはintにしてるけど…

509:SGGK ◆6pZCoAtaxk
09/02/03 23:28:01 6PB7lMIm
>>507
小数点以下の十進数を小数点以下の二進数で一対一で表現する事は出来ないような事を
どこかの本で読んだ記憶がありますが、あまり自信は無いですw
こうなってくるとコンピュータの勉強も必要なのかもしれませんが、今は手が届きそうに無い状況です・・・orz
>>508
自分も変数は、int、float、boolぐらいしか使ってなくて、オブジェクトを変数と言ったのは、
今参考にしてる14歳シリーズのC++わくわくゲームプログラミング教室wにたまた変数と書かれてあった為で、
これもまたあまり自信は無いです。

昨日のバグはなんとか取れた感じ。
今回の移動処理のヘッダファイルをあるヘッダファイルに書くと、そのヘッダファイルもまた別のヘッダファイルに書かれていたりするので
結果的にヘッダファイルがヘッダファイルを呼ぶような状況になっていて思わぬ場所にも書かれていたからかもしれない。
でも、ヘッダファイルの2重呼出し防止策、#ifndef、#define ~#endifは書いてあったから、これが原因の自信はなくて、
結局、今回書いたヘッダファイルの中にあるクラス宣言と同時に定義したオブジェクトの変数?を必要としているcppファイルがあり、そのcppファイルの先頭だけに
今回作成したヘッダファイルをインクルードして、他にインクルードした所は全部消したら、エラーも警告も出なくなりました。

プログラムも長くなり、かなり危ないシーンがこれからも増えてきそうな予感w

510:436
09/02/04 00:56:29 Da4U9lAm
ちょこっとだけ、コードの整頓と、マウス入力をつけました
>>508
調べたらfloatが遅かったのは昔の話で、最近ではあまり差は無く、環境の影響のが大きい様で。
FPUによってfloatの方が高速だったりするそうです
>>509
解消された様で良かったです~

511:SGGK ◆6pZCoAtaxk
09/02/04 22:59:39 0WPinhOQ
かろうじて解消できてる様な感じです~w

抜き出した移動処理部分をメインループから呼び出せるようにしたつもりが動かず。
エラー20行出た。最初の数行はコンパイラの言ってる意味が分からなかったけど、
分かる所から先に直していったら、その意味不明なエラーもなぜか出てこなくなった。
しかし、プログラムを起動しても選手が動かなくなってしまった。エラーの出ないやっかいなバグ・・・orz

512:436
09/02/05 00:48:53 xwepftsp
キー設定ファイルからボタン名を読み込んでキーコードに変換する物を作ってます


513:SGGK ◆6pZCoAtaxk
09/02/05 23:07:23 O65/6Go1
こちらは昨日から変化無しです~。
移動処理部にprintfDxを書いてみたら何か適当な数字がずらーっと出てくるので
移動処理部に処理が移っているはずだけど選手は動かない。
という事で気分を変えて本を読む事に・・・。

514:436
09/02/06 01:05:54 DkLm7FbZ
>>513
自分も今日は変化なし・・・じっくり構想を練っています

515: ◆Fp.xSEIREI
09/02/06 07:39:07 kUyKQz9d
枠作ったりゲームシステム考えたりいろいろ
自機ショットのスムーズに曲がるホーミングレーザーを実装に向けていろいろ

516: ◆Fp.xSEIREI
09/02/06 12:17:19 kUyKQz9d
エフェクトのクラスいじってたら古すぎワロタ
開発初期のまんまだぜ…8月か…?

517:SGGK ◆6pZCoAtaxk
09/02/07 00:31:41 xxcJdwT9
自分もバグ取れたら、構想やゲームシステムを考えてみようかな~と思ってます。

選手のx、y座標を計算するのに使っている数値をデバッガで見ようと思いついたもののネット見ても方法が分からず断念。
もう1つ気になったのが、式の中にある1フレームあたりの移動量を現す数値をコンストラクタという初期化用関数?で設定していた点。
これをやめて、その式をコンストラクタの外に書いたら動いた。
理由は勉強不足で分からないけど、とりあえずこれで進めてしまう予定。
実はまた別のバグが出たけど今日は時間切れ~。

518:436
09/02/07 01:34:15 EB28/pCl
やる気が激しく低迷中・・・みんな俺にかまわず先に行くんだ・・・!!

519: ◆Fp.xSEIREI
09/02/07 18:29:46 aA+gcqfk
オーバーフローこわい
アイテムの初期化ミスったら音声ファイルハンドルぶっこわれたパネェ

520:SGGK ◆6pZCoAtaxk
09/02/07 23:35:24 fMJHJAn5
>>518
だ・・・大丈夫!やる気が0にならない限りは大丈夫です~。
>>519
「C言語 オーバーフロー」で検索してみましたが、む・・・難しそう・・・orz。

昨日の別のバグというのは、
1.Zキー押してないのに選手がマウスカーソルに向かっていく。
2.自分以外の選手全てがボールから離れていってしまう。
今日もあまりやれなくて未解決!!!

521:436
09/02/08 01:26:03 q6Hviut/
もう一ヶ月経ったか、早いなぁ
>>520
どうも~ 作成は止まってますが、なんだかんだでずっと考え続けてはいます

522: ◆Fp.xSEIREI
09/02/08 08:19:34 W7UWcBdq
>>520
正確にはオーバーフローじゃないかな?似たようなもんか。うちのは例えると

50個の配列変数をintで確保して、70回ループで初期化してしまいました。はみでた20回分はどこの変数を初期化したのでしょう☆

ってなった。画像や音声のハンドルを保存してるメモリ領域にはみ出てエラいことになったw


>>521
やる気が出ないときってあるよな~
書き出したらキリのいいとこまでとまらなくなるがそこまでが遠い…

523:SGGK ◆6pZCoAtaxk
09/02/08 23:11:00 DeawIxvP
時間経つの早いですね~。2月もあっという間かも・・・。
そういえば自分も画像データを読む時に配列変数1個ずれてプログラム書いてエラーになった経験がありますw

バグは>520の2.はなんとかクリア。
選手の座標決める式はおおざっぱに書くと、(次の座標)=(今の座標)+(1フレーム移動量)X(sinまたはcos)で、
その中のsin、cosを算出する式が別にあって、その中で(選手座標)-(ボール座標)としてたのが間違い。
その部分を(ボール座標)-(選手座標)にしたら直ったw

524:436
09/02/09 00:59:47 Mr5/Oitn
ちょっと出来そうな案が浮かんだので、ポチポチとやってます
>>522
ありがと~ ここに書き込む事で大分やる気をもらってます
>オーバーフロー
自分は文字列を上限超えて格納したら、以降コードを修正してもデバッグが起動不能に・・・w;

525:SGGK ◆6pZCoAtaxk
09/02/09 23:01:35 77ZsJA8v
>520のバグ1.は未解決です。
>517で言った構想やゲームシステムは、どちらかと言えば「やる事リスト」を考える事になりそうな感じ。
週末までになんとかできれば・・・。

526:436
09/02/10 00:42:25 CgwFXK0K
ずぅー っとキーコンフィグの仕組みをイジイジしてます

527: ◆Fp.xSEIREI
09/02/10 02:20:35 Bgt+PgnG
ゲームのプロセス優先度を変更して実行中のFPSのばらつきをほぼ0に(・∀・)
スカイプやってもエンコやっても処理落ちしない!けどフリーズしたらヤバそう

528:SGGK ◆6pZCoAtaxk
09/02/10 23:45:39 bVQ8HCA1
こちらは、「>520のバグ1.」未解決~。(間違いなさそうな気がするけどそんなはずないだろうし・・・)
こんな時は14歳から・・・の本に目を通してみます。

529:436
09/02/11 00:27:47 Up2cQUgT
今日も今日とてキーコンフィグ 今日も明日もキーコンフィグ
>>527
マルチコアならダイジョウブ!

530:SGGK ◆6pZCoAtaxk
09/02/11 15:14:11 mkWNCyhh
>>527、529
「ゲームのプロセス優先度を変更」、「マルチコア」で検索~!
む・・・難しい内容でした。

バグの原因発見!
原因のソース部分は内容的には下記の様になっていて、
このelseブロック内では最初以外の選手IDだけ処理される様な気がしていたけど、
良く見れば、Zキーを押さなかった場合、最初の選手のIDについても処理される事に気付いた。w
そして最初の選手のmove関数はマウスカーソル追従型にしていたから、
Zキーを押さなくてもmove関数が呼び出されて、選手がマウスカーソルに追従するというワケ。

while(選手IDが最後){
if( (選手IDが最初) && (Zキー押した) ){
(最初の選手データのクラス).move(0,0);//マウスカーソルを目指す関数が設定されている。
}
else{
(それ以外の選手データのクラス).move(ボールx座標,ボールy座標);//ボールを目指す関数が設定されている
}
 ID++する。
}

原因は分かったけど、どのように直すかは検討中・・・orz

531:436
09/02/12 00:40:35 qdQhKDNX
まだまだキーコンフィグ
一応途中のテストでは動いたものの、見た目が悪いので書き直しと残りの書き足しで、あと一日かかりそう

532:名前は開発中のものです。
09/02/12 20:18:47 3ETp66yJ
皆さん頑張ってますなあ。
僕も頑張らねば……

533:SGGK ◆6pZCoAtaxk
09/02/12 23:46:17 0sUNNefd
お互い頑張りましょ~!

(>530の続き)
else{
と書いてあるところを
else if(選手ID != 最初){
としたら直った!!!

次は、やる事リスト作成またはもう少しプログラムを手直しするかのどちらかで行く予定です。

534:436
09/02/13 00:58:37 Xaou+w4f
風邪引いたー最近ちょっと変だったからもしやと思ったけど・・・皆さんも気をつけて
まだテスト途中ですが、キーコンフィグ一応完成。アナログだろうがPOVだろうが何でもこいです

535:SGGK ◆6pZCoAtaxk
09/02/13 23:22:42 NesIqe+1
キーコンフィグ、気になってネットでちょっとだけ調べてみたらやっぱり難解。
もしかしてWindowsプログラミングかも?
自分もWindowsプログラミングにトライする準備勉強してみようかな~。(まだ早いかもしれないけど)
以前、すぐに挫折した経験ありです・・・orz (それで今はDXライブラリ+主に14歳シリーズ書籍)
風邪の方は、とりあえずマスクを用意してきます~。

「やる事リスト」はもう少し後にして、まずはボールのバグを直す事にしてみます。

536:436
09/02/14 00:35:45 XMi119GB
あ~何やってんだ自分; 「完成」したのはファイルからボタン名を読み込んだりキーコードに変換したり、各命令にボタンを割り当てる部分で
キーコンフィグ画面や設定を保存する処理などまだまだやる事沢山あります。誤解を招く書き込みしてすいません
今日はウィンドウのタゲが他に移って戻った時にFPSがおかしくなるのを修正

>>535
自分は基本DXライブラリのリファレンスとヘッダファイル?と標準関数の説明ページに書かれている事以外は使えません;

537:SGGK ◆6pZCoAtaxk
09/02/15 00:02:48 jh3k09Ob
>>536
そ・・・そういえば、自分はDXライブラリを説明見てインストールしてしまったら、
もうその時の事を忘れてしまい、なんで動いてるのかを良く知らないで使っている状態になってます。・・・orz

(ボールのバグの原因?)
全選手とボールの当たり判定が「当たり」の時に選手のフラグ用メンバ変数をtrueにする。
「Zキー押し」と「フラグ=true」が同時に成立していたら、カウント変数を初期化(=30)し、フラグ=falseにして、
ボールを蹴る選手の移動方向と同方向に移動させる。
カウント変数を毎ループ1ずつ減らし、if(カウンタ>0){ボール移動処理}にしてるので、
カウント0になるとボールは止まる。

これで分かった問題点は・・・、
1.ボールに触れた時にZキーを押さずにボールから離れてもフラグがtrueのままになる。

だから以前4方向移動だった頃、ボールから離れてる時にZキーを押すとボールが動いたと思われる。
今はZキー移動なので、触れた瞬間にボールが蹴られてしまうし、
他選手がボールに自分より先に触れた時に自分がZキーで移動してたら、他選手のフラグ=trueになるので、
他選手もボールが蹴れてしまう。

こ・・・これを直すのは辛そうな感じ。
そのままにしておいて他の事やるかもですw

538:436
09/02/15 01:02:19 INXhf2VE
コンフィグ画面を作ってます。やっぱり見た目が変化するとモチベーションが違いますね~

539:SGGK ◆6pZCoAtaxk
09/02/15 22:20:49 HE3msbh5
自分も選手11人出したらモチベーション上がるかもです~。(もうしばらく先になりそうな感じ)

ボールのバグについては、
アタリフラグを当たり判定でONして、ボールを蹴った直後にOFFしてるのがおかしいと思った。
これだとボールに触れても蹴ってない選手がいたら、その選手のアタリフラグはずっとONのままになってしまうから・・・。
という事で、当たり判定の関数内で選手がボールに触れたらON、離れたらOFFするようにしたみた。
そしてZキーは移動用にしてるので、「蹴る」をXキーにしてみた。

コンパイラは通ったけど、ボールに触ってる時にXキー押しても何故かボールは動かない。
原因不明~。また日数掛かりそうな予感。(一日あたり少ししかやれないので・・・)

540:436
09/02/16 01:19:41 /BiYzi6H
う~むどうもうまい処理の仕方が浮かばないです。引き続きコンフィグ画面を作り中

541:SGGK ◆6pZCoAtaxk
09/02/16 22:32:50 YITEZ4OH
バグ取れずです。・・・orz
if文の後に書いてあるボールの移動処理のブロックにprintfDx("%d",3);を書いても
何も表示されないので、if文の後のボール移動処理ブロックに処理が移ってない感じ。

542: ◆Fp.xSEIREI
09/02/16 23:27:24 agCOi5px
ブレークポイントつかってる?(・∀・)左の方クリックしたら赤い○つくやつ
そこで処理とめて変数の中身見たりできる
URLリンク(www.dotup.org)

543:436
09/02/17 02:43:28 u6gSAOgi
>>542
うわああぁこんな便利な機能を隠し持っていたとは・・・!
今まで変数を全て画面に表示してチェックしてました

544: ◆Fp.xSEIREI
09/02/17 04:59:49 0pJ8V4zK
クラスのメンバを一気に見たりできるから超便利だぜ(・∀・)

545:SGGK ◆6pZCoAtaxk
09/02/17 23:52:55 t8GcL2rZ
>>542
ありがとうございます~!画像も見てみました。
自分のはターボデバッガというのが入ってるのですが、何故かブレークポイントが最初の数行までしか設定できず、
その他いろいろ使いこなせない場面があり、ちょっと放置気味でした・・・orz
ネットで調べてもあまり情報が載っていない様なので、情報の多いデバッガを使えるコンパイラがあれば、それに乗り換えが必要かもしれません。
でも、もうしばらく頑張ってみます~。

546:せいれい
09/02/18 00:48:38 uhVOawfK
俺のコンパイラはVC++2008EEだ(・∀・)便利

547:436
09/02/18 01:08:38 4Q2oRHHM
今日はサボってしまた。。。明日がんばります

548:SGGK ◆6pZCoAtaxk
09/02/18 23:47:13 GV05nuHS
自分も今日はあまりできませんでした。・・・orz
VC++2008EE、検討してみます。(今度の土日で試してみるかも)

ターボデバッガ、何故か画面右上の「HELP」をクリックしても
何も表示されないので以前から放置して諦めてたけど、偶然解決。
自分はデバッガ画面をかなり縦長に初期設定していてたらしく、
実はHELP画面はその一番下側に表示されていて普段は隠れている格好になっていて、
スクロールしない限り見ることができなかったのが原因。
でも、肝心のブレークポイントの問題解決に繋がる説明は見つからず・・・orz
やっぱり、VC++2008EEに切り替えてそっちのデバッガでも同じ問題が出るかを
確認した方が早く解決するかも・・・?

549:436
09/02/19 00:40:29 +d/NyJF6
ゲーム内のウィンドウ単位で関数化してみれば管理が楽かも・・・と思い立ち、試しに組み立て中
>>548
自分もVC++2008EEです。トゥルースペースといい、無料で使っていいなんてマイクロソフトは太っ腹すねえ

550:せいれい
09/02/19 02:56:23 TWrN13Aa
そろそろいつか投げてたレーザーの処理をきちんと片付けておこうと思ったり
ある点Pが一辺の中点として存在する高さa幅bの矩形がr度回転している時の角ABCDの求め方って公式とかあるのかな

このゆとり脳をフル回転させると
点Pからr+90度方向にb/2進んだ座標に点A、-90度方向にb/2進んだ座標に点B、点Aから-90度方向にa進んだ座標に点D、点Bから+90度方向にa進んだ座標に点Cを取れば矩形が描けるはず…!!

自作の「角度と移動量を入れたら座標を返す関数」を駆使すれば余☆裕☆DA

フハハハハハ

551:SGGK ◆6pZCoAtaxk
09/02/19 23:27:19 l2on3TGr
>>549
現在はボーランドC++5.5コンパイラとBCCデベロッパーを使用(14歳シリーズC++がこれを使っていた為)していますが、
土日といわず今からでもと思いVC++2008EEをインストール中。今日はインストールまでで終わりそうです。
>>550
回転そのものの公式の存在については今の自分では見つかりませんでした。
やっぱり距離とsin、cosで1点ずつ位置を計算するかな~と思いますorz

552:436
09/02/20 00:15:20 BeiHPfXO
引き続きウィンドウの関数化
>>550>>551
数学苦手な自分にはさっぱりっす;

553: ◆Fp.xSEIREI
09/02/20 02:06:24 DwKgvB67
矩形回転についていろいろ(・∀・)
拡張性を求めて試行錯誤

554:SGGK ◆6pZCoAtaxk
09/02/20 23:59:53 6hmoFzm5
DXライブラリのサイトにある説明に従ってコンパイラを設定し、
プロジェクトの新規作成までで今日は終了。orz
土日前にここまでやっておいて良かったかもしれないけど、ややこしい~。

555: ◆Fp.xSEIREI
09/02/21 00:52:09 hRYbf/Bl
レーザー見た目だけ実装(・∀・)当たり判定はまだ
URLリンク(files.uploadr.net)

556:436
09/02/21 01:09:18 qlEwaizd
今日も今日とて部品作り
>>555
おぉぉすげ~ 

557:名前は開発中のものです。
09/02/21 23:36:37 lLbQtoox
>>555
うぉ!弾の絵が短い状態から細長く変化するという事は何か技がありそうな感じ。

こちらはバグが25箇所も出て、現在お手上げ状態~orz
ボーランドC++でやってた時はバグなかったのに・・・。

558:436
09/02/22 01:36:36 LjZlw/rK
ボタンの入力系統ごとの処理をかきかき
十字キーを押すと左アナログからも数値が返ってくる・・・
連動してるなんてしらなんだ

559: ◆Fp.xSEIREI
09/02/22 02:04:08 RhTsgzZG
予告線から発生するタイプも実装(・∀・)
URLリンク(www.dotup.org)
オプションにくっつけて回転させながら撃たせてみた


あとは当たり判定つけるだけ(・∀・)

560:名前は開発中のものです。
09/02/22 03:20:53 vuKwEEMt
>ボーランドC++でやってた時はバグなかったのに・・・。

それはバグっつーかコンパイラの仕様の違いでは……。

561:SGGK ◆6pZCoAtaxk
09/02/22 22:01:00 Iti7a7GO
>>558、559
みなさん進んでますね~。
こちらはバグが取れず当分の間足踏み状態が続きそうな予感です~。
>>560
仕様が違うとコンパイラってこんなにも違うものなのかと痛感してます。

昨日のエラーは最後の3行、残りはワーニング(警告)。
エラー内容は、言葉忘れたけど、同じ定義が他にもされているという類のもの。
以前、staticメンバ変数は外部に実体の定義が必要らしいと知り、それをたまたまヘッダファイルの中で定義してたから、
そのヘッダファイルが何箇所かで呼ばれてるのがいけないんだろうと思い、
定義の部分をcppファイルに移したら、コンパイルが進み、「おっ!?」と思ったら
ウインドウが出た直後に英文だけのエラーメッセージウィンドウが表示されて停止。
ワーニングも71個に増えた。・・・orz

562:436
09/02/23 01:09:18 6s8IHBJl
選択画面でのキーとパッド入力に対する挙動が出来た
今はマウスとホイールの分を組み立て中
>>561
コンパイラごとに書き方変えなくちゃ駄目って事ですか?
不便だー

563:SGGK ◆6pZCoAtaxk
09/02/23 23:10:38 ScQiYH5A
>>562
ボーランドC++で通ったなら、VC++2008EEでもいけると思ったけどダメでした。
VC++2008EEの方が何故かチェック厳しい感じ。

VC++2008EEで結構書き直ししてしまったので、もう一度ボーランドC++で書いて動いていた時の状態から
違う考えの修正をしてみようとボーランドC++のソースを見たら何故かVC++2008EEで今まで書き直してきた内容と同じになっていた。
VC++2008EEのプロジェクト?へのソース組み込み方法が分からなかったので、ソースをプロジェクトファイルのツリー画面に
ドラッグドロップして操作してたのが原因らしい。どうりでプロジェクトファイルのフォルダを開いてもソースファイルが無いワケだ。
もう戻れない~orz

564:名前は開発中のものです。
09/02/24 00:28:26 S/Istr7/
関数内で使われてない変数があるだけでもVCは文句言ってくるしな。
GCCは気にしないでくれるのにw


565:436
09/02/24 01:55:47 bo0/H7dJ
引き続きマウスの入力分をかきこき
>>563
あわわ;チェック厳しいのも場合によりますね
ユーザ側でゆるめられる設定とかあればいいんですが

566: ◆Fp.xSEIREI
09/02/24 03:18:11 5+X9BMJV
関数に構造体ポインタの渡し方がよくわからない(・∀・)
というか構造体ポインタの宣言?がよくわkあああああああああ

構造体が配列になってる時はどうすればいいんだろう(・∀・)

567:名前は開発中のものです。
09/02/24 06:03:45 uqndkdFp
/* 何がわからないのか知らんが! */
#include "stdio.h"
#define MS "z'goku"
/* 構造体とその別名の定義 */
typedef struct tagS { char the_red_comet; } S;

/* 構造体のポインタをとる関数
ポインタ経由の場合「->」で要素にアクセス */
void func1(S *ps){ ps->the_red_comet = '3'; }

/* 構造体の配列をとる関数
関数に渡すとサイズの情報が欠落するので
渡す配列のサイズ(要素数)を一緒に渡す */
void func2(S ps[], int num){
int i;
for (i=0; i<num; i++)
ps[i].the_red_comet = MS[i];
}

int main(void){
S s, as[sizeof MS];
int i;

func1(&s); /* &で変数のアドレス(ポインタ) */
printf("%c\n", s.the_red_comet);

func2(as, sizeof as/sizeof as[0]);
for (i=0; i<sizeof as/sizeof as[0]; i++)
printf("%c", as[i].the_red_comet);
return 0;
}

568: ◆Fp.xSEIREI
09/02/24 11:51:58 5+X9BMJV
うぉぉ(・∀・)こんなに難解なのか…
もうちょっとがんばってみる

ともかく㌧

569:名前は開発中のものです。
09/02/24 14:01:41 cPcauKWt
>>568
あー、いや、そんなむずいもんじゃないにょ。
多分俺の書き方が悪い。ぶっちゃけズゴックって言いたかっただけ。

構造体に限らず、変数はメモリのどっか特定のアドレスに格納される。
変数のアドレスは変数名の前に&付けると取り出せて、ポインタ変数へ保存できる。

int *pi;でint型のポインタ変数piが作れるように、S *ps;でS型のポインタ変数psが作れる。
int ai[num];でint型num個の配列aiが作れるように、 S as[num];でS型num個の配列asが作れる。
構造体のメンバにポインタ経由でアクセスする時は「.」じゃなく「->」。
構造体配列sのi番目の要素のメンバにアクセスする時はs[i].member。

>>567のtypedefのとこは純C用の書き方。C++ならふつーにstruct S{char the_red_comet};でいい。
ちなみにfunc2(S ps[], int num)のとこは実際はfunc2(S *ps, int num)と同じだったりする。
配列にsizeof使うと配列全体のサイズが取れるけど、関数に渡した場合その中では
配列じゃなくポインタが正体なんで、sizeof使ってもポインタのサイズしか取れないのに注意。
配列の名前は単体で使うと先頭要素のアドレスを指すポインタになるんで、
呼ぶ時にfunc2(&as[0], sizeof as/sizeof as[0])としても同じ。
(関数に配列渡してる訳じゃなく、ポインタを渡してる)

うん、確かに自分で言ってて難解な気がしてきた。俺は説明が下手だ。
このへんは構造体の話というより配列とポインタの話やね。
細かいこと気にせず動きゃいーんだの精神でがんがれ!

570:名前は開発中のものです。
09/02/24 14:16:53 cPcauKWt
う、よく見返したら'\0'まで出力してんな。恥ずっ。

571: ◆Fp.xSEIREI
09/02/24 14:28:51 5+X9BMJV
>>569
MSとかズゴックがCの関数か何かかと思った俺は

うちのソース風にやりたいこと書くと
~~ヘッダー~~~~~~

typedef struct{
  char the_red_comet;
} S;

void func1(ぽいんたっぽい引数){うんたら};
~~~~~~~~~~~~


~~別のソースファイル~~
extern void func1(ぽいんたっぽい引数);
extern S MOBILE_SUIT[100];

void func2{

int i;

 for(i=0;i<100;i++){

 funk1 (ここにMOBILE_SUIT[i]のthe_red_cometのポインタをあげたい);

 }
}

こんな感じ。ちなみにmainとかは行数の都合により省略。mainは別のファイルにあるよっ
あとDXライブラリだからstdio.hは入れられないんだ

572:名前は開発中のものです。
09/02/24 15:27:17 cPcauKWt
>>571
↓こんな感じ。

void func1(char *p) {
/* 何かの処理 */
}

void func2(void) {
int i;
for (i=0; i<100; i++) {
func1( &(MOBILE_SUIT[i].the_red_comet) );
}
}

アドレス取得の「&」よりメンバ選択の「.」が優先度低い演算子なので、
括弧で順序を指定してやる必要がある。
URLリンク(takagi.in)

573: ◆Fp.xSEIREI
09/02/24 15:37:15 5+X9BMJV
>>572
うおおおおおおおおおおおお!!!?コンパイル通ったwwwwwwwwwきちんと動いたSUGEEEEEEEEEEEEEEEEEEEEEE
できたうっひょおおおおおおおおおおおおおおおおおぴょおおおおおおおおおおお
某関数がシンプルになったぜええええええええええええええええええええええYEAAAAAAAAAAAAAAAA

ありがとう、ありがとうズゴック先生(;∀;)


てか->とか * とか考えなくても &つけりゃよかったのねorz

574: ◆Fp.xSEIREI
09/02/24 15:45:04 5+X9BMJV
URLリンク(www.dotup.org)
ここに使われますた

ポインタって便利だね

575:SGGK ◆6pZCoAtaxk
09/02/24 23:16:12 AWriAbTE
>>564-565
チェック厳しいですが、なんとかVC++2008EEでやってみようと思います。
ソース上書きしてしまって直前の内容には戻れなくなったしw
>>566-574
ポインタっていつ見てもややこしいですね~。勉強してる時はなんとなく分かった感じになっても
しばらくして自分で書こうとするとまた分からなくなってしまってたりする・・・w

今日もコンパイラの使い方で足踏み状態。
既にあるソースをコンパイルに含める方法はわかったので、もう前のバージョンに上書きされる事は無くなった。
プロジェクトファイルのフォルダにソースをコピーしてから、「新しい項目の追加」の▼押して「既存項目の追加」で出来る。
処理がどこで止まっているかわからないので、画面右下の「呼び出し履歴」を表示させたいが、
デバッグでプログラムが止まった時に出るエラー画面でデバッグの「中止」を押すと、「呼び出し履歴」が消えてしまう。
これはエラー画面でデバッグの「再試行」を押し、次に出る画面で「中断」を押せば、「呼び出し履歴」が残る。
履歴は上からじゃなく下から上に向かっている事に気付くのに時間掛かった。
とりあえず、ゴールのデータを初期化する所で止まっているらしい。
ちなみにエラー画面の英文は、イテレータがどうのこうのという感じの内容でよく分からなかったけど、
たしかにそういうのを使っているので、その辺が原因かも?というところまで来てマス。

576:436
09/02/25 01:06:52 ueY3gPVj
マウスとホイールの挙動も大体出来て、今はコンフィグ画面を組み立て中

577:SGGK ◆6pZCoAtaxk
09/02/25 23:02:59 yn9MVXN6
バグ変化無し・・・。
一行ずつ実行させようとすると勝手にWinMain関数から始まり、内部の関数を呼ぶところで
「現在の場所のソースコードを記述できません」と表示され先に進まず。
それならばと思い、昨日問題があると思ったゴール関係の処理関数内部一行目にブレークポイントを設定し、デバッグ開始し、
ブレークポイントで止まったところからF11キーを押して一行ずつ実行させてみたら
いつの間にかエディタ画面内に「list」というタブが付いた画面が表示され、
その画面中身は見覚えのない理解不能なソースが書かれていて、何故か一行実行がこの画面に移ってしまっている・・・orz
ちなみにエラー文は、「Experssion:list iterator not dereferencable」
一応検索してみたけど、自分に分かりそうなのは見つからず・・・。
気持ちを切り替えた方がいいと思い、今日はここで終了。

578:名前は開発中のものです。
09/02/25 23:18:59 M83kTzla
リリースモードでやって、逆アセの画面みてるとかw
MOV AX,BXとかそういうんあった?

579:436
09/02/26 01:18:57 F2EPEs+N
引き続きコンフィグ画面を~

580:名前は開発中のものです。
09/02/26 04:04:36 qHLjortN
>>577
ひょっとしてiteratorを++とかやってたり

581:名前は開発中のものです。
09/02/26 04:13:26 qHLjortN
いや、ちがうなんだっけ
えーとstd::list.iterator itr とかしたとき何かができなかったような…

582: ◆Fp.xSEIREI
09/02/26 10:02:19 0TSvd06Q
二次元上での物体の自由落下についていろいろ(・∀・)
既存の関数を利用してそれっぽいのなら作れそう

583: ◆Fp.xSEIREI
09/02/26 11:43:11 EbeM2R2x
矩形の4点座標を計算する関数に便利機能をつけたら引数14個のアホみたいな関数になってしまった

584:SGGK ◆6pZCoAtaxk
09/02/26 22:12:21 1SuK1bkP
>>578
確認したところデバッグモードでした。listというタブと逆アセンブルというタブの付いたウィンドウが出てきて
デバッグを中断すると見れます。MOVとかは逆アセンブルの方に出ていて
listのウィンドウは、
#if _HAS_ITERATOR_DEBUGGING
if (this->_Mycont == 0
|| _Ptr == 0
|| _Ptr == ((_Myt *)this->_Mycont)->_Myhead)
{
_DEBUG_ERROR("list iterator not dereferencable");
_SCL_SECURE_TRAITS_OUT_OF_RANGE;
}
#else
・・・のような感じで意味不明な文が延々と1300行近く出力されます・・・。
>>579
早くバグを取って自分も先に進みたいです。w
>>580、581
iteratorをあまり理解しないうちにプログラムを書いていたら、
やっぱりそういうところがバグになって現れてしまうみたいです。
iteratorはプログラム内のあちこちで使ってるので大変ですが、
とりあえず本当にすべてのiteratorを使っているところでバグになるのか
切り分けをしてみようと考えてます。
>>582,583
自分もいつか選手にジャンプ&自由落下させてみたいけれど、バグが・・・w

585:436
09/02/27 00:36:41 JFxOaYgu
まだまだコンフィグ画面
項目をオンマウスでアクティブ、から、オンマウス+クリックでアクティブ、に変更
たったそれだけの変更でもあちこち書き換えなきゃならない羽目に
仕様は予め細部まで熟考しとく事!>自分

586: ◆Fp.xSEIREI
09/02/27 02:03:40 gp2A0UAm
>>584
俺はそんなことなったこと無いなぁ…難しいことしてないからかもしれないけど


レーザーの幅と長さに対する倍率で当たり判定のサイズを指定できるようにしてみた
長さ0.9倍、幅0.5倍を当たり判定に指定するとこの赤い四角が当たり判定に(・∀・)一枚目:最大時 二枚目:消滅時
きちんとレーザーの状態に合わせて自動で当たり判定のサイズも変わる便利仕様

URLリンク(www.dotup.org)

587:SGGK ◆6pZCoAtaxk
09/02/27 23:24:49 U/xgHr9a
>>585
なんだか自分も仕様について考えてみたくなってきました。w
>525の頃に言っていた「やる事リスト」の前に仕様決めた方がいいのかも・・・。
>>586
製作中は当たり判定表示した方が便利そうですね~。(引数が15個に増えてる~!)
自分もバグ取れたらちょっと考えてみたいです。

バグはまだ取れないけど、iteratorを使っている関数(選手、ボール、ゴールの初期化、
選手、ボール、ゴールの移動、当たり判定)の内、コンパイラで停止した関数がゴール関係だったので、
とりあえずゴールの初期化と移動の関数を呼び出す行に // をつけて注釈文にしたら、画面が表示された!
なので、ゴール関係関数と他の関数でのiteratorの使い方に違いが無いか見比べてみるつもり。

588:436
09/02/28 01:22:18 BN0uPU4y
そう、コンフィグです、今日も
>>586
複雑そう・・・自分には無理だ;
>>587
おぉ復活しつつあるようで、ひとまずホッとしました

589:SGGK ◆6pZCoAtaxk
09/02/28 23:41:24 6cM45uPX
なんとかコンパイルできるようになりました。
初期化関数については、元々上手くいってる選手やボールの初期化関数ではiteratorを使ってませんでした。
ゴール関係初期化関数だけiteratorを何故か使ってしまっていてそれがプログラム実行中のエラーになっていたらしい。
結局>577のエラーメッセージの意味は分からなかったので、先がちょっと不安な感じ。
何故か移動用関数内では、(*it). で要素にアクセスできているので不思議~。
これでやっと>539のバグ取りに戻れる・・・orz

(プログラム実行時エラーになる書き方、詳細は略)
init(){
 goallist.clear(); //GoalData型(ゴール関係のデータが入ってるクラス)のリストgoallistの要素を空にする。
list<GoalData>::iterator it; //GoalData型リストgoallistのどれかを指定するためのiteratorを設定
it=goaldata.begin;      //iteratorをGoalData型リストgoallistの先頭を指すようにする
(データの数だけループ){
(*it).x1=10; //GoalData型の要素に初期データを代入する
(*it).x2=50;
 ++it; //iteratorを1つ上げて次のGoalData型の要素を指すようにする。


(プログラムが無事実行できた書き方、詳細は略)
init(){
 GoalData gd;  //GoalData 型データ1個分を仮保存するためのローカル変数gdを定義
(データの数だけループ){
gd.x1=10; //GoalData型の要素に初期データを代入する
gd.x2=50;
 goallist.push_back(gd); //gdに仮保存したgoallistの要素一個分のデータをまとめてgoallistの最後尾の要素に登録
 }





590:436
09/03/01 02:02:50 fK/bT0En
>>589
お~おめでとうございます 自分は停滞気味・・・

591:SGGK ◆6pZCoAtaxk
09/03/01 22:35:05 4AGEbIXn
>>590
ありがとうございます~。 今日はほとんど進みませんでした。orz
この数日のバグ取りの反動かもw

592:436
09/03/02 01:26:59 yUGCkh1E
マウスオン+クリックで選択できる様に変更
もう3月!今年も残り10ヶ月を切ったぞーいそげいそげ

593: ◆Fp.xSEIREI
09/03/02 17:23:38 O2JzSRpM
list<GoalData>::iterator it;

こ…これはいったい何をしているんだ…俺にはわからない…/(^o^)\


ゲームシステムについていろいろ(・∀・)
面白くするにはどうすればいいか、を考えてみる
クソゲーを観察してみるのも勉強になるみたいね

594:SGGK ◆6pZCoAtaxk
09/03/02 23:46:06 MvrVI/rB
>>592
そういえばもう3月ですね~、時間の流れが速すぎる~。
>>593
C++で、配列みたいに複数のデータを管理できるコンテナクラスというのが標準でいろいろ用意されていて、
そのひとつにlistクラスというのがあり、そのlistクラスでGoalData型(←これは自分でプログラムの中で宣言して作った型)のデータを複数管理したいので、
どのGoalData型かを指し示す為にイテレータit(←配列変数の要素にアクセスするための添え字みたいなやつ)というものを宣言しますみたいな感じで自分は理解していますが、
自信はあまり無いです・・・orz

ボール動かないバグ取れないですね~。
if(ボール蹴る時のキーが押されてる)&&(ボールと選手の当たり判定用フラグ変数==true)の条件部分が真になっていない感じ。
ボールと選手の当たり判定用フラグ変数が、当たり判定関数で当たり=1と成っていても
if文に来る直前でprintfDX()使って表示させて確認してみると何故か0になってる。
プログラム中では同じ変数名で書いていても中身は違うとなると
変数のスコープ(有効範囲みたいなやつ?)をよく分かっていなくてそれが原因なのかもしれないというのが思いついたけど
それを確かめる方法が無い・・・orz

595:名前は開発中のものです。
09/03/03 00:53:43 j/EdIaTK
ひょっとして「押されている」と思ってるのが「押されたとき」だったり

【ハウツー】最初にマスターしたいVisual Studioのデバッグ機能 - 基本編 (1) ブレークポイント | エンタープライズ | マイコミジャーナル
URLリンク(journal.mycom.co.jp)


596:436
09/03/03 01:13:26 B6hdHZko
ウィンドウモード変更・表示倍率変更・フレームレート変更・FPS表示切替を選択できる様になりました
>>593
面白く・・・最大の問題すなぁ・・・

597: ◆Fp.xSEIREI
09/03/03 21:05:59 9wM7nouk
URLリンク(www.dotup.org)

回転行列による矩形と点の当たり判定実装(・∀・)

598:SGGK ◆6pZCoAtaxk
09/03/03 22:56:23 vs8eMq8g
>>595
ありがとうございます~。デバッグは機能が色々ある様なので少しずつ覚えていこうと思います。
キー入力の状態については、実は自分はまだよく理解できぬままプログラムやってます・・・orz
>>596
かなり順調にいっててうらやましいですー。
>>597
回転行列を当たり判定に使う・・・、む・・・難しそうな世界。

ボール動かないバグの原因なんとなく見えた。
フラグ用変数のスコープが違ってて名前は同じでもアドレスが異なっている別々の変数を
それぞれの関数内で操作してるのではないかと思ったけど、どうもそうではなさそう。
ボールが選手に当たっている状態を表すフラグの立て方に原因があったと思われる。
これを説明するには一週間分の書き込みスペースを使ってしまいそうな感じ。

599:436
09/03/04 01:23:23 +kKOKlkp
フルスクリーンから復帰すると古い方の拡大率になってたのに気付いて修正
マウスで窓枠ドラッグした時の拡大率を取得出来る様にした
今になってもっとシンプルなインタフェイスを思いつく・・・あ~全体的に作り直したい
>>595
勉強になります
>>598
一つの結果が出るまでのスパンというか下ごしらえが段々長く大変になってきました;

600:せいれい
09/03/04 21:55:43 1TDttkKc
もうちょっと調整したらゲームシステム部分の作成に移れそう
そろそろ背景やファイル入出力もいじらねば(・∀・)

601:SGGK ◆6pZCoAtaxk
09/03/04 22:20:50 M0lqZAHx
こちらは、まだまだバグ取り中~。

昨日言っていたバグの原因は、プログラムをかなり略して書くと、

メインループ(){
 選手.move();//選手の移動処理
 ボール.move();//ボールの移動処理
 ゴール.move();//ゴールの移動?処理
 当たり判定();//それぞれのオブジェクトの当たり判定をここでまとめて行う
}
・・・となっていて、当たり判定関数の中では、

while(最後の選手まで繰り返す){
if( 選手とボールが当たっているか? ){
 a->atari=true;// 選手のメンバ変数atariのフラグをONする。
      b->atari=true;// ボールのメンバ変数atariのフラグをONする。
}
else{
 a->atari=false;// 選手のメンバ変数atariのフラグをOFFする。
 b->atari=false;// ボールのメンバ変数atariのフラグをOFFする。
}

ボールを蹴る処理は、メインループの「ボール.move();//ボールの移動処理」の中にあって、蹴れる条件は、

(Xキーが押されている)&&(ボールのatariフラグがONである)

なのに対し、今のプログラムでは、自分がコントロールできるのは一番目の選手だけなので、
選手をボールに接触させてatariフラグをONにしても当たり判定関数のwhile内で最後の選手まで
判定するので、最後の選手はボールに触れてないから、b->atari=falseになって、ボールのatariフラグは結局最後にはOFFにされてしまう。
その状態でメインループのボール移動関数に戻るので、いつまでたってもボールを蹴れる条件が成立しない・・・orz

602:名前は開発中のものです。
09/03/04 22:40:39 /ZV4wLD2
何故else条件でボールのフラグを落とすのか、40文字以内で説明せよ(5点)

フラグ落とすのは選手だけでいいと思うんだが。そもそもボールのフラグもいらない。
ボール持ってる選手しか蹴る(移動の初期値を与える)ことができないのなら
ボール支配できたときにボール蹴る関数にでも飛ばせばいいと思うが、どうか。

603:436
09/03/05 00:50:31 LR5dYdvr
ああああせりました;
窓枠ドラッグ時の拡大率を取得する為SetAlwaysRunFlag();をON-OFF多用してたら
なぜかSetAlwaysRunFlag();をOFFにするとデバッグに行く途中で止まり、
ON状態の一文を入れないと動かなくなり、とうとうそれを入れても入れなくても動かなくなり・・・
VCリインストールしたら今度はヘッダファイルを読まなくなり(パスは渡してるのに)、
レジストリからVC関連を全消去してリインストール、さっきようやくまともに動いたっぽい

SetAlwaysRunFlag();を乱用乱発してたのが悪かったのかなぁ

604:SGGK ◆6pZCoAtaxk
09/03/05 23:27:28 hIYt1MGi
>>602
else条件でボールのフラグを落とすのは、(Xキー押し)&&(ボール接触フラグON)がボールを蹴れる条件なので、
選手がボールから離れている(else)時には、ボール接触フラグをOFFにする必要があった為。

今のプログラムでは、ボールに接触してるので蹴ろうとしても、ボールに接触していない選手がいたら、elseが成立してしまい
ボールの接触フラグをOFFされてしまうという問題がありました・・・。

確かに今思うとボールのフラグは必要無かった様です。
選手全てにボールに接触してるかどうかを表すフラグを持たせておいたのは、同時に複数の選手がボールを蹴る様な場合を考えてました。
同時蹴りの時にボールに接触してる複数の選手から一人を選ぶ仕組みが必要かと思いながら実装の案はまだ何もなし・・・。
バグの修正はもう少し検討中~、今のボール移動関数は、選手のデータを引数に持っていないので、選手のフラグ変数を使えないのデス・・・orz

>>603
レジストリとか全然わからないので、自分もその関数には注意しておきます~。

605:名前は開発中のものです。
09/03/06 00:01:32 zNsEmWk0
>同時に複数の選手がボールを蹴る様な場合を考えてました。

それは「蹴った」時の処理であって、
接触したかどうか判定する時点では関係ないんじゃないかな。

同時蹴りの優先度は確かに悩むところだね。

606:436
09/03/06 00:30:05 SvQUccHR
拡大率取得する関数がすでにあったorz
拡大率変えるとSetMousePointが元のウィンドウの大きさ基準で動く為、
元の解像度を超える座標を指定出来ないorz
ので、新たに思い付いたインタフェース案はモロにその影響を受ける為、
すっぱりあきらめられたw
今は構造をもっとスッキリ出来ないかイジクリ中
>>604
今後は念の為C:とソースのバックアップを取る様にしました;

607:SGGK ◆6pZCoAtaxk
09/03/06 23:39:57 Fo+vpfkW
>それは「蹴った」時の処理であって、
>接触したかどうか判定する時点では関係ないんじゃないかな。

た・・・確かにそうです。
メインループ内での処理を移動、当たり判定に分けておいて、当たり判定内で
いろいろな組み合わせの当たり判定をあらかじめ行い、その結果を各種フラグ変数に記憶させておいて
移動関数でそのフラグ変数を参照するようにすれば、移動関数から当たり判定関数を呼ばなくても済み、
プログラムが整理できそうな気がしたけど、なかなか上手く行っていないです・・・orz

>>606
そういえば自分もバックアップ全然取っていないです。もしもハードディスクがクラッシュしたら・・・。(汗;)

やっと>539のバグがなんとか取れました。(もっと日数かかるかと思ってた)
このスレでやってたおかげでVC++2008EEに移れた影響も大きかった。
ボール移動関数に選手のオブジェクトのアドレスを渡して、選手のメンバ変数の中から
ボールとの当たり判定用フラグにアクセスして、(Xキー押し)&&(ボールとの当たり判定用フラグON)が真なら
ボール移動処理に移る様にするとOK!


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch