Admin * New entry * Up load * All archives 

C++&DirectXでプチプチゲーム制作をしています。文章力?気合で乗り越えるさ。

 

旧 ゲーム的な何か。

12«1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.»02
2009年01月の記事一覧

« 12月     02月 »

Posted on --:--:-- «edit»

Category:スポンサー広告

スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

tb: --     com: --

go page top

Posted on 23:21:51 «edit»

Category:プログラミングとか

コード整理、ビームの半透明化など(報告その8) 

試験終了。まぁ、それなり。
コードの整理が思ったより早くすんだ(切り上げた)のでいくつか作業を行っています。
適当につらつらと。

追記 ホントはビームの半透明化も紹介するつもりでしたが今日は技術的で地味な(いつも通り?)話のみです。

まずコードの整理ですが、ビルボードによる半透明表示の方法がわかった関係で大幅な手直しはありませんでした。ただ元サンプルコードがどんどん汚くなっているようでなんとも。。

代わりに2000行程度に膨れ上がったコードの分割を主に行いました。現在タスク関係はひとまとめですがそのうち分けないといけませんねぇ。。

ややこしいのは嫌いなのでコード分割によっていろいろ修正するのはためらっていたのですが、流石に2000行のコードをスクロール、スクロールで読むのもつらいので仕方なく分割になりました。
コード分割の時に気をつけないといけないのは、やはりグローバル変数の扱いですね。どれ、少々技術的な話でも。

コードを分割するもともとどの関数からも見れたものが1つのコード内でしか見えなくなるわけで、すべてのコード内で扱えるようにするには、ヘッダファイルまたは対象コード内にてextern宣言する必要があるわけです。

詳しい説明は割愛しますが、要はcppファイル内での変数宣言の他に「他のコード内でも扱えるようにしますよ」とコンパイラに言わないとアウトなわけです。

今回はとりあえず、といった感じだったので、ヘッダファイル内にドサッっとextern宣言の塊が出来ました。本などのサンプルコードはC++のクラスを利用しているので果たしてこれでいいのか疑問ではありますがまぁいいでしょう。こういう作業をやればやるほどクラスのコードの扱いやすさ、そして読みにくさが際立ってきます。

ちなみにこんな間違いも発見しちゃいました。
・ヘッダファイル内で変数を宣言
・ある関数の引数の個数がプロトタイプ宣言のところと違ったのにもかかわらず今まで問題なく通っていた

前者はコード分割の勉強中にあるサイトで「ヘッダファイルの間違った使い方」みたいな感じで書かれていました。しかしなんでそんなところに突っ込んでいたのか。。いまいちわかりません。

はっ、気づいたらこんなに長く。これではもう一つのビームの方が。。まぁまた今度。
まだ少々表示に問題があるので。

ではでは。
スポンサーサイト

テーマ: プログラミング

ジャンル: コンピュータ

tb: (0)     com: (0)

go page top

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。