我刚刚在运行 OSX 10.6.8 的 Macbook Pro 上下载了 Cinder v0.8.4,并开始使用 Xcode 完成 Welcome to Cinder 的第 1 章。我使用 Tinderbox 工具创建了一个名为 CinderProjectApp 的带有默认选项的新项目。我还按照说明确保我的 boost 库与默认库 (1.4.2) 相同。
当我开始学习本教程时,我想看看是否可以从 /resources 文件夹加载我自己的图像,因此我下载了一个图像“Broccoli.jpg”并将其添加到我的 CinderProjectApp/resources/ 目录中。
这是我的 draw() 函数:
void CinderProjectApp::draw()
{
gl::clear( Color( 0, 0, 0 ), true );
try
{
std::string p = FilePath( "", ImageIo::getLoadExtensions() );
if( ! p.empty() )
{ // an empty string means the user canceled
myImage = gl::Texture( loadImage( p ) );
}
}
catch( ... )
{
console() << "Unable to load the image." << std::endl;
}
gl::draw(myImage, getWindowBounds());
}
当我编译整个小型 CinderProjectApp.cpp 代码时,出现错误:从 'boost::filesystem3::path' 转换为非标量类型 'std::basic_string, std::allocator >' 请求的行我指定文件的路径。由于这在语法上看起来是有效的,我想知道 getOpenFilePath 出了什么问题。
如果您需要查看其余代码,请告诉我。顺便说一句,我在这里交叉发布了我的问题。