2011-02-03 14 views
3

openframeworksで私のアプリケーションをビルドしてどこからでも開くことができ、アプリケーションのResourcesフォルダから必要な画像をロードできます。xcodeでopenframeworksアプリケーションをバンドルするにはどうすればいいですか?

これは相対的なリンクだと思いますか?

私は古いXcodeの上、前にそれを行っていると61

はこれを行うために、私は「ビルドにして、左側のプロジェクトファイルに必要な画像をドラッグし、実行可能なターゲットにこれを追加しましたフェーズ ' - >'コピーファイル '

最後に問題を解決したofSetDataPathRoot()は、今度は私のために働いていません。

ご意見やご協力をいただければ幸いです。

おかげ

+0

あなたが今のXcodeのバージョンは何を使用していますか?また、OFのバージョンは? – mummey

答えて

0

ofSetDataPathRoot()この問題を解決する必要があります。おそらく、置き換えられたルートパスを間違って設定していますか?

文字列パスでofDataPath()を呼び出して出力し、.appバンドル内の端末とcdを使用してパスが正しいかどうかを確認してください。パスは.appバンドル内の実際の実行可能ファイルの場所に相対的に表されます。実行ファイルがmyApp.app/Contents/MacOS/myAppで、データファイルがmyApp.app/Contents/Resourcesの場合、ofToDataPath("texture.png")../Resources/texture.pngのようなものを返します。

あなたは、ターミナルを開いて、その詳細はman getcwdを入力し、getcwd()を呼び出すことにより、現在の作業ディレクトリ(私の例ではmyApp.app/Contents/MacOS)をダブルチェックすることができます。

0

oFは、デフォルトでデータパスのルートをに設定し、内部コールをofToDataPath()に呼び出します。どのバージョンを使用していますか?

あなたのリソースが適切なビルド段階でコピーされていることを確認するために、製品のパッケージの内容を調べましたか?

8

ビルドフェーズを追加することにより、アプリケーションバンドルにあなたの/ binに/ dataディレクトリをコピーするのXcodeに指示する必要があります:まず

1. Click on your project in the Project Navigator 
2. Select "Build Phases" 
3. Toggle open the "Run Script" section and paste in the following: 
cp -r bin/data "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources"; 

続い内自体にデータフォルダの相対を見つけるためにあなたのアプリを教えてバンドル。あなたのアプリののセットアップ方法インサイド

ofSetDataPathRoot("../Resources/data/"); 
関連する問題