Pull to refresh
  • by relevance
  • by date
  • by rating

Вышел GIMP 2.6.0

Lumber room
После не такого уж и длительного перерыва вышел все таки долгожданный релиз растрового графического редактора GIMP.

Ключевые изменения в этой промежуточной версии такие:
— возможность использовать новый движок обработки цвета GEGL
— положительные изменения в интерфейсе
— ну и в целом подрпавлено много…
более подробную инфомацию о нововведениях вы можете прочитать тут (англ.):
gimp.org/release-notes/gimp-2.6.html

gimp.org/downloads
downloads.sourceforge.net/gimp-win/gimp-2.6.0-i686-setup-1.exe
скачать новый гимп можно пока под линукс и под Windows…

gimp.org/screenshots/alternative-2-6-ui-layout-example-two.jpg
любителям интерфейса а-ля фотошоп советую глянуть это скриншот

и да, подробную информацию о гимпе в целом вы можете найти на моем сайте gimper.ru
Total votes 20: ↑18 and ↓2 +16
Views 204
Comments 12

Как отлаживают графику Windows в Microsoft

Development for Windows *
Я в MS уже больше двух лет, и все равно в отладчике провожу большую часть полезного времени (больше только в Outlook).
Раньше я делал Windows Imaging Component, новую библиотеку для работы с изображениями, а теперь DXGI — инфраструктуру hardware acceleration. Первое целиком в user mode, второе и в kernel, и в user, но общий экспириенс дебага в общем-то тот же.

Читать дальше →
Total votes 179: ↑144 and ↓35 +109
Views 1.7K
Comments 134

Глюки в фоновой картинке

Lumber room
Все те кто играет в эту замечательную игру и наблюдает на большинства картах такой эффектimageможет исправить положение изменив значение gfx_noclip на 1 в файле ~/.teeworlds/settings.cfg.
Решение найдено на офицальном форуме игры.
Total votes 23: ↑12 and ↓11 +1
Views 165
Comments 7

Влюбляемся в F#: Доза 2: Строим фрактальное изображение, или множество Мандельброта своими руками

Programming *F# *

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


Читать дальше →
Total votes 34: ↑31 and ↓3 +28
Views 5K
Comments 18

2D рендеринг в SDL

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

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

Сегодня мы напишем с нуля программу, которая зальёт экран тремя цветами.
Читать дальше →
Total votes 12: ↑8 and ↓4 +4
Views 2.1K
Comments 12

Renderscript часть вторая

Development for Android *
Translation
Renderscript — новая фича, введенная в Honeycomb. Также известно, что ранее Renderscript уже использовался разработчиками Android'a (например встроенные живые обои в 2.1(Eclair) были написаны на нём). Так или иначе, полный доступ к API был открыт только в Honeycomb. В первой вводной статье из блога разработчиков (оригинал|перевод) обещалось, что скоро будет вторая, с более подробным описанием архитектуры Renderscript и примером его использования. Собственно, под катом и то и другое.
Читать дальше →
Total votes 26: ↑23 and ↓3 +20
Views 5.3K
Comments 10

Визуализация аудио в HTML5

Microsoft corporate blog Website development *HTML *
Наше практическое погружение описывает необычный сценарий — мы будем говорить не о том, что может HTML5, а о тех возможностях, которые на сегодня он еще не предоставляет и как эту неувязку можно обходить на практике.



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

Визуализация аудио, точнее принципиальный низкоуровневый доступ к аудио-информации, находится где-то между черновыми набросками и заметками на будущее.
Читать дальше →
Total votes 113: ↑110 and ↓3 +107
Views 19K
Comments 29

Углубляясь в Graphics2D

ALEE Software corporate blog Java *
Добрый день, Хабражители!

