Kazukiの同人3DRPG制作【第二話】
■ このスレッドは過去ログ倉庫に格納されています
0001Kazuki
2010/09/19(日) 04:46:22ID:6P+qj1XKttp://www.kazuki-sendo.com/game/
発展途上中の素人Kazukiを中心として
DirectX9による3DRPG制作に挑戦します。
開発言語は、C++です。
長く苦しい戦いになると思われますが、
同人ゲーム制作の限界への挑戦が、当企画のテーマでもあります。
0307名前は開発中のものです。
2010/09/20(月) 18:41:13ID:JDqAfrLM分かりやすい
休憩明けは
a=a+(b>20)
と
>>286
の説明をしてもらおうかねぇ
0308名前は開発中のものです。
2010/09/20(月) 18:41:23ID:ioukBWfm逃げるなクズ
お前の晩飯とかどうでもいいんだよww
0309名前は開発中のものです。
2010/09/20(月) 18:42:35ID:o7Tp16jr分かってんなら、C言語では必ず後ろから前に計算が起こるとか恥ずかしいこと言ってんな。
0310名前は開発中のものです。
2010/09/20(月) 18:43:18ID:JDqAfrLM何と何の優先順位かなぁ?
たぶんこいつは>>280のサイト見て必死で理解しようとしたんだろうなww
0311名前は開発中のものです。
2010/09/20(月) 18:43:25ID:p01Q1cpS優先順位は関係ねーよ
「&&」が持つ特性の問題だ
0312名前は開発中のものです。
2010/09/20(月) 18:44:39ID:ioukBWfmヒント じゃねーよww立場わかってんのかwwwww
あとちょっと前の自分と矛盾したこと言ってるよな?人格もいっぱいあるの?ん?
0313名前は開発中のものです。
2010/09/20(月) 18:46:22ID:0PP3VNsK現在爆笑中ですw
あんたたち本当に面白いね(^^
釣という言葉を知ってるかい?
0314名前は開発中のものです。
2010/09/20(月) 18:47:33ID:ioukBWfm後釣宣言という言葉を知っているかい?
0315名前は開発中のものです。
2010/09/20(月) 18:47:44ID:JDqAfrLM0316名前は開発中のものです。
2010/09/20(月) 18:49:20ID:0PP3VNsKグローバル変数を使っているのです。
int foo(int a)
{
printf("%d\n", a);
return a;
}
↑
これは静的領域を使用。
{
int a;
a = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("%d\n", a);
return 0;
}
↑
こっちはスタック領域を使用。
0317名前は開発中のものです。
2010/09/20(月) 18:50:25ID:JDqAfrLMん?もしかして理解できてるってことが釣りなのかな?
大丈夫だよみんな君が理解できてないことは知ってるからw
0318名前は開発中のものです。
2010/09/20(月) 18:51:09ID:ioukBWfm演算子に触れてねーなwwwwww
0319名前は開発中のものです。
2010/09/20(月) 18:51:30ID:0PP3VNsKどこでも呼び出せると言ったよね?
なので、スタック領域の各fooには、
グローバル変数を呼び出しています。
foo(0)
↑
多分、ここで引っ掛けるつもりだったのかな?
甘いね。
0320名前は開発中のものです。
2010/09/20(月) 18:52:29ID:uOYqy3lCグローバル変数とか
何言ってんのこの人
0321名前は開発中のものです。
2010/09/20(月) 18:53:05ID:p01Q1cpS0322名前は開発中のものです。
2010/09/20(月) 18:53:44ID:0PP3VNsKえ?????
あるじゃないか。
0323名前は開発中のものです。
2010/09/20(月) 18:54:54ID:ioukBWfm0324名前は開発中のものです。
2010/09/20(月) 18:55:10ID:JDqAfrLMグローバル変数とか無いしw
0325名前は開発中のものです。
2010/09/20(月) 18:55:16ID:p01Q1cpS俺の目にはローカル変数しか見えないが
0326名前は開発中のものです。
2010/09/20(月) 18:55:40ID:ioukBWfmグローバル変数の幻覚が見えてるからはやく病院に行こうね
0327名前は開発中のものです。
2010/09/20(月) 18:56:20ID:G1YrHPCT俺もローカル変数しか見えない
0328名前は開発中のものです。
2010/09/20(月) 18:57:09ID:TSB9RtrOもちろん「グローバル変数」も無関係
つかグローバル変数なんてひとつも出てこない。
0329名前は開発中のものです。
2010/09/20(月) 18:57:20ID:JDqAfrLM俺らは
>つまり、C言語の計算は、
>「後ろから前に向かって」考えるからだよ。
を否定するための問題かと思いきや
さらに右斜め上のグローバル変数とかの間違いをしだす
0330名前は開発中のものです。
2010/09/20(月) 18:57:37ID:G1YrHPCT0331名前は開発中のものです。
2010/09/20(月) 18:58:24ID:0PP3VNsKこれが釣だよwww
今回は後だし釣じゃないよね?w
0332名前は開発中のものです。
2010/09/20(月) 18:59:12ID:0zuQeEep0333名前は開発中のものです。
2010/09/20(月) 18:59:28ID:G1YrHPCT0334名前は開発中のものです。
2010/09/20(月) 18:59:45ID:0PP3VNsKごめんごめん。
冗談です。
0335名前は開発中のものです。
2010/09/20(月) 18:59:51ID:ioukBWfm0336名前は開発中のものです。
2010/09/20(月) 19:00:12ID:sEiPhw38まさかint foo(int a)のaがグローバル関数とか言うなよ?w
0337名前は開発中のものです。
2010/09/20(月) 19:01:00ID:G1YrHPCT0338名前は開発中のものです。
2010/09/20(月) 19:01:44ID:ioukBWfm0339名前は開発中のものです。
2010/09/20(月) 19:03:20ID:TSB9RtrOというかさ…釣りだろうがなんだろうが、結局のところ kazuki クンが正解を出せていない
ことに変わりはないわけなんだが
本当は正解がわかってるけど「釣り」としてわざと間違った答えを出した
のなら、その「本当はわかってる正解」を提示できるはずだろ。
0340名前は開発中のものです。
2010/09/20(月) 19:04:53ID:0PP3VNsK違 い ま す 。
さて、メシにするか(^^
0341名前は開発中のものです。
2010/09/20(月) 19:05:44ID:G1YrHPCT0342名前は開発中のものです。
2010/09/20(月) 19:07:00ID:JDqAfrLM0343名前は開発中のものです。
2010/09/20(月) 19:07:22ID:0PP3VNsKハッキリしたことは間違いない。
0344名前は開発中のものです。
2010/09/20(月) 19:08:17ID:gAkdYKQD0345名前は開発中のものです。
2010/09/20(月) 19:08:51ID:0PP3VNsKあなた方のレベルを探ってるの。
でも、もう十分わかったから、もういいよ。
0346名前は開発中のものです。
2010/09/20(月) 19:09:20ID:/Qev/0UJ0347名前は開発中のものです。
2010/09/20(月) 19:09:40ID:JDqAfrLM可哀想な子だね
0348名前は開発中のものです。
2010/09/20(月) 19:09:50ID:0zuQeEep0349名前は開発中のものです。
2010/09/20(月) 19:10:52ID:uOYqy3lC見下すため
0350名前は開発中のものです。
2010/09/20(月) 19:11:25ID:gAkdYKQD自分のバカさを確認するためとか、>>1がマの中でも最底辺であることが確認されたわけだが。
0351名前は開発中のものです。
2010/09/20(月) 19:11:45ID:G1YrHPCTマですらねえよ
0352名前は開発中のものです。
2010/09/20(月) 19:12:01ID:sEiPhw380353名前は開発中のものです。
2010/09/20(月) 19:12:55ID:gAkdYKQD0354名前は開発中のものです。
2010/09/20(月) 19:16:03ID:0PP3VNsK上のあの人は超上級者レベルの人
多分、現役のゲーム会社のプログラマーじゃないかな?
そもそも出たばかりのDirectX11が理解できていることに驚いています。
多分、日本でも数人しかいないんじゃないかな?
そして、あなた方は、中級者レベル。
現役プログラマーにはとても見えないということ。
そして、俺は、初心者でも中級者でも上級者でもない。
ふわふわした存在。
上級者レベルのことを知ってるかと思えば、
入門者レベルのことも知らなかったりする。
これが俺の分析結果。
0355名前は開発中のものです。
2010/09/20(月) 19:17:50ID:0PP3VNsKその方が解りやすい。うん。
0356名前は開発中のものです。
2010/09/20(月) 19:18:14ID:+PtyrZu+0357名前は開発中のものです。
2010/09/20(月) 19:18:20ID:/Qev/0UJ0358名前は開発中のものです。
2010/09/20(月) 19:18:25ID:TSB9RtrO#include <stdio.h>
int a = 5963; // グローバル変数 a を予め定義
int foo(int a) // この a がグローバル (上の a と同じ) だと思ってるなら
{
printf("%d\n", a);
return a;
}
int main()
{
int b = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("b : %d\n", b);
printf("a : %d\n", a); // その幻想をぶち殺す
return 0;
}
0359名前は開発中のものです。
2010/09/20(月) 19:18:43ID:G1YrHPCT0360名前は開発中のものです。
2010/09/20(月) 19:19:22ID:JDqAfrLM0361名前は開発中のものです。
2010/09/20(月) 19:22:18ID:ioukBWfmじゃあどれをグローバルだと思ってたのかお聞かせいただきたいところだな
0362名前は開発中のものです。
2010/09/20(月) 19:23:55ID:ioukBWfm>上級者レベルのことを知ってるかと思えば、 ←
>入門者レベルのことも知らなかったりする
なんか上級者っぽいこと言ったことあるか?wwwww
0363名前は開発中のものです。
2010/09/20(月) 19:26:53ID:uOYqy3lC本に書いてあることを知識として知ってるだけです
理解に達してないので応用は出来ません
御注意ください
0364名前は開発中のものです。
2010/09/20(月) 19:28:01ID:yBk4qTKX>>176
「ifより条件分岐」ってエスパーするとswtich文?
それやめた方がいいよ、BASICみたいな書き方してるならまだしも
0365名前は開発中のものです。
2010/09/20(月) 19:31:02ID:0PP3VNsK好きなだけ言ってろw
全部、解説していくから。
本当はC言語を飛ばして、
DirectXから解説しようと思ったけど、
それではいけないと思ったので基本の基本であるC言語から解説を始めることにしました。
結果、それは大正解だった。
自分の解釈間違えに気づくことができましたしね。
俺は着実に力を付けていっています。
いつか、あなた方を越えてるかもね。(^^
0366名前は開発中のものです。
2010/09/20(月) 19:32:49ID:hjX4PyUcDirectXのメインループ内で、メッセージ処理する時しか使ってないからだろうな
0367名前は開発中のものです。
2010/09/20(月) 19:33:23ID:+PtyrZu+0368名前は開発中のものです。
2010/09/20(月) 19:33:55ID:gAkdYKQD0369名前は開発中のものです。
2010/09/20(月) 19:38:24ID:ioukBWfm致命的な解釈間違えしている分際で解説しようとしてんじゃねーよ
0370名前は開発中のものです。
2010/09/20(月) 19:40:40ID:yBk4qTKX>>25でATOMに関して突っ込みしてくれた方がいたけど
もしかしてBOOTじゃなくてBOOLって言いたいのかしら
眼科行った方がいいよ!
0371名前は開発中のものです。
2010/09/20(月) 19:41:07ID:IoZlbWf+オナニーに付き合わされる初心者の気持ちも考えてやってくれよ
0372名前は開発中のものです。
2010/09/20(月) 19:41:45ID:RJ4jvRnBというかStandard Input/Output Headerを越えられそうにないな
リアルタイムなEvent-Driven設計とか見てみたい
すたじおえっち! おまじない!
0373名前は開発中のものです。
2010/09/20(月) 19:42:16ID:/Qev/0UJ0374名前は開発中のものです。
2010/09/20(月) 19:42:24ID:p01Q1cpS0375名前は開発中のものです。
2010/09/20(月) 19:55:02ID:ioukBWfm/ ヾ''" ~`ヽ
/ _,,,... ヽ;: /""ヽ ヽ
/ ;'" "\ l /;:;;:::-'''ヽ, i
/ /,,--:-'''''"~:::::::::::::::::::::::::::ヽ, .|
/ /;:;;:::'''::::::::::::::::::::::::::::::::::::::::ヽ ヽ
| |::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ |
/ ;/ :::::::::::、::::::::::::::::::::::::::::::;/ ヽ i,
/ ;:;:ヽ ::::::::\::::::::::::::::::::::::/ ヽ i,
i / )( ::::\;;::::::::::::;/ ,,-'''ヽヽ ヽ
| | ⌒ ,;''"'''-;,_ \l,::,l/ !" ●) | | >>1 俺のサイトに糞スレ立ててんじゃねーぞ、糞ガキ!
| |. ( ● >>><< `"'''''' | |
| ;:| "''''''''""^ \ | |
| ヽ. ゝ( ,-、 ,:‐、) | |
| /ヾ.. / ,--'""ヽ | | ___,,,:--'''''"
| | .//二二ノ""^ソ | | _,,,..::---'''""""~~
.. | `、ヽ ヘ`\┼┼┼ ,!ヽ --==ニニ二,
| ヽ\ \"ヽ-;:,,,,,,ノ / / | "`''''''-----:;,,,,,,,,,_______,,,,,,
| l `ー、_ \,,,,,__,,,ノ /ヽ./
ヽ. :人 ヽ-、 ∴∵ / |ヽl
/;:;:;:;;:;:;: _/ `ー-、 "'====---''",.-'" \ー---
,.-'" \: \ .,.-''" |
0376名前は開発中のものです。
2010/09/20(月) 20:13:38ID:0PP3VNsKあれ見てたら、
スターソルジャーが作りたくなってきた・・。
よし。
ゲーム第一弾は、スターソルジャーを作ってみることにします。(^^
スターソルジャー2というタイトルにすると、
さすがに版権ものでダメだと思うので、
「スターシューティン」とかのタイトルにしようかな?(^^
まずは、ファミコンゲームから挑戦しよう。
それが出来たら、東方っぽいシューティングゲームを作ってみたいと思います。
もちろん、解説しながら作っていきます。
0377名前は開発中のものです。
2010/09/20(月) 20:16:43ID:imURypgHソース公開よろ
0378名前は開発中のものです。
2010/09/20(月) 20:23:19ID:d2fwGT9Ea=a+(b>20);
はそんな突っ込む所ではないと思う
0379名前は開発中のものです。
2010/09/20(月) 20:24:44ID:yBk4qTKX12 / 2 * 6 = ?
この場合、除算と乗算の優先度は同じなので左から順に計算します
12 / (2 * 6) = ?
この場合、除算と乗算の優先度は同じなので左から計算されます"が"
括弧内の式が優先されるので括弧内の式を先に計算します
また加算と減算の優先度は除算、乗算より低いので
「12 + 2 * 6」の場合は「2 * 6」が先に計算され
「12 + 12」として計算します
なお算術演算子は加算<減算<乗算<除算<剰余の順に優先度が高くなります
これはプログラム言語においても例外ではありません。ないよね?
よって>>264の
>>C言語の計算は「後ろから前に向かって」考える
というのは間違いになります
0380名前は開発中のものです。
2010/09/20(月) 20:26:25ID:PwXEM5lEソースでもバイナリでも出たら出展捜索大会だな
0381名前は開発中のものです。
2010/09/20(月) 20:28:45ID:PwXEM5lEこいつ==知らないんだよ
そんだけ
0382名前は開発中のものです。
2010/09/20(月) 20:30:14ID:0PP3VNsK何を言ってんだよww
さて、そろそろ次の解説でも作るとしよう。
俺のサイトでは、
新たな解説を作ってるときは、
毎回、準備中の動画をトップに表示させておくことにします。
0383名前は開発中のものです。
2010/09/20(月) 20:36:23ID:/Qev/0UJ0384名前は開発中のものです。
2010/09/20(月) 20:39:14ID:VIJpcxdiせいぜい人のものをパクってリソースを差し替えたりパラメータ
を弄るぐらいが関の山だ。
ことゲ製に限っては、勉強の仕方に近道などない。
0385名前は開発中のものです。
2010/09/20(月) 20:39:22ID:0PP3VNsKすげぇな・・これは・・。
とんでもないアクセス数になっています。
よし!みんなの期待に答えるため、
俺!がんばる!!
>>373
ありがとう。
励みになります。
0386名前は開発中のものです。
2010/09/20(月) 20:40:05ID:IoZlbWf+なんでまた作るの?
3Dのシューティング作っちゃったから?
0387名前は開発中のものです。
2010/09/20(月) 20:40:59ID:/Qev/0UJお前の様にならないためにって意味だよ
驕れんな
0388名前は開発中のものです。
2010/09/20(月) 20:41:33ID:ioukBWfm解説できるレベルじゃねーだろはやく過去作のソースうpれカス
0389名前は開発中のものです。
2010/09/20(月) 20:43:31ID:0PP3VNsKうん。まだちゃんとしたゲームは作っていません。
自機を動かして、
弾撃って敵をやっつける。
こんなのしか作っていません。
ゲームというのは、
ちゃんとスタート画面が表示されて、
ボタンを押せば、ゲームメイン画面が表示されて、
敵をやっつけたら点数が追加されていって、
最後までクリアできたら、エンディングが表示される。というもの。
そういうのを丸々一本作ってみたくなった。
東方はちょっと難しいから、
まずは、ファミコンゲームのシューティングから行きまーす!
0390名前は開発中のものです。
2010/09/20(月) 20:45:39ID:ioukBWfmああ、DirectXを直接叩くんでしたね^^
0391名前は開発中のものです。
2010/09/20(月) 20:46:01ID:p01Q1cpS>俺のサイトでは、
>新たな解説を作ってるときは、
>毎回、準備中の動画をトップに表示させておくことにします。
さすが著作権に厳しいkazukiさん
0392名前は開発中のものです。
2010/09/20(月) 20:48:01ID:0PP3VNsKそんなこと言うなよ。
こんな敵だらけのところで
レス付けるだけでも、
2chに慣れてない人からすれば、結構勇気いると思うよ。
そんなキモチを察して「ありがとう」という言葉をその人に送っただけ。
0393名前は開発中のものです。
2010/09/20(月) 20:51:14ID:IoZlbWf+数ヶ月かけてようやく基本的なシステム作り終わったから
俺もシューティング作ってみるわ!
がんばろうぜ!
0394名前は開発中のものです。
2010/09/20(月) 20:53:24ID:IonUW+dMと言いたいところだけど素材が手間だな…
0395名前は開発中のものです。
2010/09/20(月) 20:53:52ID:ioukBWfm0396名前は開発中のものです。
2010/09/20(月) 20:55:54ID:/Qev/0UJまあ実際やる気が出たってのは確かなんだがな
0397名前は開発中のものです。
2010/09/20(月) 21:00:02ID:JDqAfrLM0398名前は開発中のものです。
2010/09/20(月) 21:08:32ID:HHenXYSU終わったな
0399名前は開発中のものです。
2010/09/20(月) 21:08:45ID:yBk4qTKXこのままじゃ>>1の3DRPGにおけるダメージ処理とかバグっちゃう!
0400名前は開発中のものです。
2010/09/20(月) 21:30:32ID:0PP3VNsKごめんよ。
縦読みしてました。
「後ろから前に向かって」は、俺のオリジナルの解釈です。
多分、こんなこと言ってる解説はどこにもないと思う。
でも、俺の場合そうやって考えた方が解りやすかった。
計算は、「後ろから前に向かって」が基本で、
そこに、各演算子の優先順位が加わって順番が変わるのです。
*は+より先に計算される。
( )を使った場合は、( )の中を先に計算する。
それを=の左に移すのです。
a = a +(b+1)
↑
これを
a + (b+1) = a
↑
こんな感じで算数みたいに考えてはいけない。
小学校や高校までの計算式で考えると、
=の左右は同じって意味ですね?
0401名前は開発中のものです。
2010/09/20(月) 21:41:14ID:yBk4qTKXふむ
>>381さんが軽く教えてくれてますが
プログラムにおいては「=」は代入で
算数・数学における「=」はプログラムにおいては「==」となっております
故に算数・数学における「12 / 2 * 6 = 36」は
プログラムにおける「36 == 12 / 2 * 6」と考える事が出来まして
文章で説明するなら、12 / 2 * 6 = 36は
左から順に12 / 2を計算した後に6と乗算した結果は36と「等価」であるとなります
文章で説明するならば、 a = a + (b + 1)は
b + 1を先に計算した後にaと加算し、その答えをaに「代入」するとなります
よ!
0402名前は開発中のものです。
2010/09/20(月) 21:43:22ID:TSB9RtrO0403名前は開発中のものです。
2010/09/20(月) 21:43:58ID:KOYHA8wFは
a ← a +(b+1)
このように解釈する。
この←は、「代入」と呼ぶ。
矢印がASCIIコードに無いから 代わりに「=」を使う。
イコールの場合は、「==」
これがC言語のルールです。
ルールを守れなければ、違法エラーになります。
0404名前は開発中のものです。
2010/09/20(月) 21:45:50ID:FBgjHnqXだから後ろから前じゃねぇっつうの
>>286
の結果で分からないの?
0405名前は開発中のものです。
2010/09/20(月) 21:45:58ID:KOYHA8wFあまりにも変なことを書くと、ガキに馬鹿にされるよ。
0406名前は開発中のものです。
2010/09/20(月) 21:50:10ID:WrM+PpRx■ このスレッドは過去ログ倉庫に格納されています