Pull to refresh
0
0
romolus @romolus

User

Send message

Динамические свет и тени в моей 2d игре

Reading time5 min
Views25K
Я работаю над игрой в жанре стесл-экшн, где в геймплее большую роль будут играть тени. Поэтому я сделал динамическое освещение/затенение, используя WebGL шейдеры.

Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments27

Как начать работать с GitHub: быстрый старт

Reading time6 min
Views1.2M


Распределенные системы контроля версий (DVCS) постепенно замещают собой централизованные. Если вы еще не используете одну из них — самое время попробовать.

В статье я постараюсь показать, как можно быстро начать экспериментировать с git, используя сайт github.com.

В статье не будут рассмотрены различия между разными DVCS. Также не будет детально рассматриваться работа с git, по этой теме есть множество хороших источников, которые я приведу в конце статьи.
Читать дальше →
Total votes 182: ↑165 and ↓17+148
Comments51

Software renderer — 1: матчасть

Reading time29 min
Views83K
Программный рендеринг (software rendering) — это процесс построения изображения без помощи GPU. Этот процесс может идти в одном из двух режимов: в реальном времени (вычисление большого числа кадров в секунду — необходимо для интерактивных приложений, например, игр) и в «оффлайн» режиме (при котором время, которое может быть потрачено на вычисление одного кадра, не ограничено настолько строго — вычисления могут длиться часы или даже дни). Я буду рассматривать только режим рендеринга в реальном времени.

У этого подхода существуют как недостатки так и достоинства. Очевидным недостатком является производительность — CPU не в состоянии конкурировать с современными видеокартами в этой области. К достоинствам стоит причислить независимость от видеокарты — именно поэтому он используется как замена аппаратного рендеринга в случаях, когда видеокарта не поддерживает ту или иную возможность (так называемый software fallback). Существуют и проекты, цель которых — полностью заменить аппаратный рендеринг программным, например, WARP, входящий в состав Direct3D 11.

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

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

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

В конце статьи будет ссылка на гитхаб проекта, который можно рассматривать как пример реализации.
Читать дальше →
Total votes 95: ↑90 and ↓5+85
Comments51

Гладим мозг ASMR

Reading time2 min
Views146K

У Интернета есть интересное свойство — он делает заметными особенности человеческой психики. С помощью интернета мы узнаем, какие вещи нам нравятся (например, котята), а что — отталкивает (например, коробочки лотоса). Относительно недавно таким же случайным образом в Интернете был обнаружен интересный и приятный эффект, названный автономной сенсорной меридиональной реакцией (АСМР, ASMR). Что же это такое?
Читать дальше →
Total votes 52: ↑39 and ↓13+26
Comments169

Android 2.2, наконец-то, обогнал 2.1

Reading time1 min
Views453
Согласно только что опубликованной статистике на Android Developers, Android 2.2, наконец-то, обогнал 2.1.

2.2 сейчас используется на 43,4 % всех андроид-устройств, тогда как доля 2.1 почти на 4 % меньше — 39,6 %. Общая доля 2.1 и 2.2 составляет 83 %. Доли Android 1.5 и 1.6 продолжают снижаться, у них 6,3 % и 10,6 % соответственно.
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments40

XNA 3D: введение в custom shader и чуть-чуть прототипа

Reading time11 min
Views29K


Привет, Хабрахабр! К сожалению, очень давно не писал на хабр. Личные дела совершенно были против того, чтобы сесть и написать пару статей по геймдеву. Может оно и к лучшему, за эти два года я набрался очень много опыта и всегда рад им поделиться. Стоит отметить, что я совершенно отказался от создания 2D игр: я не против их, но разрабатывать игры в 3D куда интереснее и веселее! По традиции — в качестве инструмента будет XNA 4.0, почему XNA 4.0 дорогой слушатель? А все потому, что, он до сих пор остается актуальной для инди-разработчиков. У нас есть язык с очень низким вхождением — C#. Есть тот самый фреймворк XNA с необходимыми начальными классами/структурами и алгоритмами. И есть DirectX с поддержкой шейдеров, вплоть до Shader Model 3.0. Если ты, %username%, читаешь меня впервые, то можешь прочитать заодно и мои статьи датированными 2012 годом. Не сказать, что они актуальны на все 100%, что в них нет ошибок, но определенную базу они могут дать. Как, наверное, понятно — я буду писать только о 3D: со списком тем я определился не до конца, но думаю, что сформирую их довольно быстро.

Пока точно задумал две статьи:
  • “XNA 3D: введение в custom shader и чуть-чуть прототипа”
  • “XNA 3D: HDR vs LDR, реализация HDR"


Сейчас сделаю введение в custom shader и реализуем простой прототип игры FEZ.
Читать дальше →
Total votes 60: ↑58 and ↓2+56
Comments11

Как я перепробовал пять платежных систем для своего сайта

Reading time8 min
Views323K


Более трех лет назад я написал пост о выборе платежной системы для приема платежей на своем прошлом проекте. С тех пор прошло довольно много времени и многое в способах приема платежей изменилось. Теперь я расскажу как делал прием платежей на сайте poiskvps.ru.

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

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


Читать дальше →
Total votes 100: ↑86 and ↓14+72
Comments69

Разбор задач четвертого квалификационного раунда Russian Code Cup 2014

Reading time4 min
Views6.6K


В воскресенье, 1 июня, прошел четвертый, заключительный, квалификационный раунд Russian Code Cup 2014.

На участие в раунде зарегистрировалось 5428 человек. Как минимум одно решение прислали 730 участников. Всего за раунд было прислано 4793 решения, из них правильных — 1531.

Больше всего решений на GNU C++ — 1786.
Решений на Python — 307, из них правильных 86.
Решений на PHP — 93, из них правильных 15.
Решений на Perl — 6, из них правильных 2.
Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments7

Анатолий Вассерман: о будущем, интеллекте и социализме

Reading time13 min
Views75K


Анатолий Александрович Вассерман широко известный в России политолог и мыслитель. Оставивший свой след в русскоязычном интернет-фольклоре как «Онотоле», ставший объектом многочисленных шуток и анекдотов, он продолжает сохранять чувство юмора и остроту ума. Специально для нашего блога на Хабре, мы решили взять интервью у Анатолия Александровича, поговорить со знаменитым интеллектуалом об IT, науке, памяти, будущем и даже политике.
о программировании, книгах и гаджетах в жилетке читайте под катом
Total votes 192: ↑114 and ↓78+36
Comments160

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity