Pull to refresh
72
0
Dzmitry Malyshau @kvark

User

Send message

Vange-rs: взгляд на реализацию WebAssembly в Rust

Reading time 7 min
Views 7.8K

Вангеры одна из самых почитаемых и технологичных игр своего времени, продолжает жить и развиваться. Благодаря сплоченному сообществу игра получила множество усовершенствований: HD, 60 FPS, новые сетевые режимы и много другое. Vange-rs один из интереснейших проектов по Вангерам. Это rust версия игры, основной изюминкой которой является 3D рендер основанный на wgpu.

Запустить в браузере
Total votes 34: ↑33 and ↓1 +32
Comments 14

Двадцать задачек (по безумной, восхитительной геометрии)

Reading time 6 min
Views 127K
Предупреждение врача. Остерегайтесь этих головоломок. Побочные эффекты могут включать потерянное послеобеденное время, скомканные волосы и восклицания «А-а-а-х, вот как это делается» настолько громкие, что могут треснуть оконные стёкла.

Несколько месяцев назад я наткнулся в твиттере на математические головоломки Катрионы Ширер. Они сразу меня увлекли: каждая головоломка такая осязаемая, ручной работы, словно просит её решить. И на каждую вы можете легко потратить час времени, а то и больше.

Катриона разрешила мне подвесить вас на эти задачки — и поделилась 20 своими любимыми головоломками. Она даже удовлетворила моё любопытство и восхищение, дав интервью (см. в конце статьи).

Наслаждайтесь. И не говорите, что врач не предупреждал.
Читать дальше →
Total votes 54: ↑52 and ↓2 +50
Comments 65

Журнал «Новости Космонавтики» прекращает своё существование

Reading time 3 min
Views 49K

Российский журнал и форум «Новости космонавтики» — эпоха, явление, бренд популяризации российской космонавтики и её истории, исчезнет в ближайшее время. В отличии от предыдущего случая в 2015 году, в этот раз нефинансовые причины. Новому руководству Роскосмоса не нужен такой журнал.
Читать дальше →
Total votes 129: ↑123 and ↓6 +117
Comments 450

Эта гениальная карта объясняет, как всё в физике подогнано друг к другу

Reading time 2 min
Views 60K

Источник изображения: DominicWalliman/YouTube

От пространства-времени до теории хаоса


Физика — огромная и сложная область знаний. Но кроме того, она ещё одна из самых захватывающих наук, потому что имеет дело с «чёрными дырами», «червоточинами», квантовой телепортацией и гравитационными волнами.
Total votes 40: ↑33 and ↓7 +26
Comments 96

Почему физики считают, что теория струн может оказаться «теорией всего»

Reading time 6 min
Views 57K

В основе теории струн лежит идея о том, что вместо нульмерных элементарных частиц Вселенная состоит из одномерных струн

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

Во многих смыслах, теория струн – лучший кандидат на квантовую теорию гравитации, объединяющую взаимодействия на высочайших уровнях энергий. И хотя тому нет экспериментальных подтверждений, существуют убедительные теоретические причины считать, что это так и есть. В 2015 году крупнейший из живущих специалистов по теории струн, Эдвард Виттен, написал работу о том, что каждый физик должен знать о теории струн. И вот, что она означает – даже если вы не физик.
Читать дальше →
Total votes 32: ↑27 and ↓5 +22
Comments 32

Краткая история квантовых альтернатив

Reading time 18 min
Views 16K

«Копенгагенская» квантовая механика говорит, что реальность не существует, пока она не измерена, поэтому многие продолжают искать альтернативы этой интерпретации



В 1915 году Альберт Эйнштейн с помощью своих друзей разработал теорию гравитации, перевернувшую всё то, что мы считали самим фундаментом физической реальности. Мысль о том, что населяемое нами пространство не может быть совершенно описано евклидовой геометрией, была непостижимой; настолько, что философ Иммануил Кант, во многих смыслах радикальный мыслитель, заявил, что никакая теория физики не сможет с ней справиться.

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

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

Что можно назвать научной революцией более глубокой, чем общая теория относительности? Что могло создать тектонический сдвиг, более мощный, чем идея о том, что сами пространство и время искривляются материей?
Читать дальше →
Total votes 19: ↑19 and ↓0 +19
Comments 16

Операционные системы с нуля; Уровень 0

Reading time 11 min
Views 132K

Добрый день/вечер/ночь/утро! Есть один экспериментальный курс по операционным системам. Есть он в Стэнфордском университете. Но часть материалов доступно всем желающим. Помимо слайдов доступны полные описания практических занятий.


