2011/10/02

Xcode でシェーダーをコンパイルさせないようにする

シェーダーがコンパイルされてしまう

OpenGL ES のプログラマブルシェーダーはアプリ実行時にコンパイルされるものなので、アプリビルドの際は何もせずにファイルとしてパッケージングしたいわけですが、Xcode 4.0.2 で拡張子が .vsh や .fsh のシェーダーファイルを追加してアプリをビルドするとシェーダーまでコンパイルされてしまい、シェーダーの独自構文が Objective C コンパイラで通らなくてビルドエラーになったりします。



Xcode 4.0.2 でシェーダーをコンパイルしないようにする方法

  1. 左側ペインのProject navigatorでプロジェクトを選択
  2. 右側ペインの左側部分でTARGETSを選択
  3. 右側ペインの右側部分で Build Phases タブを選択
  4. Compile Sources を開くとシェーダーファイルが表示されるので、ドラッグ&ドロップでCopy Bundle Resources のところに移動


スクリーンショット