トップページgamedev
840コメント373KB

今日から必死で1から全て学んでゲーム作成します

■ このスレッドは過去ログ倉庫に格納されています
0001松田 ◆cobo4pcvHY 03/02/06 21:28ID:+Sp/g0d7
全然言語の知識とかないけれど、

言語の難しさから逃げていては駄目だ!お前はゲームを作りたいのだろ!?
という悟りを開き、今日からプログラム言語を覚え、そして
プログラムツールで作ります!今持ってるものは・・・。

6才年下の弟の持ってる技術(厨2)の教科書。
アクティブベーシック。(vectorより入手)

・・・作れるのだろうか!?もちろん古本屋で買いあさってくるが
(作れ次第、いずれうpします・・・。いつまでかか(ry))
0271名前は開発中のものです。03/02/20 22:36ID:RVDqCpCs
そ、アホBB使ってる。
安いから親父がこれにしろ、ってさ。

まじムカつくよ。
荒してた香具師のことが。逮捕されてくれればめでたいのだがな。
0272名前は開発中のものです。03/02/20 22:44ID:YnJ83nm6
>>270板の性質上、厨が多いのはしょうがないんだろうけどな。
本職はム板行くだろうし。厨なら厨であきまさくらい行動力の
ある奴がいれば好感もてるんだけど。
つか、スレ違いスマソ
↓ここでいつものナレ−ション
0273名前は開発中のものです。03/02/20 22:45ID:tbIY2ozE
ひろゆきさんfがアホーBBに12日頃に何とかしろといったが
未だに放置してるらしいね
http://that.2ch.net/test/read.cgi/nanmin/1045748268/l50


しょうがないからテレホタイムにナロー使うしかないや・・・鬱だ


つーかアホー氏ね、なんとかしろボケェ!!
0274名前は開発中のものです。03/02/21 00:27ID:uH0OnVDN
凄いこのスレに居たAA房がいなくなった(w
2ch運営人がやっているのかと思ってたよ
0275名前は開発中のものです。03/02/21 01:35ID:H3qGwbZB
マニュアル読むのが苦手な漏れでもプログラムは出来まつか?
出来るならば3期生に加えてくだちぃ。
0276あぼーんNGNG
あぼーん
0277 ◆cq./suWZSk 03/02/21 02:30ID:gtRtCCD/
>>42
やっと走り終わったよ・・・
2週間もかかっち舞った・・・
0278名前は開発中のものです。03/02/21 02:36ID:/NflKt7s
やっと課題をこなした277
しかし彼にはさらなる試練が!
0279名前は開発中のものです。03/02/21 03:06ID:gnTzXupS
別に3D以外でも数学は必要だろ?
数学使わないで出来るゲームなんて、シミュレーションゲームか。

2Dシューティングなら、敵機や敵弾の軌道なんて数式で実装だろ。
高校生でもsin、cos程度知ってるよ。
3次関数やスプライン関数で曲線を指定。
微分を二回して(一回目で接線が求まるのは分るだろ)、
速度ベクトルを求め、それを敵座標に加算とかさ。
0280コピペマン03/02/21 11:47ID:frRO0MXg
それに知識ってのは、自分や他人の身を守るもので、決して武器じゃない。
知識を武器とするのは間違ってると思うぞ。
しらなかったら、教えてあげればいい。
わからなかったら、聞けばいい。
たしかにそうだ。でもそれは、ただ単に「教わった」「聞いた」ってだけで、「知識」とは違うぞ。
「知識」ってのは、実際に誰かの役に立てたり、自分の役に立てたり、とにかく役立てるものだ。

イギリスの政治家、フランシス・ベーコンがこう言ってる。俺の好きな言葉だけどな。

「反論し論破するために読むな、信じて丸呑みにするためにも読むな。
話題や論題を見つけるためにも読むな。しかし、熟考し熟慮するために読むがよい。」

知識=本とした上での話だ。
知識ってのは、知識量の多さを競うものじゃない。
その知識を持ってない人をあざ笑うためのものでもない。
自分の生活に、また、周りの生活に活用できるように考えるものだ。

自己顕示欲の満足のための知識は、単なる机上の空論に過ぎない。
実践し、身に付けてこそ、本当の知識だと思うぞ。

だから>>527よ、バカはほっとけw
オマエが本当に識者になったとき、そんなバカはコメ粒くらいちっちゃくみえるようになるぞ。きっと。

何事もな、腕力でも知識でも、他人よりも多くのものをもってるヤツは謙虚でなくちゃならねえ。
謙虚さが、腕力や知識を、もっと強くさせるんだ。いろいろな付加価値がついてな。
そういうのをこれ見よがしに見せ付けてるヤツらは、まだまだキンタマのちっちぇえヤツらだな!
0281名前は開発中のものです。03/02/21 12:11ID:H3qGwbZB
>280
527?
0282名前は開発中のものです。03/02/21 15:15ID:/NflKt7s
安易にコピペした>>280
彼の軽率な行動によってこのスレは>>527まで継続されることとなる!
0283名前は開発中のものです。03/02/21 15:37ID:qZ/MR0a0
>280
縦読み?
0284名前は開発中のものです。03/02/21 15:46ID:/NflKt7s
>>283
コピペに執拗に食い下がる>>283

そしてこの後、このスレがとんでもない修羅場に!
0285名前は開発中のものです。03/02/21 15:48ID:Khe/oRPe
>>266
http://www.amazon.co.jp/exec/obidos/ASIN/4874085466/qid=1045809854/sr=1-9/ref=sr_1_2_9/249-4295487-3073942
これか?これはあまりよくないぞ。

猫でもわかるプログラミングの方がマシ。
http://www.kumei.ne.jp/c_lang/

参考書を買うときは、事前にネットで評判を見るといい。
0286あぼーんNGNG
あぼーん
028725603/02/21 17:59ID:MNmlz7sl
塾長「短いわりにきちんと動くみたいだな。」
安堵の表情が浮かぶ256

 だ が 、 し か し ! !

塾長「どうでもいいが cout と printf の混在って俺は嫌いだ。」

Σ(´Д`ガーン
打ちのめされる256
そのまま引き下がるのか?!

------------------------------------------------------
テキストのマインスイーパです
http://forgamedev.zombie.jp/uploader/up5/img/071.zip

過去ログから編集しますた
勉強リンク
http://gechinko.s27.xrea.com/gachinkolink.html
うぷされたもの
http://gechinko.s27.xrea.com/sakuhin.html
0288名前は開発中のものです。03/02/21 18:17ID:ordV83go
>当ホーム・ページの一部または全部を無断で複写、複製、転載あるいは
>コンピュータ等のファイルに保存することを禁じます。

コンピュータ等のファイルに保存することを禁じますか。そうですか。
凄まじい勢いの電波サイトですね。
0289あぼーんNGNG
あぼーん
0290名前は開発中のものです。03/02/21 19:32ID:0YSo6kXJ
塾長、自販機つくろう、自販機。
0291◆TPeOraQid2 03/02/21 21:28ID:/NflKt7s
(´-`).。oO(俺は何期生なんだろ)

0292名前は開発中のものです。03/02/21 22:24ID:ZuEi+UeL
このスレはパート1ですからあなたも1期生ですよ。
0293名前は開発中のものです。03/02/21 22:41ID:OShhS7qA
本日未明塾長が餓死しているのを発見されました。
終了
0294名前は開発中のものです。03/02/21 23:32ID:kvGEH2fu
塾長はデスマ中。
0295名前は開発中のものです。03/02/21 23:58ID:04m/Q1Dr
最近姿を見せないやつがいるな
0296塾長03/02/22 00:03ID:VLJRzj+o
>>270
嫌々ながら同意。

>>277
"Modern C++ Design" を 20 冊背負って 20km マラソンして来い!

>>287
コンストラクタとデストラクタが無いクラスって俺は嫌いだ。

>>290
自販機と言えば状態遷移の基本だな。
入力はお金とボタン、出力は商品とお釣り。
そういえば、最近コンドームの自販機を見ないな。

>>293
勝 手 に 殺 す な !

>>294
決算期直前にデスマーチか、おめでてーな。
プログラマ通の俺から言わせてもらえば、
今の最新流行はやっぱり、致命的バグ有りのまま出荷、これだね。
しかしこれをやると次からユーザと株主にマークされるという
危険も伴う諸刃の剣。素人にはお薦め出来ない。
まあお前らド素人は、ソニーチェックでマスター差し戻し喰らってろってなこった。
0297名前は開発中のものです。03/02/22 00:17ID:Yzil6WXL
>>287
塾生名簿もつくってよ

>>296
塾長もなんかつくれよ(゚Д゚)ゴルァ
0298tantei03/02/22 00:42ID:9fIzc1pu
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
 直通  090−8505−3086
URL  http://www.h5.dion.ne.jp/~grobal/
メール  hentaimtt@k9.dion.ne.jp
   グローバル探偵事務局 

0299名前は開発中のものです。03/02/22 01:09ID:wvejHx2g
>291
一号生です
0300名前は開発中のものです。03/02/22 03:24ID:CQoZjhp0
数学やれよ、数学。
簡単講座その1。速度ベクトル。*は重要ポイント。

2Dシューティングの場合、描画座標として自期、敵機、弾などにxとyのデータがある筈です。
その座標をフレーム毎に、移動処理→描画って繰り返すと動いて見えるのです。
自機の場合は、入力処理→移動処理→描画処理となるだけです。

ここで、入力処理の無い敵機や弾の場合、
計算によって求めた変化量をxとyに加算する事で実装しようと言うのです。
概念は簡単です。*距離を時間で割ると速度が出るのは分りますね。中学数学です。
この速度と言う物を、フレーム事に変化するxとyの値の数値とするのです。

じゃ、いきなりホーミング弾のやり方。ある程度の事前処理はある前提で行くけど。
まず、適当で良いから弾を発射した敵機の座標が要りますね。
この発射された時、弾をアクティブ(有効)にして弾初期座標を、敵機の座標とする。
続いて同じフレーム内で、自機の座標が必要です。
自機の座標から、弾の座標を引き算すます。自機x - 弾x、自機y - 弾yです。
具体的には、自機が(320, 450)、弾が(160, 20)だったら(320-160, 450-20) = (160, 430)
*この160と430は座標じゃないぞ、ベクトルなんだ。
でだ、ココでそのベクトルを単位化してやるのだ。
*単位化とは、ベクトルの大きさが1ベクトルの事。(ベクトルの大きさ程度は、自分で調べてくれ)
*やり方は簡単、ベクトルの大きさで各x、yを割り算するだけ。
*大きさの出し方は、sqrt(x*x + y*y);だ!各二乗の足し算を√にかけるだけだ。
之で、自機の方向へ向かう、大きさ1の変化量(x, y)が求まった訳だ。
之に、自分で設定した弾速度を掛け算してやるなり何なりで、変化量を増減させるのだ!
因みにベクトルと数値(スカラー)の掛け算は、各x、yを数値倍するだけだ。

つまり、アクティブ化した弾は、フレーム毎に、
自機と弾のベクトルを計算、単位化、速度定数倍する、それを前座標に加算、
と言う処理をして自機の方向へと移動するのだ!

しかし、この処理だけでは罠が…(連続書き込みできたら直レスします)
0301◆TPeOraQid2 03/02/22 03:27ID:Yzil6WXL
逃げられないね
0302名前は開発中のものです。03/02/22 03:43ID:CQoZjhp0
で続き。
この処理だと、必ず自機に弾が命中してしまうのです!なんてこった!
(例外もある、速度ベクトルつまり変化量が自機の当り判定sizeより大きい場合は、通り抜けますね)

ここで数学を離れた、処理を考えましょう。
一つ例を。自機と弾の距離が、ある一定値内になったら
自機、弾間のベクトル算出処理を止めて、その止める直前の
速度ベクトルを非アクティブ(画面外にでる、何かに当たった)になるまで加算するように変える。
つまり、直進する弾に変える訳だ。之なら、動いている自機なら当たらないよな。

他にも上手い処理を考えて見れ。

まとめ。
二次元での方向ベクトルの出し方。
(x1, y1) - (x2, y2) = (x1-x2, y1-y2)

ベクトルの大きさの出し方。
sqrt(x1*x1 + y1*y1);

ベクトルの単位化のやり方。
size = sqrt(x1*x1 + y1*y1);
(x, y)を単位化→(x/size, y/size)

ベクトルの実数倍
a * (x, y) = (a*x, a*y)

マスターして、色々発展させるのだ。
0303名前は開発中のものです。03/02/22 04:15ID:3SPqGKU0
>>300=302
おお、勉強になるなぁ・・・

そういう初歩レベルの数学を使用した
ゲームプログラムを解説している本ってなかなかいいのないんですよねぇ・・・

ほとんど数学を使わないゲームプログラム作成本ばかり・・・
(坂本千尋のゲーム本なんかいい例)
0304名前は開発中のものです。03/02/22 04:18ID:3SPqGKU0
で、数学の知識を求められるゲーム作成本は
今は3Dのものばっかりですぐにめまいがしてくる・・・

2Dゲーで求められる数学ですらロクに分からんからなぁ、俺・・・
0305名前は開発中のものです。03/02/22 04:24ID:3SPqGKU0
プログラム組んで3年が過ぎようとしているのに。。。

そもそもsqrtが平方根を求める関数なんて今まで知らんかったし
sinやらcosやら浮動小数点関数なんて今までほとんど使ったことない(爆
0306名前は開発中のものです。03/02/22 04:32ID:uPF3aqL9
数学のお勉強ページ。
基礎の基礎だけどこれだけわかってれば、対応できると思う。
ttp://www.geocities.co.jp/Technopolis/1505/index.htm
0307あぼーんNGNG
あぼーん
0308◆TPeOraQid2 03/02/22 10:22ID:Yzil6WXL
一応敵と自弾がでるようになりました。
まだエフェクトが全然できてないけど

ソース
http://forgamedev.zombie.jp/uploader/up5/img/073.lzh

コンパイルしてらんねぇよって方はバイナリ
http://forgamedev.zombie.jp/uploader/up5/img/072.lzh
0309名前は開発中のものです。03/02/22 13:10ID:GmlVLw2J
>>301
>この処理だと、必ず自機に弾が命中してしまうのです!なんてこった!
オレの書いた処理なんか、自機が自機に衝突しちゃったYO!

0310名前は開発中のものです。03/02/22 13:58ID:3SPqGKU0
>>306
そのサイトの内容ならなんとか理解できそうです
サンクス!

0311名前は開発中のものです。03/02/22 14:59ID:HpBy6GmK
プレステとかのソフトのデータを変えたりできるようになるには
どういった事から手をつければいいのでしょうか?
(抽象的でごめんなさい(^_^;)

C言語やCPUのしくみとかは必須かと勝手に思ったのですが、
とりあえず本屋で売ってるこういう本を読み漁ったら
インターネットしかしたことない厨房でも努力次第でできるようになるって
いう本を紹介していただけないでしょうか?
0312名前は開発中のものです。03/02/22 16:10ID:pH8Xlzb6
痴漢の罪で逃走中の塾長でしたが
先ほど無事警察に射殺されました
終了
0313けう03/02/22 16:18ID:5+KGPlWB
自販機始めました。
ttp://forgamedev.zombie.jp/uploader/up5/img/074.lzh
0314名前は開発中のものです。03/02/22 16:30ID:Yzil6WXL
平然とグローバル変数を使いまくる>>313
そのあまりにもふざけた行動に
ついに塾長の怒りが頂点に!
0315あぼーんNGNG
あぼーん
0316名前は開発中のものです。03/02/22 22:09ID:+nKoXPNa
>>311
まずは「調べる努力」をするのだ!(もうしてるかもしれないけど)
検索エンジンという強力な術があるのだからそれを利用しない手はない
こんなところから詰まってたらこの先もきっと苦労するぞ
がんばれ!
0317ヴォル03/02/23 01:21ID:1NFGJS3o
猫でも分かるプログラミングのC++の「デフォルト引数」と「関数のオーバーロード」
が理解できません。どなたか分かりやすく教えてください!
0318名前は開発中のものです。03/02/23 01:34ID:5OVLhKi6
317は猫以下。
0319塾長03/02/23 02:55ID:QQJXKdky
ああ、飲みすぎで頭痛ぇ…

>>300
お疲れ様!
時間があったら、すり抜けしないような判定(線分の交差判定)
についても書いてくれ!(他人任せ)

>>308
ああ、GDI はいいな…若い頃を思い出すぜ…
DIB の応用については「創作プログラミングの街」っていうページに
詳しく書いてあるから、ちょっと目を通してみてくれ。

>>311
激しく板違い・スレ違い。 本屋に行ってゲームラボ買ってこい!

>>312
勝 手 に 殺 す な!

>>313
お前の財布には 10 円硬貨しか入ってないのか!
この程度の短いプログラムでグローバル変数を使うのは別に構わねえ。
関数ポインタを使うってのは、悪くないアイディアだな。
こういう場合、拡張していくと鬼のような switch 文になるからな。

>>317
デフォルト引数ってのは、毎回毎回全部の引数を指定しなくてもいい
っていう機能だ。俺はあまり使わない。

関数のオーバーロードは、同じ名前の関数でも引数が違えば
別物として扱うことができるというだけだ。
しかし、この時点で躓いてるようだと後でつらいぞ。
自分でプログラムを書いて、改造して理解しろ!
0320あぼーんNGNG
あぼーん
0321名前は開発中のものです。03/02/23 11:03ID:9mWH0dSf
塾長!入学キボンソです!
会社でVS.NETを手に入れてこれでゲームを作って行きたいとおもっとります!
最終目標はリネージュみたいなMMO作りたいです!
戦闘等はなくただ会話ができればいいでつ

ただいまのスキルはWEBの言語のみです・・・・
アフォカと言わないで・・・
0322名前は開発中のものです。03/02/23 11:33ID:vAW6VSeN
>>321
タイーホ
0323名前は開発中のものです。03/02/23 13:49ID:5OVLhKi6
会社の製品を私用に使わないように。
卑しくもソフトウェア製作に携わるつもりならライセンス関係はしっかりね。
0324◆TPeOraQid2 03/02/23 15:34ID:Lpml15wc
そのうちここもYBB規制されるのかな・・・

0325名前は開発中のものです。03/02/23 18:54ID:9mWH0dSf
テラパッドとC++ビルダーで開発中

例によって


"halo world"完成

現在関数と変数、if文勉強中
0326名前は開発中のものです。03/02/23 19:07ID:7Gu7mmq0
激しく初心者だがDelphiで練習中

練習程度に記号当てを制作
次なる目標は簡単なRPGの制作

取りあえずバトル(1戦のみ)だけでも作ってみます

塾長!いつも楽しみにしております!
0327名前は開発中のものです。03/02/23 19:33ID:9mWH0dSf
#include <stdio.h>

int main()
{
printf("オマエモナー\n ∧_∧\n( ´∀`)\n");
return 0;
}

ふ・・・また一歩ゲイツに近づいたな・・・・
0328名前は開発中のものです。03/02/23 19:47ID:NYn3RUOH
C++ビルダーってhelpがついていなかったような。
helpのあるのって無い?
0329名前は開発中のものです。03/02/23 20:42ID:SPPyzE/F
数学やれよ。数学。
簡単講座その1。理解、応用編。

ホーミングは出来たかい?ベクトルの考えを取り入れるだけで、色々出来そうだろ。
因みに、自機の座標や敵機の座標といった物は、位置ベクトルと考えられるのだ。
原点からの座標までのベクトルって意味。
で、その座標を引き算するってのは、引いた座標から、引かれた座標までのベクトルって意味。
(ベクトルは向きがあるので、引く方、引かれる方の意味は重要)

sqrt(x*x + y*y);コイツは、三平方の定理、ピタゴラスの定理なんだな。
イメージしてくれ、原点から、自機、敵機に向かう二本ベクトルと
自機もしくは敵機から、もう片方に伸びるベクトルで形成される三角形を!
A*A = B*B + C*C って奴だ。(スマン指数表記じゃなくて)
之のAを求める式が、sqrt(B*B + C*C);なのだ!

最後に応用だ。実装すれば分ると思うが、味気ないだろ。
自機に向かって直進している様に見えないか?
そりゃそうだ、毎フレーム、方向計算してるんだからな。
でだ、擬似慣性と言うか、(まだ、物理シュミは早いからね)
今、弾が進んでる方向に直進する(自機が動いても、弾自身が今進んでいる方向)動きを実装しようか。

まず例によって、例を一つ。
カウンタを付けて、フレーム毎にカウントを取る。そして、一定フレームおきにしか、方向を算出しない。
それ以外のフレームは、最後に算出した速度ベクトルを足すだけ。
つまり、最初の”最後に自機に近付いたら、別の直進処理に切り替える”って奴を、初めからやって行くのです。

fps(秒間フレーム数)とかの処理も、まだ早いので
カウンタを取る数(方向を算出する間隔)を、実行しながら調節するといいでしょう。

更なる、お題。
敵機から扇状にばら撒かれた弾が、少し進むとホーミング弾に変わる。どう?思いつくかい。
不定期だけど、次は角度編(扇状とか説明するよ)予定。と、思っていたが当り判定の提案が…どうしようか…
0330名前は開発中のものです。03/02/24 00:09ID:qkk592oM
僕もこのスレみてやりたくなったんですけど、参加していいですか?
ちなみにまったくなんお知識もないド素人ですけど。みなさんすごいですね
VisualBasic6ならあるんですけど、コレでゲーム作れますか?
無理ならなんかお勧めソフトがあれば教えてください、お願いします
0331名前は開発中のものです。03/02/24 00:21ID:ebzUI0qx
>>330
VBで何も問題ない。
DirectXが楽に使えるしな。
0332名前は開発中のものです。03/02/24 00:31ID:qkk592oM
>>331
ほんとですか〜。ありがとう。
でも何から手をつけていいのやら・・本とか買ってきたほうがいいんでしょうか?
0333名前は開発中のものです。03/02/24 00:37ID:e68AWa50
本は一冊あったほうがいいな。
とりあえず安いのを一冊買ってみると良い。
I/O別冊が無難。
http://www.amazon.co.jp/exec/obidos/ASIN/4875939949/ref%3Dbr%5Flf%5Fb%5F2/250-7812577-6573047
0334名前は開発中のものです。03/02/24 00:40ID:qkk592oM
ありがとう。
DirectX8 3Dの基礎とゲームの作り方―Visual Basicで「DirectX Graphics」「DirectInput」を使う I/O別冊
ってやつですね?
明日本屋行ってきます。
うおー、燃えてきた〜〜
0335◆TPeOraQid2 03/02/24 00:49ID:AgtdhH3t
GDIとDIBでがんばってるけどやっぱDirectXつかったほうがいいのかな?
0336名前は開発中のものです。03/02/24 01:00ID:DRzF69g2
さっそく質問ですが
座標X(100, 100)から座標Y(200, 250)の線を引いたとき
その線の上の点ですけどどうやって求めますか?

たとえば座標Z(150, p)の時pはいくつなのかと・・・
またそのときにできる三角形の角度ってどうやって求めればいいんですかね

直線はy = ax + bだったはずだから
100 = 100a + b
250 = 200a + b
から 150 = 100aで a = 1.5, b = -50 になるから
p = 1.5 * 150 - 50
p = 175 であってますよね?

でもこれをそのままCでやると負担かなりかかりそうで・・・
こういうのって公式でありましたっけ? もっとパッパとできるもの

ちなみに角度はどうやって求めるのか分かりません
sin, cosあたり使うとは思っていますが・・・
0337名前は開発中のものです。03/02/24 01:04ID:e68AWa50
>>335
好みの問題だ。どっちでも好きに選んでいい。
一つ云える事は、昔はGDIとDIB(あるいはWinGと呼ばれたもの)
以外に選択肢が無かったから、みんなそれを使っていた。
今は他に選択肢(DirectX)があるというだけの話だ。
0338名前は開発中のものです。03/02/24 01:08ID:8DQ5aOML
>>336
ブレゼンハム で検索すると、答えが見つかるとおもう。
0339◆TPeOraQid2 03/02/24 01:18ID:AgtdhH3t
>>336
そんなに計算負荷ないと思うが・・・
それと三角形ってどこの三角形だ?
ZはXY上の点なんだからXYZは三角形にならないよ
0340名前は開発中のものです。03/02/24 01:18ID:e68AWa50
>>336
負荷がかかりそう?本当かそれは。計測したか?

つーか、そういうこだわりは後回しにしたほうが良さそうな
雰囲気出してるぞ。完成に向けて次の作業にパッパと
取り掛からないと、そのうち飽きてやめちゃうんじゃないか?

角度が知りたいのか。googleで検索したか?atanだぞ。
まず調べろ。
0341名前は開発中のものです。03/02/24 01:52ID:NAVRF1hN
>>336
いいね、大概の奴は数学的処理ってだけで、考える事から逃げてばかりで真っ向から取り組む奴は少ないからね。

まず、直線の傾きは、変化の割合で示せます。
つまり、xが100〜200まで変化する間に、yが100〜150まで変化したんなら
(250 - 100) / (200 - 100) = 150/100 = 1.5です。で、定数の方は求まった傾きと式から導きます。
で、CPU処理的には、全然軽いです。気にする処理では無いよ。

角度は、角度編で説明しようと思ったけど…軽くな。
まず、度で考えるのは止めよう。プログラマならラジアンで考える方が、楽だよ。
ラジアンとは?って、それは角度の考え方の一つで、円の方程式にπって出るだろ。あれの事だ。
π = 180度、2π = 360度。これだけ。

でだ、角度を求める方法だが、本格的にやると、ベクトルと内積の考えを使わないといけないんだが…
2Dの場合は、もっと楽な標準関数があるんだな、これが!
atan2って奴だ。アークタンジェントを求める式だ。
(atanもあるが、atan2の方が使い勝手が良い)
簡単な説明をするとだね、三角比でtanθってあったろ?
このtanθからθ(ラジアン)を求める物です。

double atan2(y, x);
戻り値が、ダブル型のラジアンを返す。
座標に相当するyとxを引数に取ります。
そして、x軸と、原点からその点への直線でなす角度をラジアンで返します。

最後に、数学処理とプログラム処理では、Y軸が逆に取ってある場合が殆どです。
画面だと、原点左上で、yが増加すると画面下方に増えますよね。
でも数学は、原点左下で、yが増加すると上方に増えますよね。
例えば、最初の直線の方程式の質問で、右下がりな直線は、数学だとマイナスの傾きになる筈です。
しかし、プラスの傾きでしたよね?これは、y軸が逆転している為です。
ここは、注意が必要です。
0342名前は開発中のものです。03/02/24 12:39ID:qpIoEsd1
このスレ(゚∀゚)eeE!
0343名前は開発中のものです。03/02/24 15:09ID:XrXPuQvt
「数学は文書で理解する物ではない、イメージだデザインだ」 by 湯川秀樹
0344名前は開発中のものです。03/02/24 16:00ID:xQPjwLx+
↓↓↓↓↓★ココだ★↓↓↓↓↓
http://www.pink-angel.jp/betu/index.html
0345ぷらちな& ◆lC4swazwNY 03/02/24 16:18ID:AuRefHIy
11
0346あぼーんNGNG
あぼーん
0347プリグラマ03/02/24 19:00ID:3Ni1FK23
>>341
xが100〜200まで変化する間に、yが100〜150まで変化したんなら
(150-100)/(200-100)=0.5じゃないのか?と言ってみるテスト

0348新たな新人03/02/24 19:03ID:flMKYRe+
塾長さん、今日このスレを始めて読みました。
ぼくも今日から始めます。
よろしくお願いします
0349塾長03/02/24 22:12ID:zeW+Q+KN
>>343
湯川先生みたいな天才の言うことはよくわからん。

>>347
突っ込み(void氏並に)が細かいな。
言うまでも無いが、>>341 は「y が 100 〜 250」が正しい。

>>348
何を始めるんだ?
それだと、ボクシンググローブと縄跳びを買ってきて
「俺もこれでボクサーの第一歩」とか思ってるのと一緒だぞ!
とりあえず、なんでもいいからプログラムを書け!


最近、お前らプログラムをアップロードしてないぞ!
俺が見るかどうかはともかくとして、人前に自分のコードを晒せ!
0350新たな新人03/02/24 22:29ID:flMKYRe+
プログラムを書くツールでお勧めはどれでしょうか?
できれば解りやすいのがいいです
よろしくおねがいします
0351名前は開発中のものです。03/02/24 22:44ID:7ng7v7Oi
>>350
今日から必死で1から全て学んでゲーム作成するんじゃないのか。
必死で調べろよ。メモ帳でもTeraPadでもSakuraEditorでもVisual Studioの
統合環境でも何でもいいから、とっと使ってとっととコード書き始めて
とっとと先に進むが吉だと思うぞ。
0352◆h8AqQULsMs 03/02/24 23:31ID:liomfxl9
API関係むずいよ〜
HSPスレを見て、ダウンロードしている所を塾長に見られた!
蝉:いや、これは、、、あの〜、そういうんじゃなくて・・・(黙
いったい、どうなってしまうのか!?

などと言いつつ、初期画面表示と背景にBMP画像を貼りました。
ttp://forgamedev.zombie.jp/uploader/up5/img/083.zip
0353名前は開発中のものです。03/02/24 23:37ID:BMlF6hgu
だいれくとXつかってバリバリの3DRST作りたいのですが
HSP勉強してたらワンスキンボーンモデルをコンバートできないようなので
できる簡単なやつ教えてください
0354名前は開発中のものです。03/02/24 23:40ID:7ng7v7Oi
>>353
スマン。マジで文章が読解できなかった。

つーかだな、

おまいら、質問したいときは初心者スレをもっと活用しないと。
http://pc2.2ch.net/test/read.cgi/gamedev/1044954179/l50
0355塾長03/02/25 00:04ID:1nCULmR/
>>353
俺もお前の質問の意味がよくわからんが、
ワンスキンメッシュはめんどくせえぞ!
DirectX9 なら D3DX のアニメーション関数があって簡単になってるけどな!

(初心者なら、単純にボーンの入ってないメッシュの線形補完のアニメーションで
十分じゃねーかと思ってるが、まあ向上心は大事だわな、うん)

とりあえず、質問の要点をまとめて、初心者スレなり、3D の質問スレなりで
聞きやがれ!
0356煮頃@7743期生(=256)03/02/25 02:39ID:b2ag/m+E
漏れも自販機はじめますた
http://forgamedev.zombie.jp/uploader/up5/img/084.zip
0357あぼーんNGNG
あぼーん
0358名前は開発中のものです。03/02/25 10:14ID:Y6WbGm+3
ホームページビルターみたいに(例えが悪いかな・・・)
自分で文章をタイピングしたり指示とかするだけでプログラムが組めるソフトってあります?

0359名前は開発中のものです。03/02/25 10:31ID:O9AAu2xg
>自分で文章をタイピングしたり指示とかする

それがプログラムってもんだろ
0360あぼーんNGNG
あぼーん
0361名前は開発中のものです。03/02/25 18:38ID:7zcY0277
>>358
ツクールとかFlashMXみたいなオーサリングツールを買ってみ。
つーか、初心者スレをもっと活用してほしい。
0362名前は開発中のものです。03/02/25 20:17ID:yCc+W+P4
本気でゲームを一つ作ってみようかと思っている者です。
当スレの雰囲気がとてもよいので、興味津々です。
for文の構文とかも理解していないようなヘッポコな上に、
本等を購入する余裕が無いので、教えて君全開になりそうなのですが、
入塾させて頂いてもよろしいいでしょうか?
0363名前は開発中のものです。03/02/25 21:56ID:VPuiiQAc
>>362
入塾許可なんか要らないよ。
必死になってどんどん課題を出せばいい。
あとは、必死に猫でも分かるプログラミングを読むとか
http://www.kumei.ne.jp/c_lang/
必死にログを読むとか、まぁとにかく必死になって自力で
色々あがいて参加することが吉だと思われるので、頑張れ。
0364名前は開発中のものです。03/02/25 22:16ID:yCc+W+P4
ありがd
ガチンコ見た事無いのでスレのノリに合わせられるかわからないけど、
必死で1から全て学んでがんがってみます。
0365名前は開発中のものです。03/02/25 23:13ID:yCc+W+P4
おい、おまえら!
漏れが今から、【電波少年的ゲーム製作】〜課題をこなせなかったら即自殺〜
を始めるから、ホームラン級のホームページを教えろ!
リファレンス?みたいな関数辞典みたいなページご存知でしたらお願いします。
対応するインクルードするべきヘッダファイルの一覧みたいなのがほしいのです。
stdio.hがどうとか、そういうのがわからないのでどうかお願いします。
0366名前は開発中のものです。03/02/25 23:42ID:OTJzWV1L
C++入門のページって所を読んでるけどワケワカランので猫行ってみる。

課題upしたのにull書くの忘れてたんでとりあえず課題だけ。
http://forgamedev.zombie.jp/uploader/up5/img/085.zip
0367煮頃 ◆mIGaChInq. 03/02/26 01:11ID:PeOEz4du
>>365
googleに関数名を放り込んだほうが早いかも
BohYoh.com【C言語講座】標準ライブラリ関数
http://www.bohyoh.com/CandCPP/C/Library/index.html

今日の目標->一日一UP
ランダムに現れたドットが中央へ向かっていきます
距離が1以下になると次のドットが現れます
VisualBoyAdvance1.4で動作確認しました
http://forgamedev.zombie.jp/uploader/up5/img/087.zip
0368名前は開発中のものです。03/02/26 03:14ID:UwPRkjgq
数学やれよ。数学。
簡単講座その2 の準備。

まずは、先日の誤記の突っ込みありがとう。で入るか…
でだ、今回は、角度やら、それに関係して軽く当り判定とかをやりたいんだが、その前に準備だ。
復習を兼ねて、ベクトルの話だ。なにが準備かと言うと、
これから(x, y)は、ベクトル扱いで説明して行かないと、膨大な説明と書き込みになるのでベクトルの基本を少し。

基本だが、ベクトルを表すのに構造体なりクラスなりを定義してると楽なのは分るよね。
struct VECTOR { float x, y; };
こんな感じだ。クラスなら、メンバ関数で、大きさを返す物や単位化する物を定義したり
演算子のオーバーロードで計算処理も定義できるし便利だよね。
で、肝心のベクトルの扱いなんだが、基本は位置ベクトルだ。基本の位置から、どこぞを指し示すと考えてもらって結構。
つまり、座標と考えても差し支え無い。原点(基本位置)から、座標(x, y)までのベクトルって感じだ。
さらに考えを柔軟にすると、基本の位置を原点以外でも考える。ホーミングの時の、敵機から自機へのベクトルって奴だ。
これらのベクトルは、始点を考えるベクトルな。

で次の考えは、少し複雑だ。方向ベクトルって言って、向きだけを考えるんだ。
大きさや始点は、基本的に考えないベクトルだ。
具体的に言うと、真上を向くベクトルは、大きさが1だろうが10だろうが、真上って向きだし
原点だろうと、(10, 10)の座標からだろうと、真上って方向だろ?
この二つの考えで説明して行くから、調べるなりして身に付けるべし。

そして最後に、ラジアン処理だ。之は前にも書いたが、角度の表現方法の一つだ。
π = 180度 = 3.1415926535897932…って奴だ。
具体的な使い方は、
#define PI 3.1415926535897932
って感じでデファインしておいて使うのだ。90度を表す時は、PI/2.0 (180/2)って感じで使うのだ。
0369名前は開発中のものです。03/02/26 03:17ID:UwPRkjgq
数学やれよ。数学。
簡単講座その2。角度編。

先ずは、角度って言っても基準となる0度の場所を決めて置かないといけないな。
これは、ゲーム毎に処理やなんかも違うし、自分で決めておいて、
計算時に、数学処理や標準関数とのオフセット(一定の差の修正)を取れば良いと思う。

今回は、X軸、つまり”y = 0”の直線が0度の角度で行こうと思います。
なぜなら、atan2での基準でもあるので、戻り値がそのまま使えるからです。

いきなり本題。原点から”大きさR”の”円上”の座標の式は?
x = R * cos(θ);
y = R * sin(θ);
*sin() cos()は標準関数。
が答えです。θとはシータと読みます。ギリシャ文字で数学だと計算時の角度を表す場合が多い。(高校数学教科書でも載ってるよ)
角度は、X軸からの角度で、例えば、45度つまりy = xの直線上の座標(マイナス座標はおいておく)なら
x = R * cos(PI / 4.0);
y = R * sin(PI / 4.0);
です。45 = 180/4 = PI/4.0ですね。
atan2で言うと
PI/4.0 = atan2(10.0, 10.0);//y = xの式で考えるので、引数yと引数xを同じ数値にしただけ。

解説をすると、先ず単位円(半径が1の円)で考えましょう。つまりR = 1となって
x = cos(θ);
y = sin(θ);
って簡単になります。そしてsinとcosとは、xとyが円を描く時の軌跡を表す物と考えると良いでしょう。
cos(0.0) = 1.0
sin(0.0) = 0.0
です。いきなり、”です”じゃ分りませんね?之は"大きさ1"の円の0度の座標を表します。
大きさ1の円で、基準はX軸でしたね。つまり0度なら(1, 0)が円上の座標です。上の式通りでしょ?
atan2だと
0.0 = atan2(0.0, 1.0);//引数に注意、atan2はy, xの順です。
0370名前は開発中のものです。03/02/26 03:19ID:UwPRkjgq
次は90度の座標で考えましょう。90度ならx = 0つまりY軸上の事です。
cos(PI / 2.0) = 0.0
sin(PI / 2.0) = 1.0
です。もう分りますね。(0, 1)の座標が90度の時の円上の座標です。atan2では
PI/2.0 = atan2(1.0, 0.0);

何を言いたいのか?それは、sinとcosを使えば、角度から座標が得られるのです。
そして、アーク系の標準関数を使えば、座標から角度が得られるのです。

例えば、10度づつに180度まで、角度を刻みたいって処理をするなら
float angle = 0.0f;
struct VECTOR vec;
vec.x = 0.0f;
vec.y = 0.0f;

while(angle <= PI)
{
vec.x = cos(angle);
vec.y = sin(angle);

//ここでxとyを使った処理、描画でも何でも良い

angle += PI / 18.0;//10度 = 180/18
}

ってやれば良いのです。
…すまん、もう眠い、限界だ、続きは近いうちに。
■ このスレッドは過去ログ倉庫に格納されています