• Применение 3D-печати в краниопластике

    Привет, Geektimes! Хочу поделиться своим опытом использования 3D моделирования и печати в медицине, а точнее в краниопластике – пластике дефектов черепа. У нейрохируров из областной больницы возникла задача изготовления черепного имплантата для пациента с обширным посттравматическим дефектом костей черепа.

    image
    Читать дальше →
  • Новый графический режим: CGA в 1024 цвета

    • Translation
    image

    Речь пойдёт о демке "8088 MPH", победившей в соревновании Revision 2015's Oldskool Demo. Мы, вместе с Trixter, reenigne и Scali сделали это. И я получил возможность не только работать с группой волшебников программирования, но и побить мировые рекорды при изготовлении демок для старого доброго IBM PC, мамы и папы современной платформы x86.

    Если у вас под рукой по какой-то причине не оказалось IBM PC XT x86 с CGA-адаптером, вы можете посмотреть демку на ютубе:



    Технические подробности содержатся в посте reenigne, а я решил рассказать эту историю в более наглядном виде.
    Читать дальше →
  • Глубокое погружение в систему рендеринга WPF

    • Translation
    На перевод этой статьи меня подтолкнуло обсуждение записей «Почему WPF живее всех живых?» и «Семь лет WPF: что изменилось?» Исходная статья написана в 2011 году, когда Silverlight еще был жив, но информация по WPF не потеряла актуальности.

    Сначала я не хотел публиковать эту статью. Мне казалось, что это невежливо — о мертвых надо говорить либо хорошо, либо ничего. Но несколько бесед с людьми, чье мнение я очень ценю, заставили меня передумать. Вложившие много усилий в платформу Microsoft разработчики должны знать о внутренних особенностях ее работы, чтобы, зайдя в тупик, они могли понимать причины произошедшего и более точно формулировать пожелания к разработчикам платформы. Я считаю WPF и Silverlight хорошими технологиями, но… Если вы следили за моим Twitter последние несколько месяцев, то некоторые высказывания могли показаться вам безосновательными нападками на производительность WPF и Silverlight. Почему я это писал? Ведь, в конце концов, я вложил тысячи и тысячи часов моего собственного времени в течение многих лет, пропагандируя платформу, разрабатывая библиотеки, помогая участникам сообщества и так далее. Я однозначно лично заинтересован. Я хочу, чтобы платформа стала лучше.


    Читать дальше →
  • Тест для проверки цветового разрешения монитора или телевизора при подключении к компьютеру по цифровому видеоинтерфейсу

      «Кто нам мешает, тот нам поможет»
      к/ф «Кавказская пленница»


      Телевизор в качестве монитора?


      В последние годы все более популярным становится использование телевизора в качестве домашнего компьютерного монитора.
      И действительно — если еще несколько лет назад типичным для компьютерных мониторов Full HD разрешением (1920x1080) могли похвастаться лишь телевизоры с диагональю 40" и более, слишком большие для настольного монитора, то сейчас нетрудно найти телевизор с Full HD разрешением и с вполне «мониторной» диагональю 32" и меньше. Соответственно и размер пикселя при этом получается близким к «типовому» для настольных мониторов 0,28 мм ± 10% (ну, может быть чуть больше). А если кому-то такой пиксель покажется великоват, то с появлением доступных по цене бытовых телевизоров с разрешением 4k Ultra HD (3840x2160) размер пикселя вполне может конкурировать и с Retina.
      К тому же широко распространенные в бытовых телевизорах IPS матрицы по компьютерным меркам считаются весьма «продвинутыми», и ими обычно оснащаются весьма дорогие «профессиональные» мониторы.
      Казалось бы вот оно, идеальное решение для экономного домашнего пользователя — купить на грош пятаков небольшой (по телевизионным меркам) относительно недорогой 26"-37" бытовой телевизор с Full HD или Ultra HD разрешением, и в результате получить «компьютерный монитор» с большим (по компьютерным меркам) «профессиональным» IPS дисплеем, который к тому же без дополнительных вложений может быть использован и по прямому «телевизионному» назначению (что для дома тоже немаловажно!).
      Однако иной раз результатом такого приобретения становится полное разочарование: компьютерная картинка на экране телевизора оказывается намного хуже, чем на простеньком старом мониторе, вместо которого этот телевизор собственно и приобретался.
      Причин этого может быть множество, начиная от несоответствия разрешения соединяющего компьютер с телевизором видеоинтерфейса разрешению телевизионной матрицы, способности телевизора выводить картинку «пиксель-в-пиксель», настроек видеокарты (в частности, Overscan), настроек самого телевизора (например, резкости), проблем с кабелем, и так далее.
      В данной статье мы рассмотрим только одну из возможных причин, а именно способность видеоинтерфейса, которым подключен телевизор или монитор к компьютеру, передать полное цветовое разрешение 4:4:4.

      Для начала собственно тест:



      Если на экране Вам отчетливо видна появляющаяся надпись 4:4:4, и лишь слегка угадывается 4:2:2, то значит видеоинтерфейс компьютер-монитор передает полное цветовое разрешение, и на этом собственно можно закончить тест и чтение статьи.
      Тем же, кому интересно, как действует этот тест, а также тем, кто видит 4:2:2 и не видит 4:4:4 (или видит примерно одинаково и 4:4:4, и 4:2:2), и при этом хочет попробовать исправить ситуацию добро пожаловать под кат
      Читать дальше →
    • Продвижение инди-игры на Steam Greenlight

        Всем, привет! Наша команда сейчас проходит важный этап становления любого разработчика игр — первый запуск игры на Steam Greenlight. Пока я готовил материал для этой статьи, наша игра вошла в ТОП-100 проектов на Greenlight, набрала почти 2000 голосов «ЗА» и через 12 дней получила зелёный свет.

        В этой статье хочу поделиться информацией, которую «нарыл» в процессе подготовки к Greenlight'у, а также попробовать проанализировать, какие гипотезы по продвижению сработали, а какие пути оказались тупиковыми. Надеемся, эта информация окажется полезной и кому-то попадёт в избранное.

        image
        Читать дальше →
      • Маркетинг на Кикстартере, или Спасение утопающих

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

          В маркетинге — в нормальном маркетинге, который product, price, place, promotion, а не «ищем опытного маркетолога для написания текстов емейл-рассылок» — есть такая задача, про которую прямо обычно не говорят, но которая принципиально важна: уметь взглянуть на свой продукт глазами потребителя. Собственно, из решения этой задачи вытекают все четыре «P».



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

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

          А вот в стартапах дела обстоят хуже всего. Во-первых, нет не только денег на исследования, но и, как правило, умения интерпретировать их результаты (отсюда растут ноги победных кличей «наш продукт востребован, мы провели опрос на Хабре и получили 1462 голоса за!», а также сборы фокус-групп по знакомым во ВКонтакте). Во-вторых, за редкими исключениями, 100 % участников проекта — отцы-основатели, у которых к собственному детищу развилось много тёплых чувств, препятствующих тому, чтобы посмотреть на него объективно.

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

          Да не обидятся на меня авторы проектов.

          Читать дальше →
        • Elite: Dangerous – лучший, чёрт побери, космосимулятор. Но не завершённый и не без проблем

          • Translation
          image
          Моя Анаконда

          Это моя третья попытка написать обзор E:D. Одно дело – поиграть несколько часов, почитать мнения на форумах и написать обзор. Но я следил за игрой с июня 2014 года, и она постоянно менялась – что-то добавлялось, что-то исчезало. Поэтому я пытаюсь описать не несколько часов, а несколько месяцев игры, которые я провёл, бороздя тёмные моря космоса.

          Сказать по правде, E:D была выпущена незаконченной, и она не закончена до сих пор. Судя по всему, выход версии 1.0 16 декабря был сделан только для того, чтобы сдержать обещание «выйти до конца 2014 года». Но много деталей игровой механики, например симуляция развития экономики и политики без участия игрока, не работали или просто отсутствовали. В игре было много плохо оттестированных или незамеченных возможностей для нечестной игры. p2p-архитектура была очень нестабильной и небезопасной. До недавнего времени в мультиплеере единственной возможностью общения с игроком было взорвать его корабль.

          И несмотря на всё это, и на то, что даже после двух больших патчей от всех багов игра не избавилась, E:D настолько хороша, что проблемы уходят на второй план. Когда я надеваю Oculus Rift DK2 и оглядываюсь в рубке – я управляю своим собственным космическим кораблём.
          Читать дальше →
        • Практическая польза небольшого словарного запаса

            image

            Представьте, через неделю вам уезжать в Веллингтон, где основным языком является английский, а вы его знаете на уровне «Ландн из э кэпитал». Идея выучить новый язык кажется абсурдной, куда уж тут за 7 дней освоить все эти знания. Но вспомните закон Парето, который обещает 80% результатов за 20% усилий. Лексика любого естественного языка очень хорошо вписывается в данный принцип. Вопрос — сколько слов нужно знать, чтобы общаться на повседневные темы?

            «Максимум сотню, – говорит Фабио Капелло, бывший тренер сборной Англии по футболу. – Когда говоришь о тактике, не требуется большой словарный запас». Капелло, конечно, преувеличивает, и тем не менее он проработал в Англии три с половиной года, зная язык на поверхностном уровне. И это, по его мнению, не помешало ему тренировать команду.

            Так может быть стоит ограничиться сотней слов?
            Читать дальше →
          • Совершенствуем xaml: Bindable Converters, Switch Converter, Sets

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

              Нам понадобятся некоторые знания из прошлых статей, в частности, понимание принципа прямых инжекций.

              Читать дальше →
            • Инжекторы контекста xaml

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

                На практике часто встречается следующая задача: связать вью-модель, которая хранится в unity-контейнере, с одним или несколькими её представлениями (экранами). Обычно такое связывание происходит в бехаинд-коде, в результате чего у представления устанавливается нужное значение в свойство DataContext.

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

                Все эти трудности так или иначе решаемы, но существует универсальный и очень простой способ их красиво разрешить. О нём и пойдет речь.

                Читать дальше →
              • Советский кассовый аппарат А1Т-4-400-2



                Эта статья посвящена советскому кассовому аппарату А1Т-4-400-2 выпуска 1979 года.
                Такие кассовые аппараты стояли практически во всех магазинах в шестидесятых-семидесятых годах прошлого века. Ниже я попытаюсь рассказать, как работали эти машины.
                Читать дальше →
              • «Галоп пикселя — часть первая» — базовые понятия, этапы взросления, прикладные упражнения

                • Tutorial


                «Галоп пикселя», часть I — базовые понятия, этапы взросления, прикладные упражнения (линк)
                «Галоп пикселя», часть II — перспектива, цвет, анатомия и прикладные упражнения (линк)
                «Галоп пикселя», часть III — Анимация (линк)
                «Галоп пикселя», часть IV — Анимация света и тени (линк)
                «Галоп пикселя», часть V — Анимация персонажей. Ходьба (линк)

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

                В данной публикации мы не рассматриваем программы, но копаем нечто большее. Сами пиксели. От истоков, начав с четырехцветной CGA-эры, вплоть до эпохи ренессанса. В публикации мы не рассматриваем игры, не поем дифирамбы художникам прошлого (разве что самую малость), занимаясь именно процессом создания простейшего пиксель-арта. Данный материал будет интересен начинающим артистам и интересующимся. Статья практически не содержит теории, нудных умозаключений и представляет сторонний взгляд на мир пиксель-арта со стороны некоего самоучки, который предпочел открыть каждую из Америк самостоятельно, не оглядываясь на официальных, общепризнанных и задокументированных Колумбов. Статья снабжена обильным количеством поясняющих иллюстраций, примеров, и советов.

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


                Лопатить пиксели
              • Применение процедурных генераторов в создании контента для real-time 3D приложений: Часть 1. Oil Rush

                  Игра Oil Rush


                  В данной статье, состоящей из двух частей, речь пойдёт об использовании возможностей процедурных генераторов при создании контента для компьютерной игры Oil Rush и бенчмарка Valley (выйдет в феврале), разработанных на нашем собственном движке Unigine.
                  Читать дальше →
                • Ачивка как инструмент манипуляции игроком в GameDev


                    Ачивка, которая даётся вам за то, что вы посмотрели свои ачивки (Galaxy Trucker)

                    Принято думать, что ачивменты, «награды» или «достижения» — это своего рода медальки, которые даются за упорное прохождение игры. На практике же они нужны совершенно для другого: это и обучение, и дополнительные квесты, и формирование нужного поведения, и многое другое.

                    Посмотрите на эту ачивку, например:


                    Она не только позволяет быстрее распознавать профиль пользователя, но и содержит важную опорную информацию. По ней мы узнаём, что рейтинг топика больше 50 — это хорошо, а 30 постов с таким рейтингом — крутое достижение. То есть здесь решается и задача ускорения передачи информации о юзере, и задаётся цель (что правильно для сообщества), и обозначаются критерии достижения этой цели.
                    Читать дальше →
                  • Теория потока: как создать игру, которую полюбят все

                      Всем привет.

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

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


                      Читать дальше →
                    • Новый видео-сервис для изучения английского языка по отрывкам из сериалов

                        Сервис PlayPhrase.me предназначен для изучения иностранных языков с помощью сериалов. Вы ищите слово и по вашему запросу создается видео-последовательность из отрывков сериалов и фильмов, которая содержит ваше слово или словосочетание (использовать двойные кавычки).
                        Читать дальше →
                      • Фишки youtube: быстрое создание субтитров

                          Google не перестаёт удивлять (писал ранее о распознавании текста в видео).
                          Потребовалось добавить в ролик субтитры для перевода на другие языки. Опыта в создании субтитров мягко скажем не было. Начал читать спец.форумы, бегло изучать специальные программы для создания субтитров (Subtitle Edit и другие).
                          Помню, что можно к своим роликам на youtube загружать внешние субтитры. Поковырявшись с редактором субтитров обнаружил удобную фишку — Синхронизация текста с видео.

                          Суть. С помощью этой фишки можно набирать текст во время просмотра видео, а все тайм-коды (время начала и конца субтитров) расставятся автоматически. Об этом немного подробнее
                          Читать дальше →
                          • +19
                          • 16.4k
                          • 6