Учим и учимся Unity3D в Калининграде

    Черный ящик. Таким для меня был процесс создания игр до тех пор, пока я не скачал Unity3D. Черный ящик был таинственен, притягателен и заманчив, очень хотелось попробовать, но внутри всплывали назойливые мысли: это сложно, ты не сможешь, игры делают профессионалы, нужен большой бюджет, это долго, это дорого, ты не поймешь, ты не сможешь, ты…И так далее, сами, наверное, помните, о чем я. Но все-таки были сомнения, мне казалось, что ситуация чуть проще, и об этом стало говорить все увеличивающееся количество так называемых indie – игр.

    Unity School

    Около трех лет назад где-то на просторах интернета я нажал на баннер, говорящий о том, что вот он, тот инструмент, который вам нужен для создания игр. Открылся сайт, который почему-то сразу понравился и заставил задержаться, а надпись «бесплатно» завладела моим вниманием окончательно. Это был сайт компании Unity Technologies, я пробежался по ссылкам и без оглядки нажал на закачку. Программа закачалась, установка прошла успешно, запуск прошел тоже без проблем и – ура! Передо мной то ли Photoshop, то ли 3D Max, да еще и программировать можно, да еще и игры… Помню, как мне говорили: «Зачем ты это делаешь, что за «пукалки», почему, для чего». Но оторваться было невозможно: элегантно, быстро, красиво, стройно можно делать игры, причем полет фантазии не ограничен, возможностей много, концепции логичны, пространство трехмерное, магазин есть. Да, и документация прекрасная, хочу отметить это достоинство компании Unity Technologies, которое, на мой взгляд, дало ей немало очков форы по сравнению с другими разработками: на сайте компании можно найти и уроки, и готовые проекты, и ответы на вопросы, руководства пользователей, справочник функций, сообщество, вопрос — ответ и т.д. Все с примерами, внятно, доступно.

    Я сделал парочку игр в стол: стреляющий звездолет в стиле galaxy и простой arkanoid. Так как всю свою жизнь меня интересовала сфера образования (кстати, сферой образования я интересуюсь не только теоретически, постоянно преподаю в различных учебных заведениях длительные и краткосрочные курсы), я вдруг понял, что именно этого и не хватает в нашей области: у нас в Калининграде никак и никто сегодня не учит делать игры. Я имею в виду в школах и ВУЗ’ах. Да и в коммерческих учебных центрах тоже. Школам простительно, но вот почему в институтах и университетах до сих пор не введут такой курс?

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

    Начну издалека. Вспоминая свое обучение в университете в далеких 90-х, могу сделать один только вывод: было очень мало практики, привязанной к реальной дальнейшей жизни будущего специалиста. Изучая предметы по специальности (а это специальность 220200 – автоматизированные системы обработки информации и управления) уже тогда я был в легком недоумении: а как всю эту массу теоретических знаний применять на практике? Где применять? Для чего мы все это учим, делаем курсовые, пишем диплом? Прекрасно отдаю себе отчет в том, что без теории никуда, и спасибо нашим преподавателям за то, что не прибили нас на занятиях за частый идиотизм и непонимание очевидностей. Но получив дипломы, мы вышли из дверей университета в конце июня 2000 г. практически никому не нужными. У нас была только гордость за пять лет и тот кусочек картона, что мы держим в руках, а вот практических знаний, позволивших бы стразу влиться в рабочий процесс в какой-либо организации – не было ни капельки. Действительно так. Помню, как меня чудом без опыта взяли работать во вновь открывающийся банк, где пришлось самостоятельно изучать премудрости Unix’а, серверов, сложных сетей, не говоря уже о прикладном программном обеспечении, о котором я даже не слышал. Спасибо главному бухгалтеру и управляющему, что дали мне шанс!

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

    Project — based learning


    Концепция project – based learning давно и успешно применяется в различных учебных заведениях в Европе еще на уровне школы. Не нужно копировать, конечно же, но приглядываться, учиться и брать лучшее можно. В России традиционно была великолепная средняя и высшая школа со своими спецификами, связанными с нашим языком, историей, географическим и экономическим положением. Но времена меняются. Специалистов реально мало, знания оказываются оторванными от практики, преподаватели не успевают, стираются границы и языковые барьеры.

    Джон Дьюи, американский философ и педагог, в своей работе, датирующейся 1897 годом, впервые обозначил идею learning by doing (обучение в процессе работы). «Д. Дьюи выдвинул идею создания «инструментальной» педагогики, строящейся на спонтанных интересах и личном опыте ребёнка. Согласно этой концепции обучение должно сводиться преимущественно к игровой и трудовой деятельности, где каждое действие ребёнка становится инструментом его познания, собственного его открытия, способом постижения истины. Такой путь познания представлялся прагматистам более соответствующим природе ребёнка, нежели привычное сообщение ему системы знаний». Подробнее с деятельностью Дьюи можно ознакомиться из этой статьи, откуда я и взял этот отрывок текста.

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

    Чуть увлекся, простите. У меня не стоит задача кардинально изменить систему образования или раскритиковать существующие методики. Подходов к обучению много, сегодня и средняя и высшая школа справляются со своими задачами и нельзя категорично сказать, что все надо менять, нет. Просто я пытаюсь показать вам ход своих мыслей и подвести к компьютерным играм.

    Компьютерные игры


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

    Unity3D показалась мне идеальной средой для этого. Идеальной во всех отношениях:
    • Порог ввода этого программного обеспечения в учебный процесс крайне низок: программа бесплатна. Плюс можно установить бесплатные SketсhUp и Gimp – и все готово к началу изучения основ создания компьютерной игры. Остальное – только дело кадров, т.е. того человека, кто будет учить, вот его знания должны быть обширными;
    • Unity3D – среда для проектирования трехмерных игр. Сегодня любой школьник поражает знаниями персонажей трехмерных игр разных жанров, проверено. Т.е. трехмерность компьютерной игры сегодня является данностью. Unity3D позволяет изучать концепции трехмерной графики, нативно поддерживая форматы файлов соответствующих программ. Плюс, при использовании в сценах трехмерных объектов, на мой взгляд, активно развивается воображение и закладываются навыки, которые могут быть крайне полезны при проектировании объектов в архитектуре, автомобилестроении, промышленном дизайне и т.п.;
    • Физика в Unity3D увлекательна и занимательна, в то же время можно достичь великолепных результатов. Олег Придюк, евангелист Unity3D, рассказывал, что их программное обеспечение сертифицировано многими агентствами (в частности, NASA) и используется в различных симуляциях. О нашей личной встрече с Олегом я расскажу чуть ниже;
    • Так как изначально программа создавалась разработчиками игры GooBall, интерфейс Unity3D прост в освоении и удобен в использовании;
    • Программирование в Unity3D приводит к видимым событиям, о чем я говорил выше, что убирает «скучную» составляющую: все мои студенты упорно продирались сквозь дебри кода, так как впереди ждал долгожданный результат — их собственный летательный аппарат будет стрелять их собственными пулями с их собственными спецэффектами. Видели бы вы эти блестящие глаза школьников;
    • Прекрасные примеры, документация и готовые игровые проекты позволяют самостоятельно изучать сложные концепции;
    • Большое сообщество не позволит остаться обучаемому одному, всегда можно задать вопрос, плюс подтянуть английский.


    Это лишь часть преимуществ. Все остальные можно оценить, наверное, на уровне субъективных ощущений: изучая Unity3D самостоятельно, я просто не заметил, как меня крайне увлек процесс создания игровых сцен и стали решаться трудные задачи. Задачи, решение которых, как я считал раньше, найти могут только профессионалы, большие студии и большие бюджеты. Черный ящик постепенно начал становиться полупрозрачным.

    С кем заниматься, вот в чем вопрос


    Разработав две программы обучения основам создания компьютерных игр с использованием Unity3D, для школьников и для студентов, два года назад я обратился, соответственно, в несколько школ региона и в два местных университета. От школ я не получил обратной связи вообще, а с деканом факультета одного из университетов мне удалось пообщаться лично по телефону, после чего он отправил меня к своему заместителю, который, в свою очередь, канул в лету: ни на письма, ни на звонки ответа не было. На кафедре другого из университетов вообще все очень грустно. Я умышленно не называю имен и паролей, так как в рамках данной статьи это совершенно не важно. Ситуация понятна, известна, ее надо просто потихоньку менять. Вот, кстати, статья здесь, на хабрахабре, на тему образования, которая появилась как раз в процессе написания этого опуса.

    Я решил обратиться к коммерческим структурам. Давнее знакомство с Олегом Видякиным привело к тому, что мы с ним организовали курс по обучению созданию компьютерных игр на базе его центра. Олег быстро откликнулся на мое предложение, три школьника изучали Unity3D в течение прошлого учебного года.

    Придумать иногда сложнее, чем сделать


    Первое, что я попросил у ребят — придумайте простую игру. Это оказалось сложным делом, ни один из трех моих первых обучаемых не смог выполнить такое, казалось бы, простое задание. И вот несколько занятий мы рассматривали вопросы, связанные именно с созданием концепции компьютерной игры: сюжет, персонажи, внешний вид, окружение. Причем, для ребят (да и для себя тоже) я выработал следующую стратегию «выдумывания» игры:
    • Создаем сюжет по классической схеме «завязка – основное действие – кульминация – развязка». С одним из студентов у нас завязался как-то спор, бывают ли игры без сюжета. Он доказал, молодец, что бывают. Но, на мой взгляд, сюжет привносит в игру еще больший смысл, чем простое времяпрепровождение. Сюжет позволяет удержать игрока перед вашим продуктом, открывает все новые грани в вашей игре, подогревает интерес. Также на этом этапе определяемся с основной идеей игры и жанром: бежим, стреляем, прыгаем, плаваем, складываем, вид от первого или третьего лица и т.п. Здесь еще вырисовываются название игры и имена героев;
    • Определяемся с целью и особенностями игры, формулируем основные ее отличия перед имеющимися аналогами. На этом этапе рассматриваем похожие разработки, выявляем их достоинства и слабые стороны. Цель крайне важна, так как помогает сразу расставить приоритеты в разработке: то ли мы хотим заработать денег, то ли удивить мир, то ли научиться, то ли все вместе;
    • На этом этапе разрабатываем персонажей: главного, врагов, второстепенных персонажей;
    • Технические спецификации – здесь определяемся с выбором платформы, выбираем движок, определяемся с дополнительными внешними модулями;
    • Все записываем. Очень важный этап, фиксируем каждую мелочь, каждую фразу, они могут быть очень полезны через неделю, через месяц. Причем, вернее говорить про перманентность процесса записей: на всех этапах построения игры обязательно скидываем все мысли на бумагу. Строим схему игры, рисуем блоками взаимосвязи между объектами, создаем на бумаге уровни (хотя бы приблизительно). Фиксируем возможности и навыки персонажа, особенности окружения и предметов, причем сразу в объектно – ориентированной модели: изначально определяемся со свойствами и методами каждого объекта, сущности и персонажа в игре;
    • Рисуем скетчи. Этот процесс также может быть растянут и размазан по всем предыдущим этапам;
    • И вот когда все вышеперечисленное готово – переходим непосредственно к построению сцен в Unity3D.


    Жду с нетерпением ваших комментариев и совершенно не претендую на совершенство описанного выше процесса. Наверняка, все можно оптимизировать и улучшить. Но перечисленные пункты буквально изменили ребят: они после двух занятий стали думать совершенно по-другому и каждую игру рассматривали уже более внимательно и пристально, чем раньше. Это результат, согласитесь?

    Мы придумали платформер с названием «Дворакс» («Dworax» в англ. версии), сюжетом и интересными персонажи. Есть сайт, посвященный этому начинанию, но я понял из правил, что тут не любят, когда размещают ссылки на свои ресурсы, верно? Так что пока не буду.

    Dworax

    За учебный год удалось сделать первый уровень, и то не до конца, результат крайне низкий, но на это есть объективные, на мой взгляд, причины. Во-первых, у Олега Видякина в том году был неважный парк компьютеров. И это первый вывод, который можно сделать: обучение Unity3D необходимо проводить на «железе» ну хотя бы чуть выше среднего по возможностям. Мониторы желательно широкоформатные и с высоким разрешением, а лучше – два, видеокарта – помощнее, крутим все-таки трехмерные пространства и объекты, памяти также желательно побольше.

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

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

    Независимо от объективных и субъективных причин, мы закончили обучение в мае, изучив следующее: интерфейс программы, основные понятия Unity3D, основы Javascript, перемещение и размещение объектов в трехмерном пространстве, взаимодействие объектов, движение объектов, использование Asset store компании Unity Technologies, использование текстур и частиц. Если будет интересно, я выложу результаты и скину ссылку. Да, особенностью этих разработок было использование двумерной sprite sheet для анимации главного героя, гнома, в трехмерном окружении. Довольно интересный эффект получился. К сожалению, нам пришлось использовать сторонние материалы (модели, текстуры), так как время и отсутствие программного обеспечения не позволило рассмотреть трехмерное моделирование и текстурирование.

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

    КОИРО


    Во время прошлого учебного года я обращался в КОИРО (Калининградский институт развития образования) с предложениями о проведении различных краткосрочных курсов для преподавателей: трехмерное моделирование с использованием Autodesk 3D Studio Max, создание электронных интерактивных книг с использованием Apple Ibooks author, создание компьютерных игр с использованием Unity3D, компьютерная анимация с использованием Adobe Flash, создание сайтов с использованием CMS «Wordpress». Кому лень было читать ссылку выше, КОИРО — государственное автономное образовательное учреждение Калининградской области дополнительного профессионального образования (повышения квалификации) специалистов «Институт развития образования», структура, одной из задач которой является повышение квалификации преподавателей школ.

    «Солнечный берег» и одаренные дети


    Мы давно сотрудничаем, и вот летом от этой организации поступило неожиданное предложение: рассказать что-нибудь креативное и связанное с информационными технологиями для одаренных детей в первой смене профильного лагеря «Солнечный берег» в поселке Ушаково недалеко от Калининграда, на берегу Калининградского залива. Немного информации из СМИ: «…напомним, что в регионе создана модель сети образовательных учреждений по реализации физико-математического образования, которая дает возможность развить наиболее перспективную форму организации образования – обучение по индивидуальному образовательному маршруту, в том числе и с использованием дистанционных технологий. Обеспечение роста качества предполагается, прежде всего, за счет единства подходов в организации обучения и использования потенциала сетевого взаимодействия как внутри сети, так и за ее пределами. С 1 сентября 2013 года профильные физико-математические классы будут работать в 20 опорных школах региона, лингвистические – в пятнадцати. Основная их задача – выявление способных детей и их обучение по программам повышенного уровня. А во внеурочное время учащиеся будут проходить стажировку в «каникулярных школах» в Ушаково». Более подробную информацию о проведенных этим летом двух сменах в профильном лагере в Ушаково можно найти в интернете по соответствующим запросам, благо ее (информации) действительно много, а ниже – видео, созданное ребятами. Кому интересно — не пожалейте времени и получите общее представление о происходящем.



    Предложение было очень неожиданным, условия жесткие (за пять дней рассказать и сделать со школьниками реальный проект), но я, как обычно, не отказался, и выбор пал опять же на Unity3D. В лагере ребята в течение пяти дней (вся смена длится неделю) изучают различные курсы в первую половину дня. Причем, курсы обучаемые выбирают сами. Смена открылась. На мой курс, который назывался «Теория игр» (немного неудачное название, но организаторы в дальнейшем исправились) записалось около 30 человек, отчего стало немного страшно. Мы разделили записавшихся на две группы, а я всю ночь перед первым занятием думал, как же лучше организовать учебный процесс: времени крайне мало, информации надо дать очень много, но все удалось, честно.

    Мы сразу стали делать проект, причем, я выбрал стреляющий звездолет в стиле galaxy, который в свое время сделал сам. Конечно, все основные кирпичики для сцены были раскиданы по компьютерам обучаемых (модели, текстуры и скрипты), но другого варианта просто не было, дать за пять дней то, что отложится в голове и позволит хоть чему-то научиться можно, на мой взгляд, только так.

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



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

    Все успешно закончили проект. Многие сделали больше, чем планировалось. Большинство включили воображение и внесли творчество в свои сцены: изменили звездолет, астероиды, частицы. Обратите внимание на видео ниже: это Ян защищает проект (в конце смены проводилась так называемая ярмарка проектов, когда ребята своим родителям рассказывали о том, чем они занимались эти пять дней). Ян закончил четвертый класс, но у него не вызвало затруднений практически ни одно из моих предложений, а свой проект он сделал уникальным.



    Но самое главное – 12 человек захотели обучаться дальше. Представляете? Сразу почти половина, это действительно много. И вот было принято решение открыть курсы по Unity3D на базе центра информатизации, который относится к КОИРО, на которых мы продолжили с обучаемыми изучение более сложных аспектов создания компьютерных игр. Мой друг предложил назвать это начинание Unity School, за что ему огромное спасибо, а много фотографий и информации об учениках и занятиях есть на сайте с одноименным названием, приходите!

    Unity Developer Day в Калининграде


    Курсы открылись 7-го июля 2013, но до этого состоялось еще одно громкое для нашего региона событие – конференция Unity Developer Day. Отчет об этом интересном мероприятии можно посмотреть по ссылке. Спасибо организаторам, а именно Андрею Арутюняну, что позволили выступить с докладом, который вызвал активную дискуссию. Я рассказывал, как вы сами понимаете, об обучении Unity3D. Было много вопросов и мнений, и одно из них меня крайне удивило: не стоит обучать базовым навыкам программирования на примере Unity3D. Дескать, надо давать «олдскульное» программирование, начинать с азов и т.д. Я не согласен с этим мнением и считаю, что показать школьнику, что такое программирование, гораздо легче на примере создания игры, чем на примере программирования обращений к базам данных на Visual Basic. И меня активно поддержал Олег Придюк, который был основным докладчиком на этой конференции и, конечно же, представителем компании Unity Technologies. Олег взял микрофон и привел один интересный пример: художник, не программист, создал один на Unity3D игру, с помощью которой он сегодня зарабатывает серьезные деньги. И что, запретить ему жить в новом доме и ездить на новой машине лишь потому, что он не «олдскульный» программист? Мне кажется, ответ очевиден. Тут есть место для дискуссии, но продолжим.

    Олег Придюк оставил свою визитку, после конференции мы пообщались немного в неформальной обстановке, а на следующий рабочий день со мной связалась Joana Kodyte, представитель компании Unity Technologies, курирующая образовательные программы в России. Мы долго приятно общались, и компания подарила курсам 14 лицензий Pro, что меня крайне поразило и подтвердило в серьезности их намерений. Лицензиями мы пока не воспользовались за ненадобностью, но особенно интересующимся будет полезно узнать про LOD, динамические тени, «запеканиие» текстур, использование NavMesh и другие возможности движка.

    Unity School


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

    image

    В августе состоялась еще одна смена профильного лагеря «Солнечный берег», где ребята опять, наряду с другими курсами, погружались в премудрости Unity3D. Все прошло успешно, на этот раз на курс записалось около 50-ти человек. К финишу пришли не все, но звездолеты были запущены и интерес пробужден.

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

    Сегодня ведется второй набор на курсы Unity School. В связи с суматохой вокруг нового учебного года, мы продлили запись желающих. Летом я связался с компанией Valve, которая запустила проект Pipeline, о результатах поговорим чуть позже… Ведутся переговоры с несколькими местными студиями и центрами обучения на Украине и в Белоруссии о кратких лекциях, освещающих сложные аспекты «игростроения». В КОИРО есть оборудование, позволяющее вести обучение удаленно, и мы сегодня ведем переговоры с центром информатизации института об открытии курсов для тех, кто не может очно посещать аудиторию. С конца сентября я открываю постоянный ряд вебинаров и приглашаю всех к ним присоединяться. Программа вебинаров обширная: система анимации Mecanim, особенности импорта трехмерных моделей, подготовка графики для игры, создание управляемого персонажа, стрельба, GUI, сохранение результатов, магазин внутри игры, физика, расширение Unity3D за счет сторонних разработок, multiplayer, звуки в игре и многое другое.

    Целью этой статьи, наряду, конечно же, с некой и информативной составляющей, также является попытка привлечь внимание различных структур к тому, что происходит в среднем и высшем образовании, к реальной возможности увеличить интерес молодого поколения к созиданию, а не потреблению. Нам не нужно общество потребителей. Давайте воспитывать и выявлять лучших представителей поколения, которое приведет себя, нас с вами а также наших еще маленьких детей к более серьезным результатам. Создавать игры интересно и увлекательно. Создавать игры одновременно и работа, о чем я и сказал заместителю председателя правительства Калининградской области Алексею Николаевичу Силанову: еще одной целью этих курсов является стремление донести до молодежи, что game development — это не только развлечение, но и труд, ежедневный непростой труд, приносящий прибыль, увеличивающий бюджет и благосостояние как отдельного человека, так и региона, страны в целом. Я призываю к сотрудничеству компании, разрабатывающие игры, обращаюсь к преподавателям школ и университетов, к студентам: давайте будем чуть подвижнее, давайте прививать практические навыки, а не голую теорию, оторванную от реальности, давайте будем креативными и современными! Спасибо всем, кто дочитал до конца!
    • +23
    • 9,4k
    • 8
    Поделиться публикацией
    Ой, у вас баннер убежал!

    Ну. И что?
    Реклама
    Комментарии 8
      0
      Ещё одни курсы создания игр в Калининграде! Здорово, Калининграду определённо везёт.
      В том посте зашло обсуждение о том, что лучше детям давать Unity3D, нежели Corona SDK или Flash. Ну вот собственно баланс восстановлен — есть и то, и то.
        +1
        Спасибо за комментарий! На мой взгляд, вопрос о том, что лучше — довольно спорный: и то и то имеет право на существование. Я довольно долго использовал Adobe Flash и ActionScript в своей профессиональной деятельности, это отличный инструмент и серьезная технология для решения определенных задач. Но речь ведь шла о том, что использовать для обучения созданию игр, какой инструментарий? И вот тут я категорично и всеми руками за Unity3D: школьникам действительно удается освоить в короткие сроки этот программный продукт, понять хотя бы на какой-то процент, как создаются игры, изучить основы программирования. Причем, многие хотят заниматься именно и только программированием. Один из учеников просто вынудил меня самого приступить к изучению C#. А противопоставлять Unity3D и Corona SDK или ставить их в один ряд, на мой взгляд, не совсем корректно. Corona SDK — 2D-платформа для создания приложений и игр (игра ведь тоже приложение) именно для мобильных платформ, и как пишут сами разработчики на сайте продукта: "… наша миссия состоит в том, чтобы позволить любому создавать великолепные мобильные приложения". Unity3D — это полноценный инструмент для создания игр и интерактивных приложений (и трехмерных и двумерных ) не только для мобильных устройств. Представитель компании Unity Technologies на вопрос о том, какие игры можно делать с помощью Unity3D ответил лишь одним словом: «любые». Любые и портировать на большое количество платформ: Windows, iOS, Android, Web — player, Windows Store Apps, Windows 8, Blackberry, XBox, PlayStation, Wii U. Недавно, кстати, появился Facebook SDK. Плюс, есть опыт применения этого продукта и для не игровой индустрии. А насчет обучения: Unity3D позволяет упорядочить процесс обучения: эта тема крайне сложна для объяснения и понимания, но сам движок своими понятиями помогает ученикам и преподавателю.
          0
          Приезжайте к нам, у нас тут хорошо :)
        +1
        Игра от художника, о которой я говорил в Калининграде — Thomas Was Alone (вот видео, где автор в университете в Лондоне рассказывает, как он ее делал, и как он не умеет программировать).

        Мы всеми силами поддерживаем образовательные инициативы, преподавателей. Очень рад, что у Евгения все получается :)
          0
          печально, открылись тогда когда я от туда уехал :(
            +1
            Отличная инициатива, удачи вам.
            Бтв пара вопросов:
            1) больше упор идет на вузы или на школы, какой средний возраст учеников?
            2) планируется ли более глубокое изучение (как я понял текущий курс это уложение стандартного мана юнити + scripting reference в серию лекций)
            3) каждый работает над своим проектом или над одним? планируете\используете систему контроля версий и обучение работе в команде девелоперов?
              0
              Спасибо, по порядку:
              1. Пока занимаемся только со школьниками. Причем, выяснилось, что очень заинтересованы родители, которым их дети рассказывают о своих достижениях. Очень хочется заниматься со студентами, так как можно было бы затронуть более сложные вопросы. Работаем в этом направлении, но студенты — более инертная аудитория в силу занятости и возможности изучения сложных концепций самостоятельно (особенно на старших курсах). Средний возраст обучаемых сегодня — 15 лет. Понятно, что школьнику без подготовки в программировании и дизайне изначально не расскажешь про rig, navigation mesh, «запекание» текстур, LOD и т.д. Первый месяц — это перемещение объектов в пространстве, изучение стандартных компонентов, collider и rigidbody, использование простейших функций и классов;
              2. Планируется. Текущий учебный год мы будем делать действительно сложную игру: трехмерная аркада (изометрия, рабочее название «Бадя против зомби») с сюжетом, врагами, оригинальной графикой. Но вы немножко не правильно поняли то, чем мы занимались все это время: я предлагаю ребятам, в первую очередь, решение задач, формируя их мышление. Первые две недели изучаем новые концепции и начинаем разговаривать на одном языке: компоненты, prefab, transform, функции, update и т.п. Т.е. формируется понятийная база. На этом этапе решения потсавленных задач предлагаю я. Затем, с увеличением сложности проекта, постановка вопросов для обучаемых совсем другая: давайте подумаем, как определить столкновение летательного аппарата с ландшафтом, например, и что нужно сделать с объектами в сцене в этот момент? И вот тут происходит «волшебство»: ребята сами формулируют ответ и мы вместе определяемся с решением, как на уровне объектов (визуальное представление событий) так и на уровне скриптов (программная часть). Копирования документации нет и быть не может, иногда приходится код формировать «на лету». Да, кстати, вы затронули серьезный момент: никто из обучаемых не умеет пользоваться документацией и искать информацию самостоятельно, особенно на английском языке;
              3. Очень хороший вопрос. Каждый работает над своим проектом, за своим компьютером, команды пока нет. И сейчас, в связи с моим дальнейшим планом на год, действительно стала актуальной система контроля версий и командная разработка, может, посоветуете? Почему актуально: я принял решение об организации двух групп обучаемых, одни будут заниматься дизайном игры, вторая группа — программированием. Такое решение было принято после отзывов родителей и их пожеланий, плюс я выявил серьезное разделение интересов и навыков обучаемых: одним действительно интересна только графика, а другие хотят только писать исходный код.

              Надеюсь, я смог ответить на ваши вопросы. Советуйте, обращайтесь, мне очень понравилась ваша реакция и совет насчет системы контроля версий!

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

            Самое читаемое