Pull to refresh
27
0
Владимир Алямкин @ufna

Пользователь

Send message

Git. Коротко о главном

Reading time15 min
Views63K

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

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

Читать далее
Total votes 25: ↑18 and ↓7+14
Comments18

Самые распространённые вопросы на собеседовании программиста графики

Reading time5 min
Views50K
Недавно я проходил собеседования в игровых студиях на младшего программиста графики. По итогу я узнал, каких навыков они ожидают от начинающего программиста и какие вопросы могут задать. В этой статье я собрал вопросы в удобный список. Смысл в том, чтобы другие начинающие программисты могли использовать его для подготовки, прежде чем идти на первое собеседование. Но хочу оговориться, что я не рекомендую просто запоминать ответы на эти вопросы. Темы в списке — это темы, которые следует понять и освоить, чтобы решать реальные проблемы программирования графики. Их нужно понять, а не запомнить ответы.

Вопросы делятся по темам: С++, математика, оптимизация и компьютерная графика. Очевидно, это главные темы в повседневной работе. C++ часто используется в реальных задачах, поэтому естественно, что на собеседовании задают много вопросов по нему. Кроме того, в программировании графики требуется лучшее знание математики, чем в большинстве других видов программирования, поэтому математические навыки имеют первостепенное значение. Наконец, для достижения 60 FPS и рендеринга с высокой графической точностью обязательными являются сильные навыки оптимизации. Давайте рассмотрим популярные вопросы в каждой категории.
Читать дальше →
Total votes 59: ↑54 and ↓5+49
Comments53

Для оптимизации 3D-моделей недостаточно считать полигоны

Reading time11 min
Views61K
image

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

Введение


Сколько полигонов мне можно использовать? Это очень частый вопрос, который задают художники при создании моделей для рендеринга в реальном времени. На этот вопрос сложно ответить, потому что дело не только в цифрах.

Я начинал карьеру как 3D-художник ещё в эпоху первой PlayStation, а позже стал программистом графики. Хотел бы я прочитать эту статью перед тем, как впервые начал создавать 3D-модели для игр. Рассмотренные в ней фундаментальные основы пригодятся многим художникам. Хотя бОльшая часть информации из этой статьи не повлияет значительно на продуктивность вашей ежедневной работы, она даст вам базовое понимание того, как графическая карта (graphics processing unit, GPU) отрисовывает создаваемые вами меши.

От количества полигонов в меше обычно зависит скорость его рендеринга. Однако несмотря на то, что количество полигонов часто коррелирует с частотой кадров в секунду (FPS), вы можете обнаружить, что даже после снижения количества полигонов меш по-прежнему рендерится медленно. Но поняв, как рендерятся меши в целом, вы сможете применить набор техник для повышения скорости рендеринга.
Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments17

Kubernetes для тех, кому за 30. Николай Сивко (2018г)

Reading time16 min
Views14K


Мы в okmeter.io в какой-то момент поняли, что нам тоже нужен k8s в production, хотя у нас нет даже CI/CD, но есть задача делить общий пул серверов между приложениями и достаточно легко добавлять мощности в кластер. При этом был ряд обстоятельств, которые усложняли внедрение k8s:


  • мы очень заботимся об отказоустойчивости (мы не притаскиваем новые технологии в prod, пока не разберемся в них на достаточном уровне);
  • у нас есть сервисы со временем ответа меньше 10ms;
  • у нас очень мало человеческих ресурсов на эту задачу (узнать 10 новых терминов ОК, 50 — уже нет).
Total votes 15: ↑15 and ↓0+15
Comments0

Здоровый сон взрослого человека — это засыпать за 15 минут и не вставать ночью попить и пописать

Reading time13 min
Views164K


Послушала на днях 2х-часовое выступление «Здоровый сон» врача-невролога, сомнолога Елены Царевой. Выдернула самые важные для себя пункты:

  1. Спать регулярно, ложиться и вставать в одно и то же время — самое важное. 
  2. Биоритмы — частично наследуются, частично регулируются стилем жизни. На них можно влиять самому.
  3. Нормальное время отхода ко сну около 22:00. Сова и жаворонок — это отклонение на ±1-2 часа. Больше — это нарушение и сдвиг фазы сна, чаще из-за внешних раздражителей.
  4. Самая частая причина плохого сна и тяжелого засыпания — неправильный свет.
  5. Для сдвига режима на 1 час организму нужен 1 день на адаптацию.
  6. Невозможно «доспать» бессонную ночь. Досыпание устраняет только 30% последствий недосыпа.
  7. Прежде, чем искать причины плохого сна, исключите психологические проблемы (тревожность, депрессию), нарушения щитовидки, дефицит железа, диабеты, сердечно-сосудистые заболевания и патологию почек и мочеполовой системы.
  8. Водителям и пассажирам: 17 часов без сна равны 0,5 промилле, 21 час без сна — 0,8 промилле.
  9. В постели без сна больше 15 минут не находиться — совет при бессоннице. 
  10. Самые физиологичные будильники — те, что светятся. 

Под катом конспект 2х-часового выступления про сон на 15 минут чтения. Еще один поинт в копилку полезных материалов про сон — Sleep Hackers.
Читать дальше →
Total votes 139: ↑119 and ↓20+126
Comments247

Тестовая ферма из Android-устройств: как собрать, отладить и не взорвать офис

Reading time11 min
Views13K


У нас был небольшой бюджет и большие проблемы с рутинным тестированием в match3-игре, у которой накопилось более 1500 уровней. А вот чего у нас не было, так это идеально подходящего коробочного решения, работающего на лету и без пересборок. Поэтому мы нагородили собственную ферму с высаженной грядкой из десятка Xiaomi, отправкой статистики, отчетами в Slack, блекджеком и коровой.

Я Павел Щеваев, CTO студии BIT.GAMES, которая является частью международного игрового бренда MY.GAMES. Вы можете знать нас по RPG «Гильдия Героев», а ваши мамы — по «Домовятам» в Одноклассниках. Да, это были мы. :) Но сегодня речь пойдет о нашем новом проекте Storyngton Hall. Это головоломка «три в ряд» с сюжетом, по которому красивые леди разгадывают загадки, декорируют комнаты, примеряют платья, устраивают балы, и, в конце концов, выходят замуж.
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments14

SSLR: Screen Space Local Reflections в AAA-играх

Reading time6 min
Views81K
image

Привет, друг! В этот раз я опять подниму вопрос о графике в ААА-играх. Я уже разобрал методику HDRR (не путать с HDRI) тут и чуть-чуть поговорил о коррекции цвета. Сегодня я расскажу, что такое SSLR (так же известная как SSPR, SSR): Screen Space Local Reflections. Кому интересно — под кат.
Читать дальше →
Total votes 62: ↑60 and ↓2+58
Comments48

Дизайн и эволюция constexpr в C++

Reading time29 min
Views35K

constexpr - одно из самых магических ключевых слов в современном C++. Оно дает возможность создать код, который будет выполнен еще до окончания процесса компиляции, что является абсолютным пределом для быстродействия программ.

У constexpr с каждым годом становится больше возможностей. Сейчас использовать в compile-time вычислениях можно почти всю стандартную библиотеку. Пример вычисления числа до 1000 с наибольшим количеством делителей: ссылка на код.

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

Эта статья подходит как тем, кто еще не знает, что такое constexpr, так и тем, кто уже долгое время его использует.

Назад в будущее
Total votes 47: ↑47 and ↓0+47
Comments17

Почему инженеры презирают Agile

Reading time5 min
Views27K

Мы продолжаем цикл публикаций о недостатках Аgile методологии. Сегодня перевод статьи о том, почему инженеры презирают Agile (много новых удивительных наблюдений!)

Читать далее
Total votes 73: ↑37 and ↓36+12
Comments129

Работа с DLC для мобильных игр в UE4

Reading time12 min
Views5.8K

В разработке игр зачастую необходимо создавать систему по доставке и установке нового контента (DLC). Для мобильных игр такое требование обусловлено не только желанием обеспечить долгую пост-релизную поддержку игры, но также необходимостью учитывать технические ограничения на размер игры — ключевые площадки по дистрибуции мобильных игр, Google Play и Apple Store, имеют достаточно строгие ограничения на размер установщика приложения.

