(Полу)автоматическое преобразование текста в игру/фильм (анимацию)
Такой вопрос для участников форума - нравится ли вам такая идея - программы, которая сама (или почти сама) будет преобразовывать текст в игру или фильм (анимацию, мультфильм).
http://sourceforge.net/projects/vedaviz/
здесь я выкладываю последние версии программы.
Сейчас в программе можно открыть текст, делать по нему поиск, добавлять ссылки для быстрого отыскания предложений во всем тексте, сопоставление с картинками из внетренней базы данных и добавление пользовательских картинок (из графических растровых файлов), и плюс - простая анимация. Анимация пока недоделана - для ее реализации нужно отображать смену кадров, причем по-разному для разных видов движений, и по-разному - для разных объектов/субъектов (ну или предметов, героев, существ проще говоря).
Главное, что самое интерсное должно быть в программе - она должна находить в предложениях существительные и глаголы (для этого нужен словарь таких слов + соответствующие графические модули, возможно в будущем в 3d анимации opengl/directx). Разобранное предложение можно представить потом в виде “шахматной нотации”. Объясню - есть такой файловый формат для шахмат - Portable Game Notation (PGN, не путать с картинками png - portable network graphics). И в программах которые его поддерживают можно такой файл открыть или записать. Если сыграть игру в шахматы, программа запишет историю всех ходов, и запишет это в файл. Потом можно опять открыть все такие игры (их уже есть в интернете дестяки тысяч даже за предыдущие столетия, за 15-й век в т ч например), и показать их пошагово. То есть получается такая вот анимация - программа считывает текст в шахматной нотации, но он потом преобразуется - буквенные обозначения соответствующих фигур шахмат преобразуются в комманды для этих фигур, и фигуры начиная со стартовой позиции каждый раз производят разные ходы, если открывать разные файлы. Вобщем, это одно дело - шахматы.
Другое дело - есть такая программка - spinnake Story Machine - в ней можно писать текст уже посложнее, использовать глаголы, существительные, артикли, числительные, даже местоимения. Потом слова преобразуются в картинки, а если указаны глаголы, то эти картинки анимируются, производится движение, то есть существа двигаются по экрану - получается анимация. Вобщем как в шахматах. Теперь если эту же идею посмотреть шире - получится, что если в программе будет не просто скажем так - 6 видов фигур (как в шахматах) и не 1,5-2 десятка существительных (как в стори машине), а если добавить несколько сотен (хотя бы) а то и тысяч картинок и существ - то будет уже намного интереснее. Например другая программа - http://drupal.widgit-online.com/node/add/pagesymbolbody - позволяет вводимый текст преобразовывать в картинки “на лету” (есть бесплатная версия на сайте - вобщем программа такая образовательная, и поскольку у меня программа также неприбыльная - я включил в нее также картинки из виджит). Виджит поддерживает уже не только картинки для существительных и картинки глаголо (жаль, они там вообще никак не анимируются и не дивгаются), но картинки для любых частей речи, однако - только это только более менее “детские” слова - сложный философский текст с больших количеством абстрактых слов будет неопознан. Однако неизвестные слова можно заменять синонимами или аналогичными картинками (в виджит можно для некоторых слов выбрать другую картинку из набора, но нельзя добавить свою, они все “прошиты” в программу что ограницивает возможности). Итак, Пока у меня такая идея - находить в тексте слова, которым соответствуют картинки в виджите, и для них показывать картинки на экране. Что-то подобное я уже сделал - картинки просто добавляются в случайном месте на экране. Есть аналогичная программа - называется scribblenauts - там также можно написать то или иное слово - и существо (или даже Бог если написать слово Бог, God) появляется на экране, и что-то происходит. Но в этой программе также можно писать только отдельно слова и словосочетания, но не целый большой текст или книгу.
И еще есть конечно же такие языки программирования как Элис или Скретч - для детей, но там можно визуально выбрать трехмерные (Alice) объекты, задать им движение и получится простая “игра” (скорее анимация). Но это также только часть моей идеи. Элис выигрывает за счет графики, но там нет также модуля чтения текстов.
А теперь о текстовых играх. Вобщем я даже попробовал сделать программу преобразования текста в игру - в текстовом виде… Получилось что-то вроде mind-map (диаграммы связей). Но понятно что часть информации теряется если нет соотвтетствия графического. Еще та же Алиса в стране чудес говорила - “книга без картинок - не интересная”. (И еще я помню есть такие системы обучения где любое даже сложное предложение можно выразить в “демо-наборе”, то есть вместо любого слова можно подставить какие-то объекты, бусть даже условные, но лучше конечно подставлять реальные соответствия что возможно в играх или фильмах, мультиках).
Вобщем такая идея. Похоже что она не нова - я поднял эту тему - мнея давали разные ссылки на похожие программы - например - http://www.xtranormal.com/ - также пишет что можно “Tell your story with any of these collections!” - выбирая из 1-2-х наперед заданных героев, и просто подставляя им текст который они говорят. Но эта программа имеет только “300xp” в бесплатной версии, что значит что за эти 300xp можно “купить” только простые преобразовалки текст-ролик. Да и ограниечние похоже только в том что они могут только говорить, только один-два персонажа, и никакого интерактива (да, фильм - так и написано “text to movie”). Вобщем я понимаю что есть подобные программы, и также что никто не заменит мышление. ПОэтому текстовые игры, и просто книги - это классика, без них не было бы ни фильмов, ни игр, ни мультиков (скорее всего, ведь даже сценарий надо вначале написать на бумаге текстово, не так ли?).
На в любой их таких программ я виже одно ограничение - или же уклом=н в сторону языка, или в сторону только графикиЮ, анимации или игры. Но так чтобы все это было связанно - нашел только в виджит. Собственно я вижу свою программку как что-то лучше чем виджит (или пусть как добавление анимации к виджит, и расширение его к виду 3d, + анализ словосочетаний существительное-глагол как в “шахматной натации”). Собственно вобщем-то кажется не такая сложная. Понтяно что есть готовые машинные переводчики - они разбирают досттаочно неплохо тексты, и даже переводят их с языка на язык. Но также факт - они не переводят все на 100%. Но анализ предложений делают. Для этого им помогают языки программирования Искуственного интеллекта вроде lisp/prolog. то же и с графикой - когда в игры добавляют ИИ для персонажей - чтобы ходить, что-то обходить, что-то делать. С другой стороны, не сложно просто сделать анимацию персонажей в 3d - для этого есть даже бесплатные программы вроде daz3d - из нее можно “перегнать” анимацию персонажа в другой фалйовый формат, а потом - в язык программирования и в opengl/directx (через разные конвертировщики графических форматов и анимации). Есть даже целый виртуальный мир - secondlife - где покупают и продают разные такие трехмерные объекты и модификации к ним (виды движений например). То есть понятно что это также может быть с одной стороны прибыльно для разработчиков, с другой - за это должен платить пользователь. Лично для себя я хотел бы такую программу бесплатно (и поскольку я такой не нашел - проще сделать свою). Сейчас она доступна бесплатно (но использует картинки из виджит, поэтому я не могу ее “расркутить” и продавать), и в ней доступны разные возможности из указанных мной программ, может быть в лучшем (или упрощенном виде - это касается конечно отсутствия трехмерной графики, сложной анимации, и пока нет разбора предложений).
Но чтобы продолжать все это делать я ищу людей которые в этом заинтересованы. Если это никому не нужно - то я не буду это делать для других (возмжно только для себя - чтобы читать текст с “авто-иллюстрациями”, по крайней комикс получается так точно - если только записывать всю “историю ходов” как в шахматах.) Сделать из этого мультик или фильм/игру - это только дело техники и умения/знания (ну и времени) - есть игровые движки, разные технологии которые могут расширить такую программу до чего-то более серьезного.
Если кому интетесно пишите. Я ни в коем случае не хочу быть “конкурентом” подобных программ или продуктов для создания игр или фильмов и т д. Есть даже мысль такая - могу все делать с открытыми исходными кодами, если кто-то к этому подключится и сможет делать какие-то части более качественно, так что в результате будет что-то хорошее… Ведь мне также иногда говорят что такое невозможно сделать за жизнь. Но я показываю своей программой - что это возможно. Но нужны единомышленники.
Отозвитесь все кому интересно (ну или все кто прочитал и кому не интересно также). Это нужно для статистики и для принятие решений - что дальше делать в этом проэкте (или не делать). По крайней мере чтобы не “изобретать велосипед” опять, не делать то что уже сделано. Я понимаю что те же текстовые игры - это прообраз современных графических игр. Раньше можно было вводить текстовые комманы - и видеть только текстовый результат. Теперь вывод всего - графический. Но у текстовых игр одно безусловное преимущество - не надо ограничивать себя в идеях, в технических средствах. Фактически можно очень просто создать любую текстовую игру за считанные минуты - нужен только текст и просто добавить интератив.
Но мне все-таки будущее игр видится в сочетании их с графикой. Ведь даже в QSP я вижу использование картинок.
(P.S. Вопрос к разработчикам QSP - а вам интересен такой модуль - добавления графики для многих других слов? добавление анимации? или вы считаете это ущербным для геймплея?)
Всем спасибо наперед.
Не проходите мимо - напишите что-нибудь
Предлагаю автору не заморачиваться, а изобрести велосипед - абстрактный, до предела упрощенный язык сценариев, который при обработке интерпретатором или в результате компиляции будет построчно строить сцены, объекты и диалоги из заранее отрисованного перечня с возможностью подключения внешних ресурсов. Это будет нечто вроде RenPy, но проще для восприятия автором-непрограммистом.
Например, структура сценария в исходном файле будет выглядеть так:
Сцена: “Лес”
Актеры: “Юноша”, “Старик”, “Девушка”, “Автор”
Объекты:
Скорость текста: “Медленно”
Музыка: “Спокойная мелодия_3”
Начало:
Титры: “Прогулка в лесу, часть I”
(Юноша в правом профиле появляется слева на заднем плане)
Автор: “…Когда-то я был молод и горяч. Я ничего не боялся. Однажды я направился в темный лес погулять.”
(Юноша исчезает, Юноша в анфас появляется в центре на переднем плане)
Автор: “И вдруг я увидел пожилого человека”.
(Юноша исчезает, Юноша в правом профиле появляется слева на заднем плане, Старик в левом профиле появляется справа на заднем плане)
Юноша: “Как неожиданно наткнуться на людей здесь, в лесу.”
Старик: “Это правда. Я тоже не ожидал увидеть вас здесь. Что вы делаете посреди чащи?”
Юноша: “Гуляю”
(Юноша исчезает, Старик исчезает, Девушка в левом профиле появляется справа на заднем плане)
Девушка: “Йо-хо-хо!”
(Девушка исчезает, Юноша в анфас появляется в центре на переднем плане)
Юноша: “Да вы тут все чумачечие!”
Автор: “Вот так я сошел с ума”
(эффект “диафрагма”, эффект “затемнение”)
Переход на сцену “Сумасшедший дом”
И так далее.
При этом интерпретатор при обработке такого сценария обращает внимание на пунктуацию, но игнорирует некоторые ошибки в написании команд, или не обращает внимание на то, что команды могут быть не дописаны до конца.
Сценарий пишется в текстовом файле с минимумом требований к синтаксису, копипастится в окошко интерпретатора/компилятора, на выходе получаем какой-нибудь онлайновый файл типа флэш.
Все это дело можно сделать работающим в онлайне. Получится что-то вроде Punk-o-Matic, только не с музыкой, а изображением.
Не знаю, правда, как сделать всякие там переменные, но может это и не нужно. В таком виде проект будет напоминать некое средство для отработки раскадровки к фильмам или визуальных новелл. Можно сделать так, чтобы команды заменялись на иконки, но тогда ввод сценария уже не будет чисто текстовым, а будет таким, как в конструкторах игр вроде Stencyl Works или Scirra Construct.
Одно могу сказать наверняка: у такого проекта будет тем больше аудитории, чем менее сложным и громоздким будет ввод сценария, даже если на выходе получится не слишком интерактивное повествование, наподобие BombayTV http://www.grapheine.com/bombaytv/ и подобных проектов, где визуализация склеивается из целых видофрагментов, а текст пишется только в субтитрах.
Ну и конечно популярность будет впрямую зависеть от объема нарисованного контента - сцен, персонажей, предметов, эффектов и прочего. Поэтому основной объем работы ляжет на художника. В принципе, для начала можно создать базу изображений из скетчей-набросков.
Раз уж зашла речь о том, чтобы “трансформировать текст в игру”, рекомендую обратить внимание на Inform. На этой платформе игры - именно текстовые игры - пишутся “на человеческом языке”.
Nex,
Моя давняя мечта - написать парсерное приключение. Я пробовал RTADS - слишком сложно. Посмотрел Информ - вроде проще, но все равно достаточно жесткий и громоздкий синтаксис и невозможность (как мне показалось, могу ошибаться) оперировать графикой.
UncleJunkie,
не путай RInform(русифицированный Inform 6) и оригинальный Inform 7. С переходом на версию 7 синтаксис поменялся кардинально.
В RInform синтаксис такой:
Object "Перед домом"
with description
"Ты стоишь около избушки, на восток от которой раскинулся лес.",
has light;
Object "В лесной чаще"
with description
"На западе, сквозь густую листву, можно разглядеть небольшое строение.
Тропинка ведет на северо-восток.",
has light;
Object "Полянка"
with description
"Посреди полянки стоит высокий платан.
Тропинка вьется меж деревьев, уводя на юго-запад.",
has light;
Object "На верхушке дерева"
with description "На этой высоте цепляться за ствол уже не так удобно.",
has light;
В Inform 7 игра пишется “на человеческом языке” - увы, в настоящий момент только на английском.
"Cave Entrance"
The Cobble Crawl is a room. "You are crawling over cobbles in a low passage. There is a dim light at the east end of the passage."
A wicker cage is here. "There is a small wicker cage discarded nearby."
The Debris Room is west of the Crawl. "You are in a debris room filled with stuff washed in from the surface. A low wide passage with cobbles becomes plugged with mud and debris here, but an awkward canyon leads upward and west. A note on the wall says, 'Magic word XYZZY'."
The black rod is here. "A three foot black rod with a rusty star on one end lies nearby."
Above the Debris Room is the Sloping E/W Canyon. West of the Canyon is the Orange River Chamber.
Nex,, вон оно что, а я не знал, спасибо.
vedaviz, Чего-то я не понял. Твоя чтуковина сможет ВООБРАЖАТЬ?
Offtop.
Aleks Versus:
vedaviz, Чего-то я не понял. Твоя чтуковина сможет ВООБРАЖАТЬ?
…”остановите её, пока она не начала искать Джона Коннора”©
Nex:
Раз уж зашла речь о том, чтобы “трансформировать текст в игру”, рекомендую обратить внимание на Inform. На этой платформе игры - именно текстовые игры - пишутся “на человеческом языке”.
Очень любопытно. Спасибо большое.
UncleJunkie:
Идея хорошая, но черпать визуальные образы из открытых источников означает не иметь общего визуального стиля.
я согласен, но думаю - лучше сразу ориентироваться на новые технологии - трехмерную графику.
Вообще-то… посмотрите -
- У российских пользователей видеохостингов ближе к началу следующего года может появиться возможность самостоятельно делать мультфильмы с помощью специального интернет-приложения. Компания Тимура Бекмамбетова Bazelevs, занимающаяся разработкой графики для фильмов, начала переговоры с компаниями YouTube и RuTube о размещении на их базе своей технологии «Киноязык».
Читать полностью: http://www.rbcdaily.ru/2012/07/05/media/562949984250630
- крупная российская компания уже занялась разработкой КИНОЯЗЫКАТа же Scribblenauts берет объекты из заранее нарисованного пула объектов
понятно
смотрите например -
www.wordseye.com/
пользователь - login
пароль - password
там можно писать на английском предложения - в базе около 2000 трехмерных объектов, и около 10-000 картинок. Работает неплохо - есть камера, разные возможности просмотра сцены аналогично “фильму” (выбрать уровень увеличения-отдаления камеры, а также положения камеры).
для каждого слова (в базе) можно выбрать больше одного объекта как альтернативу.–
Относительно похожести иероглифов на обозначаемые ими понятия - это иллюзия.
это смотря какие иероглифы. Хотя да, старые иероглифы были намного более похожи на то что они обозначали. Теперь иероглифы стали намного формализированнее и абстрактнее.
Ajenta:
Я даже не говорю о том, что лингвистически не получится разобрать предложение
Резюме - такая прога возможна, но имхо изначально дико ущербна. Так что проще и лучше автору находить картинки для своей игры самому, чем ею пользоваться.
Разработчики киноязыка тоже смеялись - как это взять Войну и мир, и одной кнопкой сделать фильм. Но потом подумали - а что все же можно сделать. проанализировали сценарии фильмов - понятно стало что это просто набор комман - кто где что делает, что говорит. Таким образом, если к тексту привязать картинки или трехмерные объекты + анимацию - эже будет “фильм”.
Но конечно разработчики прикинули - технология будет окупаться если на ней делать очень много фильмов, сериалы. А по-старинке если делать небольшое видео (клип) на пару минут - то лучше делать вручную - это будет быстрее чем разрабатывать базу к-рая не будет использоваться в даном сценарии.
так что эти проблемы тоже решены
HIman:
Для граф наполнения игр все же проще найти художника, или научиться самому.
Так что увы, такая программа будет не востребована.
вы много знаете сценаристов которые сами становятся художниками? а что если этот человек, к-рыйц написал книгу - давно умер… Вот попробуйте оживите Пушкина и пусть он научится рисовать станет художником, и пуссь он оживленный сделает фильм. Получится бред. Так что это далеко не всегда так что человек может быть специалистом одновременно в разных направлениях - и хороший художник и хороший сценарист или писатель. нет так бывает очень редко. Так что не проще.
востребована будет
Nex:
Это, гхм, преувеличение.
я имелл ввиду например программированные учебники. У них такой же принцип как в текстовых играх - в тексте есть разные части, которые связанны между собой ссылками. Пользователь выбирает что делать дальше на каждой такой “странице”. Это кстати называется игрой. Потому я пишу не только о преобразовании текста в фильм-анимацию, но и в игру, хотя бы в простом виде. Я потом как-нибудь объясню что я имею ввиду. Но вкратце смысл такой, что можно в тексте найти одни и те же слова или идеи, и потом автоматически добавить ссылки на них. Есть подобные технологии расставления ссылок даже в том же Ворде.
Вета:
Не понимаю я, почему дебаты на форуме ТЕКСТОВЫХ игр…
все просто. когда-то были только текстовые игры (я так понимаю таких игр много. Возьми к примеру те же карты - даже сейчас карточные игры бывают одновременно и в компьютере и на бумаге.
см http://ru.wikipedia.org/wiki/Коллекционные_карточные_игры).
На той же бумаге - в виде книг. Потом туда добавили картинки и ссылки. И перевели это в компьютер. Потом развили графическую часть, анимацию, сделали другой интерфейс отличный от “бумажного интерфейса”.
еще почему на форуме текстовых игр. иногда думаю - правда - что программа не очень нужна будет, а потом думаю - ну тогда буду “по старинке” читать тексты только без картинок - как в текстовых играх. Не в обиду текстовым играм - они имеют много преимуществ по сравнению с графическими играми - человеку нужно больше думать и самому представлять в голове те или иные картины (которые в графических играх за нас нарисовали) - это хорошо. Тем более что не все правда можно нарисовать. Есть данные только абстрактные. но в любом случае графическое представление сильно помогает в изучении текстов.
UncleJunkie:
Все это дело можно сделать работающим в онлайне. Получится что-то вроде Punk-o-Matic, только не с музыкой, а изображением.
xtranormal - подобная штука на RenPy. Я просто думаю что одно дело - эти “визуальные новелы”, а другое - это именно фильм. Но есть некие параллели, и можно эти идеи объединить.
По поводу Punk-o-Matic - да это интересно. Вобщем если правда сделать разные треки - для каждого актера или человека - по одной дорожке, где в каждой сцене будет тот или иной текст или действие - будет интересно. Если одновременно будет много актеров, и они будут в одном кадре что-то делать - говорить ходить и т д - будет интересно.
да вы правильно говорите что намного реальнее сделать простой обработчик текста, в первую очередь - произнесенного текста. Другие программы правда используют синтез речи - это тоже можно “прицепить” к программе, но это, думаю, пока не приоритет.
я больше думаю не столько о части кто что произносит, а именно части кто что делает, где эти все люди и предметы находятся, ккаие они например. Произнесение текста - это имхо самая простая часть всего фильма и даже такой визуальной новелы. Что тут сложного? - показать просто красивую фоновую картинку, лучше цветную, показать говорящего - можно в трехмерной графике. Это все делается в миллионах игр, во каждом фильме (ну почти если там есть люди или говорящие существа). Но далеко не каждая игра ставит цель взять какой-то реальный текст или сценарий - пусть это будет история или мифология - и перевести его в реальность. Грубо говоря сделать документальную игру или фильм. Хотя таких тоже много. Обычно игры просто делают по каким-то вымышленным сценариям что не очень хорошо - оторванно от реальности, и непонятно как применить в жизнь. Но эти все вымышленные истории показывают часто более реалистично чем реальные документальные исторические. Как правильно сказали разработчики Киноязыка - раньше можно было использовать эти технологии (превизуализация фильма) только в коммерции и в бизнесе - они же теперь будут доступными и для обычных людей - возможно даже бесплатно (что - хорошая новость, но на этом тогда и не заработать). Если 50% фильма - это технология, а 50% - сценарий, то эти 50% технологии можно упростить и автоматизировать до максимума. И правильно - от этого все выиграют - ускоряется разработка фильма в несколько раз - для рендеринга одной секунды можно тратить теперь всего то по несколько минут. Это хорошо. Значит все окупится.
Nex:
Раз уж зашла речь о том, чтобы “трансформировать текст в игру”, рекомендую обратить внимание на Inform. На этой платформе игры - именно текстовые игры - пишутся “на человеческом языке”.
да это интересно - писать код также на человеческом языке. Насколько я знаю - немного программ такое умеют интерпретировать. Возможно нужно также чтобы в моей программе была именно поддержка ввода текста тоже на естественном языке. Хотя для этого прийдется поискать алгоритмы. Но с другой стороны, ввод с клавиатуры - немного замедляет работу. быстрее - просто щелкнуть по значку, или по нескольким. Или даже по тем же пунктам меню. Хотя… программисты по прежнему пишут все вручную. дело наверное в том что есть некоторые ограничения в тех или иных “конструкторах игр” по сравнению с языками программирования. Но интересно когда это возможно совместить в одну программу (еще лучше - с программированием на естественном языке).
преобразовывать текст в нечто графическое, анимированное - дело утопическое. Почему? Из-за неоднозначного процесса перевода текста в картинку.
Пример:
Раннее весеннее утро - прохладное и росистое. В небе ни облачка. Только на востоке, там, откуда сейчас выплывает в огненном зареве солнце, еще толпятся, бледнея и тая с каждой минутой, сизые предрассветные тучки.
Согласитесь, картинка у читающего в голове рисуется довольно четкая. Но у каждого - своя. У кого-то это - утро в сосновом бору, у кого-то - утро в степи. А у машины что?
Второе возражение состоит в том, что литературный язык полон образности. Которую машинным образом распознать крайне нелегко. И из-за которой, кстати, так разнятся картины в воображении.
ведь как объяснишь машине, что “выплывает в огненном зареве солнце”, “толпятся, бледнея и тая” - это метафоры?
И нарисует машина лодку Ра в языках пламени, наезжающую на толпу тучевидных людей…
Либо писать придется на жаргонном, обедненном языке.
Хотя как концепт механизма для поиска материала для иллюстраций каких-то фрагментов текста эта программа может взлететь.