Pull to refresh
0
Александр @sane4ekread⁠-⁠only

User

Send message

У китайских производителей электроники проблемы: санкции США способны замедлить выпуск чипов в КНР в ближайшие 10 лет

Reading time4 min
Views15K
image

Торговая война Поднебесной и США продолжается, стартовав с президентства Трампа, а то и раньше. При этом Китай все время пытается выйти из сложной для себя ситуации, а Штаты вводят новые и новые ограничения.

Одно из них, связанное с «Законом о чипах и науке», способно затормозить развитие полупроводниковой промышленности Китая на ближайшие 10 лет. Давайте посмотрим, в чем тут дело — под катом, как всегда, подробности.
Читать дальше →
Total votes 54: ↑46 and ↓8+55
Comments162

Реализация утилиты cat на C

Level of difficultyEasy
Reading time6 min
Views36K

Идея довольно проста - принять файл в качестве аргумента, открыть его, занести в буфер по частям и вывести на стандартный вывод. Утилита cat также оснащена различными флагами опций, которые позволяют пользователю манипулировать буфером перед его отправкой на стандартный вывод.

Читать далее
Total votes 33: ↑23 and ↓10+15
Comments22

Математика в Gamedev по-простому. Триангуляции и Triangle.Net в Unity

Reading time5 min
Views21K
Всем привет! Меня зовут Гриша, и я основатель CGDevs. Математика – очень крутой инструмент при разработке игр. Но если скажем без понимания векторов и матриц обойтись в принципе сложно, то алгоритмы триангуляций не столь обязательная вещь, но с помощью них решается достаточно большое количество интересных задач. Сегодня хотелось бы поговорить про достаточно важный инструмент в вычислительной геометрии, такой как триангуляции и их применение в игровой индустрии. Кроме того, я написал порт и немного обёрток великолепной библиотеки Triangle.Net для Unity. Если интересно – добро пожаловать под кат. Ссылка на гитхаб прилагается.


Total votes 26: ↑26 and ↓0+26
Comments6

Математика в Gamedev по-простому. Матрицы и аффинные преобразования

Reading time7 min
Views31K
Всем привет! Меня зовут Гриша, и я основатель CGDevs. Сегодня хочется продолжить тему математики в геймдеве. В предыдущей статье были показаны базовые примеры использования векторов и интегралов в Unity проектах, а сейчас поговорим о матрицах и аффинных преобразованиях. Если вы хорошо разбираетесь в матричной арифметике; знаете, что такое TRS и как с ним работать; что такое преобразование Хаусхолдера – то вы возможно не найдёте для себя ничего нового. Говорить мы будем в контексте 3D графики. Если же вам интересна эта тема – добро пожаловать под кат.


Читать дальше →
Total votes 31: ↑24 and ↓7+17
Comments24

Эйчары такие противные девочки, которые отказывают из-за цвета глаз: найм глазами IT-рекрутера

Reading time5 min
Views59K

Как понять, что вы провалили собеседование, потому что не так дышите или выбесила ваша рубашка? А как понравиться рекрутерам, чтобы трудоустроиться? Рассказываю о буднях эйчаров и списке, по которому отсекаются даже самые талантливые кандидаты.

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

Читать далее
Total votes 81: ↑54 and ↓27+42
Comments366

ИИ в классической научной фантастике

Level of difficultyEasy
Reading time10 min
Views2.3K

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

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

Многие мои ровесники, относящиеся к поколению бэби‑бума 80-х годов, по понятным причинам не имели возможности с самого детства пристраститься к высоким технологиям в современном понимании этого термина. То, что современных тинэйджеров сопровождает с самого детства — смартфоны, умные часы, ноутбуки, интернет 24/7, всевозможные формы AI — нам было недоступно. Но мы обо всем этом слышали, представляли, или — как бы сказали сейчас — визуализировали. И самое главное — мы черпали это все из художественной литературы, реже — из фильмов.

Вспомнить...
Total votes 12: ↑10 and ↓2+11
Comments9

Два слова о процедурной графике

Reading time5 min
Views6.8K

Среди многочисленных демосценерских конкурсов, которые традиционно входят в программу различных demo party, незаслуженно недооценённым, на мой взгляд, является конкурс процедурной графики (procedural graphics). Смысл этого специфического вида компьютерного творчества — формирование статичного изображения при помощи короткой программы. Стандартные ограничения на размер — 4кб, 1кб, 256 байт.

Связана недооценка, думаю, с тем, что конкурс одновременно не вполне понятен как тем, кто любит демки (поскольку процедурная графика статична), так и тем, кто любит картинки (т.к. процедурная графика не позволяет нарисовать что хочешь). И всё же, его популярность хоть и медленно, но растёт.

