Дополненная реальность как сделать самому

Дополненная реальность как сделать самому

В этом гайде вы узнаете, как добавить 3D-модели в реальный мир. Библиотека ARCore от Google позволяет добавлять на 2D-изображение (картинка или видео) полноценные 3D-модели.

Вам необходимо предоставить системе некое опорное изображение, которое ARCore будет искать в реальном мире, чтобы на его основе добавить на изображение 3D-модель. Дополненная реальность уже широко используются, например, в книгах, газетах, журналах и т.д.

Прежде чем погрузиться в этот туториал, вам стоит ознакомиться с предыдущими двумя статьями на эту тему, которые познакомят вас с основными AR-терминами:

  • Что такое ARCore? Всё, что вам нужно знать
  • Создание вашего первого ARCore-приложения

Содержание

Что такое изображения дополненной реальности?

Согласно документации для разработчиков, изображения дополненной реальности в ARCore позволяют создавать приложения дополненной реальности, которые могут «оживлять» 2D-изображения, например, плакаты или упаковки продуктов.

Вы загружаете в ARCore какие-то опорные изображения, а он вам затем сообщает об их обнаружении во время AR-сессии, например во время съёмки видео. И эта информация используется для расположения 3D-модели на 2D-изображении.

Ограничения использования изображений дополненной реальности

Вот некоторые ограничения, с которыми вы можете столкнуться при использовании изображений дополненной реальности:

  • ARCore может обрабатывать только до 20 опорных изображений одновременно.
  • Физическая плоскость в реальном мире должна быть плоской, а её площадь должна быть больше, чем 15 см х 15 см.
  • ARCore не может отслеживать движущиеся изображения и объекты.

Выбор подходящего опорного изображения

Вот несколько советов для выбора хорошего опорного изображения для ARCore:

  • Изображения дополненной реальности поддерживают форматы PNG, JPEG и JPG.
  • Неважно, цветное будет изображение или чёрно-белое, главное, чтобы оно было высокой контрастности.
  • Разрешение изображения должно быть не менее 300 х 300 пикселей.
  • Использование изображений с высоким разрешением не означает улучшение производительности.
  • Следует избегать изображений с повторяющимися паттернами (например, узорами или горошком).
  • Используйте инструмент arcoreimg, чтобы оценить, насколько подходит ваше изображение для работы. Рекомендуется оценка не менее 75 баллов.

Как использовать инструмент arcoreimg:

  • Загрузите ARCore SDK для Android .
  • Распакуйте zip-содержимое файла в любое место.
  • В извлеченной папке перейдите по пути tools > arcoreimg > windows (даже если у вас Linux или macOS).
  • Откройте командную строку в этой директории.
  • И введите эту команду:

arcoreimg.exe eval-img —input_image_path=dog.png

Замените dog.png на полный путь к вашему изображению.

Начало работы с приложением дополненной реальности

Теперь, когда вы ознакомились с ARCore и выбрали хорошее изображение с оценкой 75+, пришло время приступить к написанию кода приложения.

Создание фрагмента

Мы создадим фрагмент и добавим его в нашу Activity. Создаём класс с именем CustomArFragment и наследуем его от ArFragment. Вот код для CustomArFragment:

package com.ayusch.augmentedimages; import android.util.Log; import com.google.ar.core.Config; import com.google.ar.core.Session; import com.google.ar.sceneform.ux.ArFragment; public class CustomArFragment extends ArFragment { @Override protected Config getSessionConfiguration(Session session) { getPlaneDiscoveryController().setInstructionView(null); Config config = new Config(session); config.setUpdateMode(Config.UpdateMode.LATEST_CAMERA_IMAGE); session.configure(config); getArSceneView().setupSession(session); return config; } }

Прежде всего, мы отключаем обнаружение плоскости. Делая это, мы убираем с экрана значок руки, который появляется сразу после инициализации фрагмента и говорит пользователю о необходимости перемещения своего смартфона для поиска плоскости. Нам это больше не нужно, поскольку мы обнаруживаем не случайные плоскости, а конкретное изображение.

Затем мы устанавливаем режим обновления для сессии LATEST_CAMERA_IMAGE. Это гарантирует, что мы будем узнавать об обновлениях изображения всякий раз, когда обновится кадр камеры.

Настройка базы данных изображений

Добавьте выбранное опорное изображение (которое вы хотите обнаружить в физическом мире) в папку assets (создайте её, если её ещё нет). Теперь мы можем добавлять изображения в нашу базу данных.

Мы создадим эту базу данных, как только будет создан фрагмент. В логи мы выведем результат этой операции:

if ((((MainActivity) getActivity()).setupAugmentedImagesDb(config, session))) { Log.d(«SetupAugImgDb», «Success»); } else { Log.e(«SetupAugImgDb»,»Faliure setting up db»); }

Вот как будет выглядеть CustomArFragment:

package com.ayusch.augmentedimages; import android.util.Log; import com.google.ar.core.Config; import com.google.ar.core.Session; import com.google.ar.sceneform.ux.ArFragment; public class CustomArFragment extends ArFragment { @Override protected Config getSessionConfiguration(Session session) { getPlaneDiscoveryController().setInstructionView(null); Config config = new Config(session); config.setUpdateMode(Config.UpdateMode.LATEST_CAMERA_IMAGE); session.configure(config); getArSceneView().setupSession(session); if ((((MainActivity) getActivity()).setupAugmentedImagesDb(config, session))) { Log.d(«SetupAugImgDb», «Success»); } else { Log.e(«SetupAugImgDb»,»Faliure setting up db»); } return config; } }

Вскоре мы добавим метод setupAugmentedImagesDb в MainActivity. Теперь давайте добавим CustomArFragment в наш activity_main.xml:

<?xml version=»1.0″ encoding=»utf-8″?> <android.support.constraint.ConstraintLayout xmlns:android=»http://schemas.android.com/apk/res/android» xmlns:app=»http://schemas.android.com/apk/res-auto» xmlns:tools=»http://schemas.android.com/tools» android:layout_width=»match_parent» android:layout_height=»match_parent» tools:context=».MainActivity»> <fragment android:id=»@+id/sceneform_fragment» android:name=»com.ayusch.augmentedimages.CustomArFragment» android:layout_width=»match_parent» android:layout_height=»match_parent» /> </android.support.constraint.ConstraintLayout>

Добавление изображения в базу данных

Сейчас мы настроим нашу базу данных изображений, обнаружим опорное изображение в реальном мире и добавим 3D-модель на изображение.

Давайте начнём с настройки нашей базы данных. Создайте публичный метод setupAugmentedImagesDb в классе MainActivity:

public boolean setupAugmentedImagesDb(Config config, Session session) { AugmentedImageDatabase augmentedImageDatabase; Bitmap bitmap = loadAugmentedImage(); if (bitmap == null) { return false; } augmentedImageDatabase = new AugmentedImageDatabase(session); augmentedImageDatabase.addImage(«tiger», bitmap); config.setAugmentedImageDatabase(augmentedImageDatabase); return true; } private Bitmap loadAugmentedImage() { try (InputStream is = getAssets().open(«blanket.jpeg»)) { return BitmapFactory.decodeStream(is); } catch (IOException e) { Log.e(«ImageLoad», «IO Exception», e); } return null; }

Мы также создали метод loadAugmentedImage, который загружает изображение из папки ресурсов и возвращает растровое изображение.

В setupAugmentedImagesDb мы сначала инициализируем нашу базу данных для текущей сессии, а затем добавляем изображение в эту базу данных. Мы назвали наше изображение tiger. Затем мы устанавливаем эту базу данных в конфиг и возвращаем true, сообщая о том, что изображение успешно добавлено.

Обнаружение опорных изображений в реальном мире

Теперь мы начнем обнаруживать наши опорные изображения в реальном мире. Для этого мы создадим слушателя, который будет вызываться каждый раз при обновлении видеокадра, и этот кадр будет проанализирован на предмет наличия там опорного изображения.

Добавьте эту строку в метод onCreate() в MainActivity:

arFragment.getArSceneView().getScene().addOnUpdateListener(this::onUpdateFrame);

Теперь добавьте метод onUpdateFrame в MainActivity:

@RequiresApi(api = Build.VERSION_CODES.N) private void onUpdateFrame(FrameTime frameTime) { Frame frame = arFragment.getArSceneView().getArFrame(); Collection<AugmentedImage> augmentedImages = frame.getUpdatedTrackables(AugmentedImage.class); for (AugmentedImage augmentedImage : augmentedImages) { if (augmentedImage.getTrackingState() == TrackingState.TRACKING) { if (augmentedImage.getName().equals(«tiger») && shouldAddModel) { placeObject(arFragment, augmentedImage.createAnchor(augmentedImage.getCenterPose()), Uri.parse(«Mesh_BengalTiger.sfb»)); shouldAddModel = false; } } } }

