По оценкам ряда экспертов, API Metal можно назвать самым значимым достижением, из продемонстрированных на WWDC 14. Наиболее многообещающим – гарантировано, так как его появление ознаменует смену эпох и возможность наконец-то отказаться от громоздких графических интерфейсов программирования. Которые, по правде говоря, откровенно тормозят развитие мира игровых приложений для мобильных гаджетов.
Классическими примерами API (Интерфейс программирования приложений), которые на слуху даже у далеких от IT-индустрии людей, можно назвать AMD Mantle или Microsoft DirectX. В упрощенной форме это набор драйверов и сложных опций, позволяющий программистам без лишней головоломки обращаться к процессору при работе с графикой. Только вот большинство API создавались как универсальные и потому априори слишком громоздки и медлительны. Apple Metal – система нового поколения, Крейг Федериги (Craig Federighi) специально выделил тот факт, что она максимально оптимизирована для работы именно с процессором A7 . Да, в Купертино и не думали облагодетельствовать весь мир, а просто сделали инструмент для себя, нечто, что позволит сбросить оковы API OpenGL ES.
Metal, как было заявлено, обеспечивает едва ли не 100% КПД при эксплуатации многоядерной системы чипа A7 и поддерживает наборы заранее скомпилированных шейдеров. А помимо выполнения задач графического направления может эффективно использовать при общих расчетах. Для демонстрации на сцену пригласили учредителя Epic Games Тима Суини (Tim Sweeney), который прокомментировал ролик с карпами в пруду и облетающими лепестками сакуры на переднем плане. Каждый розовый листик кружит по своей траектории, плюс все рыбы в пруду наделены персональными подобиями искусственного интеллекта.
Самое интересное в том, что благодаря Metal весь этот комплекс сложных расчетов осуществляется за счет вычислительной мощности одного-единственного стандартного A7 в iPhone 5S . Ролик Zen Garden, демонстрирующий сочетание физики взаимодействия частиц и расчета псевдоинтеллектуального поведения, построен на движке Unreal Engine 4, к осени его выложат в App Store в виде отдельного бесплатного приложения. Другим примером преимущества Metal стало игровое видео на базе Plants vs. Zombies: Garden Warfare. В разработке от PopCap 3D детализация картинки увеличена до 1,3 млн. полигонов в каждом кадре, плюс наложение различных эффектов. Задача, едва посильная даже для флагмана модельного ряда, но переход на новую технологию ускоряет скорость прорисовки в 10 и более раз.
Теперь дело за непосредственными разработчиками игр, в интересах которых и создавался API Metal – в списке тех, кто уже объявил о своих масштабных планах по использованию новинки, много звучных наименований. Epic Games, PopCap 3D, Crytek (CryEngine), Electronic Arts (Frostbite Engine) и Unity, но так как о поддержке Metal в Unreal Engine 4 тоже уже заявлено, то перечень будет разрастаться, как снежный ком. Реальный потенциал технологии настолько велик, что в Apple даже позволили себе немного бахвальства, пообещав с выходом iOS 8 появление на iPad трехмерных игр уровня стационарных консолей. И они вовсе не далеки от истины.
Стоит отметить, по итогам презентации на WWDC стало очевидно, что яблочная компания активно взялась за развитие своей закрытой эко-среды. Во-первых, впервые в ее истории в программный комплекс Xcode добавлен персональный язык программирования Swift. Во-вторых, обновился пакет SpriteKit – инверсная кинематика, попиксельная физика, источники света, эффекты силовых полей, углубленная работа с текстурами и формой объектов. В-третьих, из OS X в iOS перекочевал набор SceneKit, при помощи которого решаются задачи 3D-визуализации и автоматизации скриптов для графических расчетов. Последние 2 здорово помогут создателям казуальных приложений, желающих привнести в картинку изюминку, не особо отвлекаясь от основной работы над сюжетом и геймплеем.
Но в заключении будет минорная нотка – хоть Apple и не объявляла о прекращении поддержки старых API, к этому все идет. Даже если купертиновцы не решатся на подобный шаг или им просто будет лень еще раз с нуля переписывать систему, через полгода-год нас ждет разительная смена общей картины. Появятся студии, которые будут создавать приложения, опираясь только на Metal и прочие фирменные разработки Apple – красивые, интересные, оптимизированные игры. Но их крайне проблематично портировать на иные платформы, что бьет по заработку и продвижению компаний, поэтому параллельно будет функционировать «поколение олдскул», использующее традиционные API. И спрогнозировать, как это отразится на вселенной мобильных игр в целом, сейчас довольно затруднительно.
Нет комментарий