Первые работы во многом были вызваны интересом к теме трассировки лучей (raytracing). Сам по себе алгоритм довольно простой, но требует много вычислений, поэтому работы стали возможны, когда распространились компьютеры с, во‑первых, достаточно высокой производительностью и, во‑вторых, с достаточным количеством отображаемых цветов (или, хотя бы, градаций серого). Я порылся на pouet и нашёл одну из первых работ в категории «procedural graphics» — Digital Phantasy by EG:

Читать далее
Total votes 50: ↑50 and ↓0+69
Comments21

Fan Control — лучший софт для управления вентиляторами в компьютере

Level of difficultyEasy
Reading time8 min
Views136K


Каждый владелец компьютера сталкивался с шумом вентиляторов. Хорошо, когда они качественные, не шипят и не гудят, а материнская плата каким-то чудом сама управляет ими в оптимальном режиме, и все довольны.

Но зачастую всё совсем не так. Запуская даже лёгкую нагрузку, вентиляторы взвывают на пару секунд, а иногда какой-то Карлсон на определённых оборотах входит в резонанс с корпусом, и здесь хоть вешайся.

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

В этой статье я опишу очень небольшую утилиту для управления вентиляторами в ПК, которая поразила меня своей гибкостью, и вот уже многие годы является второй в списке на установку в свежую систему. Почему второй? Потому что первым делом в систему ставится браузер, желательно огнелис.
Читать дальше →
Total votes 45: ↑41 and ↓4+53
Comments78

Под капотом Graveyard Keeper: Как реализованы графические эффекты

Reading time5 min
Views55K
Всем привет! Целых 4 года я не писал на Хабр. Последняя моя серия постов была о различных инструментах и приемах, которые мы применяли на нашей прошлой игре (разрабатывая ее на Unity). С тех пор игру ту мы благополучно выпустили, а также выпустили и новую. Так что теперь можно немного выдохнуть и написать несколько новых статей, которые могут быть кому-то полезны.


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

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

Для начала, кратко перечислю из чего собирается картинка в нашей игре:
Читать дальше →
Total votes 179: ↑178 and ↓1+177
Comments98

Создание персонажей в Blender и Unity

Reading time18 min
Views162K

Визуально персонажи 3D-игр имитируются с помощью использования моделей, текстур и анимаций.

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

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

Возможность многократного применения анимаций позволяет использовать анимации из Asset store и с таких вебсайтов, как mixamo.com, для ваших собственных персонажей. Это экономит кучу времени!

В этом туториале вы узнаете, как подготовить гуманоидную модель в Blender и как перенести её в Unity. В частности, вы научитесь следующему:

  • Создавать арматуру (скелет) персонажа и выполнять её риггинг (привязку скелета к мешу)
  • Модифицировать персонаж добавлением аксессуаров и объектов
  • Экспортировать модель в FBX
  • Импортировать модели Blender
  • Создавать и настраивать гуманоидный аватар
  • Прикреплять к персонажу объекты
  • Анимировать гуманоида в Unity
Читать дальше →
Total votes 42: ↑41 and ↓1+40
Comments8

Создаём файтинг в Unity: реализация Hitbox и Hurtbox

Reading time13 min
Views28K
image

Объяснение


Что же такое hitbox и hurtbox? Разве это не одно и то же?

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

Hitbox — это невидимый прямоугольник (или сфера), определяющий, куда попадает атака.

Hurtbox — это тоже невидимый прямоугольник (или сфера), но определяющий место, в которое игрок или объект может ударить с помощью Hitbox.


На этом изображении из Street Fighter IV красный прямоугольник — это hitbox, а зелёный — hurtbox
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments1

Использование Singleton в Unity3D

Reading time12 min
Views76K

Вступление


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

В данной статье мы постарались не только описать такой подход к организации кода, как Singleton (в народе называемый паттерном проектирования), но и рассмотреть наиболее комфортные и правильные подходы к обработке событий и поговорить об удобности кода в целом.
Читать дальше →
Total votes 12: ↑7 and ↓5+2
Comments31

UE4 для Unity разработчиков: создание 2D-игр

Reading time11 min
Views35K


Продолжая сравнение топовых 3D-движков — Unreal Engine 4 и Unity, на этот раз мы рассмотрим их достоинства и недостатки при разработке 2D-проектов. Мы выясним, чем хорош Unreal для 2D, как организована работа с основными элементами двухмерной игры и какими средствами можно реализовать 2D-персонажей со скелетной анимацией.
Читать дальше →
Total votes 46: ↑44 and ↓2+42
Comments29

Пишем игровую логику на C#. Часть 2/2

Reading time11 min
Views24K
Это продолжение предыдущей статьи. Мы шаг за шагом создаем движок, на котором будет работать игровая логика нашей экономической стратегии. Если вы видите это впервые — настоятельно рекомендую начать с Части 1, так как это зависимое продолжение и требует ее контекста.