Чем этот курс отличается от прочих других? Большая часть кода пишется самостоятельно и выполняется на вполне реальном современном железе. В качестве целевой платформы выбран Raspberry Pi 3 model B. Т.е. достаточно актуальная архитектура AArch64. ARMv8 Cortex-A53, четыре ядра, 64-бита и вот это всё. В качестве основного языка программирования выбран Rust. Который безопасный, быстрый, без GC и так далее. Его, Rust, предполагается изучать во время курса.


Тут есть про диски, файловые системы, операции ввода-вывода, потоки /процессы, планирование, виртуальную память, защиту и безопасность, прерывания, параллелизм и синхронизацию. Как и в любом другом, уважающем себя курсе. Разница в актуальности материала и в количестве практики. Коддить придётся много.

Читать дальше →
Total votes 80: ↑78 and ↓2 +76
Comments 55

Корабли дальней космической связи

Reading time 8 min
Views 50K


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

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

17 научно-исследовательских судов работали в Службе космических исследований Отдела морских экспедиционных работ Академии наук СССР. Флот участвовал во всех наиболее значимых событиях космической программы СССР и даже частично дожил до наших дней. Да, таких кораблей почти не осталась, но технология использования кораблей измерительного комплекса не устарела и сохраняет актуальность.
Читать дальше →
Total votes 86: ↑83 and ↓3 +80
Comments 244

Логика сознания. Вступление

Reading time 8 min
Views 111K
image В свое время на Хабре был опубликован цикл статей «Логика мышления». С тех пор прошло два года. За это время удалось сильно продвинуться вперед в понимании того, как работает мозг и получить интересные результаты моделирования. В новом цикле «Логика сознания» я опишу текущее состоянии наших исследований, ну а попутно попытаюсь рассказать о теориях и моделях интересных для тех, кто хочет разобраться в биологии естественного мозга и понять принципы построения искусственного интеллекта.

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

Ситуация, связанная с изучением мозга, особенная для науки. Во всех остальных областях естествознания есть базовые теории. Они составляют фундамент на котором строятся все последующие рассуждения. И только в нейронауке до сих пор нет ни одной теории, которая хоть как-то объясняла, как в нейронных структурах мозга протекают информационные процессы. При этом накоплен огромный объем знаний о физиологии мозга. Получены очень обнадеживающие результаты с помощью искусственных нейронных сетей. Но перекинуть мостик от одного к другому, пока, не удается. То, что известно о биологических нейронных сетях очень плохо соотносится с созданными на сегодня архитектурами искусственных нейронных сетей.

Не должна вводить в заблуждение распространенная фраза о том, что многие идеи искусственных нейронных сетей позаимствованы из исследований реального мозга. Заимствование носит слишком общий характер. По большому счету, оно заканчивается на том, что и там и там есть нейроны и между этими нейронами есть связи.
Читать дальше →
Total votes 49: ↑46 and ↓3 +43
Comments 179

Разработка игр на Rust. Обзор экосистемы

Reading time 6 min
Views 45K

Здравствуйте! Я занимаюсь разработкой игры на Rust и хочу рассказать об этом.


Моя первая статья будет полезна тем, кто хочет начать делать игру на Rust, но не уверен, какие из пакетов (крейтов) стоит использовать и что вообще происходит в экосистеме Rust для игрового разработчика.

Читать дальше →
Total votes 61: ↑60 and ↓1 +59
Comments 67

Скелетная анимация в играх. Обзор техник и ресурсов

Reading time 9 min
Views 95K
Anima — это душа, отличающая живое от мертвого. Аристотелевская душа — это принцип движения, проявляющегося в четырёх видах: перемещение, превращение, убывание и возрастание. Спустя почти две с половиной тысячи лет мы используем те же категории в компьютерной графике. Скелетная анимация определяет перемещение, морфинг служит для превращений, а убывание и возрастание это обычное масштабирование. Анимированная графика оживляет образ, вдыхает в картинку душу, и это, на мой взгляд, даже важнее, чем достоверная игра света и тени.

image


Создание качественных скелетных 3D анимаций сегодня, пожалуй, самая труднодоступная для инди разработчиков задача. Вероятно поэтому так мало инди игр в 3D, и так много проектов в стилях пиксель арта или примитивизма, а также бродилок без персонажей в кадре. Но теперь это соотношение может измениться…
Читать дальше →
Total votes 43: ↑42 and ↓1 +41
Comments 29

Революция, которую нельзя слить: почему робототехника может стать нашей новой космонавтикой

Reading time 4 min
Views 18K


Статья от гендиректора Mail.Ru Group Дмитрия Гришина.

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

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

Мы перестали быть страной мечтателей, мы стали циничными и приземленными.
Читать дальше →
Total votes 38: ↑31 and ↓7 +24
Comments 137

Простой Blender. Часть 1

Reading time 6 min
Views 223K
image
КДПВ. По мотивам.

О чем пост


Пост написан по мотивам этого комментария . Особенно вдохновила картинка в ответах к этому комментарию. Изначально хотел здесь написать про UI и основы моделлинга в Blender, но выходит многовато (я словообилен). Поэтому, про моделлинг — позже (если публика захочет). А здесь — про UI Blender с точки зрения непрофессионала.
Тоже хочу танк нарисовать!
Total votes 55: ↑53 and ↓2 +51
Comments 38

LLVM для исследователей

Reading time 14 min
Views 50K
В этой статье рассказывается о проведении исследований на базе инфраструктуры компилятора LLVM. Нашего рассказа должно хватить для того, чтобы исследователи, которым компиляторы прежде были по большей части безразличны, пришли в восторг от LLVM и сделали с его помощью что-нибудь интересное.

Что такое LLVM?


LLVM — это по-настоящему удобный для разборки и сборки «ранний» компилятор для таких традиционных языков программирования, как C и C++.

LLVM настолько хорош, что считается «больше, чем просто компилятором» (это динамический компилятор, он работает с языками, не относящимися к семейству C, он представляет собой новый формат доставки для App Store и т. д. и т. п.). Все перечисленное верно, но для нашей статьи важно лишь приведенное выше определение.

LLVM имеет несколько ключевых отличий от других компиляторов:

  • Главное новшество — промежуточное представление (ПП). LLVM работает с ПП, которое действительно можно прочитать (если вы умеете читать ассемблерный код). Возможно, кому-то это не покажется столь уж большим откровением, однако это свойство очень важно. ПП других компиляторов обычно имеют настолько сложную структуру, что их невозможно записать вручную, трудно понять и использовать.
Читать дальше →
Total votes 72: ↑68 and ↓4 +64
Comments 6

Асинхронность 2: телепортация сквозь порталы

Reading time 27 min
Views 49K


Не прошло и года, как я добрался до продолжения статьи про асинхронность. Эта статья развивает идеи той, самой первой статьи про асинхронность [1]. В ней обсуждается достаточно сложная задача, на примере которой будет раскрыта мощь и гибкость использования сопрограмм в различных нетривиальных сценариях. В заключение будут рассмотрены две задачи на состояние гонки (race-condition), а также небольшой, но очень приятный бонус.
Читать дальше →
Total votes 63: ↑60 and ↓3 +57
Comments 28

Компьютерные интерфейсы в кино — эволюция воображения

Reading time 10 min
Views 83K
TL;DR. Мы пытались охватить многое, поэтому статья получилась пугающе объемной. Но, надеюсь, познавательной. А еще под нее ностальгировать можно.



У интерфейсов в поп-культуре — целая история, которая заслуживает отдельного внимания. Сегодня поговорим о том, как люди представляли и изображали интерфейсы в кино. Приоритет будет за компьютерами (от домашних до бортовых) однако стоит понимать, что любая система, с помощью которой человек взаимодействует с другой системой — это интерфейс.
Читать дальше →
Total votes 64: ↑56 and ↓8 +48
Comments 41

Skyforge: технологии рендеринга

Reading time 16 min
Views 103K


Всем привет! Меня зовут Сергей Макеев, и я технический директор в проекте Skyforge в команде Allods Team, игровой студии Mail.Ru Group. Мне хотелось бы рассказать про технологии рендеринга, которые мы используем для создания графики в Skyforge. Расскажу немного о задачах, которые стояли перед нами при разработке Skyforge с точки зрения программиста. У нас свой собственный движок. Разрабатывать свою технологию дорого и сложно, но дело в том, что на момент запуска игры (три года назад) не было технологии, которая могла бы удовлетворить всем нашим запросам. И нам пришлось самим создать движок с нуля.
Читать дальше →
Total votes 139: ↑132 and ↓7 +125
Comments 51

Ваша виртуальная девушка будущего

Reading time 4 min
Views 53K


Долгое время отношения с виртуальными девушками существовали лишь в фантастических фильмах и видеоиграх. Но с появлением рабочих версий шлема Oculus Rift и других устройств виртуальной реальности некоторые разработчики начали думать об этой теме всерьез. Для Oculus Rift уже сейчас есть простенькие порно-игры, основной смысл которых — раздеть виртуальную девушку догола. Но технологии не стоят на месте, и прямо сейчас любители и профессионалы по всему миру работают над созданием более совершенных программ и контроллеров для виртуального секса.
Читать дальше →
Total votes 48: ↑39 and ↓9 +30
Comments 45

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

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

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

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

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

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

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

Information

Rating
Does not participate
Location
Toronto, Ontario, Канада
Date of birth
Registered
Activity