#一週間経過してみて
初めてから一週間経過しました。友達との他愛のない雑談からはじまりましたが、結構自分にとっては実りのある一週間だったと思います。
といいますのも、今思えば結構冒険的なことをしたのだと思います。理系でもないし、数学も高校1年生の初期で止まっているのを無理やり進めたりして、物語も同時に平行して考えながら、ゲームの基礎を作ろうとしています。その動機も結構他人からみたら「そんな理由?」と言われるほど単純明快な動機でした。おそらく、この単純明快な動機がここまでさせたのだと思います。
ということで、ここでは一週間かけて技術的に自分の中でなにが変わっったのかをまとめていきます。まだ22日残っているのまだまだ道半ばですけど
#何をしていたか。
ここ一週間は時間を見つけては基礎を固めていました。たとえば、空いた時間を使って数学の勉強をしていました。というのも、3Dゲーム自体が数学の固まりみたいなものなので否が応でもやらなきゃならなかったのです。そこは、スキマ時間でコツコツするようにしました。
夜、大きく時間がとれるのでそこでglfwを試していました。プログラミングは大きく時間を取らないとできないので、これは夜のように長く時間が取れる時にやりました。
大きく分けてこの2つです。
#技術的になにを手に入れることができたか?
##Cのポインタがすこし理解ができた
Cのポインタが少しだけ理解ができました。これはqiitaで教えてもらった「ヒーロー」という@elct9620さんが作っていたmrubyのゲームライブラリです。このなかで構造体をポインタにしているのをみて、構造体のポインタの動きを学びながら動かしていました。そのおかげで、ポインタがどのように使われているのかが分かり、一歩前進しました!
##ハードの制約を理解することの大切さを知った
僕自身、あまりC言語のようにハードの制御(とりわけメモリ管理など)といったことはやっておりませんでした。言語は知っていても、いつもはRubyを使っていましたのでそれほどメモリについて考えることがありませんでした。
しかし、今回するのはゲームということもあり、かならずハードの制限ぎりぎりを攻めながら美しく描写しなければなりません。制約を理解しつつ、最高のパフォーマンスをすることを考えることが大切になります。
今のパソコンは10年前までの物比べて断然豊かになりました。メモリもいっぱい積めるし、CPUも格段に速くなっています。ですが、それでもまだ満足できないというのが人間の性というものです。もっといいものを!という果ない欲望のためにハードのことを考えてやらないといけなかったりします。
これを知ることができたのは大きいです。
#やってみた感想
一週間やってみましたが、3つも学べたというのは結構なリターンだったと思います。普通のことをやっていてはわからなかったことがわかるようになりました。
まだ22日ありますが、それまで飽きずにやってみます。では!
###Ciao!