Как стать автором
Обновить
27
0
Владимир Алямкин @ufna

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

Отправить сообщение

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

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

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

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

Время на прочтение11 мин
Количество просмотров60K
image

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

Введение


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

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

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

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

Время на прочтение16 мин
Количество просмотров14K


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


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

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

Время на прочтение13 мин
Количество просмотров163K


Послушала на днях 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.
Читать дальше →
Всего голосов 139: ↑119 и ↓20+126
Комментарии247

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

Время на прочтение11 мин
Количество просмотров12K


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

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

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

Время на прочтение6 мин
Количество просмотров80K
image

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

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

Время на прочтение29 мин
Количество просмотров34K

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

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

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

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

Назад в будущее
Всего голосов 47: ↑47 и ↓0+47
Комментарии17

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

Время на прочтение5 мин
Количество просмотров27K

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

Читать далее
Всего голосов 73: ↑37 и ↓36+12
Комментарии129

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

Время на прочтение12 мин
Количество просмотров5.6K

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

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

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии3

Яблочный CI

Время на прочтение5 мин
Количество просмотров4.1K

Введение


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

Читать дальше →
Всего голосов 12: ↑11 и ↓1+16
Комментарии5

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

Время на прочтение13 мин
Количество просмотров9.5K


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

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

Время на прочтение25 мин
Количество просмотров195K
image

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

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

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

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

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

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

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

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

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

Время на прочтение6 мин
Количество просмотров13K

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

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

Читать далее
Всего голосов 34: ↑34 и ↓0+34
Комментарии7

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

Время на прочтение12 мин
Количество просмотров9.3K


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

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

Время на прочтение9 мин
Количество просмотров16K

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




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

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

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

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

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

Читать дальше →
Всего голосов 50: ↑48 и ↓2+46
Комментарии21

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

Время на прочтение19 мин
Количество просмотров32K


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

Читать дальше →
Всего голосов 79: ↑77 и ↓2+105
Комментарии241

Популярные вопросы на собеседовании по C++ и ответы на них

Время на прочтение9 мин
Количество просмотров333K
Здравствуйте!

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

О том, что спрашивают на собеседовании у C++ программистов, а также об ответах на эти вопросы и пойдет речь в данном посте.
Читать дальше →
Всего голосов 199: ↑196 и ↓3+193
Комментарии174

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность