LINUX.ORG.RU

Небольшой растровый движок


0

2

Никто не подскажет небольшой, быстрый растровый движок с базовыми примитивами(линия, квадрат, треугольник, желательно ещё и закруглённые прямоугольники ну и закраска) на сях? Желательно шрифты, использующие freetype библиотеку. Нужна небольшая библиотечка без излишеств и комбайнов, крайне быстра. Собирать буду для ARMv5 с софтовым флоатом(тоесть, нужно без float-point). Спасибо.

★★★

Ответ на: комментарий от buddhist

Жирноват и больше для игр походит. Мне нужна либка которая будет системным двигом для рисования всего на девайсе. Всякие игровые примочки и признаки фреймворка мне ни к чему. :)

vova7890 ★★★
() автор топика
Ответ на: комментарий от Eddy_Em

Вроде то, что нужно, посмотрим, спасибо. Оно умеет 16битный рендеринг RGB565? Ибо у меня скринбуфер 16битный.

vova7890 ★★★
() автор топика
Ответ на: комментарий от vova7890

Оно умеет 16битный рендеринг RGB565?

Хрен его знает (но цвет умеет): я ее использовал только для рисования рамочек/крестиков и подписей (посмотри у меня на гуглокоде или на сосфорже проектик astrovideoguide: он древнючий, но там и v4l2 используется, и gd, и еще куча чего; но сейчас бы я его сделал совершенно по другому).

http://code.google.com/p/astrovideoguide/source/browse/jpeg_streaming.c

Eddy_Em ☆☆☆☆☆
()
Последнее исправление: Eddy_Em (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Чтото я проглядел, имейдж там имеет фиксированный тип int **tpixels. Тоесть вроде только 32бит. Мне накладно будет делать 3йную буфферизацию в 32->16 буффер...

vova7890 ★★★
() автор топика
Ответ на: комментарий от Eddy_Em

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

vova7890 ★★★
() автор топика
Ответ на: комментарий от Eddy_Em

Ну и я о том же, что рендер умеет только тру-колор(аля 32бит), а потом уже как хош танцуй с результатом. Только получается, что у меня 16битный скринбуфер, уже двойной, становится тройным, причем последний ещё и формат преобразовывает. Это конечно понятно, что с 32битным цветом работать проще, а поддерживать несколько типов рендера более чем накладно... Но, лучьше бы конечно без промежуточных буферов. Если бы была only 16бит поддержка, тогда бы норм. А так я чёт сомневаюсь. Поищу ещё чего нибудь, если ничего не найду подходящего, буду делать на этом движке.

vova7890 ★★★
() автор топика
Ответ на: комментарий от trashymichael

я уже сталкивался с ним, у меня есть старые сорцы, есть старые функции отрисовки текста и т.д.

vova7890 ★★★
() автор топика
Ответ на: комментарий от Eddy_Em

В общем, собрал чуток, вроде даже рисует http://ompldr.org/vZ2tidQ... Токо чот она мне не нравится, беглым взглядом говнокод попадается часто %) Например:

for (i = 0; (i < sy); i++)
    {
      im->tpixels[i] = (int *) gdCalloc (sx, sizeof (int));
      if (!im->tpixels[i]) {
...
Ну что за фуйня... Забил, сделал по своему:
pixel_data = gdMalloc (sizeof (int *) * sy * sx);
for (i = 0; (i < sy); i++)
    {
      im->tpixels[i] = (int *)(pixel_data + ( sizeof (int *) * sx * i ));
теперь то можно рисовать tpixels[0] буффер полностью. Потом, смотрю там часто юзается не инлайновый сет пиксель... Если они юзают только 32бита, нафига отдельная функция? Это сильно замедляет её работу, сетпикселя вообще не должно быть, или быть тока для «чтобы было». Короче хз, нету нормальных либ... (

vova7890 ★★★
() автор топика
Последнее исправление: vova7890 (всего исправлений: 1)
Ответ на: комментарий от Eddy_Em

Долго... Короче, переделал эту фигню чуток. Сделал тпиксельс одним массивом, позаменял пару обращений на макрос:

#define tpixels_(im, y, x) *((unsigned int*)(im->tpixels + (im->sx * y + x)))
вроде пашет.

vova7890 ★★★
() автор топика
Ответ на: комментарий от Eddy_Em

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

vova7890 ★★★
() автор топика
Ответ на: комментарий от vova7890

Да и флоатов там чуть больше чем дохера.

vova7890 ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.