Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 28.05.2013, 13:52  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от drug2004 Посмотреть сообщение
вы его почему выбрали?
Ну дык все еще на стадии тырканья(поисков) . Кстати те кто юзают SDL почему то наоборот советуют OpenGL для подобного. И я так понимаю SDL это обертка DirectX ?

Сообщение от drug2004 Посмотреть сообщение
С пикселами в OpenGL не очень удобно работать,
Не именно пиксели , а точки . Ибо хотелось все таки масштабировать .
А текст и рисунки и получатся при подобном выводе как растровое изображение .
Реклама:
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 28.05.2013 в 13:55.
dosikus вне форума  
Непрочитано 28.05.2013, 14:28  
drug2004
Частый гость
 
Регистрация: 30.01.2009
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
drug2004 на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от dosikus Посмотреть сообщение
Ну дык все еще на стадии тырканья(поисков) .
Понял.

Сообщение от dosikus Посмотреть сообщение
Кстати те кто юзают SDL почему то наоборот советуют OpenGL для подобного.
Так вы хотите графику рисовать на экране определенного размера?
Сообщение от dosikus Посмотреть сообщение
И я так понимаю SDL это обертка DirectX
SDL это самостоятельная библиотека, кроссплатформенная и с ДиректХ никак не связана.
Сообщение от dosikus Посмотреть сообщение
Не именно пиксели , а точки
Вам нужно чтобы OpenGL отрендерила картинку в буфер (не обязательно на экран), а вы уже потом этот буфер оприходуете как надо? Тогда нужно копать в сторону рендеринга в текстуру. Текстура как раз и есть тот самый массив.
drug2004 вне форума  
Непрочитано 28.05.2013, 14:32  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от drug2004 Посмотреть сообщение
Так вы хотите графику рисовать на экране определенного размера?
Угу ,скажем так - исходный массив задан с жестким размером . Получаемое изображение масштабируем пропроционально.

Сообщение от drug2004 Посмотреть сообщение
Текстура как раз и есть тот самый массив.
Спасибо , начинаю въезжать потихоньку.
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 28.05.2013, 14:53  
drug2004
Частый гость
 
Регистрация: 30.01.2009
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
drug2004 на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от dosikus Посмотреть сообщение
Угу ,скажем так - исходный массив задан с жестким размером . Получаемое изображение масштабируем пропроционально.
Тогда вам нужно просто настроить параметры текстуры и рендерить сразу в этот массив подставив его как текстуру.Смотрите в сторону функции glTexImage2D(GL_TEXTURE_2D, 0, 4, texture_width_, texture_height_, 0, GL_BGRA, GL_UNSIGNED_BYTE, intermediary.pixels)
первый параметр это указание что у вас двумерная текстура,
второй и третий не вспомню, они редко меняются, нужно API смотреть,
четверный и пятый это ширина(Х) и высота(У) текстуры в пикселах (не в байтах),
шестой опять не помню,
седьмой это как раз формат данных, те. сколько компонент цвета на один пиксел - в данном случае 4 компонента (красный, зеленый, синий и прозрачность),
восьмой это сколько байт на компонент, здесь указан беззнаковый байт, у вас же два и значит должна быть другая константа, нужно смотреть,
и последний параметр это указатель на ваш массив.
Елки-палки, вам же наоборот из текстуры надо массив получить. Это надо погуглить, я сам так не делал, по крайней мере не помню.
drug2004 вне форума  
Непрочитано 28.05.2013, 14:55  
drug2004
Частый гость
 
Регистрация: 30.01.2009
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
drug2004 на пути к лучшему
По умолчанию Re: OpenGL вопросы

вот здесь есть пример рендеринга в текстуру - http://masandilov.ru/opengl/render-to-texture, но здесь текстура наружу не передается, а используется тут же. А вы ее куда и как хотите передавать?
drug2004 вне форума  
Непрочитано 28.05.2013, 15:27  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от drug2004 Посмотреть сообщение
Елки-палки, вам же наоборот из текстуры надо массив получить.
Да похоже нет . Я стряпую массив как битмап текстуру в сишном коде, и эту текстуру
натягиваю в OpenGL на плоскость .

Сообщение от drug2004 Посмотреть сообщение
А вы ее куда и как хотите передавать?
Лицезреть так сказать результат работы кода.
Просто выводить в окно , как выше и писал - эмулятор LCD .
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 28.05.2013, 15:37  
drug2004
Частый гость
 
Регистрация: 30.01.2009
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
drug2004 на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от dosikus Посмотреть сообщение
Да похоже нет . Я стряпую массив как битмап текстуру в сишном коде, и эту текстуру
натягиваю в OpenGL на плоскость .
Сообщение от dosikus Посмотреть сообщение
Лицезреть так сказать результат работы кода.
Просто выводить в окно , как выше и писал - эмулятор LCD .
Ну тогда это то, что вам нужно. Правда для текста что хотите использовать? Я раньше использовал дисплейные списки и wgl* функции. Сейчас я предпочитаю freetype как более общее решение. Как уже писал, я сейчас использую freetype для вывода текста в SDL_surface, а ее потом использую как текстуру. Довольно гибко получается - я рисую графику средствами OpenGL, а где нужно текст вывожу текстурой.
drug2004 вне форума  
Непрочитано 28.05.2013, 15:44  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от drug2004 Посмотреть сообщение
Правда для текста что хотите использовать?
Текст будет формироваться рисунком в текстуре , ну собственно если ембеддите то поймете.
Возможно буду выводить что то типа OSD , но до этого как до пекина пока.
Пока информация получена , буду переваривать.
Далее будут вопросы по организации самого вызова того сишного кода .
Я так понял , что весь цикл крутится в функции, вызываемой из самой OpenGL либы
по какому либо событию .Например обработка кнопок .
И здесь так же куча вопросов ...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 28.05.2013, 15:53  
drug2004
Частый гость
 
Регистрация: 30.01.2009
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
drug2004 на пути к лучшему
По умолчанию Re: OpenGL вопросы

Главный цикл вы сами должны организовать. Обычно это банально while(running) {}, где установкой running в false вы прерываете цикл и завершаете работу. Хотя если вы фриглут юзаете, там уже есть такая функция, да.
Я бы вам еще раз порекомендовал присмотреться к SDL - для десктопа как раз что нужно, в том числе и вывод текста отличного (любой TTF шрифт, например), плюс организация главного цикла и реакция на события. И OpenGL отлично дружит.

Последний раз редактировалось drug2004; 28.05.2013 в 15:55.
drug2004 вне форума  
Сказали "Спасибо" drug2004
dosikus (28.05.2013)
Непрочитано 28.05.2013, 21:00  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: OpenGL вопросы

Сообщение от dosikus Посмотреть сообщение
Видится так - Сишный код , изолированный от остального, производит заполнение массива, ... Массив выводим через либы OpenGL.
Если OpenGL есть лишь способ визуализации, то напрашивается вопрос - почему на нём свет клином сошёлся? Разве не все равно, чем визуализировать-то? OpenGL, SDL - не из пушки по воробьям?

Когда-то было нечто похожее:

Код:
       DsplPort = new CMarqueePanel(this);
       DsplPort-›Parent = pnlMarquee;
       DsplPort-›Align  = alClient;
       DsplPort-›Color = BckColor;
       ...
       DsplPort.CDat = (c & col_mask)? 1:0;   // light up pixel if masked's non zero
       ...
Заполнение можно по-разному осуществлять - что за массив у тебя?
__________________
There's always more than one way to skin a cat.
tempora вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопросы по радиоприемнику Alpout Делимся опытом 8 19.01.2013 10:53
Wiznet W7100. Общие вопросы R_N Микроконтроллеры, АЦП, память и т.д 7 06.06.2012 00:33
Система измерения температуры (на AD8495), вопросы по схеме и реализации spartakchamp Измерительное оборудование 2 15.11.2010 22:04
Протокол modbus. Вопросы по интерфейсу Phunt-ik Микроконтроллеры, АЦП, память и т.д 32 25.12.2008 00:56


Часовой пояс GMT +4, время: 05:50.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot