次のコンパイル エラー (のみ) が表示されます。
RuberSystem.cpp:425: 警告: フォーマット '%5f' はタイプ 'double' を想定していますが、引数 3 のタイプは 'int' です</p>
宣言は次のとおりです。
float x = 6000.0f;
float z = -6000.0f;
float lx = -6000.0f;
float lz = 6000.0f;
float angle = 0.0f;
425 行目は次のとおりです。
printf("Right pressed: angle=%5f\nx=%5f\nlx=%5f\nz=%5f\nlz=%5f",angle,x,lx,z,lz);
これらの変数が受ける唯一の操作は次のとおりです。
angle -= 0.01f;
lx = sin (angle);
lz = -cos (angle);
これらの操作を (float) でキャストしようとしましたが、うまくいきませんでした。
おそらく役に立つ情報: これは Visual Studio 8 の Windows マシンで動作し、現在 GNU g++ を使用して Macbook でコンパイルしています。Mac で使用するための適切な定義を既に設定しています。
編集:これらの変数に対してもう1つの操作が見つかりました:
gluLookAt(
x, 1500.0, z, // eye location
x+lx, 0.0, z+lz, // center location
0.0, 1.0, 0.0); //open GL function
gluLookAt のコードを調べたところ、フロートを取り込んでフロートのマトリックスに格納しているように見えるので、そこに問題があることもわかりませんが、共有するのは良いことだと思いました.
答え:私はばかです。呼び出しangle -= 0.01f;...
ていたメソッドには、 と という名前の引数がint x
ありint y
、したがってvoid processSpecialKeys(int key, int x, int y) {
.