|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
Загрузка процессора графикой19.09.2019, 14:45. Показов 2396. Ответов 25
Метки нет (Все метки)
Всем привет !
Вопрос в следующем, есть прога которая рисует графику, предложим перерисовывает точки на экране, загрузка процессора при этом 50% но явно видно что отрисовка тормозит, это как то можно исправить ? Как то загрузить процессор или тормозит именно видеокарта и тут уже ничего не поделать ?
0
|
|
| 19.09.2019, 14:45 | |
|
Ответы с готовыми решениями:
25
Загрузка процессора в простое, при запуске диспетчера задач загрузка снижается Проблема с встроенной графикой Vega3 процессора Athlon 200GE Загрузка процессора |
|
|
|
| 19.09.2019, 14:49 | |
|
whale2, Отрисовка где? На канве? Какими функциями - стандартного GUI или DirectX/OpenGL?
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 19.09.2019, 14:52 [ТС] | |
|
Form10->Image1->Canvas->Pixels[x][y]=(TColor)RGB(BrightC,BrightC1,BrightC2);
GUI я так понимаю. Можно в bitmap загнать а потом весь копировать в канву все тоже.
0
|
|
|
|
||
| 19.09.2019, 14:58 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 19.09.2019, 15:01 [ТС] | |
|
так где тормозит в видеокарте или проц при GUI ?
Может пока не переписывать под DirectDraw а как нить приоритет программе повысить ? Загнать отрисовку в поток и приоритет выставить макс. поможет ?
0
|
|
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|
| 19.09.2019, 15:04 | |
|
Может не в масть... . Но, загрузка процессора на 50% приложением как бы намекает, что оно подвисло. Вы уверены,что причина тормозов именно в отрисовке? Может в программе где-нибудь ещё какой-то бармалей засел?...
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 19.09.2019, 15:06 [ТС] | |
|
Не, просто слишком быстро данные приходят и нужно много точек перерисовать )
Короче я так понял придется DirectDraw изучать (
0
|
|
|
|
||
| 19.09.2019, 15:10 | ||
|
1
|
||
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 19.09.2019, 15:11 [ТС] | |
|
Мне вот достаточно быстро-быстро скопировать bitmap или массив в видеопамять, может кто нить поделиться примером как это сделать на DirectDraw ?
0
|
|
|
|
|||
| 19.09.2019, 15:12 | |||
|
Добавлено через 1 минуту
1
|
|||
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 19.09.2019, 15:19 [ТС] | |
|
Приходят данные по ip вызывается фун-ция, (без потоков все линейно) в ней после некоторой обработки, выводятся точки на канву, мне кажется весь код в одну строку укладывается что я выше постил.
0
|
|
|
|
|
| 19.09.2019, 15:25 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
||||||
| 19.09.2019, 15:36 [ТС] | ||||||
|
К сожалению вся загрузка в одно строке
без привлечения видеокарты похоже никуда не деться.
0
|
||||||
|
|
|
| 20.09.2019, 00:52 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 24.09.2019, 18:34 [ТС] | |
|
На пути освоения DirectDraw вдруг возникла непонятная преграда )
В билдере есть встроенные примеры на DX, они отлично компилируются, выполняются, если их слегка покурочить то тоже все работает, даже в окне, НО стоит создать новое приложение, переписать туда все хэдеры итд и даже тупо все скопировать из примеров вылетает ошибка Unresolved external 'DirectDrawCreate' referenced from ... как объяснит эту фантастику ? Еще раз напомню что примеры работают, ничего не менял в билдере, все тупо скопировано из примеров и .h и .cpp
0
|
|
|
2637 / 1648 / 267
Регистрация: 19.02.2010
Сообщений: 4,371
|
||
| 24.09.2019, 20:13 | ||
|
Нужен ddraw.lib - посмотрите, как в проектах-примерах подключается эта либа и прописывается путь к её каталогу, и вручную свой файл проекта подправьте по этому образцу.
1
|
||
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 24.09.2019, 20:16 [ТС] | |
|
В примерах никак эта библиотека не подключается и даже не фигурирует )
Может я конечно что то упустил ? Вот этот пример из билдера.
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 24.09.2019, 20:22 [ТС] | |
|
Ого скопировал в папку проекта ddraw.lib и вставил #pragma link "ddraw.lib"
вроде скомпелировалось, но в примере нет такой либы как же она работал ?
0
|
|
|
2637 / 1648 / 267
Регистрация: 19.02.2010
Сообщений: 4,371
|
||
| 24.09.2019, 20:44 | ||
|
<SPARELIBS value="rtl.lib vcl.lib ddraw.lib"/> <LIBPATH value="$(BCB)\lib\release;$(BCB)\lib\obj ;$(BCB)\lib;$(BCB)\lib\psdk"/> Имя библиотеки в одной строке, и путь к каталогу, где она лежит - в другой строке. Текст файла проекта можно смотреть/править через кликание в ПроджектИнспекторе правой кнопкой мыши на имени приложения (не модуля, т.е. там, где .exe) и выборе во всплывающем окне пункта Edit option source. Но каталог можно задать и через Project/Options/Directories.
1
|
||
|
1 / 1 / 0
Регистрация: 20.10.2011
Сообщений: 227
|
|
| 25.09.2019, 00:58 [ТС] | |
|
Так и знал что где то спрятали в дебрях )
Совершенно случайно кто нить подскажет как задать цвет и интенсивность (в 16 и 32 бит изображения) в BYTE* AdresVideo = (BYTE*)SurfaceDesc.lpSurface; AdresVideo[]= тут цвет уже тонну макулатуры перерыл толком не нашел или описание где почитать, методом тыка тоже не удалось определить.
0
|
|
| 25.09.2019, 00:58 | |
|
Помогаю со студенческими работами здесь
20
Загрузка процессора Загрузка процессора
Загрузка процессора
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|