В первой строке мы получаем сам кадр. Кадр можно представить, как обычный скриншот из видео. Если вы знакомы с тем, как работает видео, вы знаете, что это просто набор изображений, которые очень быстро сменяют друг друга, создавая впечатление чего-то движущегося. Мы просто берём одну из этих картинок.

После того, как мы получили кадр, мы анализируем его на предмет наличия на нём нашего опорного изображения. Мы берём список всех элементов, отслеженных ARCore, используя frame.getUpdatedTrackables. Затем мы перебираем её и проверяем, присутствует ли в кадре наше изображение tiger.

Если совпадение найдено, то мы просто берём и размещаем 3D-модель поверх обнаруженного изображения.

Примечание. Флаг shouldAddModel используется для того, чтобы мы добавляли 3D-модель только один раз.

Размещение 3D-модели над опорным изображением

Теперь, когда мы нашли наше опорное изображение в реальном мире, мы можем добавлять 3D-модель поверх него. Добавим методы placeObject и addNodeToScene:

  • placeObject: этот метод используется для построения отрендеренного объекта по заданному Uri. Как только рендеринг завершён, объект передаётся в метод addNodeToScene, где объект прикрепляется к узлу, и этот узел помещается на сцену.
  • addNodeToScene: этот метод создаёт узел из полученного якоря, создаёт другой узел, к которому присоединяется визуализируемый объект, затем добавляет этот узел в якорный узел и помещает его на сцену.

Вот так теперь выглядит MainActivity:

package com.ayusch.augmentedimages; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Build; import android.support.annotation.RequiresApi; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.widget.Toast; import com.google.ar.core.Anchor; import com.google.ar.core.AugmentedImage; import com.google.ar.core.AugmentedImageDatabase; import com.google.ar.core.Config; import com.google.ar.core.Frame; import com.google.ar.core.Session; import com.google.ar.core.TrackingState; import com.google.ar.sceneform.AnchorNode; import com.google.ar.sceneform.FrameTime; import com.google.ar.sceneform.rendering.ModelRenderable; import com.google.ar.sceneform.rendering.Renderable; import com.google.ar.sceneform.ux.ArFragment; import com.google.ar.sceneform.ux.TransformableNode; import java.io.IOException; import java.io.InputStream; import java.util.Collection; public class MainActivity extends AppCompatActivity { ArFragment arFragment; boolean shouldAddModel = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); arFragment = (CustomArFragment) getSupportFragmentManager().findFragmentById(R.id.sceneform_fragment); arFragment.getPlaneDiscoveryController().hide(); arFragment.getArSceneView().getScene().addOnUpdateListener(this::onUpdateFrame); } @RequiresApi(api = Build.VERSION_CODES.N) private void placeObject(ArFragment arFragment, Anchor anchor, Uri uri) { ModelRenderable.builder() .setSource(arFragment.getContext(), uri) .build() .thenAccept(modelRenderable -> addNodeToScene(arFragment, anchor, modelRenderable)) .exceptionally(throwable -> { Toast.makeText(arFragment.getContext(), «Error:» + throwable.getMessage(), Toast.LENGTH_LONG).show(); return null; } ); } @RequiresApi(api = Build.VERSION_CODES.N) private void onUpdateFrame(FrameTime frameTime) { Frame frame = arFragment.getArSceneView().getArFrame(); Collection<AugmentedImage> augmentedImages = frame.getUpdatedTrackables(AugmentedImage.class); for (AugmentedImage augmentedImage : augmentedImages) { if (augmentedImage.getTrackingState() == TrackingState.TRACKING) { if (augmentedImage.getName().equals(«tiger») && shouldAddModel) { placeObject(arFragment, augmentedImage.createAnchor(augmentedImage.getCenterPose()), Uri.parse(«Mesh_BengalTiger.sfb»)); shouldAddModel = false; } } } } public boolean setupAugmentedImagesDb(Config config, Session session) { AugmentedImageDatabase augmentedImageDatabase; Bitmap bitmap = loadAugmentedImage(); if (bitmap == null) { return false; } augmentedImageDatabase = new AugmentedImageDatabase(session); augmentedImageDatabase.addImage(«tiger», bitmap); config.setAugmentedImageDatabase(augmentedImageDatabase); return true; } private Bitmap loadAugmentedImage() { try (InputStream is = getAssets().open(«blanket.jpeg»)) { return BitmapFactory.decodeStream(is); } catch (IOException e) { Log.e(«ImageLoad», «IO Exception», e); } return null; } private void addNodeToScene(ArFragment arFragment, Anchor anchor, Renderable renderable) { AnchorNode anchorNode = new AnchorNode(anchor); TransformableNode node = new TransformableNode(arFragment.getTransformationSystem()); node.setRenderable(renderable); node.setParent(anchorNode); arFragment.getArSceneView().getScene().addChild(anchorNode); node.select(); } }

