Мое приложение вылетает, когда я делаю следующее в событии applicationDidFinishLaunching в делегате приложения:
_textures[mytex] = [[Texture2D alloc] initWithImage: [UIImage imageNamed:@"a.png"]];
Однако когда я заменяю @"a.png" на
@"/Users/MyUserName/Desktop/MyProjectFolder/a.png"
все работает нормально. Я экспериментировал с относительными путями для ресурса a.png ... но ничего из этого не сработало. Как я могу это исправить? Я хотел бы просто сказать @"a.png" для всех ресурсов изображения (особенно, поскольку я сделал это в другом приложении ... где я работал непосредственно с образцом кода).
Так что же это за волшебная обстановка?
Спасибо!





Вам необходимо убедиться, что файл .png импортирован как ресурс в xCode. Если вы это сделали, то ссылка на него как на «a.png» должна работать.
+[UIImage imageNamed:] будет искать изображение в ресурсах вашего пакета приложений. Если вы добавляете изображение в Xcode, оно будет по умолчанию добавлено в фазу копирования ресурсов вашего проекта. Если вы хотите убедиться, что он копируется в ваш пакет приложений, посмотрите список в левой части редактора Xcode, под целями вы увидите имя своего приложения там, под ним вы увидите несколько этапов сборки, если a.png появляется на этапе «Копирование ресурсов пакета», и вы должны быть готовы приступить к работе.