Сегодня я опять постараюсь привлечь Ваше внимание к некоторым сторонам и тонкостям работы с графикой в Java. Я уже кратко описал в предыдущей статье некоторые доступные средства и способы создания компонентов и UI, но это лишь вершина айсберга. Именно поэтому я хочу уделить отдельное внимание (и статью) именно работе с графикой. Естественно имеется в виду Graphics2D – Java 3D это большая отдельная тема (возможно о ней еще пойдет речь в дальнейшем, но не сегодня).

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

Начнем с того, что если рассматривать любой компонент с точки зрения MVC – он состоит из 3ех частей:
Model – модель, которая хранит в себе данные о состоянии компонента и на основе которой строится внешний вид
View – непосредственно визуальное отображения компонента
Controller – отвечает за управление компонентом (события от клавиатуры, мыши и прочих устройств ввода)

Фактически, все стандартные компоненты Swing построены по паттерну MVC. К примеру в JButton — ButtonModel отвечает за поведение и состояние кнопки (Controller и Model), а ButtonUI в свою очередь за внешнее её представление (View). В итоге на долю самого класс JButton практически ничего не остаётся. Речь пойдет по большей части о реализации внешнего представления компонентов (View), и если уточнять — о Graphics2D, на основе которого, фактически, рисуется весь интерфейс.

Не буду спорить, что на данную тему есть множество различного материала, но он настолько раздроблен и раскидан по просторам сети, что мне кажется не лишним собрать всё в одном месте и последовательно изложить.

Читать далее...
Total votes 82: ↑78 and ↓4 +74
Views 65K
Comments 71

OpenGL Mathematics (GLM) Обзор библиотеки

C++ *
Sandbox
Данный текст является обзором библиотеки математических вычислений для OpenGL – GLM. Создан обзор дабы по мнению автора залатать брешь в информационном вакууме и направить умы несознательные по пути верному.

Математический функции в OpenGL никогда не были на высоте, а с приходом новых стандартов OpenGL 3(4,ES), математики не стало вообще. И что самое обидное, нам ничего не дали в замен. Как же теперь крутить кубы и торосы, в условиях безграничной свободы шейдерного программирования?
Читать дальше →
Total votes 30: ↑26 and ↓4 +22
Views 23K
Comments 4

WPF, WinForms: рисуем Bitmap c >15000 FPS. Хардкорные трюки ч.1

High performance *.NET *C# *
Sandbox
Сразу уточнение: Bitmap 200x100 на компе с быстрой памятью и i7 3930K на 1366. Но, это честный System.Drawing.Bitmap.
Вводная: приложение типа осциллографа. Ссылка на готовый проект с фронтэндом в конце статьи.
Как же быстро рисовать его на экран? WriteableBitmap хорош, быстр, и он лучшее решение для WP, WinRT, WPF. Но занудного старпёра-кодера также волнует WinForms, .Net 2.0, Win2K (да-да, в некоторых гос.органах до сих пор теплый ламповый Win2K).
Далее, я обратил внимание на DirectX, тем более у нас для WPF появился полезный контрол D3DImage. Я перепробовал много движков, но ни один из них не давал удобного изящного способа рисовать GDI+ Bitmap из памяти. Некоторые работали и вовсе только с DX10-11. Ближе всех к цели оказался SlimDX. В любом случае, фронтэнд для контрола оказывался некрасивым. Все эти движки… мягко говоря избыточны, для моей простой задачи.
Но решение есть
Total votes 48: ↑40 and ↓8 +32
Views 39K
Comments 39

WPF, WinForms: 15000 FPS. Хардкорные трюки ч.1.5

High performance *.NET *C# *
Неожиданное продолжение этого поста (честно не ожидал резонанса), поэтому часть 2 хардкорных трюков, в которой речь пойдет немного о другом, пока подождет.
Итак, в двух словах, что изменилось: добавлен контрол и тестовое приложение для WindowsForms, вариант WPF немного изменился, рефакторинг-причесалинг, добавился threadsafe и контрол теперь может нормально ресайзиться в рантайме (включено в сэмплы, но не советую разворачивать на полный экран — это реально пугает). Спасибо камрадам, указавшим на ошибки и недостатки и теперь теперь проект гордо 0.5 beta. Можно сразу отправиться за обновлением на razorgdipainter.codeplex.com/, кому интересны подробности прошу под кат.
Читать дальше →
Total votes 34: ↑29 and ↓5 +24
Views 19K
Comments 8

