• Процедурная генерация трёхмерных моделей



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

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

      На примере движка Unity и C# я покажу как можно работать с моделями и превращать текст в графику. Большинство приводимого кода легко портируется на другие фреймфорки и языки.

      Треугольник


      Начнём с простейшей формы — треугольника. В Unity и во многих других движках используется популярный способ описания моделей: с помощью массивов вершин, треугольников и нормалей. Дополнительно для текстурирования используются uv-координаты вершин. Для работы с моделями есть класс Mesh, в котором для каждого набора данных имеется отдельный массив. В Mesh.vertices хранятся координаты вершин, в Mesh.triangles — индексы вершин группами по три. А в Mesh.normals и Mesh.uv лежат векторы нормалей и координаты uv-карт, индексы которых должны совпадать с индексами соответствующих вершин, т. е. порядок в массивах должен быть одинаковым. Покажу на примере, чтобы было понятнее.
      Читать дальше →
      • +17
      • 59.8k
      • 7
    • Знай сложности алгоритмов

      • Translation
      Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
      Читать дальше →
    • Bootstrap-wysiwyg: крошечный текстовый редактор




        Текстовый редактор bootstrap-wysiwyg — это всего 1.5 Кб в минифицированном и сжатом виде и чуть больше 6 Кб исходного кода, базовые функции редактирования на основе execCommand, drag-and-drop для вставки изображений, поддержка стандартных горячих клавиш и ничего лишнего. Редактор работает в современных браузерах (Chrome 26, Firefox 19, Safari 6) и на мобильных платформах (IOS 6 iPad/iPhone, Android 4.1.1 Chrome). Зависимости — jQuery, jQuery HotKeys и Bootstrap.
        Читать дальше →
      • Как сделать самую лучшую посадочную страницу: чеклист из 50 пунктов

        • Translation
        Мы в Alconost предоставляем услуги создания и ведения контекстной рекламы и, по долгу службы, иногда занимаемся разработкой посадочных страниц (landing pages). Мы были очень рады найти и перевести статью, в которой автор изложил все требования, которым такая страница должна соответствовать. Но есть в этой статье и большой минус. Пунктов аж 50, каждый можно отметить в чеклисте, но после доступен лишь результат в баллах, которым можно разве что похвастаться перед друзьями.

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

        Те, кому в гуглотаблицу не хочется, просим под кат. Там перевод.



        Читать дальше →
      • API ВКонтакте и XDocument для самых маленьких

        Доброе время суток.

        Я хочу еще раз поговорить о простейших способах работы с API ВКонтакте и очень надеюсь, что эта статья может стать отправной точкой для начинающих разработчиков. Мы будем работать с довольно разнообразным методом messages.getHistory, а с помощью XDocument получать фотографию. Всех, кто научился проходить авторизацию и хочет опробовать работу с API, прошу под кат.
        Читать дальше →
      • Джейлбрейк для высшего образования



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

          В то же время за пределами университетов начала складываться совершенно новая экосистема получения и, что очень важно, подтверждения и сертификации знаний и навыков. Профиль на LinkedIn, репозитории на GitHub, сертификаты от серьёзных корпораций вроде Cisco или Microsoft, результаты авторитетных онлайн-тестов сегодня часто могут заменить формальный документ об образовании.

          Degreed стремится к амбициозной цели — создать единый пожизненный цифровой диплом, постоянно обновляемый и гибкий, который будет отражать реальные знания независимо от того, из какого источника они получены. Вы можете прослушать несколько курсов в одном университете, ещё несколько — в другом, или вообще на сайте вроде Coursera или Khan Academy — баллы в вашем «дипломе» будут увеличиваться в зависимости от авторитетности курса и ваших личных достижений.
          Читать дальше →
        • Хак поиска кратчайшего пути в StarCraft



            Один из ведущих разработчиков Warcraft и Starcraft Патрик Вайат периодически публикует воспоминания о своей работе в компании Blizzard в 90-е годы. Очень интересно посмотреть изнутри на процесс разработки игр, которые стали впоследствии культовыми. В последней заметке Патрик поведал замечательную историю, как пришлось впопыхах исправлять баги в StarCraft перед выпуском игры и что из этого получилось.
            Читать дальше →
          • Свой Google Reader методом Бендера

              С момента анонса закрытия Google Reader на хабре появился уже ряд статей о других сервисах, на которые можно уйти.
              Во всём этом меня смущает то, что это же не Вконтакт, не твиттер, а хабра, почему я здесь читаю только о сторонних сервисах?
              Кто мешает сделать свой RSS Reader с преферансом и мадмуазелями?
              image
              Под катом немного моих соображений о том, что можно сделать самому для себя. Приветствуется ваш опыт и соображения в комментариях.
              Читать дальше →
            • Использование zRam для увеличения количества доступной памяти под Linux

                image
                Уже 2 месяца использую на своих компьютерах модуль zRam и хочу поделиться результатами. На практике он позволил мне не используя раздел подкачки, и не получая видимого замедления работы компьютера увеличить размер оперативной памяти в 2.5-3 раза. На сервере виртуалок тот же подход позволил очень ощутимо увеличить отзывчивость при нехватке памяти.
                Заинтересовавшихся прошу под кат.
                Читать дальше →
              • Сетка в дизайне интерфейсов для Windows Phone: строгий учитель или добрый помощник? (Часть 1)

                  Продолжаем публиковать статьи по следам Design Camp. Сегодня у нас на очереди доклад Егора Гилева (yegorg), который на момент кампа работал в компании Парксис, но в феврале 2013 г. ушел в свободное плавание и теперь вместе с ещё одним сооснователем студии Турбомилк Денисом Кортуновым работает над собственными проектами. Статья приведена как есть и отображает авторскую точку зрения на дизайн приложений под Windows Phone.

                  Я работаю дизайнером User Experience в компании Parcsis. В том виде, в каком она существует сегодня, она образовалась в результате слияния двух компаний: Parcsis и Турбомилк. Parcsis — это в некотором роде инкубатор, запускающий собственные интернет-проекты. Турбомилк — всемирно известная в узких кругах студия дизайна интерфейсов. Я являюсь сооснователем Турбомилка. Около полутора лет назад мы объединились, и команда дизайнеров Турбомилка стала отделом UX-дизайна объединённой компании.

                  В компании я слыву чудаком. Считается, что дизайнер должен работать на большом алюминевом маке и владеть айфоном, желательно последнего поколения. Я работаю на ноутбуке-трансформере с Windows 8, который купил в первый же день продаж Windows 8 в России. Телефоном у меня служит белая Lumia 710 — пока еще на Windows Phone 7.5. Вы не ошибётесь, если предположите, что я люблю Windows. Особенно новый интерфейс Windows, который раньше назывался Метро. Я его нежно люблю и как пользователь, и как дизайнер интерфейсов.

                  Возвращаясь к нашей компании. Один из основных проектов Парксиса называется «Право.ru». Этот проект в себя включает много всего интересного, но для сегодняшнего нашего разговора нам важна только одна его часть — та, которая является справочно-правовой системой, доступной как в вебе, так и на мобильных устройствах. Теперь и на Windows Phone:



                  Как вы понимаете, когда мы решили сделать мобильное приложение Право.ру для Windows Phone 7, задача по созданию его интерфейса естественным образом попала ко мне, чему я был очень рад. Во-первых, потому что мне было приятно его рисовать, а во-вторых, потому что это дало мне возможность разобраться с руководством по дизайну интерфейсов для Windows Phone в целом, и с правилами работы с сеткой в частности.
                  Читать дальше →
                • Экспорт фотоальбомов из ВКонтакта

                    Преамбула


                    Дело было вечером, делать было нечего и тут мне в голову пришла мысль: «Как же мне выгрузить все фотографии из ВКонтакта на компьютер?» Недолго думая, я написал утилиту для этого и решил поделиться с общественностью, возможно я не один такой.

                    Поехали


                    В качестве инструмента для работы с API, путём кратких поисков, была выбрана библиотека vk_api. Для работы с сетью она использует Requests, поэтому и эта библиотека требуется для запуска.

                    Пощупать


                    GitHub Pages проекта
                    Исходный код с примерами
                  • Увеличиваем прибыль от iOS приложения втрое. Никакого продвижения, только техника…

                    Привет, Хабрахабр!

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



                    Кому интересно, добро пожаловать под кат.
                    Читать дальше →
                  • Дистанционное обучение с помощью мобильных устройств

                      Еще 10—20 лет назад полноценное дистанционное обучение было практически невозможным. Необходимость переезда в другой город или даже страну являлась, наверное, одной из наиболее частых причин, почему предпочтение отдавалось местным вузам, вместо того чтобы поступать в университеты своей мечты. Да, существует заочное образование, но мы прекрасно понимаем, что в большинстве случаев данная форма образования — всего лишь для галочки. К счастью, в настоящее время есть возможность учиться, было бы желание. Для тех, у кого с желанием все в порядке, прошу под кат.

                      image
                      Читать дальше →
                    • Обзор антикварного компьютера фирмы NEXT

                      Всем известно что аппетит приходит во время еды, вот так и у меня со старыми компьютерами которые я коллекционирую и в планах когда-то создать настоящий музей.
                      Была у меня мечта и я захотел ее осуществить, достать компьютер фирмы NEXT. Для тех кто не знает, эту фирму основал Стив Джобс, да-да тот самый который из Apple. Он основал NEXT в 1985 году когда его уволили из Apple. Меня всегда удивляло то что за несколько лет фирма уже смогла выпускать свои компьютеры и не просто какие-то ящики из стандартны китайских х86 запчастей, а свои не совместимые по архитектуре компьютеры со своей операционной системой и софтом! Первый их компьютер назывался
                      NEXT Computer и имел:
                      Читать дальше →
                    • Экспорт избранного Хабра в FB2 — скоростная PHP-версия

                        В своё время я уже видел такой конвертер здесь же на Хабре, написанный на питоне, но он на моей машинке сжирал много-много-много ресурсов и ни разу не смог моё избранное (а это 400+ постов) до конца сохранить, падая то на некорректном файле, то на «кривой» статье. Пришлось переписать, результаты трудов под катом.
                        Читать дальше →
                      • Бесплатное программное обеспечение от JetBrains для образовательных учреждений

                          Хабравчане!

                          Многие студенты интересуются — есть ли у компании JetBrains бесплатные лицензии для обучения. Настало время внести ясность.

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

                          Читать дальше →
                        • Разработка приложений для Android с C#

                          Monodroid и Monotouch это фреймворки от xamarin, которые дают возможность разрабатывать приложение на языке C# для Android и iOS соответственно. Так как это относительно новая технология информации в интернете не слишком много (за исключением офф сайта и большого количества тем на stackoverflow.com), на русском языке же я не нашел никаких туториалов и информации вообще.

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

                          image
                          Читать дальше →
                        • Разработка софта на Nexus 7

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

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

                            • редактирование исходного кода с подсветкой синтаксиса для языков Java, XML и C;
                            • компиляция простейшего C кода в нативные для Android бинарики (то есть использовать Bionic вместо libc и т.д.);
                            • сборка Java проекта в APK приложение;
                            • git, ssh, привычные консольные GNU тулзы во всём их многообразии.


                            И вот что у меня получилось.

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

                            Данный пост был задуман после того, как на некоторые важные вопросы не было найдено внятных ответов. Я отнюдь не претендую на то, что стал крутым программистом. Нет, всё ещё впереди, но период высиживания уже пройден. Это статья из цикла «Не умеешь сам — научи другого». В смысле, чтобы что-то лучше понять нужно это что-то, кому-то объяснить. Мопед не мой, эта фраза встречалась мной раньше в публикациях на Хабре. Некоторые вещи очень сложно понять. И люди, которые понимают, обычно не могут объяснить начинающему. Может быть меня тоже это ждёт. Это как разговор взрослого и ребёнка. Практически конфликт поколений. Пока мой уровень не перерос в профессионала, нужно изложить моё текущее видение.
                            узнать то, что не знают профессионалы
                          • Canonical ищет разработчиков стандартных приложений


                              Ubuntu Phone — мобильная операционная система от компании Canonical сейчас находится на этапе разработки. Компания Canonical обращается к сообществу с призывом помочь в разработке стандартных приложений для мобильной Ubuntu.
                              Читать дальше →