Pull to refresh
0
0
Михаил Носков @href

User

Send message

Elite: Dangerous и CosmosDB

Reading time25 min
Views14K

image


o7 cmdr!


Теплым карантинным вечером, в одном из телеграмных чатиков по Elite: Dangerous разгорелась дискуссия на тему: а у какого типа звезд чаще всего встречаются землеподобные планеты?


Дело в том, что исследование планет является одной из основных механик игры. А в иерархии полезности планет, землеподобные стоят на самом верху. Но и редкость их довольно высока. Так что командеры захотели узнать: на какие звезды прежде всего обращать внимание, при перемещении по млечному пути?


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

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

Почему центр пикселя должен быть в (0,5; 0,5)

Reading time3 min
Views6.4K
Сегодня, когда всё популярнее становится трассировка лучей (ray tracing) выполняемая из «глаза» камеры, этот урок нужно усвоить заново: код становится лучше, а жизнь — проще, если центр пикселя находится в координате (0,5; 0.5). Если вы уверены, что делаете всё правильно, то продолжайте в том же духе, для вас в статье нет ничего нового. Прочитайте лучше вот это.

Смысл размещения центра пикселя в (0,5; 0,5) впервые объяснила (по крайней мере, мне) милая короткая статья Пола Хекберта «Что такое координаты пикселя?» из книги 1990 года Graphics Gems, стр. 246-248.

Сегодня эту статью найти трудновато, поэтому вкратце изложу её суть. Допустим, у нас есть экран с шириной и высотой 1000. Давайте рассмотрим только ось X. Может возникнуть искушение назначить 0,0 центром самого левого пикселя в строке, 1,0 — центром следующего, и так далее. Можно даже использовать округление, при котором координаты с плавающей запятой 73,6 и 74,4 переносятся в центр 74,0.

Однако над этим стоит поразмыслить. При таком сопоставлении левый край будет находиться в координате -0,5, а правый — в 999,5. С такой системой неудобно работать. Хуже того, если к значениям координат пикселей применяются различные операторы наподобие abs() или mod(), то такое сопоставление может привести к незначительным погрешностям на краях.

Проще работать с интервалом от 0,0 до 1000,0, в котором центр каждого пикселя имеет дробную часть 0,5. Например, тогда целочисленный пиксель 43 будет иметь красивый интервал значений значений входящих в него субпикселей от 43,0 до 43,99999. Вот чертёж из статьи Пола:

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

Автоматические напоминания о днях рождения по данным из google contacts

Reading time1 min
Views101K
Я использую андроид телефон уже более полутора лет. Контакты наконец-то приведены в порядок и для многих проставлены дни рождения. Чтобы не забыть, а так же не поддаваться на провокации (многие любят изменять свой день рождения указанный в социальных сетях) я делал себе напоминания в google calendar с повторениями каждый год. Набивать все данные руками мне надоело и я решил разобраться как этот вопрос автоматизировать.

Google Calendar позволяет подключить внешний календарь с разными событиями в том числи и по дням рождения из Contacts.

Читать дальше →
Total votes 67: ↑59 and ↓8+51
Comments38

Information

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