2008年10月22日水曜日

OpenGLテクスチャの基本

 OpenGLでテクスチャをとりあえず表示するために必要な関数
初期化時:
glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, 128, 128, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
実行時:
glTexCoordでテクスチャ座標を指定する

これでテクスチャがはりつきます.

2008年10月16日木曜日

OpenGLのRotateの回転度数

 毎回忘れるのでメモ
glRotateに指定する回転度数は0~360度の指定

ちなみにsin, cos ( math.h) はラジアンなので0から2π

災難続き

 Hiballは直ったが,今度はプロジェクタのランプが死んだ

追記.20081113
プロジェクタのランプではなく本体が故障していた模様.交換用ランプを買って取り付けたというのに何も変わらなかったのでびっくりした.
うちには同じプロジェクタが3台あるから後2台は動くのでそれでとりあえずは動かす.

2008年10月15日水曜日

VC++ランタイムライブラリについてわかったこと

 4つのライブラリがある
デバックとついているほうがデバック用
ついてないほうがリリース用である

それぞれどっちのライブラリを使うのかについて
DLLとついているほうは動的リンクを行うためexeだけでは実行できない
ついてないほうは静的リンクを行うためexeだけで実行できるがファイルサイズは大きくなる

たいていはDLLついているほうで実行できるはず

VC++で#defineをプロパティで設定する方法

 DebugとReleaseでdefineを変更したい場合,
プロジェクトのプロパティ
C/C++のプリプロセッサタブの
プリプロセッサの定義に
追加したいインクルードファイルを追加する

Visual Studioのインテリセンス

 インテリセンスの調子が悪くなってきたときは
.slnファイルと同じディレクトリにある.ncbファイルを一度削除するといい.

2008年10月14日火曜日

ポインタのポインタをnewするinC++

 double** test = new double*[10];
 test = new double[3];
とまあこんな感じ.
アスタリスクの位置が注意

2008年10月10日金曜日

iniファイルを利用するのは推奨されない

 iniファイルの
読み込みGetPrivateProfileString
書き込みWritePrivateProfileString
は16ビットウィンドウズ時代の名残みたいなものか...
しかし,便利なので使うための方法を記載する

結局ユニコードに対応するために
TCHAR型を使う必要があり,include tchar.hする
それからどうやら上記の関数を利用するにはinclude windows.hをする必要あり.

文字列じか打ちをユニコードに対応させるために_T()でくくってやる

それから別の話題で
カレントディレクトリを知るための関数がGetCurrentDirectory()

ユニコード文字列の連結方法は_tcscat()を使う.


以上!!

2008年10月7日火曜日

OpenGLのテクスチャー!!!!!!!!!!!!!!!!!!!!

 OpenGLのテクスチャがうまく動かへん!!!!!
まじいらつく~~~~~

ネットに上がってるテクスチャが表示できるサンプルを使ってもうまく動かなかった
つまりグラフィック関係のところが俺のマシンは特殊かもしれない

だからあきらめた
OpenGLいらつく

追記.20081113
どうやらグラフィックボードによって別途GLの設定をする必要があるようだ.現在は動いている.

2008年10月6日月曜日

atokを使う

 atok30日間使用期間スタート


以上