Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Вниз

delphiX вывод текста   Найти похожие ветки 

 
TButton ©   (2004-01-21 18:05) [0]

что давно хотел спросить, как лучше сабж реализовать. В принципе у меня есть способ реализации и даже два.
1. Это спрайтовый текст. рисуем таблицу буковков пилим ее (patternHeight, width) рисуем буковки по ее Орду
2. Рисуем на спрайте текст, обновляем имадж лист, рисуем спрайт.

но у обоих методов есть недостатки
1. Буковки должны быть одной ширины, иначе будет черезчур погано
2. Очень уж медленно он работает.

можно выводить текст прям на surface.canvas, но это еще хуже.

есть у кого-нибудь (а я точно знаю, что у кого-нибудь да есть) наработки на эту тему, поделитесь пожалста опытом (ХР).


 
miek ©   (2004-01-21 20:57) [1]

Ну и фантазия. Все проще. Лочишь поверхность, получаешь DC ее, потом на него хоть тонну текста упиши. Разлочить потом не забудь только.


 
TButton ©   (2004-01-22 11:56) [2]

от до етого я не додумался. а можно подробнее... т.е. кода кусок бы(можно на мыло)


 
miek ©   (2004-01-22 20:38) [3]

ДельфиХ не использую, так что могу только на голом API:

secondarysurface.GetDC( dc);
selectobject( dc, getstockobject( ansi_var_font));
setbkcolor( dc, 0);
setbkmode( dc, transparent);
settextcolor( dc, clwhite);

r1:= makerect( 0, 0, 640, 31);
drawtext( dc, pchar( fpsstring), length( fpsstring), r1, dt_left);
secondarysurface.ReleaseDC( dc);

Лочить, как я вспомнил, не обязательно. Вся эта красота ни на процент не снижает FPS.


 
cyborg ©   (2004-01-22 21:43) [4]

>>Лочить, как я вспомнил, не обязательно
Всё это GetDC( dc); и ReleaseDC( dc); и есть захват контекста, типа лочить.
>>Вся эта красота ни на процент не снижает FPS
Это заблуждение, снижает и очень сильно.


 
miek ©   (2004-01-23 16:41) [5]

Я именно сейчас исследую этот вопрос, на карточке S3 Virge - вывод небольшого количества текста (около 40 символов в кадре) не снижает моих 60 FPS. Делаю вывод, что так и должно быть.


 
Sapersky ©   (2004-01-23 23:20) [6]

http://www.geocities.com/foetsch/bmpfonts/bmpfonts.htm


 
cyborg ©   (2004-01-24 00:47) [7]

[5] miek ©   (23.01.04 16:41)
Если поверхть в оперативной памяти, то это не сильно заметно, а вот когда в видеопамяти.



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.125 c
1-1084785192
Stas
2004-05-17 13:13
2004.05.30
Как узнать удален ли компонент ?


7-1082712524
Zyb
2004-04-23 13:28
2004.05.30
Сервис в Win2000


1-1084347212
rams
2004-05-12 11:33
2004.05.30
ProcessMessages... и другие


7-1083049444
luka
2004-04-27 11:04
2004.05.30
запись cd


1-1085043800
finger
2004-05-20 13:03
2004.05.30
Динамическая работа с компнентами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский