Я использую WriteableBitmap в Silverlight как инструмент для временного хранения и, в конце концов, рисую результат моего алгоритма, чтобы нарисовать кажущуюся плоскую двумерную равномерно распределенную вселенную с конечным количеством дело.Гауссовское размытие на Silverlight WriteableBitmap
Для определения seee «вселенных» (Рисунок 3): http://alienryderflex.com/homogeneity/
Я использую растровое изменение размера, чтобы приблизительный алгоритм, и получить квадратное ускорение с линейной потерей качества.
Проблема в том, что мне нужно будет сделать гауссовское размытие изображения, чтобы уменьшить пикселизацию после масштабирования и масштабирования, что, если отсутствует, добавляет к частоте ошибок алгоритма.
Вы можете увидеть мою тестовую реализацию Here.
Если вы нажмете «Создать», затем «Рисовать», и подождите 20 секунд, вы увидите, что даже при пикселизации изображения видна.
Но мне нужна эта растровая карта вывода как «карта плотности материи» на втором этапе алгоритма.
Так как я могу сделать гауссовское размытие на этих перезаписываемых растровых изображениях? Я действительно хотел бы найти подходящую реализацию вместо того, чтобы писать свои собственные, что было бы очень трудоемким в массиве ints -> Holy christ no byte pointer на данных изображения?
Спасибо!
Edit:
Для уточнения: мне нужно гауссовые размытых данные обратно работать на нем: не только визуальное размытие на изображение.
Я знаю, как закодировать гауссовское размытие HLSL, хотя это должно быть сделано за два прохода, и это чертовски больно сделать это в HLSL. Я сделал это уже здесь: http://marino.boletus.hr/3dpee.zip - НО! Мой единственный вопрос в этом отношении: можно ли получить данные растрового изображения после того, как пиксельный шейдер применил эффект? Мне нужны данные не только визуально. –