Как и раньше — внизу статьи вы можете найти полный код на ГитХаб и ссылку на бесплатное скачивание.



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

Пишем игровую логику на C#. Часть 1/2

Reading time12 min
Views95K
Всем привет. В связи с выходом моей игры SpaceLab на GreenLight я решил начать серию статей о разработке игры на C#/Unity. Она будет основываться на реальном опыте её разработки и немного отличаться от стандартных гайдов для новичков:

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




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

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

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

Кого заинтересовало узнать, что за игра — внизу есть видео и ссылка на бесплатное скачивание.
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments51

Лайфхаки редактора Unity 3D. Часть 1: Атрибуты

Reading time8 min
Views118K

Содержание


  • Часть 0. Перечень GUI элементов, используемых в статьях
  • Часть 1. Атрибуты
  • Часть 2. Окна
  • Часть 3. Редактор класса, наследника от MonoBehavior или ScriptableObject
  • Часть 4. Редактор класса, кастомный редактор для сериализуемой переменной

Предисловие


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

Большая часть взята из опыта использования, куда попала из родной документации движка. Вы легко можете сами найти необходимую информацию, поворошив документацию Unity 3D. Просто, по собственному опыту скажу, что у многих программистов либо нет времени, либо нет желания копаться в мантрах. Поэтому и выкладываю максимально краткое руководство по основным редакторским возможностям, которые я использовал на работе и в своих проектах.
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments11

UE4 для Unity-разработчиков

Reading time12 min
Views38K

image


Привет, Хабр! Меня зовут Александр, и сегодня мы сравним Unity и Unreal Engine 4.


Думаю, многие разработчики пробовали движок Unity и видели сделанные на нём игры, проекты, какие-то демки. Его главный конкурент — движок Unreal Engine. Он берёт своё начало в проектах компании Epic Games, таких как шутер Unreal Tournament. Давайте рассмотрим, как начать работу с движком Unreal после Unity и какие препятствия могут подстерегать нас на пути.

Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments51

GameDev с нуля: Unity3D и векторная графика

Reading time5 min
Views33K
OVIVO продолжают рассказывать о своём опыте разработки игр. Статья в первую очередь будет интересна новичкам в геймдеве и тем, кто уже освоил азы работы с Unity. Слово автору. :)


Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments1

20 вредных советов по разработке игр на Unity

Reading time4 min
Views54K

Геймдев — занятие по настоящему увлекательное, особенно когда в команде есть как опытные программисты, так и новички. В отличии от таких движков как Unreal и CryEngine, в Unity достаточно низкий порог вхождения, и зачастую ветераны .NET и новички начинают выяснять отношения, которые заканчиваются дракой с применением офисной мебели.

В этой статье я попытался собрать советы которые помогут вам и вашей команде договориться наконец о том, как надо писать код, и, надеюсь, хорошо посмеяться. И так, поехали!

1. Пиши на UnityScript

Один язык в проекте — это скучно. Разнообразь жизнь своих коллег, пусть учаться быть полиглотами. C# — это майкрософт, и вообще строгая типизация это не твое.

2. Не используй var

Сами Unity запрещают* это делать, да и вообще непонятно, какого типа переменная. Когда тебе скажут про подсказки IntelliSense — закатывай глаза, майкрософт головного мозга! Твой Notepad++ этого не умеет.

3. Смешивай стили

Ну а что? Сами Unity нарушают C# Style Guide и фигачат camelCase в пропертях, чем ты хуже? Если используешь MonoDevelop, не забывай периодически менять табы на пробелы и обратно. При этом говори всем, что в MonoDevelop «настройки слетели» — про этот баг все знают!
Читать дальше →
Total votes 39: ↑29 and ↓10+19
Comments81

2D магия в деталях. Часть четвёртая. Вода

Reading time13 min
Views34K

— Я тут воду для проекта запилил.
— О, круто! А почему она плоская? Даёшь волны!

— Слушай, ты тогда про волны говорил, помнишь? Зацени!
— Да, хорошие волны, а преломление и каустику ещё не делал?

— Привет, я тут игрался с Unity всю ночь, смотри какие отражения и каустику закодил!
— Дарова, и правда, хорошо! А когда у тебя вода кипит, отражения не глючат?

— Хай, реализовал наконец, кипение, вроде ничего?
— О, прямо как нужно! Слушай, прикинь как круто, если кипящую волну заморозить?

— Лови картинку, лёд вроде ничего придумал?
— Норм, слушай, а у тебя лёд замерзает, он в объёме увеличивается? И кстати, ты когда геймлей то делать начнёшь?
Вариации на тему лога с другом.

Да, вы уже поняли, наконец-то расскажу про реализацию воды в проекте. Приступим?

Total votes 87: ↑86 and ↓1+85
Comments36
1

Information

Rating
Does not participate
Location
Краснодар, Краснодарский край, Россия
Date of birth
Registered
Activity