Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Контур текста тормозит при отрисовке 
:(
    Опции темы
-Mikle-
Дата 26.2.2009, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



Имеется такой код в рендеринге моего контрола:

Код

        protected override void OnRender(DrawingContext drawingContext)
        {
            base.OnRender(drawingContext);

            drawingContext.DrawGeometry(Brushes.Transparent, new Pen(Brushes.Red, 3), abrisText);
            drawingContext.DrawText(formatedText, new Point());
        }

        private void rebuildRenderObjects()
        {
            formatedText = new FormattedText(text, CultureInfo.CurrentCulture, FlowDirection.LeftToRight, new Typeface(new FontFamily("Georgia"), FontStyles.Normal, FontWeights.Bold, FontStretches.Normal), 24, Brushes.Yellow);
            if (text.Length > 0)
                formatedText.SetFontSize(40, 0, 1);

            abrisText = formatedText.BuildGeometry(new Point());
        }

        string text = "какой-то текст";
        FormattedText formatedText;
        Geometry abrisText;


При относительно небольшом объеме текста (< 1 KB), тормозит страшно во время анимации! Причем тормозит даже анимация другого контрола, находящегося на его фоне. Короче тормозит отрисовка abrisText. Подозрение, конечно же сразу, на объем графики, которую приходится рисовать (abrisText). Но в голову приходят сразу все заявления мелкомягких о высокой производительности графики, которую теперь рисует DirectX. В чем же дело? И как это исправить? Может что-то настроить нужно?

PS: Рисование в Bitmap'ы не предлагать, работает быстро, но мне не нравится как выглядит растянутый растр и сама идея создавать и рисовать растр.

PPS: Ноутбук Toshiba Satellite (Vista Sertifited), IntelCore2Duo 2.17, 3 Гига памяти, Radeon HD3470 видюха


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
-Mikle-
Дата 27.2.2009, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



Ни у кого нет версий или аргументов?


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
-Mikle-
Дата 3.3.2009, 08:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



подниму-ка я еще разок эту тему...

Почему же все таки богатая 3D графика (через DirectX) рисуется быстрее, чем 2D графика (через тотже DirectX)??? ??? ???


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
dazy
Дата 4.3.2009, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 15.9.2006

Репутация: 3
Всего: 8



м.б. прозрачность много жрет и тормозит?

Попробуйте пройтись Perforator'ом или Snoop'om чтобы поискать слабое место.
PM MAIL   Вверх
-Mikle-
Дата 5.3.2009, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



dazy, я нашел в инете только снупер, а Perforator не нашел... Снупер, как я понял, умеет только визуальное дерево показывать, это мне ничего не дает... А что делает перфоратор и где найте его? Я ни разу не слышал об этих утилитах...


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
Partizan
Дата 5.3.2009, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 67



-Mikle-, профайлером можно пройтись и найти узкие места...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
rooks
Дата 5.3.2009, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 90
Регистрация: 28.9.2008
Где: Минск

Репутация: 5
Всего: 9



-Mikle-, http://msdn.microsoft.com/en-us/library/aa969767.aspx
хотя у себя я его так и не нашел, скачал отсюда http://windowsclient.net/wpf/perf/wpf-perf-tool.aspx
PM MAIL ICQ   Вверх
-Mikle-
Дата 6.3.2009, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



rooks, спасибо за ссылки!

Попоробую, потом отпишусь...


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0494 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.