Pull to refresh
7
0
Send message

Flappy Bird на Unity 3D

Reading time4 min
Views9.4K

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

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

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

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

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

Читать далее
Total votes 13: ↑10 and ↓3+7
Comments6

Мой топ полезных инструментов для Unity разработчика

Reading time3 min
Views12K

Всем привет! Меня зовут Григорий Дядиченко, и я всё ещё разрабатываю проекты на Unity под ключ. Сегодня хочется поговорить про полезный инструментарий для Unity разработчика. У меня давно на эту тему есть свой топ ассетов или софта, которые используются почти в каждом проекте, плюс несколько своих утилит. Не будем касаться слишком широких и банальных инструментов типа adb, а составим некоторый набор того, что можно использовать почти в каждом проекте.

Читать далее
Total votes 13: ↑11 and ↓2+9
Comments11

Учебные материалы для школы программирования. Часть 1

Reading time7 min
Views14K

Наш век запомнится мне, как время стартапов. От школьника-активиста, до жителя Кремниевой долины - все делают своих единорогов. Как поняли - так и делают. Я тоже не прошла мимо тренда на безграничные возможности самореализации, и запустила школу программирования для детей Step to Science. Время жизни этого проекта было наполнено открытиями, борьбы со страхами, маленькими и большими победами, ошибками и много чем еще. Весной 2020 года команда столкнулась с сами знаете с чем, и, немного порефлексировав, я приняла решение закрыть проект.

За годы работы школы, был найден оптимальный алгоритм обучения ребят занимательной науке разработки игр на Unity 3D. Мы перебрали много тем, которые смогли захватить интерес школьников от 10 до 16 лет, опробовали десятки способов передачи информации, тренировки навыков и оценки заложенных знаний. Эта кропотливая работа принесла нам отличные результаты, в виде комплексной программы по созданию компьютерных игр на Unity 3D, и учебных успехов, которые достигали наши ребята!

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

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

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments25

Руководство по FFmpeg libav

Reading time24 min
Views85K

Долго искал книгу, в которой было бы разжёвано, как использовать FFmpeg-подобную библиотеку, известную как libav (название расшифровывается как library audio video). Обнаружил учебник «Как написать видеоплеер и уложиться в менее чем тысячу строк». К сожалению, информация там устаревшая, так что пришлось создавать мануал своими силами.

Большая часть кода будет на C, однако не волнуйтесь: Вы легко всё поймёте и сможете применить на любимом языке. У FFmpeg libav уйма привязок ко многим языкам (в том числе и к Python и к Go). Но даже если Ваш язык прямой совместимости не имеет, всё равно можно привязаться через ffi (вот пример с Lua).

Начнём с краткого экскурса о том, что такое видео, аудио, кодеки и контейнеры. Затем перейдем к ускоренному курсу, посвященному использованию командной строки FFmpeg, и, наконец, напишем код. Не стесняйтесь переходить сразу в раздел «Тернистый путь изучения FFmpeg libav».

Есть мнение (и не только моё), что потоковое интернет-видео уже приняло эстафету от традиционного телевидения. Как бы то ни было, FFmpeg libav точно достоин изучения.

Оглавление


Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments13

Умные шторы своими руками

Reading time3 min
Views150K
Однажды, после тяжелого рабочего дня, я пришел домой и понял, что хочу отдохнуть, а не ходить и закрывать шторы. Хочется увидеть их закрытыми вечером и открытыми утром, при этом не выделывать танцы перед окном. Погуглив разные решения, было принято решение сделать все самому.



По многочисленным просьбам, выкладываю все свои наработки по переделке обычных рулонных штор в автоматизированные с удаленным управлением. Осторожно, много фотографий!
Total votes 78: ↑76 and ↓2+74
Comments67

Процедурная гидрология: динамическая симуляция рек и озёр

Reading time15 min
Views7.9K
Примечание: полный исходный код проекта выложен на Github [здесь]. В репозитории также содержится подробная информация о том, как читать и использовать код.

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

Я исследовал уже существующие методики процедурной генерации рек и озёр, но найденные результаты меня не устроили.

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

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

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

В своём методе я стремлюсь одновременно и к простоте, и к реализму ценой небольшого повышения сложности базовой системы эрозии. Рекомендую прочитать мою предыдущю статью об этой системе [здесь, перевод на Хабре], потому что новая модель строится на её основе.
Total votes 22: ↑22 and ↓0+22
Comments4

Изучаем миниатюрный шаговый двигатель

Reading time16 min
Views50K
Шаговые двигатели нашли широкое применение в современной промышленности и самоделках. Их используют там, где необходимо обеспечить точность позиционирования механических узлов, не прибегая к помощи обратной связи и точным измерениям.

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


Total votes 44: ↑44 and ↓0+44
Comments37

Физическая симуляция сотен тысяч частиц на Unity + DOTS

Reading time8 min
Views6.5K
В какой-то момент во время блужданий по просторам всемирной паутины на одном из сайтов я обнаружил интерактивный JS-элемент — картинку, составленную из частиц, разлетающихся при приближении курсора мыши. Возникло желание запрограммировать симуляцию подобного поведения на Unity и проверить, какую производительность можно выжать из движка. Техническими решениями и своими наблюдениями, полученными в процессе реализации, делюсь с вами.

image
Покажи!
Total votes 17: ↑16 and ↓1+15
Comments2

Как экономить трафик на веб-сервере

Reading time5 min
Views5.7K


Нагруженный веб-проект расходует терабайты трафика. На больших числах экономия в 10-20% может существенно сберечь деньги и помочь не выйти за квоты.
Что делать, если трафик опасно приближается к лимитам вашего тарифа на хостинге или вовсе выходит за них?

В этой статье мы разберём основные техники, помогающие сэкономить трафик на веб-сервере.
Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments15

Вышел Intercepter-NG 2.5 для Android

Reading time5 min
Views19K
Да, Intercepter еще жив! И после длительного затишья я рад представить новую версию.

Изначально ставилась задача причесать интерфейс, исправить ошибки, ввести некоторые нововведения и протестировать работоспособность на новых версиях Android.

Что из этого вышло — под катом.

image
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments12

10 интересных репозиториев на GitHub, полезных любому разработчику

Reading time4 min
Views82K
Представляем вам перевод статьи Simon Holdorf, опубликованной на сайте medium.com. В ней вы найдете ссылки на полезные репозитории, с помощью которых можно прокачать навык разработки ПО.


Фото с ресурса Unsplash. Автор: Vishnu R Nair

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

Каждый из них имеет множество звезд на GitHub, что только подтверждает их популярность, актуальность и полезность. Одни репозитории научат вас чему-то новому, благодаря другим вы сможете создать какие-то классные штуки. В целом, используя их, можно основательно прокачать навык разработки программного обеспечения.
Читать дальше →
Total votes 88: ↑83 and ↓5+78
Comments14

Unity + git = дружба: часть 1 джентльменский набор

Reading time8 min
Views43K
image
Система контроля версий git уже давно стала стандартом де-факто в мире разработки, но для большинства разработчиков на Unity не секрет, что существует ряд трудностей связанных с особенностями Unity, которые мешают эффективно использовать ее совместно с git.

Вот список типичных проблем:

  1. в репозиторий попадают ненужные файлы или наоборот не попадают нужные
  2. множество больших файлов раздувает размер репозитория
  3. проблема с мерджем yaml файлов Unity
  4. в репозиторий добавлен только сам файл или только meta
  5. в проекте присутствуют пустые папки
  6. сложность автоматической нумерации версий и билдов
  7. неудобство использования кода между несколькими проектами

О решение этих проблем, связанных с совместным использованием git и Unity, вы можете прочитать в моем цикле статей.

В этой статье будет описано решение первых трех проблем
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments15

Всё о ключевом слове auto в CSS

Reading time13 min
Views40K
В CSS есть ключевое слово auto, которое можно использовать при работе с различными свойствами элементов. Это — свойства, влияющие на позицию, высоту, ширину элементов. Это — свойства, предназначенные для настройки отступов элементов и других их характеристик. У меня появилось желание где-нибудь записать всё то, что я знаю об auto. Например — оформить это всё в виде материала, который мог бы стать справочником для тех, кто интересуется тонкостями использования этого ключевого слова.

Ключевое слово auto имеет особый смысл при использовании его с различными CSS-свойствами. Мы разберём особенности auto, касающиеся применения этого значения к различным свойствам.



Здесь, в первую очередь, нас будут интересовать технические детали работы auto. Поговорим мы и о том, как извлечь максимум пользы из применения этого свойства. Тут вы найдёте и заметки о сценариях использования auto, и примеры.
Читать дальше →
Total votes 46: ↑46 and ↓0+46
Comments4

NodeJS: быстрый старт

Reading time5 min
Views7.2K


Всем привет! Совсем скоро стартует курс «Разработчик Node.js», в связи с чем мы провели традиционный открытый урок. На вебинаре рассмотрели сильные и слабые стороны Node, а также обсудили, для каких задач эта программная платформа подходит лучше всего, а для каких следует выбирать другие языки и фреймворки. И, разумеется, не обошлось без практики. Для запуска примеров и программ необходимо было установить Node.js.

Преподаватель — Александр Коржиков, Dev IT Engineer в компании ING Group (Нидерланды).



Читать дальше →
Total votes 11: ↑7 and ↓4+3
Comments1

CSS: полное руководство по функции calc()

Reading time11 min
Views91K
В CSS есть особая функция calc(), применяемая для выполнения простых вычислений. Вот пример её использования:

.main-content {
  /* Вычесть 80px из 100vh */
  height: calc(100vh - 80px);
}

Здесь с CSS-кодом, в котором используется calc(), можно поэкспериментировать.



Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать обо всём, что стоит знать об этой весьма полезной функции.
Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments9

Размытие фонового изображения в Unity

Reading time6 min
Views14K


Одной из задач, которая может возникнуть у разработчика приложений на Unity, это перевод текущего изображения на задний план с целью переключить акцент внимания пользователя на что-то новое, например, на появляющееся меню или сообщение. В статье рассказывается об опыте решения данной задачи разработчиком, имеющим базовые знания в Unity, при этом не потребовалось использования внешних ресурсов или дополнительной лицензии Unity. Надеюсь, этот материал будет полезен тем, кто столкнулся с подобной проблемой и не нашел на разных её этапах эффективных путей решения.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments4

Учимся разворачивать микросервисы. Часть 4. Jenkins

Reading time14 min
Views110K


Привет, Хабр!


Это четвертая и заключительная часть серии статей "Учимся разворачивать микросервисы", и сегодня мы настроим Jenkins и создадим пайплайн для микросервисов нашего учебного проекта. Jenkins будет получать файл конфигурации из отдельного репозитория, собирать и тестировать проект в Docker-контейнере, а затем собирать Docker-образ приложения и пушить его в реестр. Последней операцией Jenkins будет обновлять кластер, взаимодействуя с Helm (более подробно о нем в прошлой части).

Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments6

Еще раз о передатчиках и приемниках 433 МГц

Reading time10 min
Views179K
Простейший комплект из приемника и передатчика ISM-диапазона 433 МГц завоевал заслуженную популярность в среде любителей электроники. Комплекты дешевы (даже в «Чипе-Дипе» их можно купить рублей за 300, а на Ali, говорят, вообще за полтинник), просты и надежны. Кроме того (о чем вы, возможно, не подозреваете), это самый дальнодействующий и проникающий способ беспроводного обмена данными — сигнал на частоте 433 МГц куда лучше проходит через препятствия и действует на более далеком расстоянии, чем в популярном диапазоне 2,4 ГГц (433 МГц полностью задерживаются стенкой в полметра бетона, а Wi-Fi умирает уже на 10 сантиметрах). Допускаю, что недавно появившиеся модули MBee-868, будучи снабженными соответствующей (направленной) антенной, «стреляют» дальше, но они как минимум на порядок дороже, сложнее в подключении, требуют управления энергосбережением и предварительной настройки. И вдобавок частота 868 МГц вдвое хуже проходит через препятствия (хотя, конечно, несравненно лучше частоты 2,4 ГГц).



О приемниках-передатчиках 433 МГц написано очень много (в том числе и на хабре, конечно). Однако, правильно включать в схему этот комплект по какой-то странной причине, кажется, не умеет никто. Когда я в который раз прочел вот тут, что комплект «принимал на 8-ми метрах в пределах прямой видимости, 9-ый метр осилить не удалось», мое терпение лопнуло. Какие еще 8 метров?! В 40-50 я бы поверил, хотя в реальности, наверное, дальность еще больше.
Читать дальше →
Total votes 76: ↑74 and ↓2+72
Comments57

Домашний кинотеатр на Raspberry

Reading time6 min
Views117K
Так случилось, что решил я упростить себе вопрос он-лайн просмотра фильмов, вариант стандартного смарт ТВ меня не устраивал, а постоянно торчащий кабель HDMI для подключения к ноутбуку раздражал. Решение моей проблемы я увидел в приобретении Raspberry Pi 4, который можно аккуратно спрятать за корпусом телевизора.
Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments164

Изучаем переменные в CSS на практическом примере

Reading time15 min
Views6.4K


Доброго времени суток, друзья!

Однажды веб серфинг привел меня к этому замечательному коду.

«Замечательность» его (то бишь кода) состоит в практическом использовании переменных в CSS, что сильно облегчает написание стилей (использование переменных также обуславливает необычную структуру CSS). И, конечно, тема импонирует весьма — планеты Солнечной системы.

Оригинальный проект написан на Pug и Sass, мы же разберем его на HTML/CSS.

Итак, поехали.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments4
1
23 ...

Information

Rating
Does not participate
Registered
Activity