steps3D - Графика, ООП
13 июня 2016

Выкладываю новую статью - Вычислительные шейдеры в OpenGL.

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



29 мая 2016

Купил Doom 4 и сечас активно прохожу. Впечатления пока потрясающие - море дорайва, потрясающая графика. Жестокие убийства - просто супер. Единственне, что растраивает - как можно было сделать в Doom сохранение только в контрольных точках. Как же достает это засилье консольщины, когда самые гадкие вещи тащат с консолей в PC-gaming.

Купил свежую книгу Макса Фрая - Я иду искать. Очень нравится. Мне вообще нравятся все книги про сэра Макса. А вот остальные книги этого автора как-то не идут :(((

Из последнего увиденного очень понравиься фильм "Игра на понижение (Big Short)". Только никакая это не комедия. Показывается, что представлял из себя рынок ипотечного кредитования к 2008 году - весь бардак, коррупцию, глупость.

Очень порадовал тот факт, что исходники старого доброго Serious Sam выложили в открытый доступ - смотреть здесь.

Также стали доступны исходники Cry Engine.

Ну и немножко попросили попиарить - ресурс с различными моделями, форумом и т.п..



9 мая 2016

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

Выложил на сайт новую (правда очень короткую) статью Расширение ARB_multi_draw_indirect.

Хочется и в этот раз сказать несколько "добрых" слов в мелкомягки - неделю назад, внезапно, без предупреждения, без запроса разрешения Форточки 10 попытались поставиться на ноутбук моей жены. Мало того, что это было сделано без разрешения, так и без информации о том, что вообще происходит после включения сразу начинает что-то грузить и ставить. При этом вообще не упоминается Windows 10, нет никакой возможности отменить.

Ну и по прошествии часа - "мы тут поставили вам Windows 10, ознакомтесь с лицензионным соглашением". Очкень мило - сперва эта блевотина ставится, а уже потом, когда ее поставилим - лицензионое соглашение.

К счастью при выборе "Отказываюсь", дорлго поскрипев винтом, исходная система все=таки была восстановлена. В-общем мелкомягкие во всей "красе". На самом деле я может бы и оставил Win10, но если бы это было сделано не откровенно по=хамски. Тут чисто из принципа я откатился назад, потом - GWX Control Panel и полный запрет на дальнейшие подобные действия.

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

Сделал себе предзаказ Doom 4, теперь ждукачественного мяса.



26 апреля 2016

Выкладываю новую статью - Работа с библиотекой GLFW. В ближайшее время будет несколько статей по Vulkan. Также продолжатся статьи по расширениям OpenGL.

Хочу попиарить одну достойную книгу -

Очень хорошая книга - сжатый и конкретный рассказ о новых и полезных фичах С++ 11 и С++ 14.



15 марта 2016

Выкладываю небольшую статью - Расширение ARB_vertex_attrib_binding. В ближайшее время будет статья по библиотеке GLFW и несколько статей по Vulkan.

Ну и немножко "доброго" о форточках-10.

Опять же на эту тему очень понравилась статья Тим Суини из Epic Microsoft wants to monopolise games development on PC. We must fight it.

Статья о том, что Universal Windows Platform (UWP) это фактически способ мелкомягимх монополизировать игровой (и не только игровой) рынок - фактически единственным способом распространенния приложений под UWP является через мелкомягкий Windows Store. Т.е. мелкомягкие хотят вклиниться между пользователем и разработчиком игры.

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

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

Т.е. речь идет о попытке превратить открытую плафторму PC в закрытую и полностью контролируемыми микро$офтом. Всякие разговоры о безопасности - это полный бред. Как известно самая большая уязвимость сидит за клавиатурой. Ну и вспомним сколько критических цязвимостей нам подарили за последний год как сами M$, так и ряд вполне уважаемых компаний. Вирус, вндеренный в документ M$ Office или в flash это фактически самый распространенный способ заражения. И его новый тип приложений не исправит, поскольку уязвимость изначально содержится в самих приложениях.



28 февраля 2016

После долгого переыва первое обновление. За время, прошешее с последнего обновления на сайте, успел выйти омерзительная Windows 10 и долгожданный Vulkan.

Насчет Windows 10 даже говрить долго не хочется - по сути эта даже Windos 8, с небольшими косметическими правками, переименнованная из маркетинговых соображений. Которая несет в себе постоянный шпионаж за пользователем, неотключаемые обновление, пасьянс с рекламой и кучк предустановленного дерьма. На эту тему есть несколько добрый статей на сайте автора DirectX - Alex StJohn'а с весьма красноречивыми названиями. Ниже я просто приведу картинку с его сайте.

Также у меня вышла новая книга Компьютерная графика. Учебник и практикум. Это учебник для магистров по основам графики и OpenGL, есть глава по шейдерам.

Очень порадовал выход Vulkan и я готовлю ряд статей по нему. Глядя на форму gamedev.ru у меня сложилось оущуение, что многие ожидали чего-то другого. Хотя на самом деле вышло именно то, что и должно было выйти. Естественно, что новый API сложенее, чем Mantle, поскольку он должен поддерживать большое колчиество различных GPU, включая мобильные GPU с тайловой архитектурой. Естенственно, что куча всяких неявных действий, выполняемых OpenGL "за кадром" теперь нужно явно выполнять самому - это естественно вытекает из получения полного контроля - контроль всеглда подразумевает и ответственность.

Сравнение с CUDA не совсем корректно - во-первых, нужно сравнивать с CUDA driver API, а он гораздо сложнее, а во-вторых - сам graphics pipeline гораздо сложнее чем compute pipeline. Отсюда и вытекает полученна сложность.

Кроме того, под него пока нет практически никаких библиотек. Для примсера попробуйте написать на OpenGL, не используя никаких библиотек - только сам OpenGL и WinAPI. Поверьте, число строк будет выесьма серьезным. Для всех своих примеров я использую библиотеки - иногда свои, иногда нет. Со временем вокруг Vulkan появятся такие библиотеки, облегчающие написание программ.

Очень нравится в Vulkan, то что с самого начала вводятся conformance тексты. Так что есть большая надежда, что программы наконец-то будут работать одинаково на различных GPU. Кроме того, драйвера будут заметно проще и компилятор шейдеров вынесен из драйвера, что тоже уменьшит количество проблем. Использование бинарного формата для шейдеров позволит использовать шейдеры на различных языках - пока есть реалимзация компилятора только для GLSL, но никто не мешает писать свои компиляторы для других языков.

Ну и еще одна добрая картинка напоследок -



9 марта 2015

Выкладываю еще одну статью по OpenGL - Расширение ARB_multi_bind.

Также выкладываю лекции по CUDA, прочитанные за последние две недели - первая и вторая.

На этой неделе прошла GDC 2015 и на ней были несколько докладов по OpenGL Next. Было дано новое имя - Vulkan и выложены слайды по новому API, сам API будет представлен позже в этом году. Вот основная презентация по новому API. Вот еще одна презентация, более подробно рассказывающая о новом API.

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

IMHO OpenGL никуда не денется - с одной стороны есть очень много работающего кодаЮ который никто не будет переписывать, с другой стороны далеко не всем нужен такой контроль и не каждый захочет взять на себя всю необходимую работу. Так что для многих задач OpenGL будет вполне простым и удобным решением. Постепенно, с развитием различных библиотек под Vulkan, переход на него будет упрощаться для тех, кому не нужно столь высокое быстродействие.

Интересной особенностью Vulkan является то, что для него (как и для OpenCL 2.1) задается бинарное внутреннее представление для шейдеров. При этом совсем не важно на каком языке был написан шейдер - главное, это чтобы его можно было откомпилировать в это представление. Так уже обещают C++ для OpenCL 2.1. Все это очень радует и хочется, чтобы поскорее можно было все это попробовать.



1 марта 2015

Выкладываю новую статью - Использование спецификатора layout в GLSL .

Также немного почистил список статей и раздел Code Snippets. Если есть какие-то пожелания по тому, что можно включить в этот раздел - пишите на форуме или в личку.

На следующей неделе будет проходить GDC 2015 и в его рамках пройдут доклады, посвященные glNext. Так что жду с большим нетерпением.

Еще несколько статей уже написаны (на бумаге) и ждут того, когда я их наконец наберу.

Ну и на злобу дня - я лично рад тому, что жулика и вора Немцова пристрелили. Если бы я верил в ад, то пожелал бы ему там гореть.



14 февраля 2015

Поздравляю всех с днем Святого Валентина. Кроме того, оказывается сегодня еще и вполне программистский праздник - 14 февраля 1946 был продемонстрирован первый электронный компьютер ENIAC-1.

Выкладываю новую статью - по расширению ARB_shader_image_load_store.

Очень понравилась кнопка сделать все хорошо.

Еще начал читать книгу Эндрю Мэтьюза Живи легко! - очень рекомендую.



8 февраля 2015

Выкладываю новую статью - по расширению ARB_shader_storage_buffer_object.

Опять порадовали мелкомягкие - очередная уязвимость нулевого для в Internet Explorer.

И аналогичным образом порадовала Adobe с очередной огромной дырой в флеше, когда он наконец сдохнет.

Понравилась очередная статья об эффективном использовании OpenGL.

Очень порадовало, что на GDC 2015 будет рассказ о glNext от Valve.

Начал читать нового Макса Фрая - Слишком много кошмаров - очень нравится.



1 февраля 2015

Выкладываю новую статью - Расширение ARB_buffer_storage .

Из последнего прочитанного понравилась статья о PBR в Skyforge и продолжение рассказа о построении всего конвейера на CPU - 5 и 6.

Еще с интересом прочитал Основы программирования графики на Apple Metal: Начало.



26 янавря 2015

Недавно наткнулся на то, как могут различные религии трактовать стакан (он наполовину полон или наполовину пуст).

На gamedev.ru в теме о восстановлении координат по значением из z-буфера встретил утверждение о том, что приведенная моей статье формула неверна. Сразу решил это проверить. Оказалось, что не смотря на одну ошибку итоговая формула все-таки верна. Дело просто в том, какое именно значнение подставляется в эту формулу - непосредственно из буфера глубины (т.е. изменяющееся на отрезке [0,1]]), или же уже приведенное к отрезку [-1,1] (т.е. фактически уже zNDC).

Еще очень понравились лекции по графике на Хабре - там делается попытка разобрать все с самого начала, включая растеризацию, написание буфера глубины и т.п. Лекции - 1, 2, 3, 4a и 4b.



6 янавря 2015

А выкладываю новую статью - Расширение ARB_texture_storage.

Мне понравилась эта статья, где автор высказывает свои мысли насчет языка Swift. Честно говоря я сам Swift не пробовал (и не собираюсь), но много про него читал. И ощущение очень похоже - это просто красивый syntax sugar, для тех, кому неприятен синтаксис Objective-C. На самом деле по сути это просто урезанный вариант Objective-C, причем именно урезанный (например, выкинута вся работа с метаинформацией). И в этом смысле он просто выдумка маркетологов - для программистов он ничего не дает (IMHO).

Очень понравились две статьи на Хабре про использование OpenGL из питона - PyOpenGL для начинающих и немного новогоднего настроения и PyOpenGL с шейдерами.

Вот это Маргарет Хамильтон, ведущий программист в NASA и программа для посадки Аполлона, которая она написала. И, думаю, багов в этой программе горазде меньше чем в нынешних форточках :(((

Очень порадовала Гейм-дизайн vs обработка дерева.

Повеселил скандал вокруг GTA V - в Австралии нашлись больные на голову граждане, требующие запретить продажу игры из-за того, что в игре можно убить несколько женщин (судя по всему то, что в этой игре можно убить во много раз больше мужчин из вообще не волнует). И совершено верный ответ - Не нравится GTA V — просто не покупайте её. Также порадовал ответ одного из игроков - он предложил на совершенно таком же основании запретить продажу библии (что IMHO было бы очень неплохо) и даже набрал немало голосов в поддержку.

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

Немного о политике - Как выглядели бы сообщения в твитере американских оппозиционеров. Посмотрите и подумайте. Почему-то у нас очень принято поливать дерьмом свою Родину. Причем очень часто это делается людьми которые ничего достойного вообще не сделали. Революции в нашей стране всегда заканчиваются гибелью огромного количества людей и разрухой, причем потом выясняется что все революционеры строить сами ничего не умеют. Есть очень хорошее высказывание Франсуа Миттерана о том, что к сожалению все люди, которые знают как надо управлять государством работают таксистами. У нас это к сожалению тоже так :(((



2 янавря 2015

Поздравляю всех с наступившим 2015 годом.

Постараюсь в этом году чаще обновлять сайт. А сейчас выкладываю новую статью - статью о работе с библиотекой thrust.



Старые новости

Новости за 2012-2014 года.

Новости за 2011 год.

Новости за 2010 год.

Новости за 2009 год.

Новости за 2008 год.

Новости за 2007 год.

Новости за 2006 год.

Новости за 2005 год.

Новости за 2004-2003 года.