トップページgamedev
1001コメント348KB

Kazukiの同人3DRPG制作【第二話】

■ このスレッドは過去ログ倉庫に格納されています
0001Kazuki2010/09/19(日) 04:46:22ID:6P+qj1XK
Kazukiの同人3DRPG制作 公式サイト
ttp://www.kazuki-sendo.com/game/


発展途上中の素人Kazukiを中心として
DirectX9による3DRPG制作に挑戦します。


開発言語は、C++です。
長く苦しい戦いになると思われますが、
同人ゲーム制作の限界への挑戦が、当企画のテーマでもあります。
0222名前は開発中のものです。2010/09/20(月) 16:48:44ID:TrTl0m0a
ドライバも、他人の作ったOSで動くんだぜ
0223名前は開発中のものです。2010/09/20(月) 16:49:30ID:GYlRLzyH
直接vramをたたくしかないな
0224名前は開発中のものです。2010/09/20(月) 16:51:05ID:TSB9RtrO
Windows 使うべきじゃないな。もちろん Linux だろうが DOS だろうが、他人の描いたコードを提供するものは全て排除
0225名前は開発中のものです。2010/09/20(月) 16:51:16ID:jBiXrBQS
>>198

a=a+(b>20);
これについて、Kazukiが説明できない理由は、

www.kazuki-sendo.comのifの説明は、
>>126 の本の丸写しだからです。
そして著者の意図を理解してないから、なにも説明できない。
0226名前は開発中のものです。2010/09/20(月) 16:52:58ID:TrTl0m0a
OSから自作か…
もちろんコンパイラもライブラリを一切使わずに自作だよね
Kazuki製のCコンパイラとか一回使ってみたいww
0227名前は開発中のものです。2010/09/20(月) 16:54:23ID:JDqAfrLM
Cという規格も他人が作ったからKazuki言語作らないと
最終的にはマシン語の勉強かな
0228名前は開発中のものです。2010/09/20(月) 16:54:40ID:gAkdYKQD
他人か作ったものがダメならCコンパイラだってダメじゃん。
まぁ、>>219の発言でわかるように、身の程知らずにもDXライブラリの作者と同格とか思っちゃってんだろ。
0229名前は開発中のものです。2010/09/20(月) 16:54:53ID:G1YrHPCT
マシン語を理解するにはマシンの仕組みからでは?
まずハンダゴテから覚えようか
0230名前は開発中のものです。2010/09/20(月) 16:56:23ID:TSB9RtrO
マシン語だってCPU内のマイクロコード使ってるぞ
0231名前は開発中のものです。2010/09/20(月) 16:57:19ID:JDqAfrLM
となるとCPUの規格から自作か…
0232名前は開発中のものです。2010/09/20(月) 17:02:11ID:0PP3VNsK
あったあった。

ChangeWindowMode( TRUE ) ;


これですね?

DXライブラリはこんな短いコードを書くだけで、
ウィンドウが表示されます。


俺が言いたいのは、
これで満足するんじゃなくて、
このコードのもっと深い意味を理解しましょう。ってことです。


理解できてるなら、
別にDXライブラリだろうが何だろうが、
どのライブラリを使ってもいいよ。

プログラムは膨大なコードを書くことになるので、
ライブラリを使って時間短縮した方がいいに決まってるしね。
0233名前は開発中のものです。2010/09/20(月) 17:03:56ID:bH9qwxA1
>232
じゃあ、説明よろしく。
DirectXでどうやってWindow表示するの?
0234名前は開発中のものです。2010/09/20(月) 17:05:39ID:JDqAfrLM
ていうか前からちょっと気になってたけど
>俺の場合、完成したゲームのあらゆるソースコードを?2?で入手して、
>そこに書かれている意味を一つ一つ調べて学んで行っているからです。
これ"P2Pで入手"か?
P2Pが違法とは言わないけどP2Pで流れてるソースって違法の匂いがプンプンするんだけど
0235名前は開発中のものです。2010/09/20(月) 17:05:52ID:iWUggLim
>>232
ChengeWindowMode=ウィンドウモード変更な?
フルスクリーンとウィンドウモードを切り替える関数だろ
0236名前は開発中のものです。2010/09/20(月) 17:07:18ID:0PP3VNsK
昨日、14歳からシリーズのC言語の本を書店で立ち読みしてきました。

なんか、13歳からシリーズもあったよ。

でも、DXライブラリを使って解説していたので、
「使えねえや・・」と思って、即行で閉じました。


その代わり、DirectX11の新しい解説本を購入してきました。

