Pull to refresh
3
0
Михаил Богатырев @ksupipr

Марковевед

Send message

Коллаборационный подход в машинном творчестве

Reading time5 min
Views3.7K

Введение


Природа человеческого творчества изучена ещё меньше, чем природа интеллекта. Тем не менее, машинное творчество, как направление в искусственном интеллекте, существует. Здесь поставлены проблемы написания компьютером музыки, литературных и живописных произведений, а создание реалистичных образов уже широко используется в кино и индустрии игр. Созданные системы позволяют производить конкретные образы, легко воспринимаемые человеком, что особенно полезно для интуитивных знаний, проверка которых в формальном виде требует значительных умственных усилий [1].
Под катом вас ждет краткий обзор предметной области, предлагаемый мной подход к написанию музыки компьютером и немного математики.
Читать дальше →
Total votes 20: ↑18 and ↓2+16
Comments13

Делаем загрузочно-установочную флешку

Reading time2 min
Views774K
После поста о восстановлении флешек, оказалось, что у многих теперь есть рабочие, бесхозные флешки, которые обязательно нужно задействовать. Почему бы не сделать из них загрузочные флешки с дистрибутивами необходимых ОС? Это может здорово пригодиться при установке/переустановке операционных систем на нетбуки, где отсутствуют приводы оптических носителей. А иногда может даже ускорить процесс установки и сделать его намного тише на компьютере, где привод есть.
Хотя на Хабре уже описывались варианты создания загрузочных флешек, но вариант, который предлагаю я — слишком прост и по своему универсален, чтобы обойти его стороной.

image
Читать дальше →
Total votes 161: ↑142 and ↓19+123
Comments54

Поиск пути в двухмерном пространстве: компонент AStar (action script 3.0)

Reading time5 min
Views3.3K
Данная статья представляет собой описание компонента AStar, реализующего простейший поиск пути по алгоритму А*. Существует много исходных кодов с реализацией данного алгоритма, однако предлагаемый мною компонент прост в использовании и хорошо документирован. Несмотря на малое количество методов и свойств, компонент весьма гибкий и применим во многих областях (хотя, конечно, разработчикам игр он придется больше всего по душе). Компонент будет дорабатываться в соответствие с пожеланиями и замечаниями читателей. Поэтому прошу всех заинтересованных писать мне на почту или в комментариях.

Далее идет исчерпывающее описание компонента и ссылки, по которым файл компонента можно скачать
Total votes 9: ↑8 and ↓1+7
Comments12

Создание игрового персонажа

Reading time5 min
Views166K


В данной статье описывается процесс создания персонажа для игрового движка. Статья в первую очередь адресована тем, кто интересуется процессом разработки next gen моделей, а также всем, кто хочет заглянуть за кулисы современного игродела. Персонажа я делал для портфолио, на персонажей переключился совсем недавно, можно сказать, что это первый доведенный до ума персонаж. Поскольку данная работа — мой личный проект, то я установил ограничение треугольников в 20 000, текстуры в 2048*2048, работа планировалась под PBR.
Читать дальше →
Total votes 87: ↑85 and ↓2+83
Comments47

UNET — новая сетевая технология в Unity 3D

Reading time15 min
Views51K
Некоторое время назад, на конференции Unite Asia, мы сообщили о разработке новых мультиплейерных инструментов, технологий и служб для разработчиков Unity. Внутреннее название этого проекта — UNET, что означает просто Unity Networking. Но наши планы простираются далеко за пределы простой работы с сетью. Как вы все знаете, основной целью Unity является демократизация процесса разработки игр. Команда Unity Networking хочет демократизировать разработку многопользовательских игр. Мы хотим, что бы все разработчики игр могли разрабатывать многопользовательские игры любого типа с любым количеством игроков. Само собой это не самая простая задача, но мы все уже решали ее в прошлом и очень хотим сделать это снова (потому что это действительно классно!). Мы решили разделить нашу общую цель на несколько фаз, что должны быть хорошо знакомо Unity-разработчикам. Согласно этому подходу мы выпустим фазу 1, получим отзывы пользователей, учтем их в нашей работе, что бы сделать следующую фазу еще лучше и повторим этот цикл. Для UNET фазой 1 будет то, что мы называем — Multiplayer Foundation — о ней мы расскажем чуть ниже. Фаза 2 будет построена на основе фазы 1 и предоставит технологию создания игр с авторизацией на сервере, которую мы называем Simulation Server, о ней в следующих статьях. В фазе 3 мы добавим возможность координировать множество Simulation Servers с помощью системы Master Simulation Server. Как всегда, точную дату выпуска назвать невозможно, особенно с учетом сбора отзывов от наших пользователей. Но мы можем сказать, что фаза 1 будет частью цикла релизов 5.х, а фаза 2 сейчас находится на этапе исследований.


Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments10