В рамках этой статьи рассказываю, как мы реализовали такую систему в новой мобильной игре на UE4. Речь пойдет об использовании чанков для создания DLС, работе с .pak файлами, создании патчей для DLC контента, а также об использовании плагина Mobile Patching для загрузки DLC файлов.

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

Яблочный CI

Reading time5 min
Views4.1K

Введение


Мы — команда Platform в Playrix, у нас большая и сложная билд-ферма, использующая возможности всех платформ и облачных решений и успешно применяющая их на практике. В этой статье я бы хотел поделиться с вами особенностью работы с платформой MacOS.

Читать дальше →
Total votes 12: ↑11 and ↓1+16
Comments5

Изысканный ужин из пробирки: 3D-биопринтинг стейка вагю

Reading time13 min
Views9.6K


Сказать, что наука тесно переплетена со всевозможными аспектами нашей жизни, значит ничего не сказать. И дело даже не о процессах и явлениях, которые ежесекундно происходят вокруг нас и внутри нас, а о предметах и устройствах, которые мы используем. Все они в той или иной степени являются результатом каких-то научных изысканий. Когда же о науке, несмотря на ее полезность, говорят в рамках продуктов питания, но мнение общества разделяется. Кто-то считает использование науки для совершенствования или создания новой еды вполне нормальным явлением и результатом естественного техногенного развития нашей цивилизации. А кто-то отвергает прогресс, предпочитая все натуральное и подаренное матушкой природой, с презрением относясь к ученым с их пробирками, химикатами, ГМО и прочими гадостями. А теперь представьте споры, которые может породить результат работы ученых из университета Осаки (Япония), создавших на 3D-принтере стейк вагю, по своей структуре идентичный натуральному. Что стало основой искусственного стейка, как именно он был «напечатан», и какова его польза и ценность для человека? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.
Читать дальше →
Total votes 28: ↑27 and ↓1+40
Comments20

Разработка персонажей для игры «Аллоды Онлайн»

Reading time25 min
Views198K
image

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

Всё, что говорится в правилах, основано на огромном опыте разработки. Тут каждая буква имеет значение, и если вам показалось, что где-то есть ошибка или недосказанность, то лучше семь раз переспросить, чем сделать абы как. Ниже расписаны правила успешной работы в игровой индустрии. Если их не соблюдать, то ваша работа будет или недолгая, или неуспешная, или мучительная и для вас, и для заказчика. А если станете создавать персонажей в полном соответствии с этим руководством, то вас ждёт успех!
Читать дальше →
Total votes 91: ↑88 and ↓3+85
Comments36

Оружие Высших грибов

Reading time15 min
Views82K
Замечателен тот факт, что грибы, распространенные в чрезвычайном изобилии, не смогли развиться. Это, можно сказать, выкидыши растительного мира.
(Анри Бергсон в кн. Творческая Эволюция)

Признаюсь честно, я сделал это под принуждением. Под принуждением подписчиков отвлекся от своих любимых растений и полез в грибную тему. Потому что «скоро осень»/«надо быть готовыми» и т.п. К счастью много писать не пришлось, так как с грибами все попроще и идентифицированных токсинов немного (но они достаточно ядрёны). Под катом небольшая статья, с описанием того, что на данный момент известно про отравляющие вещества Высших грибов. А где есть такая возможность, так и с упоминанием антидота при отравлении. На протяжении недели про грибы читали в LAB-66, теперь — читаем на хабре.
ПРЕДУПРЕЖДЕНИЕ! Статья не соответствует «тематике Хабра»!

Всякий гриб в руки берут, да не всякий в кузов кладут
Total votes 104: ↑97 and ↓7+120
Comments255

Кто есть кто в мировой микроэлектронике

