X



【初心者】課題をクリアしていくスレ【講習会】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
垢版 |
04/06/10 18:05ID:VshiFFV8
ゲームに必要な要素を先生が出してくれます

その課題をクリアしていく講習会です
0399名前は開発中のものです。
垢版 |
04/07/22 22:56ID:dsDe4Hb2
過去の課題等のまとめページはこちら
http://qrl.jp/?u=104365
0400名前は開発中のものです。
垢版 |
04/07/22 23:14ID:NHymqfSQ
>>398
うわ、悪い。ちゃんとチェックせんといかんね。
397氏の意見も踏まえてちょっと考えてみゆ。
一晩くれんか?
0401400
垢版 |
04/07/22 23:35ID:NHymqfSQ
一晩と言ったが、少し考えてこんなのはどうか?
課題11:ドットイータ基礎
level1:
画面を○で埋め尽くす。
level2:
画面中央にオブジェクトを表示し、自由移動できるようにする。
埋め尽くした○との重ねあわせに注意。
level3:
キーを離しても、オブジェクトが○中央できっちり止まるようにする。
90度曲がる場合も、○中央まで進んでから曲がること。
level4;
画面周囲、および画面内に迷路上に■を配置し、■の中には進入不可とする
level5:
オブジェクトが通過した○を消去する。

これでどうやね?
0404400
垢版 |
04/07/23 00:29ID:MNC+jdGg
>>403
そうかー、ディグダグの話が出たので、
これをディグダグ風穴掘りに発展させよと思ってたのだわ。

level6:
通過した際、単純に消すのではなく、通過していない方向には
壁を残した形で穴あきのパターンを置く
穴あきパターンとしては16種類存在するはづ

level7:
手付かずの領域に進入する際、
進入に応じて進行方向に侵食していくパターンに書き換える
侵食中にUターンすると虫食い状態のパターンが残るはづ

level8:
■の真下が手つかづ、もしくは■でない場合、■を落下させる。
落下した結果、手つかづ、もしくは■の領域に到達したら、
落下中の■を消去

といった感じで。これでもあかんか?
0405名前は開発中のものです。
垢版 |
04/07/23 00:34ID:ZzAd+MaZ
あれもこれも駄目って言うだけなのもナニなので。
ファミコンから離れて、初心者用でまだ出てないものを色々考えてみる。

カードゲーム系。神経衰弱など、手持ち札が無く盤面だけでできる簡単なもの。
思考パズル。いわゆる倉庫番や16パズル、ライツアウトなんか。
シューティング系。弾を撃つの発展で誘導弾を撃ってみる。
ワンキーアクション。押すと上昇、離すと下降の洞窟進行ゲーなど。
0406名前は開発中のものです。
垢版 |
04/07/23 00:39ID:ZzAd+MaZ
うぉ、行き違い発生(汗
試みはなかなかおもろそう。
初心者がレベルアップするにはいい課題だけど
後半かなりレベル上がりすぎのような気もする。
0407400
垢版 |
04/07/23 00:47ID:MNC+jdGg
カードゲームか・・・
後々知っておいて役に立ちそう、ということでは、
カードのハンドリングなんかどうだろう?
カードのフリップ、n個の地点への配布
手札のエクスパンド
(一定領域内に、手札枚数が多ければ間隔を狭く、少なければ広く並べる)
などなど。
カードのフリップには拡縮がいるけど、GDIでできることだしなぁと、あかん?
0408406
垢版 |
04/07/23 01:02ID:ZzAd+MaZ
>400
初心者向けやからそこまでせんでもええんとちゃう?

4×4の数字だけの神経衰弱として
LV1 カードを描く(テキストでもOK)
LV2 シャッフルして並べる。
LV3 裏返してめくって、当たったら取り除く

最初はこのへんからでどない?
0409400
垢版 |
04/07/23 01:13ID:MNC+jdGg
>406
確かに最初はそのへんで十分かも。
後々lv2の「並べる」、とかlv3の「めくる」とか
そのへんを見栄え良くするように拡張していくとかね。

LV4 「めくる」をなめらかにする
LV5 「並べる」を一箇所にある山札から各位置にスムーズに動かす

とかとか
0410名前は開発中のものです。
垢版 |
04/07/23 01:19ID:ZzAd+MaZ
OKOK、じゃぁ次の課題は神経衰弱ってことで。
なんか勝手に二人でどんどん進めていってるようだけど
良かったんだろうか? と思いつつも寝ます。
04154 ◆3VUXqvbfSY
垢版 |
04/07/23 22:36ID:KF5N7PI1
…皆様お久しぶりです。世間が夏休みになると私は忙しくなる…
不公平な気がします。
んな愚痴は置いといて…

ん〜スレの方向性か…
なんか、カードゲームとアクションゲームの二つの方向が人気が高そうなので、

…ニ兎を追ってみましょうかw

カードゲーム課題1
ペア判定しか無いポーカーを作りましょう。
ジョーカー無しのワンセット52枚をランダムに四人に五枚ずつ配り、ペアの判定のみで勝ち負けを判定し順位を出して貰います。


アクションゲーム課題1
…赤い四角再登場ですw
640*480のウィンドウ内に青い四角を使って道を作成して貰います。
各四角のサイズは64*64で青い四角の位置は問いません。
赤い四角を移動させ、スペースでジャンプ下に何もなければ落下です。
重力加速度は1.5ピクセル/フレームが自然っぽいです。
(凡に、アクションゲームの落下判定は、キャラを常に落下状態にして足場の上のみ判定をOFFにすると、楽に作れます。)
0416名前は開発中のものです。
垢版 |
04/07/24 00:07ID:jMxmp7dj
>>414
荒らすなよ
0417名前は開発中のものです。
垢版 |
04/07/24 00:39ID:sBREqJXF
>>396の課題をやりますた
http://gamdev.org/up/img/889.zip

計算はこんな感じでやってます
add+=g;
y+=add;
if (y>20)
{
    add=-add*0.95f;
    if (abs(add)<0.01)
    {
        g=0;
        add=0;
    }
}

0420名前は開発中のものです。
垢版 |
04/07/26 11:51ID:X3QiLV0p
ポーカーむずい
0421名前は開発中のものです。
垢版 |
04/07/27 23:03ID:iQq31bJ4
突っ込んでいいとこかわかんないけど
417の

add+=g;
y+=add;
if (y>20)
{
add=-add*0.95f;
if (abs(add)<0.01) // if (abs(add) > 0.01) じゃないかな・・・・減衰無しだし
{
g=0;
add=0;
}
}
0424名前は開発中のものです。
垢版 |
04/07/28 03:11ID:fhE8VW3/
>>421

>>396

>level5:

>床にあたったら減衰するようにして、
           ^^^^^^^^^^^^^^^^^^^^
>次第にバウンドを小さくするようにしましょう。

仮に減衰なしにするなら変更箇所は
add=-add*0.95f;
       ↓
add=-add*1.00f;
0426名前は開発中のものです。
垢版 |
04/08/01 02:10ID:aZwyLY/F
ageられると書き込みたくなる部外者でつ

>>417
g=0;って、重力加速度を変更するより接地フラグ使った方がいいとおもふよ。
あと、例えばy=20ピッタリになったりすると
次フレーム以降(abs(add)<0.01)になるまで、地面にめり込んでブルブル言うかも。
コレが出ると、addがいくら大きくても地面にピタっと張り付いちゃうから
if(y>20)の時はy=20って修正した方が良いかもね。少し計算ずれるけど。

if(y>20)が成り立つ時addは+だって保障されてるから
if(abs(add)<0.01)のトコはif(add>-0.01)でもいいね。

あとマジックナンバーは後々苦労のタネになるから、大きいプログラム組むときは注意ね

>>421
そうやっちゃうとaddが十分デカイときに止まっちゃうよ
0427名前は開発中のものです。
垢版 |
04/08/01 02:58ID:aZwyLY/F
おう、大切なことを忘れていた。
見た感じ
add=-add*0.95f;
はあまりよろしくない。>>426の2-3行目のような現象の引き金になるから。
add=-fabs(add)*0.95f;
とかにしたらどうかな。

そうそう、てっきりJAVAかなんかと思ってたらCなのね。
absはint返すから abs(add)<0.01 イクナイよ。
fabsfとかをご利用下さい。
0428名前は開発中のものです。
垢版 |
04/08/04 07:03ID:2dcabQIG
あげ
0430名前は開発中のものです。
垢版 |
04/08/04 11:13ID:l64BR6wY
課題5キー入力
http://gamdev.org/up/img/969.zip

開発環境
Delphi6
TrueVision3D

スクリーンショット
http://gamdev.org/up/img/968.jpg

コンパイル・実行にはSDKが必要
http://www.truevision3d.com/downloads.php



倒したキーの方向の加速度を1としてそれを徐々に減らすことで慣性ぽくなってます

If Inp.IsKeyPressed(TV_KEY_UP) = True Then
sngWalk := 1;

if sngWalk > 0 then begin
sngWalk := sngWalk - 0.05;
If sngWalk < 0 Then sngWalk := 0;
end;

sngPositionY:=sngPositionY-sngWalk * TV.TimeElapsed;
0431名前は開発中のものです。
垢版 |
04/08/05 19:01ID:AmQSIvEb
ここは良スレですね。

>>419
おせっかいかもしれないけど、timeGetTime使うなら、
timeBeginPeriod,timeEndPeriodもつかわないと
効果が出ない希ガス。
これでGetTickCountよりはかなりの精度が出るはず。
0432134
垢版 |
04/08/05 22:50ID:mK0RKtyB
>431

どうもご指摘ありがとうございます。
そのAPIについてヘルプで調べてみることにします。
0433名前は開発中のものです。
垢版 |
04/08/06 03:05ID:qcytQZRR
>>432
どういたしまして。
ソースを一通り見てみました。
VBでゲームを作る場合は処理速度が結構効いてきます。
ただ単にVBが遅いのではなく、
プログラムしだいでVCと同等にもなります。
ちょくちょく顔出して良スレに貢献したく思います。
0442134
垢版 |
04/08/16 21:51ID:ORbMSiN8
>441
圧縮ソフトというのは知っていますか?
たとえば、フリーソフトでlhacaとかシェアソフトでwinrarなどがそうです。
lhacaの場合は、インストールしたら、ショートカットにドラッグ&ドロップ
するだけで、簡単にzipに変換できるはずです。
0443441
垢版 |
04/08/17 10:42ID:d2NeWVSY
先生有難う御座いました!解決しました!
0444名前は開発中のものです。
垢版 |
04/08/17 17:48ID:KRBya/B4
今更掘り返して申し訳ないんですけど

>>130に書いてある
>問題(if文を使わずに、A=Bなら0。A≠Bなら1を表示するプログラムを作れ)
って言うのはwhileやswitchを使うと捕らえていいんですかね
0447x≠先生かつx=生徒 ⇒ x=俺
垢版 |
04/08/17 18:07ID:V+JFCm7+
>>444
・printf("%d\n", A != B); /* 単純に演算子として使う */
・printf("%d\n", A == B ? 0 : 1); /* 三項演算子 */
・printf("%d\n", !(!(A - B))); /* A ^ Bでも可 */
・printf("%d\n", A - B || 0); /* 上とは0, 1のみに絞る方法が違うだけ、&& 1でも良い */

とりあえず思いついた範囲でこれだけ
0450名前は開発中のものです。
垢版 |
04/08/19 12:49ID:5g9NjXdB
保守
0452名前は開発中のものです。
垢版 |
04/08/24 20:56ID:S+rPg9uH
Delphiの読み方ってデルフィですよねー保守
0459名前は開発中のものです。
垢版 |
04/08/29 17:15ID:qBXWeNeY
        /                  ヽ                              =二=二 ̄  ̄ ̄ ̄
      /       ⌒ ̄\   __,..   i           ,. ,._   ,.-,.、         -=二_ニニ==-
      i        -,-===ゞ' く__,. _   i          // j / / ノ     -=ニ_ ̄
    i           ..::::ノ   ヾ ̄ヾ-    i      __ノ `-/ノ  `ツ       __ニ_二=-
     |         ....:::::  .   }:.      |     //  // _,_{ ̄/ ̄ ̄ ̄ ̄/^/;;'´ ̄ ̄
    |          ,イ  ,;_  .,ノ:::...     i     ヾ、_/  /_i______i_ヾ:;'
      |        / ,  ´ ー ´`i      ノ        / -=j"  ,_/
     !       ノ /-====ー、 i     ノ ,.--、    /   /  /        <貴様、言うに事欠いて豚だと
      ヽ       {    ⌒ " ,、  ノ  }ヽ \  ノ   _}  / \
0460名前は開発中のものです。
垢版 |
04/08/29 20:01ID:iJHInda4

        /                  ヽ                              =二=二 ̄  ̄ ̄ ̄
      /       ⌒ ̄\   __,..   i           ,. ,._   ,.-,.、         -=二_ニニ==-
      i        -,-===ゞ' く__,. _   i          // j / / ノ     -=ニ_ ̄
    i           ..::::ノ   ヾ ̄ヾ-    i      __ノ `-/ノ  `ツ       __ニ_二=-
     |         ....:::::  .   }:.      |     //  // _,_{ ̄/ ̄ ̄ ̄ ̄/^/;;'´ ̄ ̄
    |          ,イ  ,;_  .,ノ:::...     i     ヾ、_/  /_i______i_ヾ:;'
      |        / ,  ´ ー ´`i      ノ        / -=j"  ,_/
     !       ノ /-====ー、 i     ノ ,.--、    /   /  /        <ちんちろりん
      ヽ       {    ⌒ " ,、  ノ  }ヽ \  ノ   _}  / \
0461名前は開発中のものです。
垢版 |
04/08/30 21:58ID:pp+D+eSZ
HSPで完全オリのSLGを作るスレ
http://pc5.2ch.net/test/read.cgi/gamedev/1047478458

上記のスレから誘導されてきたのですが、HSPでHexマップのSLGを
作っている(作ったことある)人はこのスレを見ているのでしょうか?
0463名前は開発中のものです。
垢版 |
04/09/02 20:48ID:cMRVYISK
なんとなくシューティングゲームを作ってみたくなって自分に課した課題

1 480*480ピクセルのクライアント領域で同じ大きさの背景をスクロールさせる
2 32*32ピクセルの自機を表示し、カーソルキーで移動させる
3 スペースキーで4*4ピクセルの弾を発射(連射可)できるようにする。
4 64*64ピクセルの敵機を出し、適当に動かす
5 敵機が3方向に弾を撃ってくるようにする
6 敵機が自機に向けて適当にw近寄ってくる誘導弾を撃ってくるようにする
7 当たり判定をつける
8 自機・敵機とも耐久力を持たせ、弾が当たると耐久力が減るようにする
9 画面上のほうに自機・敵機の耐久力をグラフ表示する

とりあえず、今日はここまでできた。

あとは

10 敵機の動きをプログラムするスクリプトシステムをつける

といったあたりか。ここまでできれば、一通りシューティングゲーム
の要素がそろうんで、「シューティングゲーム開発に向けた基礎実験」
は終了。もっとも、実際にシューティングゲームを作るのがいつになる
かは…。
0465名前は開発中のものです。
垢版 |
04/09/02 23:33ID:1LYNahRo
プログラマとゲームデザインするやつがいっしょならそれでいいんでないの?
あと、スクリプト形式にするメリットは大きいと思うが、初めて作るんなら
ハードコーディングでも全然桶だと思う。
0466463
垢版 |
04/09/03 06:45ID:8l/hlqCr
>>464,465

いやそれだとシステムで敵の扱いを統一できないから、かえって不便
(敵の種類を増やすごとに移動処理をソースに追加していくよりは
スクリプトのバイナリデータで記述していく形のほうがずっと楽)だし、
今回はある程度汎用的なシステムを作ってみたい、というのがあるから
スクリプトにしてみようかと。

スクリプトといっても、敵の座標などをデータに沿って操作するだけだ
から、ハードコーティングと難易度的には大差ないと思う。以前作った
RPG用スクリプトシステムよりは楽に…できると良いんだがw
04674 ◆3VUXqvbfSY
垢版 |
04/09/04 23:17ID:L4asI/As
成る程…
しかし、敵の動きを直接読み出すようなスクリプトの場合
逆に、後ろから追尾弾を撃つなど、問題が多い上に一度覚えられると無力と化してしまう気が…

判定文が併用できるようなスクリプトがベストですかねw


最近は弾幕系シューティングが人気ですし、弾幕にもこだわってみたら如何でしょうか。
0468名前は開発中のものです。
垢版 |
04/09/04 23:30ID:xlhkkjil
if Enemy01.Y > Player.Y : Shoot(ミサイル)

みたいに記述が出来れば、行動ルーチンも自由度上がるかな・・・というかコレくらいできないとダメか
0471463
垢版 |
04/09/10 22:39:16ID:9wiV4d6e
>>467,468
スクリプトシステムは、簡単な仮想マシン的なものだね。
ごく基本的なコード(レジスタ操作、メモリの読み書き、ジャンプなど)
を実行するCPU・メモリと自機の位置や時間などを保持するレジスタを
作っておいて、簡単なスクリプト(というかバイナリコード)で敵の行動
などを記述する。
0472名前は開発中のものです。
垢版 |
04/09/12 20:11:30ID:zqin5Wke
次の課題まだ?
インベーダーいらないから物理ネタくれ
0473名前は開発中のものです。
垢版 |
04/09/12 21:24:21ID:FE3ZKyB9
>>435
0474名前は開発中のものです。
垢版 |
04/09/13 00:17:58ID:IliKTilG
初めて仮想マシンと制御言語を組むのなら、Forth系言語の実装もお勧め。
字句解析だけで、構文解析がいらないのと、
仮想マシンがスタックマシンなので比較的簡単。
0475名前は開発中のものです。
垢版 |
04/09/21 23:07:38ID:fVjtNH2h
今こそ此処で保守だ!
04764
垢版 |
04/09/26 17:01:02ID:usJY956N
保守とか…
0481浪人生
垢版 |
04/10/16 17:41:11ID:GwpMaLG4
さまよってたらこのスレを見つけてふとまたプログラムやりたいなとか思ってやってみました。
課題1〜7入り
ttp://gamdev.org/up/img/1565.zip
ソース汚いと思いますがぜひ添削やらお願いします。

って漏れこんなことしてる場合じゃない(;´д`)
04834
垢版 |
04/11/08 09:52:01ID:+1ee5gQA
保守
0484x≠先生かつx=生徒 ⇒ x=俺
垢版 |
04/12/08 17:14:19ID:9QQRy06N
保守。
0489保守
垢版 |
04/12/24 05:42:36ID:BOgI+xOp
GamDevPukiWiki - 【初心者】課題をクリアしていくスレ【講習会】まとめ
http://gamdev.org/w/?%5B%5B%A1%DA%BD%E9%BF%B4%BC%D4%A1%DB%B2%DD%C2%EA%A4%F2%A5%AF%A5%EA%A5%A2%A4%B7%A4%C6%A4%A4%A4%AF%A5%B9%A5%EC%A1%DA%B9%D6%BD%AC%B2%F1%A1%DB%A4%DE%A4%C8%A4%E1%5D%5D

課題1 数当て
課題2 素数
課題3 赤い四角
課題4 sin波形
課題5 キー入力
課題6 当たり判定
課題7 -課題外伝- 弾道シミュレーション
課題8 弾を撃って貰います
課題9 -課題外伝- ボールの跳ね返りシミュ
課題10 インベダ風移動
課題11 ライフゲーム製作
0496名前は開発中のものです。
垢版 |
05/01/11 16:08:02ID:25qtmnsi
VS.NETのテンプレートにdirectXアプリケーションのアイコンが表示されません。
ナゼでしょう?
directXは読み込まれてはいるようなんですが・・・
0497名前は開発中のものです。
垢版 |
05/01/11 16:47:16ID:0gcMffxM
>>496
DirectX 9.0 SDK Update (Summer 2004) DXreadme 日本語版
http://www.microsoft.com/japan/msdn/directx/japan/dxreadme_U04_jp.asp

AppWizard は廃止されました。AppWizaed は複雑で維持に多大な労力を必要としました。
その代替として、サンプル ブラウザの機能を拡張して、新しいプロジェクト用の開始点として
サンプルを選択できるようにしました。単に使いたいサンプルをプロジェクトとして使えるように
するには、「Install Project」リンクをクリックしてください。これにより、ダイアログが開き、
サンプルの名前を変更しソースファイルを配置するパスを選択できます。このプロセスは、
ファイルの名前を変更すると共に、メディアと共通フレームワークをコピーします。そのとき、
真にプロジェクトの名前を変更するため、ファイル内の探索と置き換えも行います。
0498名前は開発中のものです。
垢版 |
05/01/14 12:20:11ID:/ASI4w15
あ〜なるほど、ありがとです。
たしかにサンプルの使用が変わってるな〜とは思いました。
・・・・直接サンプルから持ってくるようになっていたとは・・・・いつのまに。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況