Язык программирования Swift. Русская версия

Reading time17 min
Views377K
imageПривет, Хабр! 2 июня все мы воочию могли наблюдать, как компания Apple начала творить революцию в стане Objective-C разработчиков, представив миру свой новый язык программирования – Swift. Вместе с этим, она выложила в открытый доступ небольшую документацию по языку, которую мы решили перевести, если на то будет спрос. Предлагаем вашему вниманию перевод первой главы. Если тема будет интересна, то мы продолжим публиковать перевод каждую неделю.
Читать дальше →
Total votes 117: ↑103 and ↓14+89
Comments51

Собираем за один вечер Virtual Reality шлем своими руками, с HD изображением и трекингом головы

Reading time25 min
Views604K
Практически не осталось уже людей, которые бы не слышали о виртуальной реальности, и, наверное все уже слышали о VR-шлеме Oculus Rift, который можно сказать стал стандартом для подобного рода устройств. Так же на рынке есть решения, позволяющие использовать экран смартфона диагональю 4-5" в качестве экрана VR-очков, такие как Durovis Dive или нашумевший Google Cardboard, которые снизили планку демократичности вхождения в виртуальную реальность можно сказать уже для всех, но, тем не менее, пока что эта технология не стала повсеместной: не у всех есть смартфон с нужной диагональю, чтобы воспользоваться тем же картонным проектом гугла, покупать пусть не дорогое, но стоящее денег устройство типа Durovis Dive без какого либо понимания, что с ним конкретно делать дальше, а тем более заказывать и ждать сам шлем Oculus Rift простому обывателю довольно проблематично по многим причинам — начиная от цены за устройство, что делать с которым пока не совсем понятно и заканчивая довольно длительным ожиданием доставки заказа. Естественно, самым главным тормозом, помимо цены, является обычная лень и потухшая любознательность.

В этой статье я расскажу вам о своем пути к виртуальной реальности, опишу детальное и практически исчерпывающее руководство по изготовлению VR-шлема с использованием любого относительно современного андроид-смартфона или планшета любой диагонали, этот проект обойдется примерно в 5-8 часов работы и в 500-2000 рублей затрат, в зависимости от ваших пожеланий и возможностей, а на выходе вы получите очень интересное устройство, которое позволит вам смотреть fullHD 3D фильмы и фотографии, играть в андроид-игры а также использовать шлем для игр в ваши любимые PC-игры любой степени современности. Да, с трекингом головы и погружением в VR.

Поэтому, если вами не овладевает лень и вы любознательны, прошу под кат, но предупреждаю, статья наполнена тремя десятками «potato quality» изображений, общим весом на 4 мегабайта.
Читать дальше →
Total votes 114: ↑112 and ↓2+110
Comments66

Nvidia + Nexus 7 + две лупы + коробка = VR шлем

Reading time5 min
Views221K
Добрый день! В интернете уже накопилось достаточное количество статей по сборке DIY VR шлемов и хабр тому не исключение. Но в большинстве случаев при сборке используются смартфоны с относительно не большими дисплеями, что не позволяет получить широкий угол обзора. Сегодня же мы будем собирать шлем на основе Nexus 7, потратив всего 600 рублей в ближайшем гипермарките. Ну и т.к. главный лозунг этой статьи «Меньше теории, больше практики», хватит лишних слов, начинаем!



Читать дальше →
Total votes 118: ↑115 and ↓3+112
Comments31

CSS 3 Timing Functions и с чем их едят

Reading time15 min
Views104K


Хей народ, пристегните ремни и держитесь покрепче, ибо наступил действительно волнительный момент: вам предстоит разобраться в тонкостях чрезвычайно интересных временных функций CSS!


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

Полетели!
Total votes 77: ↑74 and ↓3+71
Comments8

Отладка асинхронного JavaScript с помощью Chrome DevTools

Reading time6 min
Views35K

Вступление


Возможность асинхронной работы с помощью callback-функций(далее просто возвращаемых функций) — отличительная особенность JavaScript. Использование асинхронных возвращаемых функций позволяет вам писать событийно-ориентированный код, но так же добавляет кучу проблем, ведь код перестает выполняться в линейной последовательности.

К счастью, теперь в Chrome Canary DevTools вы можете отслеживать весь стек вызовов асинхронных функций в JavaScript!
Под катом 10Mb трафика
Total votes 72: ↑71 and ↓1+70
Comments18

Художник в игровой индустрии: организация рабочего процесса

Reading time6 min
Views58K
Создание игры представляет собой сложный процесс и требует огромного количества ресурсов. Полноценную игру можно получить, только соединив воедино труд специалистов из разных сфер. Поэтому качество проекта напрямую зависит от качества работы звеньев этой сложной системы. Это означает, что каждый дизайнер в команде – часть огромного механизма производства игр.

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


Подробнее и с иллюстрациями. Осторожно, много изображений в FHD!
Total votes 60: ↑47 and ↓13+34
Comments26

HTML по стандартам

Reading time10 min
Views124K
Привет Хабр!

image Изначально хотел назвать статью «HTML по ГОСТ`у», но потом выяснилось что у большинства программистов не было предмета «Метрология и стандартизация» и о «стандартизации», «сертификации», «унификации» не все слышали.

В i-Free я много занимаюсь разработкой веб-приложений. А поскольку их много, они разные и работают в разных условиях, то само собой приходится задумываться о стандартизации. Есть такой проект «Пуленепробиваемый HTML5» (http://html5boilerplate.com/), в котором разработчики решили создать идеальный шаблон странички. Он мне очень нравился, и все свои проекты я начинал именно с него. Но, исправляя баг за багом, делая все новые и новые приложения, я пришел к выводу, что многого в нем не хватает. В этой статье я хотел бы рассказать о том, что обычно пропускают при написание страничек и веб-приложений и показать, чем и зачем я прокачал свой шаблон пустой странички.
Читать дальше →
Total votes 190: ↑167 and ↓23+144
Comments49

Gremlins.js — monkey testing библиотека для веб приложений

Reading time6 min
Views36K
NPM version

Это первая из двух статей, рассказывающая о тестировании с помощью gremlins.js и grunt-gremlins. Первая статья — перевод официальной документации gremlins.js. Вторая — опыт внедрения gremlins.js в реальный проект при помощи grunt-gremlins.

Gremlins.js это monkey testing библиотека написанная на JavaScript, для Node.js и браузеров. С ее помощью проверяется надежность веб-приложений под полчищем гремлинов.

Kate: What are they, Billy?
Billy Peltzer: They're gremlins, Kate, just like Mr. Futterman said.


image
Читать дальше →
Total votes 74: ↑71 and ↓3+68
Comments13

Релиз KPHP и движков

Reading time6 min
Views164K
Довольно часто, выступая на различных конференциях, мы делились желанием выпустить под открытой лицензией KittenPHP, согласно традиции, заложенной крупными IT-компаниями, такими как Google и Facebook.

Это событие несколько раз откладывалось в связи с опасением, что нам не хватит сил и времени на взаимодействие с opensource-сообществом, однако в конце концов заветный день настал, и код KPHP и некоторых других инструментов, используемых внутри проекта, был выложен в открытый доступ.

В связи с этим под катом вас ждет более подробный рассказ о внутреннем устройстве ВКонтакте и тех инструментах, которые сегодня стали доступны opensource-сообществу.


Читать дальше →
Total votes 323: ↑311 and ↓12+299
Comments159

Демонстрация работы Wiren Board Smart Home

Reading time3 min
Views64K
image

Привет!

Чуть больше недели назад мы открыли предзаказ на Wiren Board Smart Home — наш контроллер для домашней автоматизации. В предыдущей статье мы рассказали про железо, а в этой начнём показывать работу с разной периферией и уделим внимание софту. В этот раз показывать будем работу с реле, выходами открытый коллектор, термодатчиками 1-wire, а также работу по радио с беспроводными пультами и блоками управления освещением Noolite и датчиками Oregon.

Читать дальше →
Total votes 51: ↑48 and ↓3+45
Comments59

Сетевое программирование для разработчиков игр. Часть 3: виртуальные соединения поверх UDP

Reading time9 min
Views40K
От переводчика: Это перевод третьей статьи из цикла «Networking for game programmers». Мне очень нравится весь цикл статей, плюс всегда хотелось попробовать себя в качестве переводчика. Возможно, опытным разработчикам статья покажется слишком очевидной, но, как мне кажется, польза от нее в любом случае будет.
Первая статья — http://habrahabr.ru/post/209144/
Вторая статья — http://habrahabr.ru/post/209524/



Виртуальные соединения поверх UDP


Введение

Привет. Меня зовут Гленн Фидлер и я приветствую вас в третьей статье из цикла “Сетевое программирование для разработчиков игр”.

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

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


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

Но сначала, нам нужно более плотно разобраться, как работает интернет.
Читать дальше →
Total votes 34: ↑31 and ↓3+28
Comments5

Приручаем ZoG (Часть 3: Футбол Кумской долины)

Reading time8 min
Views4.4K
         Но мы говорим: здесь в этой пещере на краю света, дварфы и тролли заключили мир, чтобы рука об руку пройти под дланью Смерти.

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

                                                                        сэр Терри Праттчетт


В предыдущей статье, я рассказывал об оригинальной настольной игре, разработанной Тревором Трураном, по мотивам произведений знаменитого английского писателя Терри Пратчетта. В 2005 году, Труран разработал новую игру, использующую тот же набор фигур, на той же доске. Название этой игры — "Koom Valley Thud" и, сегодня, я постараюсь ее реализовать, попутно рассказав о тех возможностях языка ZRF, о которых не успел рассказать ранее.

Напомню, что ZRF — это язык описания игровых правил (напоминающий Lisp), используемый Zillions of Games. Несмотря на то, что в нём имеются определенные сложные моменты, в целом, он довольно прост и может быть освоен любым человеком, даже очень далеким от программирования. Главным достоинством игрового ядра ZoG является его универсальность. Описав правила мы, фактически сразу, получаем новую игру. Хотя AI ZoG уступает специализированным игровым движкам, играет он, на удивление, сильно. К сожалению, бесплатная демонстрационная версия приложения позволяет запускать лишь ограниченный набор игр и не позволяет загружать ZRF-описания собственной разработки.
Читать дальше →
Total votes 23: ↑18 and ↓5+13
Comments0

Monster Cable против вешалки: победила дружба

Reading time2 min
Views62K
Хороший звук — понятие относительное. Убежденные меломаны, располагающие лишними финансовыми средствами, «пролечат» любого на предмет нужной акустики, усилителя и, конечно, аудио-кабелей. Бытует мнение, что дорогущие кабели (обязательно позолоченные!) — залог отчаянно потрясающего звука, который (при прочих равных) невозможно получить при помощи обычного дешевого «шнурка». По крайней мере, недавно, на одном из «мероприятий», я наслушался таких аудиофилов, пропагандирующих немерянные траты на кабели. И, конечно, задался вопросом, надо ли это на самом деле?
Читать дальше →
Total votes 44: ↑40 and ↓4+36
Comments137

10 анти-паттернов навигации в Android

Reading time4 min
Views81K


В данной статье мы рассмотрим 10 анти-паттернов навигации в Android, которые допускают многие новички (и не только) в создании интерфейсов Android-приложений.

Читать дальше →
Total votes 116: ↑107 and ↓9+98
Comments26

Написание сложных интерфейсов с Backbone.js

Reading time13 min
Views100K
image

Backbone.js это каркас для создания RIA JavaScript приложений, его автором является Jeremy Ashkenas, создатель CoffeeScript, Backbone является частью компании Document Cloud ей же «принадлежит» Underscrore.js. Backbone — очень легкая библиотека, помогающая вам создавать интерфейсы. Она может работать с любыми библиотеками, к которым вы привыкли.
Backbone это набор классов, размером менее 4Кб, которые формируют структуру вашего кода и помогают создавать качественные MVC веб-приложения.
Backbone формирует структуру тяжелых JavaScript приложений, внесением моделей с key-value подобным хранилищем и своими событиями, коллекций с богатыми API, видов (ориг. views) с декларативной обработкой событий и соединяет все это в в одно приложение, поддерживающее RESTful JSON интерфейс.

Backbone не может работать без Underscore.js. Для поддержки REST API и работы с DOM элементами в Backbone.View настоятельно рекомендуется подключить json2.js и jQuery-подобную библиотеку: jQuery или Zepto

В статье будет рассмотрена структура Backbone.js, будет поэтапно создано простое Todo приложение.
Читать дальше →
Total votes 108: ↑103 and ↓5+98
Comments47

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Works in
Date of birth
Registered
Activity