Как графика убивает геймплей

Game development *
Translation
Article translated from games making noob blog gamesmakingnoob.blogspot.com
Перевод статьи gamesmakingnoob.blogspot.com/2013/03/how-graphics-are-killing-gameplay.html

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

image

Но вскоре зачастую приходит и разочарование – почему такое красивое создание
Читать дальше →
Total votes 114: ↑64 and ↓50 +14
Views 45K
Comments 108

06 — DreamWorks и HP: создание «Семейки Крудс»

Hewlett Packard Enterprise corporate blog
Четыре города. Восемьдесят миллионов рендер-часов. Многочисленные рабочие станции, мощнейшие блейд-серверы, лучшие специалисты в области анимации и компьютерной графики, сетевая архитектура HP FlexNetwork, 2166 копий в России и лучший в истории старт мультфильма в прокате на территории нашей страны. О чем идёт речь? О Мультфильме «Семейка Крудс» студии DreamWorks Animation, в создании которого HP принимали самое что ни на есть прямое участие.


Скорее, в пещеру!
Total votes 49: ↑39 and ↓10 +29
Views 33K
Comments 52

SDL2: Основы

Programming *C++ *Game development *
Sandbox
К сожалению, даже на официальной вики почти не возможно найти каких либо примеров использования SDL2.x, что уж говорить о рунете. Пытаясь разобраться, я нашел всего лишь пару статей, которые не покрыли и трети моих вопросов.
SDL 2.x существенно отличается от 1.x и даже, если в прошлом вам приходилось с ним работать — теперь вы рискуете ничего не понять.

Сегодня мы напишем простенькую программу выводящую на экран фон и зумируемый спрайт персонажа перемещающегося с помощью WASD и стрелок. + разберемся как в SDL работать с мышкой.
Туториал ТУТ
Total votes 14: ↑12 and ↓2 +10
Views 58K
Comments 7

Курс пиксель-арта

Game development *
Это перевод публикации «Les Forges Pixel Art Course».

pdf на английском.

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Предисловие


Есть много определений пиксель-арта, но здесь мы будем использовать такое: изображение пиксель-арт, если оно создано целиком руками, и присутствует контроль над цветом и позицией каждого пиксела, который нарисован. Несомненно, в пиксель арте включение или использование кистей или инструментов размытия или машин деградации (degraded machines, не уверен), и других опций ПО, которые «современны», нами не используются (вообще-то put at our disposal значит «в нашем распоряжении», но по логике вроде правильнее так). Он ограничен инструментами такими как «карандаш» и «заливка».

Тем не менее не скажешь, что пиксель-арт или не-пиксель-арт графика — более или менее красива. Справедливее сказать, что пиксель-арт другой, и он лучше подходит для игр стиля «ретро» (как Супер Нинтендо или Гейм Бой). Вы можете также комбинировать техники изученные здесь, с эффектами из не-пиксель-арта, для создания гибридного стиля.

Так, здесь вы будете изучать техническую часть пиксель-арта. Тем не менее никогда я не сделаю вас художником… по простой причине, что я тоже не художник. Я не научу вас ни человеческой анатомии, ни структуре искусств, и мало скажу о перспективе. В этом руководстве, вы можете найти много информации о техниках пиксель-арта. В конце, вы должны будете быть способны создать персонажей и пейзаж для ваших игр, при условии что вы будете внимательны, практиковаться регулярно, и применять данные советы.
Читать дальше →
Total votes 43: ↑32 and ↓11 +21
Views 279K
Comments 44

Курс пиксель-арта 2

Game development *
Это перевод публикации «Les Forges Pixel Art Course».

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Часть 2: Линии и кривые


Если вы ещё не состоявшийся художник, лучший путь начать рисовать, делать это карандашом, после чего обводить чернилами, затем раскрашивать. То же самое применимо и к пиксель-арту: первый шаг в изображении, это обозначить контуры — этот шаг называется «штриховой рисунок» (Lineart). Штриховой рисунок — это очень важный шаг для достижения хорошего результата. Несколько пикселей вашего изображения, могут являться большей его частью (в противоположность рисованию, где масштаб позволяет больше допущений) так что ошибка в один или два пикселя, может сделать так, что ваш персонаж будет выглядеть искажённым. Для ясности, точность штрихового рисунка является Р-Е-Ш-А-Ю-Щ-Е-Й для успеха пиксель-арта.
Читать дальше →
Total votes 48: ↑42 and ↓6 +36
Views 109K
Comments 8

Курс пиксель-арта 3

Game development *
Это перевод публикации «Les Forges Pixel Art Course».

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Часть 3: Перспективы


Проблема перспективы в 2D играх, это вопрос который возникает часто, и это возможно то, почему так много любительских игр имеют множество противоречивостей в этой области. В частности эта часть адресуется к типичным перспективам в RPG, так что если вы ищете информацию о виде сбоку или от первого лица, вам следует поискать где-нибудь ещё. Это важно, помнить что перспектива — это «искусство представления трёхмерных объектов на плоской поверхности (в данном случае это ваш экран) как их увидел бы наблюдатель.»
Читать дальше →
Total votes 44: ↑41 and ↓3 +38
Views 83K
Comments 17

Курс пиксель-арта 4

Game development *
Это перевод публикации «Les Forges Pixel Art Course».

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Часть 4: Тень и свет


Сегодня мы перейдём из 2D в 3D, в то время как останемся в 2D. Вы увидите (или нет). С тем что мы обсуждали до сих пор, вы сможете делать красивые штриховые рисунки и рисовать предметы с корректной перспективой. Это хорошее начало, но этого недостаточно чтобы делать пиксель-арт. В этой части мы взглянем на затенение. Это набор техник, которые позволит нам ваять наши пейзажи и персонажей чтобы представить объём (и я избавлю вас от долгого рассказа о традиционной важности этой части, ЭТО ПРОСТО СУПЕР ВАЖНО).
Читать дальше →
Total votes 40: ↑38 and ↓2 +36
Views 66K
Comments 16

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

Programming *Game development *
Sandbox
Программный рендеринг (software rendering) — это процесс построения изображения без помощи GPU. Этот процесс может идти в одном из двух режимов: в реальном времени (вычисление большого числа кадров в секунду — необходимо для интерактивных приложений, например, игр) и в «оффлайн» режиме (при котором время, которое может быть потрачено на вычисление одного кадра, не ограничено настолько строго — вычисления могут длиться часы или даже дни). Я буду рассматривать только режим рендеринга в реальном времени.

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

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

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

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

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

Курс пиксель-арта 5

Game development *
Это перевод публикации «Les Forges Pixel Art Course».

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Часть 5: Цветовые палитры


1. Когда и почему выбирать палитру?

Хороший вопрос, почему в конце концов я начал об этом? Просто потому что палитра — это 50% качества вашей работы. На всём протяжении игры важно иметь последовательные палитры, потому что они существенно способствуют общей атмосфере. В общем, что составляет разницу между хорошей и неудачной графикой, это в значительной степени палитра. «Хорошо, это важно иметь хороший выбор, я сделаю это в конце». А-та-та, конечно нет! Палитра работает от начала до конца, когда вы рисуете пиксель-арт. Для меня это первое и последнее что я делаю: я начинаю с создания стартовой палитры в углу моего изображения, затем я подстраиваю её по мере продвижения, затем, как закончу, я трачу время на улучшение её. Улучшения в основном обусловлены «чутьём», то что вы изучите здесь, может быть поставлено под сомнение: это просто стартовая точка.
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Views 53K
Comments 14
1