Reading time19 min
Views224K
Типичная новость про электронику начала 2020 года: «Intel, вероятно, не будет размещать заказ на производство у TSMC, но рассматривает возможность сотрудничества с GlobalFoundries». Кто такие Intel — всем понятно, но что за GlobalFoundries и TSMC? Когда деревья были большими, каждая микроэлектронная компания самостоятельно производила свои микросхемы, а то и технику на их основе, как какая-нибудь Toshiba или IBM. С тех пор утекло много воды, производство подорожало, сложность приборов возросла, и в создании такого приземленного и распространенного девайса, как айфон, участвует несколько десятков высокотехнологичных компаний с трех континентов. Размеры мирового рынка полупроводниковых микросхем и приборов оцениваются больше, чем в 400 миллиардов долларов, но не все гиганты этого рынка имеют дело с конечными пользователями и часто появляются в новостях. Зато когда появляются — могут сбить с толку. Чтобы этого не происходило, я попробую кратко описать, кто есть кто.
Читать дальше →
Total votes 119: ↑118 and ↓1+160
Comments172

Абстрактные 3D-фракталы всех сортов на C++

Reading time6 min
Views13K

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

Под фракталами понимают фигуры, особенность которых — подобие самим себе. В рамках курсовой работы по C++ мы написали приложение, шустро отрисовывающее 3D-фракталы и позволяющее их вращать, приближать-отдалять, изменять параметры, записывать видео и не только. В этой статье расскажем, как шла разработка, с какими задачами в ходе неё мы сталкивались и как их решали.

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

Усы и наждачка: динамика вибрисс при контакте с поверхностью

Reading time12 min
Views9.4K


Оглянитесь вокруг. Что вас окружает? Какие бы ответы не последовали, их можно объединить одним словом — информация. Звуки, запахи, цвета, текстура предметов и даже температура помещения это совокупность данных об окружающей среде, которые безустанно собирают наши органы чувств. Каждый из них важен для получения общей картины мира, который нас окружает. Одним из самых загадочных чувств является осязание, т.е. тактильное восприятие давления, вибрации, текстуры объекта или температуры. За это отвечает наша кожа, а точнее многочисленные рецепторы в верхних слоях дермы. Но вот у многих животных эти функции выполняют вибриссы, т.е. усы. Если у вас есть кот, то вы наверняка знаете насколько чувствительны усы этого млекопитающего. Малейшее дуновение ветра или прикосновение вызывает ответную реакцию. Ученые из Бристольского университета (Англия) решили рассмотреть, как именно работают вибриссы на примере крыс. Каковы механические свойства вибрисс, насколько они чувствительны, какие процессы протекают в момент их активации, и как полученные данные можно спроектировать на человека? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.
Total votes 23: ↑21 and ↓2+29
Comments2

Математики воскресили 13-ю проблему Гильберта

Reading time9 min
Views16K

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




Успех в математике достигается редко. Спросите хотя бы Бенсона Фарба.

«Проблема математики в том, что в 90% случаев вас ждёт неудача, и вам нужно быть человеком, умеющим это принимать», — сказал однажды Фарб за ужином с друзьями. Когда один из гостей, также математик, удивился тому, что Фарбу удаётся достигать успеха в целых 10% случаев, Фарб признал: «Нет, нет, я сильно преувеличил процент своих успехов».

Фарб, тополог из Чикагского университета, с радостью встретил последнюю свою неудачу – хотя, честно говоря, это не только его заслуга. Вопрос связан с задачей, парадоксальным образом одновременно решённой и нерешённой, открытой и закрытой.
Читать дальше →
Total votes 34: ↑29 and ↓5+34
Comments12

Квантовые вычисления и язык Q# для начинающих

Reading time13 min
Views78K
Возможно, вы узнали о выпуске пакета средств квантовой разработки Quantum Development Kit и подумали, что это звучит безумно круто… а потом вспомнили, что про квантовую механику почти ничего не знаете. Но ничего страшного. Через 30 минут вы будете знать о кубитах, суперпозиции и квантовой запутанности достаточно, чтобы написать свою первую программу и, что более важно, неплохо понимать, что она делает.

Читать дальше →
Total votes 50: ↑48 and ↓2+46
Comments21

Антивакцинаторы и теория игр, или математические основы антивакцинаторского движения

Reading time19 min
Views32K


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

Читать дальше →
Total votes 79: ↑77 and ↓2+105
Comments241

Information

Rating
Does not participate
Registered
Activity