DirectX11は、まだ使わないけど、
ちょっと理解しておきたいしね。


時代に乗り遅れないために・・。
0237名前は開発中のものです。2010/09/20(月) 17:10:06ID:pkV7CGvL
>DirectX11の新しい解説本

興味深いな、どの書籍か教えてもらえる?
DirectX11の解説本って和書が無いに等しいからな。

0238名前は開発中のものです。2010/09/20(月) 17:10:11ID:TrTl0m0a
>その代わり、DirectX11の新しい解説本を購入してきました。
買ったら満足して、放ったらかしにしてそう。
というか、部屋の隅に同じ本が既に積んであるんじゃね?
0239名前は開発中のものです。2010/09/20(月) 17:10:33ID:0PP3VNsK
>>234
ちょwwwおまwwwww


さすがにノーコメント・・。
0240名前は開発中のものです。2010/09/20(月) 17:10:56ID:gAkdYKQD
>>232
目的と手段を完全に混同してるな。
単にDXライブラリがMS製じゃないからなんとなく嫌なだけだろ。
オプソ嫌いなおっさんみたいな奴だな。
0241名前は開発中のものです。2010/09/20(月) 17:12:32ID:JDqAfrLM
で、まぁP2P使ったかどうかなんて証明できないからどうでもいいんだけどさ
>>198に答えてくれない?
答えないなら>>225で正しいってことでいい?
0242名前は開発中のものです。2010/09/20(月) 17:13:52ID:0PP3VNsK
えっとね。
俺が購入したのは、

「ちょっとだけDirectX11」というタイトルの本です。
筆者は下谷 秀俊てって人です。

