Как работают движки 2d рендеринга на базе Scanline? - PullRequest
8 голосов
/ 01 августа 2009

Не могли бы вы дать мне ссылку, чтобы помочь мне понять, как работают движки рендеринга на основе сканирования? Я хочу реализовать механизм 2D-рендеринга, который может поддерживать обтравку на основе областей, базовое рисование и заполнение фигуры с помощью сглаживания и базовые преобразования (перспектива, вращение, масштабирование). Мне нужны алгоритмы, которые отдают приоритет производительности, а не качеству, потому что я хочу реализовать его для встраиваемых систем без fpu.

Ответы [ 3 ]

4 голосов
/ 02 августа 2009

Я, вероятно, показываю свой возраст, но мне все еще нравится моя копия Фоли, Фейнер, Ван Дам и Хьюз (Белая книга).

У Джима Блинна была отличная колонка, доступная в виде книги под названием Уголок Джима Блинна: ​​путешествие по графическому конвейеру .

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

OTOH, они, вероятно, просто идеальны для встроенной среды без GPU или FPU!

4 голосов
/ 01 августа 2009

Вот хорошая серия статей Криса Хекера, посвященная растеризации программного обеспечения:

http://chrishecker.com/Miscellaneous_Technical_Articles

А вот сайт, на котором говорится и включает код для растеризатора программного обеспечения. Он был написан для системы, которая не имеет FPU (GP2X) и включает в себя источник для математической библиотеки с фиксированной точкой.

http://www.trenki.net

2 голосов
/ 04 сентября 2009

Я не уверен насчет остального, но я могу помочь вам с быстрым масштабированием и 2D вращением для ARM (написано на ассемблере). Проверьте демо:

http://www.modaco.com/content/smartphone-software-games/291993/bbgfx-2d-graphics-library-beta/

L.B.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...