Oberon space
General Category => Общий раздел => Тема начата: valexey_u от Май 07, 2013, 09:16:42 pm
-
Чую надо отдельную тему завести.
Итак задача - нужно быстро рисовать. То есть нужно выводить на экран картинку 640x480 без мерцания, 30 кадров в секунду. Картинка уже сформирована и есть в виде буфера (одномерного массива), например вот в таком виде: http://oberspace.dyndns.org/index.php/topic,484.msg16241.html#msg16241.
Как это сделать максимально просто и не слишком криво?
-
OK. Упростим задачу - нужно просто вывести картинку (bmp или ppm) на экран.
-
если под виндой то функции gdi, если универсально то opengl
-
если под виндой то функции gdi, если универсально то opengl
Вообще хотелось переносимо чисто ББшно. Однако оказалось что Ports.Frame умеет всякие там эллипсы и прочие кривые, а вот банально растр вывести не может никак. WinAPI (aka GDI) использовать не вариант вообще.
Так что пока остановился на OpenGL.
-
тогда зачем задавать риторические вопросы?
-
тогда зачем задавать риторические вопросы?
Я его задал до того как нашел приемлемое решение. Спасибо Ilovb за консультацию :-)
-
Похоже таки придется пробовать Win32 API - мне на этом битмапе еще рисовать надо. И если окружности да линии я и сам могу, то вот текст...
-
SDL умеет текст рисовать. А для OpenGL есть http://sourceforge.net/projects/ftgl/
Но нужно биндить ессесна.
-
Похоже таки придется пробовать Win32 API - мне на этом битмапе еще рисовать надо. И если окружности да линии я и сам могу, то вот текст...
хе .. ну как "выкусили"... вот так и со всеми Оберонами - косяк на косяке... когда что- попытаешься сделать выше уровня поделья... оказывается , что реально все "хваленные" преимущества либо отсутствуют, либо аннулируются косяками различной степени неприятности.. Конечно , всегда можно сказать что вы пытаетесь делать то , под что он не заточен.. но тогда возникает вопрос - под что он заточен? под программирование "ретро" платформ.. ;D.
Кстати, нафига понадобилось отображать текст в битмэпе?
-
А для OpenGL есть http://sourceforge.net/projects/ftgl/
Но нужно биндить ессесна.
Нафига.. эта кака под винду.. и от кроссплатформенности остается пшик.. уж лучше тогда используя винапи.. -тормозить хоть меньше будет.
-
А для OpenGL есть http://sourceforge.net/projects/ftgl/
Но нужно биндить ессесна.
Нафига.. эта кака под винду.. и от кроссплатформенности остается пшик.. уж лучше тогда используя винапи.. -тормозить хоть меньше будет.
Угу. Поскольку Ogl подсистема из коллекции Гельмута Цинна один фиг рисует в конечно итоге через Win32 API BitBlt, то есть без хардварного ускорения, идея в том, чтобы убить лишнего - то есть OpenGl, и поиметь с этого немножечко ништяков.
-
Дизер
Довольно странные притензии.
Что, в с или с++, работа с графикой происходит через библиотеки. Если взять free basic, вывод графики встроен в язык, это конечно хорошо, но если сравнивать с sdl, sdl намного гибче и универсальнее.
Алексей зачем привязываться к винапи. Возьми sdl, тайиер, рабрта с растровой графикой, легкое подключение opengl и dx, шрифты, звук и т.д всё есть.
-
Дизер
Довольно странные притензии.
Что, в с или с++, работа с графикой происходит через библиотеки. Если взять free basic, вывод графики встроен в язык, это конечно хорошо, но если сравнивать с sdl, sdl намного гибче и универсальнее.
Алексей зачем привязываться к винапи. Возьми sdl, тайиер, рабрта с растровой графикой, легкое подключение opengl и dx, шрифты, звук и т.д всё есть.
какие к черту претензии - это ощущения от знакомства.. когда начинаешь осознавать что потратив время на проработку какого -нибудь вопроса и разобравшись с сутью проблемы, гораздо выгоднее (менее трудозатратно) обратиться другому инструменту (в частности, работать с винапи напрямую нежели с компонентами из коллекции Цинна).
-
... когда тратишь определенный ресурс на то, что бы договорится с нормальными людьми.. о том, что бы поставить Обсерон на сервак, дабы детишки заценили его "рекламируемую" коровятами мощь в обучении на олимпиадных задачах (без п-жа в честном сравнении) ... где с точки зрения языка требуется стандартный джентельменский набор.. а оказывается.. что нормально нельзя ввести целое число.. и вывести отформатированный результат , согласно спецификации задачи (нехитрый).. и таких примеров у меня с десяток за 3 года..
-
Дизер
Довольно странные притензии.
Что, в с или с++, работа с графикой происходит через библиотеки. Если взять free basic, вывод графики встроен в язык, это конечно хорошо, но если сравнивать с sdl, sdl намного гибче и универсальнее.
Не нужно сравнивать язык и фреймворк. В Компонентном Паскале в общем то даже вывода в консоль нет, не то что графики. Поэтому корректное сравнение будет либо C++/Qt VS CP/BB либо C++ VS CP.
Алексей зачем привязываться к винапи. Возьми sdl, тайиер, рабрта с растровой графикой, легкое подключение opengl и dx, шрифты, звук и т.д всё есть.
Мне нужно это все оформить в виде View, то есть оно должно встраиваться в составной документ.
-
Дизер
Довольно странные притензии.
Что, в с или с++, работа с графикой происходит через библиотеки. Если взять free basic, вывод графики встроен в язык, это конечно хорошо, но если сравнивать с sdl, sdl намного гибче и универсальнее.
Не нужно сравнивать язык и фреймворк. В Компонентном Паскале в общем то даже вывода в консоль нет, не то что графики. Поэтому корректное сравнение будет либо C++/Qt VS CP/BB либо C++ VS CP.
даже если сравнивать корректно(т.е. по вашему) - ничего это не изменит..