この本面白いね。(^^


俺が知りたかったことがたくさん書かれているよ。

まあ、この本は初心者向けではないから、
ある程度、DirectXを理解してないと、
サッパリ理解できないと思いますがね。
0243名前は開発中のものです。2010/09/20(月) 17:14:49ID:TrTl0m0a
・エロゲ厨
・ニコ厨
・東方厨
・解説厨
・割れ厨←new!
0244名前は開発中のものです。2010/09/20(月) 17:15:19ID:0PP3VNsK
>>241
ぶっちゃけ、どうでもいいwww


あんたが正しい!
よ!大統領!ww
0245名前は開発中のものです。2010/09/20(月) 17:15:48ID:pkV7CGvL
>242
それか、悪いけど初心者本だよ。それ
0246名前は開発中のものです。2010/09/20(月) 17:16:56ID:TSB9RtrO
中身を理解してないライブラリを使うのはダメだけど、
他人のコードを理解せず丸パクリで使うのはいいってことか

単なる自己満足以外の何物でもないな
0247名前は開発中のものです。2010/09/20(月) 17:17:59ID:TrTl0m0a
解説(笑)も自己満足だしな。
0248名前は開発中のものです。2010/09/20(月) 17:18:49ID:JDqAfrLM
>>244
自分が間違ってると認めるなら解説直しな
0249名前は開発中のものです。2010/09/20(月) 17:19:25ID:TrTl0m0a
>>241
安い本だなおい
0250名前は開発中のものです。2010/09/20(月) 17:26:28ID:eKQAJJG2
>>1 検索中・・・
0251名前は開発中のものです。2010/09/20(月) 17:33:13ID:0PP3VNsK
>>245
なに!?

この本を初心者向けと言ってのけるのか・・・。
これには、恐れいった。。


俺、マジであんたを尊敬するよ・・。


まあ、他の住人のレベルはどうだが怪しいのだがww

多分、ある程度までならプログラムを理解してて
それに満足している中級者レベルだと、俺は思っている。
0252名前は開発中のものです。2010/09/20(月) 17:35:27ID:TrTl0m0a
>>251
おかえり初心者さん
>>241の答え検索できた?
0253名前は開発中のものです。2010/09/20(月) 17:35:38ID:ioukBWfm
上級者向けのDirectX11本って和書にはまだ無いんじゃね?
0254名前は開発中のものです。2010/09/20(月) 17:37:20ID:TrTl0m0a
http://watery.dip.jp/~slash/0230
レビューがこれぐらいしか出てこない
0255名前は開発中のものです。2010/09/20(月) 17:37:45ID:0PP3VNsK
>>233
悪いが、こんなところで、
DirectXを使ったウィンドウ表示は説明しきれないよ・・。

ゴメンね。

でも、そのうち公式サイトの方で
詳しく解説しますので、ちょっと待っててください。
0256名前は開発中のものです。2010/09/20(月) 17:41:46ID:0PP3VNsK
>>252
何の答えだよ・・。

検索って何を検索?
検索なんて何もしてないよ。

いったい、何が知りたいんだよ。


知りたいことを端的に質問してくれ。

今は、質問の意味すら理解できてない。
0257名前は開発中のものです。2010/09/20(月) 17:42:53ID:ioukBWfm
>>251
とりあえずここのいるヤツの9割くらいはおまいより若くてデキるやつなんじゃね?
0258名前は開発中のものです。2010/09/20(月) 17:44:32ID:0PP3VNsK
よし。

詳しい説明を今から書くからちょっと待っててください。


質問の内容は、

>なんでaにb>20の値を代入するのに
>a=a+(b>20)


これだね?


俺はそう解説したいから、
って言ってんですがね・・。

やれやれ。(^^
0259名前は開発中のものです。2010/09/20(月) 17:45:35ID:JDqAfrLM
>>256
なぜb>20の値をaに代入するのに
int a=b>20;
でも
int a=0;
a=b>20;
でもなく
int a=0;
a=a+(b>20);
というコードを書いたのか
0260名前は開発中のものです。2010/09/20(月) 17:47:44ID:0PP3VNsK
ごめん・・・。

今、真剣に内容を読み直してみたけど、
やっぱり、何が言いたいのか
よく解らん・・。ゴメン・・。


俺の回答、

「そんなのどーでもいい!」
0261名前は開発中のものです。2010/09/20(月) 17:48:56ID:ioukBWfm
>>260
DirectXの勉強に入ってからわからないことが出たらそうやって逃げるのか?クズめ
0262名前は開発中のものです。2010/09/20(月) 17:49:26ID:JDqAfrLM
どうでも良くない。
b>20を代入する場合において
a=a+(b>20)なんてコードは間違いだ。
今回は直前に0で初期化してるから結果は一緒だが、コードの意味が全く違う。
0263名前は開発中のものです。2010/09/20(月) 17:50:39ID:p01Q1cpS
>>260を訳すと、
「なんとか自分の間違いをごまかす屁理屈をひねり出そうとしたけどできなかった。
 そもそも自分がどう間違ってるのかもよく分からない」
ってところか。
0264名前は開発中のものです。2010/09/20(月) 17:52:56ID:0PP3VNsK
>>259
ああ、そういうことか。


つまり、C言語の計算は、
「後ろから前に向かって」考えるからだよ。

int a=0;
a=a+(b>20);


こう書くと、
後ろから読んでね?

(20 > b )a= a


つまりこういうこと。


=の左のaには、0が入ってる。
=の右のaにも、0が入ってる。

でも、=の左のaの0は、初期化の0
「int a=0;」←つまりここの0

=の右のa(実際は=の左のa)は、
初期化の0ではなく、計算結果の0が入る。
0265名前は開発中のものです。2010/09/20(月) 17:54:14ID:TrTl0m0a
小学校も行ってないのか
0266名前は開発中のものです。2010/09/20(月) 17:56:14ID:uOYqy3lC
Cの計算は普通に前から処理されることを知らないかわいそうな子
演算の優先順位って知ってる?
0267名前は開発中のものです。2010/09/20(月) 17:56:42ID:JDqAfrLM
すごい
何がスゴイってなんか理解を超越した間違いしてる
こいつの中では
a+(b>20)

(20 > b )a
同義らしい
やばいプログラミングはおろか数学の基本も超越しちゃってる
0268名前は開発中のものです。2010/09/20(月) 17:57:31ID:TrTl0m0a
>>264
板違い
http://p.tl/o2RP
0269名前は開発中のものです。2010/09/20(月) 17:58:18ID:0PP3VNsK
ああ。
間違ったw

この場合は、答えは1かw

なぜ?こんなことにイチイチ疑問を感じるのだろうか・・。


つまり、同じaを使ってるけど、
aに入ってる値は違うのです。

だから後ろから前に向かって考えてね?ってことです。
0270名前は開発中のものです。2010/09/20(月) 17:58:46ID:ioukBWfm
>>264
後ろから前に向かってって…
どこでどんな解説サイト見たらそんな理解するんだよ…
0271名前は開発中のものです。2010/09/20(月) 17:59:10ID:JDqAfrLM
やばいよこの人
何がおかしいかもわかってないよ
0272名前は開発中のものです。2010/09/20(月) 17:59:32ID:p01Q1cpS
質問の意味も理解してないし説明も思いっきり間違ってるし、どうしょうもないな
0273名前は開発中のものです。2010/09/20(月) 18:10:46ID:0PP3VNsK
a=a+(b>20);

これを

(20 > b )+a= a

こう読む。

なので、20とbと比べて・・。

という風に、一番最後の20から考え始める。

a=a+(b>20);

これを

aは、aプラス、カッコの中。とは読まない。
0274名前は開発中のものです。2010/09/20(月) 18:13:11ID:p01Q1cpS
>>273
間違いすぎてて突っ込みきれない
0275名前は開発中のものです。2010/09/20(月) 18:13:11ID:TrTl0m0a
よーくわかりました^^
さすがッスねKazukiさん!!
0276名前は開発中のものです。2010/09/20(月) 18:13:16ID:0PP3VNsK
ごめんね・・レベルの低い話題になってしまって・・・。


でも、俺はこういう初心者を黙って見過ごせないのよ。(^^;
0277名前は開発中のものです。2010/09/20(月) 18:13:16ID:JDqAfrLM
すげぇ理解だ
まるっきり間違ってる
そもそもプログラム一切知らなくても
b>20

20>b
が違うことぐらい分かるだろ…
0278名前は開発中のものです。2010/09/20(月) 18:14:10ID:TrTl0m0a
不等号とか小学校で習うんじゃね?
0279名前は開発中のものです。2010/09/20(月) 18:16:31ID:0PP3VNsK
そういえば、まだ演算子の優先順位に触れてなかったね。

あとで、ちょこっとだけ解説しますね。
0280名前は開発中のものです。2010/09/20(月) 18:16:52ID:uOYqy3lC
不等号はただのミスだろうからスルーするとして

http://c-production.com/special/04092101.html
>>1はここを100回読んでから自分のレスを読み返してみろ
0281名前は開発中のものです。2010/09/20(月) 18:17:11ID:ioukBWfm
なんだ、こいつは他のレスが見えない病気かなんかなんかなのか?www
0282名前は開発中のものです。2010/09/20(月) 18:18:15ID:JDqAfrLM
こいつの頭の中では
理解出来ないこと=間違ったこと
なんだろう
0283名前は開発中のものです。2010/09/20(月) 18:18:44ID:TrTl0m0a
BaKazuki
0284名前は開発中のものです。2010/09/20(月) 18:19:09ID:gAkdYKQD
頭に疾患があるのはほぼ間違いない。
0285名前は開発中のものです。2010/09/20(月) 18:20:16ID:ioukBWfm
とりあえず理解しておいたことにしておかないと気が狂って死ぬんだろうな
0286名前は開発中のものです。2010/09/20(月) 18:20:48ID:TSB9RtrO
> だから後ろから前に向かって考えてね?ってことです。

じゃあ

#include <stdio.h>

int foo(int a)
{
printf("%d\n", a);
return a;
}

int main()
{
int a;

a = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("%d\n", a);

return 0;
}

これどんな出力になるか予想してみて。
0287名前は開発中のものです。2010/09/20(月) 18:22:59ID:0zuQeEep
突っ込み側を初心者扱いする事で自我を保ってるのか・・・
0288名前は開発中のものです。2010/09/20(月) 18:23:16ID:ioukBWfm
>>286
気が狂って死んだらどうするんだwwwww
0289名前は開発中のものです。2010/09/20(月) 18:24:55ID:JDqAfrLM
>>286
Kazukiには高度すぎるぞw

多分実際に実行して答えだすけど説明できないってことになると予想
0290名前は開発中のものです。2010/09/20(月) 18:26:18ID:0PP3VNsK
>>286
1
2
3
4
0
0

こんなの常識じゃないか。

試すまでもない。
0291名前は開発中のものです。2010/09/20(月) 18:27:06ID:TrTl0m0a
>>290
どうしてそうなるか説明できないだろ?
0292名前は開発中のものです。2010/09/20(月) 18:27:22ID:TSB9RtrO
なんで後ろから前じゃないの?
0293名前は開発中のものです。2010/09/20(月) 18:27:23ID:JDqAfrLM
さて説明のお時間です
なぜそうなるのかなkazuki君
0294名前は開発中のものです。2010/09/20(月) 18:27:57ID:IoZlbWf+
真=1じゃない事を示すいい証明
0295名前は開発中のものです。2010/09/20(月) 18:28:06ID:JDqAfrLM
予想が的中しそうだw
0296名前は開発中のものです。2010/09/20(月) 18:29:28ID:JDqAfrLM
>>294
さらに実行順序やAND演算の評価範囲まで分かるいい例
0297名前は開発中のものです。2010/09/20(月) 18:31:16ID:ioukBWfm
わかっていることは結果を書いたことで証明しただろ?(^^

とか言ってくるぞw
0298名前は開発中のものです。2010/09/20(月) 18:31:43ID:0PP3VNsK
>>291
めんどくねーな・・。

最初のint fooで、int aを定義、
それを表示
さらにリターンで返す

mainでint型を定義

理論演算子で考える。
それをint aに初期化。

C言語はmain関数から実行されるから、

1
2
3
4
↑コレはmainの実行結果。

0
0
は、上の実行結果。

これでいいかい?
0299名前は開発中のものです。2010/09/20(月) 18:33:33ID:p01Q1cpS
言ってることが滅茶苦茶すぎて訳分からんな
間違ってることだけは確かだが
いったいどういう理解の仕方をしてるんだろうコイツは
0300名前は開発中のものです。2010/09/20(月) 18:33:59ID:JDqAfrLM
めんどくねーならいいだろw
って突っ込みは置いといて
さて君の理解で行くと後ろから順番に読むんでしょ?
なら
6
5

となるはずだよね^^
0301名前は開発中のものです。2010/09/20(月) 18:35:47ID:G1YrHPCT
> 1
> 2
> 3
> 4
> ↑コレはmainの実行結果。
>
> 0
> 0
> は、上の実行結果。

??
初心者の僕に分かるように教えて下さい!!!
0302名前は開発中のものです。2010/09/20(月) 18:36:05ID:ioukBWfm
もしかして: 論理演算子
0303名前は開発中のものです。2010/09/20(月) 18:37:41ID:gAkdYKQD
>>298
おいw、全部mainの実行結果だろ。日本語弱すぎ。
それとfoo(5)とfoo(6)の結果が表示されない理由がないぞ。
0304名前は開発中のものです。2010/09/20(月) 18:39:35ID:0PP3VNsK
さて、ここで一旦休憩です。


こんなレスをしながらも、
俺は、次の解説はどんな感じで解説しようかとか、
今晩の夕飯は何にしようか。とか考えています。

こうやって、あることをしながら、
別のことを考えることは、
プログラミングでも重要な気がします。

ではまたね。
0305名前は開発中のものです。2010/09/20(月) 18:39:43ID:TSB9RtrO
>>298
素晴らしい!
全く理解できてないことを明確にした素晴らしい説明だ

「一番肝心な部分の説明を全部省略」という極上の素材に「int 型を定義」とか「理論演算子で考える」
とか絶妙なスパイスを効かせて、最後に「これでいいかい」で締める

最高だよwwww 腹筋が崩壊した
0306名前は開発中のものです。2010/09/20(月) 18:41:05ID:0PP3VNsK
>>300
ヒント:優先順位
0307名前は開発中のものです。2010/09/20(月) 18:41:13ID:JDqAfrLM
説明できないから逃げるのかw
分かりやすい
休憩明けは
a=a+(b>20)

>>286
の説明をしてもらおうかねぇ
0308名前は開発中のものです。2010/09/20(月) 18:41:23ID:ioukBWfm
>>304
逃げるなクズ
お前の晩飯とかどうでもいいんだよww
0309名前は開発中のものです。2010/09/20(月) 18:42:35ID:o7Tp16jr
>>306
分かってんなら、C言語では必ず後ろから前に計算が起こるとか恥ずかしいこと言ってんな。
0310名前は開発中のものです。2010/09/20(月) 18:43:18ID:JDqAfrLM
>>306
何と何の優先順位かなぁ?

たぶんこいつは>>280のサイト見て必死で理解しようとしたんだろうなww
0311名前は開発中のものです。2010/09/20(月) 18:43:25ID:p01Q1cpS
>>306
優先順位は関係ねーよ
「&&」が持つ特性の問題だ
0312名前は開発中のものです。2010/09/20(月) 18:44:39ID:ioukBWfm
>>306
ヒント じゃねーよww立場わかってんのかwwwww
あとちょっと前の自分と矛盾したこと言ってるよな?人格もいっぱいあるの?ん?
0313名前は開発中のものです。2010/09/20(月) 18:46:22ID:0PP3VNsK
wwwwwwwwwwwwwwww


現在爆笑中ですw

あんたたち本当に面白いね(^^


釣という言葉を知ってるかい?
0314名前は開発中のものです。2010/09/20(月) 18:47:33ID:ioukBWfm
>>313
後釣宣言という言葉を知っているかい?
0315名前は開発中のものです。2010/09/20(月) 18:47:44ID:JDqAfrLM
後釣り宣言ほど滑稽なものはないねww
0316名前は開発中のものです。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:p01Q1cpS
どこにグローバル変数があるんだ?
■ このスレッドは過去ログ倉庫に格納されています