Теперь запустите ваше приложение. Вы должны увидеть экран, как показано ниже. Подвигайте телефон немного над опорным объектом. И как только ARCore обнаружит опорное изображение в реальном мире, добавит на него вашу 3D-модель.

Читайте также: Создание вашего первого ARCore-приложения

Обращаем внимание!!! В начале января 2020г. разработчик приложения HP Reveal сообщил о закрытии проекта и прекращении поддержки приложения, а так же удалении всех аккаунтов и загруженных аур. В связи с этим, все наши интегрированные в приложения материалы более не доступны в приложении HP Reveal.
Видеоролики связанные с пиктограммами, расположенные на картах True Map и True Map Plus можно посмотреть тут:
Бермудский треугольник; Марианская впадина; Титаник; Пират Генри Роджер; Подводный вулкан; ; Путешествие по Антарктике.

Большинство товаров бренда BADLAB имеют интеграцию с приложением HP Reveal Aurasma, способным их оживить. Работа приложения совместима с устройствами iOS и Android.
HP Reveal Aurasma – это бесплатное приложение дополненной реальности, которое изменяет способ взаимодействия с окружающим миром. Так же оно позволяет создавать и использовать ваши собственные Ауры, с приватными или публичными настройками и делиться ими с друзьями и другими пользователями HP Reveal Aurasma.
Как это работает – приложение использует камеру, GPS и Wi-Fi вашего устройства для распознавания различных объектов из окружающего вас пространства. Далее эти объекты отображаются у вас на экране с наложенным поверх видео, фото, анимацией, 3D или другим цифровым контентом, названным Аурами.
Если вы нашли на нашем товаре логотип или надпись HP Reveal Aurasma– значит, для вас есть Аура, которую вы можете просмотреть.
Скачав и установив приложение HP Reveal Aurasma на ваше устройство, вы можете найти наши каналы BADLAB и Truemap и ознакомиться с полным списком созданных нами Аур.

Инструкция по работе с приложением HP Reveal Aurasma:

06 Марта, 2018, 12:00 10962

Эдуард Ахрамович — создатель группы компаний Art Nation, который с 2012 года сотрудничает с художницей Евгенией Гапчинской. Совместно с торговой сетью АТБ он запустил в продажу книгу «Алиса в Стране чудес», которая использовала дополненную реальность. Открывая специальное приложение, пользователи видели, как оживает обложка и некоторые иллюстрации сказки.

Товар продавался по программе лояльности — чтобы выкупить книгу не за полную цену (300 грн), а по акционной стоимости (99 грн), покупатели должны были собрать нужное количество фишек. По информации, прозвучавшей в интервью с Андреем Федоривым, продажи книги в разы превысили типичные для украинского рынка. Редакция AIN.UA узнала, работает ли дополненная реальность в ритейле, как реагировали на проект традиционные издательства и какие у Ахрамовича планы на будущее.

Как возникла идея книги с дополненной реальностью?

В июле 2016 года мы с коллегой были в Токио на канцелярской выставке. Однажды шли по вечернему городу — и увидели человек 60, которые собрались в одном месте и были явно чем-то возбуждены. При этом все они были поглощены своими гаджетами. Оказывается, они искали очень ценного покемона (речь о популярной игре Pokemon Go — прим. ред.). Тогда меня поразило, что этим занимаются взрослые люди. Эпизод врезался в память, а уже через несколько месяцев в голову пришла идея издавать книги с дополненной реальностью.

К тому времени я спродюсировал около 50 анимационных эпизодов. А еще раньше занимался изданием и дистрибуцией DVD. В те времена в книгу или журнал часто как дополнение вкладывался диск, который придавал продукту дополнительную ценность. Но бизнес дисков уже давно закончился (сейчас уже и дисководов нет), а дополненная реальность — это прогрессивный мировой тренд.

Я понимал, что в нынешних условиях одной книги мало поэтому и возникла идея объединить книгу и анимацию.

Кроме того, в Японии я познакомился с представителями украинской компании Live Animations. Они тоже участвовали в выставке. Мы из одного города, а встретились за десять тысяч километров — в Токио. Уверен, что случайных совпадений не бывает. Впоследствии они стали нашими партнерами и разработали AR-приложение для книги «Алиса в Стране чудес».

Книга и открытка «Алиса в Стране чудес»

Как издательства отреагировали на идею книги с дополненной реальностью?

Когда я начал работать над этим продуктом, то планировал продавать его традиционным способом, через книжные магазины. И нам отказало каждое крупное издательство в стране. Мне говорили:

  • Это не продается.
  • «Алиса в Стране чудес» у нас уже есть.
  • У нас есть свой художник-иллюстратор.
  • Нам не нравится как рисует Гапчинская.
  • Дополненная реальность не пойдет.
  • Это не интересно современному украинскому читателю.

Но я и моя команда верили в эту историю и… у нас получилось. Нам говорили, что максимальный возможный тираж книги — 5 000 экземпляров за 2 года. И то, если книга выйдет на трех языках. В то время как обычно тираж детской литературы в Украине составляет 2000-3000.

Как в итоге была распределена работа?

Техническую часть по созданию приложения реализовала команда Live Animations. Мы, в свою очередь, полностью воплотили в жизнь продюсерскую идею. Для начала, мне как продюсеру надо было определить, какой будет первая книга серии. Это важно, поскольку очень сложно сделать продукт, который сразу будет популярен. Был длинный список произведений мировой детской классики из которых мы выбрали «Алису в Стране чудес».

Почему именно «Алиса в Стране чудес»?

Для меня ключевой была популярность книги во всем мире. «Алиса в Стране чудес» пользуется неизменной популярность с 1865 года. Также необходимо было, чтобы литературные права оставались свободны (они охраняются 75 лет после смерти автора). Кроме того, для меня имело значение, чтобы у этой истории были экранизации (последнюю крупную адаптацию снял Тим Бертон в 2010 году — прим.ред).

Еще одним важным фактором было то, что «Алиса в Стране чудес» универсальна. Ее с одинаковым интересом могут читать и мальчики, и девочки. Здесь нет ярко выраженной гендерной составляющей. Наконец, она настолько мистическая, что дополненная реальность соответствует духу сказки.

Украина — очень маленький рынок. Разработка тут далеко не всегда окупается. А ведь моя задача — делать блокбастеры. Я с самого начала делал ставку на глобальный продукт.

Сегодня людям все равно, откуда контент. Например, Angry Birds из городка под Хельсинки — и они завоевали мир. В условиях глобализации все равно кто сделал контент, главное, хороший он или плохой.

Сколько стоила разработка и был ли это ваш первый опыт с AR-технологиями?

Работа над первой историей обошлась в несколько десятков тысяч долларов. До того как сделать книгу, в феврале прошлого года, мы сделали конфеты с дополненной реальностью. Это была коробка конфет шоколадной фабрики «Любимов». Нужно было закачать приложение, потом навести на коробку и тогда на упаковке оживали ангелочки. Кроме того, внутри была оживающая открытка. На этом проекте мы, фактически, сформировали новую ситуацию потребления.

Книга с AR — тоже новый формат потребления?

Да, так же и с книгой. Это вовсе и не книга, а новая форма семейного досуга. Именно поэтому проект имел такой успех. Книга на рынке развлечений уже 500 лет — со времен Гутенберга и Ивана Федорова. Все это время она была понятным видом досуга. но сегодня ситуация изменилась. У современного ребенка нет шансов вырасти без кого-либо гаджета. Они с детства пользуются ими и для них это естественно. Часто родители за ними не успевают. Я уже не говорю о дедушках и бабушках. Они, во многом, потеряли у детей авторитет, потому что не пользуются гаджетами.

Не нужно заставлять детей любить саму книгу. Я говорю о том, что нужно прививать любовь к чтению — не к предмету, а к самому процессу.

Я, например, читаю на iPhone — но какая разница? Книга вторична по отношению к занятию. Идея заключалась в том, чтобы вернуть родителям авторитет, чтобы они смогли взять гаджет и интересно провести время с детьми — почитать, а потом «посмотреть» прочитанное.

Чехол с дополненной реальностью из линейки продукции «Алиса в Стране чудес»

Существует ли языковая проблема для украинского книгоиздания?

Нет. В Украине языковой вопрос для качественного продукта вообще не стоит. Многие родители впервые купили книгу на украинском языке! Нам писали, что впервые за 25 лет вообще взялись за книгу. Некоторые раньше не читали на украинском.

Насколько рынок был готов к дополненной реальности?

До того, как мы начали продавать в стране эту книгу, про дополненную реальность знали немногие. Гики, игроки в Pokemon Go, возможно 1% населения. Это была вовсе не семейная аудитория — люди, которые книги вообще не покупают. Было очень важно познакомить с этой технологической новинкой взрослую, консервативную аудиторию.

В первые две недели запуска проекта мы вышли с проектом на первое место по закачкам в украинском Apple Store и Google Play. Это значит, практически все покупатели скачали приложение.

Сегодня об итоговом тираже говорить, но он будет в разы выше типичных для украинского рынка.

Какое будущее у «Алисы»?

Сейчас я работаю над созданием целой вселенной Льюиса Кэрролла с дополненной реальностью. Скоро появятся мягкие игрушки, персонажи «Алисы в Стране чудес». Помимо них — настольная игра с карточками. Там нужно будет собрать поле, фишки — а разные карточки будут оживать и подсказывать игроку какие-то действия с помощью AR.

Мне кажется, это очень интересно — почитал книжку, а потом играешь, это совершенно другой эффект. Кроме того, я планирую сделать шоу с дополненной реальностью. Устроено все примерно так: приходишь на шоу — получаешь браслет, берешь смартфон — и оттуда Алиса и Кролик тебе что-то говорят. И конечно же, я планирую продолжение серии.

Насколько серьезным оказался дефицит?

Настолько, что на OLX образовался вторичный рынок. Причем там продавались не только книги, но и сами фишки АТБ, за которые можно было купить книгу по программе лояльности. Фактически фишки стали некими токенами, которые показывают уровень доверия к проекту. Люди готовы платить живые деньги за право получить продукт. Это своеобразное pre-ICO в офлайне.

Я считаю, что это круто — особенно учитывая, что в основе лежит книга. Все говорили, что ее не купят и она никому не интересна. Но я всегда был уверен, что это не так. В результате, на OLX люди спекулируют книгой на украинском языке. Мы с АТБ поломали очень много стереотипов.

Какая маржа были при продаже книги в рамках программы лояльности? По цене 99 грн.

В этой истории главное то, что мы создали целый прецедент. Сейчас редко бывает так, чтобы под Новый год в обществе говорили о книге. Общество сегодня не живет книгами. Кроме того, это пора, когда все бренды кричат о себе. И нам вместе с командой АТБ удалось прорваться с очень нетривиальным продуктом. Возможно мы создали прецедент, на основе которого украинские авторы и издательства тоже смогут создавать культурные события национального масштаба.

Тем более люди уже знают, что такое дополненная реальность. Те, кто купил первую — с высокой вероятностью захотят собрать коллекцию. Мы учли пожелания из соцсетей и учтем их при создание наших следующих продуктов.

Будете выходить на международные рынки?

Нашей изначальной задачей была глобальная дистрибуция. Продукт «в оригинале» и так на английском языке, а сейчас мы готовим переводы на польский, испанский, немецкий… Всего 28 ведущих языков мира. Мы адаптируем книгу для локальных рынков — это единственное, что нам нужно, ведь приложение и продукт уже есть. Пока что идут переговоры — но по ходу заключения контрактов мы будем сообщать про выход на другие рынки.

В чем ключевая особенность «Алисы»?

Ценность этого продукта — выше чем цена. Очень важно давать это потребителю.

Перед тем как выходить на рынок, я проверял все на фокус-группах. Показывал книгу, спрашивал: «Сколько это должно стоить?». Оценки варьировались от 250 до 500 грн.

Такова ценность книги в глазах потребителя. Когда мы смогли предоставить ее по 99 грн, она в 3-5 раз превышала реальную ценность. Все это стало возможным благодаря команде АТБ и их программе лояльности. Именно поэтому мы смогли выйти на доступную розничную цену и сделать продукт популярным.

Кто после Кэрролла?

Цель — создать библиотеку книг с дополненной реальностью. Следующий наш проект — «Щелкунчик». Это потенциально международный блокбастер, с отличной музыкой Чайковского. Одна из главных рождественских историй, которая идет во всех странах мира. Сейчас Евгения Гапчинская уже работает над иллюстрациями.

Это планы на 2019-й год. Механика останется та же: на обложке и страницах будут AR-инсталляции с прекрасной классической музыкой. Это будет настоящая книга-балет.

# AR # интервью # книги # лучшее # Мнения # Эдуард Ахрамович


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *