Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 1512 1513 1514 1515 1516 [1517] 1518 1519 1520 1521   вперед  Ctrl
 Re: Курилка  [new]
rgreat
Member

Откуда:
Сообщений: 5130
Vizit0r,

Если работать через ScanLines проблем не будет.
2 авг 19, 20:33    [21940991]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Соколинский Борис
Member

Откуда: Москва
Сообщений: 10424
rgreat
Vizit0r,
Если работать через ScanLines проблем не будет.
Это понятно, вопрос в другом. Допустим исходный - DDB, и ScanLine-ов у него нет.
2 авг 19, 20:37    [21940992]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Vizit0r
Member

Откуда: Одесса
Сообщений: 627
rgreat
Vizit0r,

Если работать через ScanLines проблем не будет.


я эти грабли лично не собирал, давно читал где-то - поэтому деталей уже не упомню.
2 авг 19, 20:37    [21940994]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Соколинский Борис
Member

Откуда: Москва
Сообщений: 10424
В общем, получится пазл, Win API в таком режиме путает что куда нужно копировать.
Меня это весьма восхитило. Если поставить критическую секцию, то все в порядке.
2 авг 19, 21:03    [21941009]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Соколинский Борис,

это не winapi, это graphics коряво написан
там где-то битмапы временные создаются
я думаю если напрямую работать с хэндлами всё будет норм

но вобще DDB это моветон, память на него очень ограничена
5 авг 19, 07:50    [21941804]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Соколинский Борис
Member

Откуда: Москва
Сообщений: 10424
kealon(Ruslan)
это не winapi, это graphics коряво написан
Graphics безусловно корявый, но тут он скорее всего не причем. VCL код практически пустой. Проверяет валидность ссылок из запускает StretchBlt().


kealon(Ruslan)
но вобще DDB это моветон, память на него очень ограничена
Это звучит странно. В стародавние времена, когда еще не было крутых граф-движков, буферы в памяти для всяких игр использовались невозбранно.
5 авг 19, 08:17    [21941819]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Соколинский Борис
kealon(Ruslan)
но вобще DDB это моветон, память на него очень ограничена
Это звучит странно. В стародавние времена, когда еще не было крутых граф-движков, буферы в памяти для всяких игр использовались невозбранно.
они и сейчас используются, только не DDB, а DIB - как раз из-за этого
5 авг 19, 08:22    [21941821]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Соколинский Борис
Member

Откуда: Москва
Сообщений: 10424
[quote kealon(Ruslan)они и сейчас используются, только не DDB, а DIB - как раз из-за этого[/quote] А какая в этом сермяжная правда? DDB быстрее.
5 авг 19, 08:24    [21941823]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Соколинский Борис
kealon(Ruslan)
они и сейчас используются, только не DDB, а DIB - как раз из-за этого
А какая в этом сермяжная правда? DDB быстрее.
да, быстрее
но память ограничена, чёт в районе 20 МБ было, можешь потестить заведи DDB-битмап в начале запуска и освободи при завершении
посмотри сколько копий такого приложения сможешь запустить

вообще лучше отдать на откуп системе, в исходниках VCL теперь используется BeginBufferedPaint
5 авг 19, 08:37    [21941833]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Соколинский Борис
Member

Откуда: Москва
Сообщений: 10424
kealon(Ruslan),

Сейчас проверить не могу, но мне помнится, что когда делал кастомную буферизацию, и на сильно бОльших размерах проверял. И вообще это ограничение на голову не налезает. DDB - такой же битмап, с той лишь разницей, что контентом оперирует драйвер вывода, а не ось. Есть какой-то пруф?
5 авг 19, 13:40    [21942072]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Соколинский Борис,

тынц
5 авг 19, 13:53    [21942083]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
ёёёёё
Member

Откуда:
Сообщений: 579
Кот мёрзнет, на руки лезет. Скоро зима.
5 авг 19, 22:33    [21942510]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Sapersky
Member

Откуда:
Сообщений: 38
kealon(Ruslan)
тынц
Эта заметка 2010-го года, и относится наверное к WinXP.
В Win7 создаются гигабайтные и DIB, и DDB. Хотя в диспетчере задач DIB добавляется к занятой памяти, а DDB нет.
По скорости (BitBlt, TransparentBlt, AlphaBlend) заметной разницы тоже нет, много мелких картинок - DIB чуть быстрее, мало крупных - DDB. При этом тру-аппаратная графика (напр. OpenGL) на тех же операциях быстрее в разы-десятки раз.
5 авг 19, 22:37    [21942515]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
ёёёёё
Member

Откуда:
Сообщений: 579
ёёёёё
Кот мёрзнет, на руки лезет. Скоро зима.

В 1610м, осенью, польско-литовское войско заняло Москву. Без боя. И стало ждать, когда наступит лето. К осени 1612 они поняли, что лета в Москве не будет, никогда. И ушли.
5 авг 19, 22:37    [21942516]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Gator
Member

Откуда: Москва
Сообщений: 14720
ёёёёё
ёёёёё
Кот мёрзнет, на руки лезет. Скоро зима.

В 1610м, осенью, польско-литовское войско заняло Москву. Без боя. И стало ждать, когда наступит лето. К осени 1612 они поняли, что лета в Москве не будет, никогда. И ушли.

Вот кот и греет тебе руки, а не сам греется. Он и так в меху.
5 авг 19, 23:55    [21942529]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
ёёёёё
Member

Откуда:
Сообщений: 579
Gator
ёёёёё
пропущено...

В 1610м, осенью, польско-литовское войско заняло Москву. Без боя. И стало ждать, когда наступит лето. К осени 1612 они поняли, что лета в Москве не будет, никогда. И ушли.

Вот кот и греет тебе руки, а не сам греется. Он и так в меху.

Возможно, именно коты спасли Москву от польско-литовских захватчиков. Игнорируя.
6 авг 19, 00:59    [21942544]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Gator
Member

Откуда: Москва
Сообщений: 14720
ёёёёё, нуу... Возможно. Я не кошатник, я - собачник...
6 авг 19, 10:36    [21942673]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Sapersky
kealon(Ruslan)
тынц
Эта заметка 2010-го года, и относится наверное к WinXP.
В Win7 создаются гигабайтные и DIB, и DDB. Хотя в диспетчере задач DIB добавляется к занятой памяти, а DDB нет.
По скорости (BitBlt, TransparentBlt, AlphaBlend) заметной разницы тоже нет, много мелких картинок - DIB чуть быстрее, мало крупных - DDB. При этом тру-аппаратная графика (напр. OpenGL) на тех же операциях быстрее в разы-десятки раз.
Конечно по нынешним временам 4гб на видяхе не роскошь, но ресурс всё равно выходит ограниченный. И стоит ради нескольких процентов ускорения потенциально ломать работоспособность?
6 авг 19, 10:53    [21942690]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Sapersky
Member

Откуда:
Сообщений: 38
Несколько процентов (и не всегда в плюс) говорят скорее о том, что никакая видеопамять не используется.
BitBlt, FPS
GDI - DDB : 1373
GDI - DIB : 1432
OpenGL : 7876 <- вот здесь видеопамять
Мне кажется, в современных виндах DDB это легаси, сделано не для ускорений, а только чтобы старые программы работали.
6 авг 19, 14:24    [21942968]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 4982
Sapersky
Мне кажется, в современных виндах DDB это легаси, сделано не для ускорений, а только чтобы старые программы работали.
ну тем более тогда моветон
6 авг 19, 15:08    [21943019]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Vizit0r
Member

Откуда: Одесса
Сообщений: 627
у кого лицензия есть - пожалуйста, скачайте и перевыложите где-то файл
https://cc.embarcadero.com/item/30401 - MIDA Converter Basic for RAD Studio 10 Seattle

древность, но новее - только за 100E, при этом ни пробной версии, вообще ничего, тот еще кот в мешке.
7 авг 19, 09:44    [21943477]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 13164
говорят "почему ты справку не читаешь?"
может потому, что она неполная и без примеров

вот, например, нужно добавить бряку с условием

http://docwiki.embarcadero.com/RADStudio/Rio/en/Setting_and_Modifying_Breakpoints#To_create_a_conditional_breakpoint

а в каком форме вписывать условие в строк "condition" не написано, и примеров нет
9 авг 19, 12:38    [21945521]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25729
X11
а в каком форме вписывать условие в строк "condition" не написано, и примеров нет

А как писал, что решил в справку подглядеть?

Просто для меня это как "дышать", настолько давно этим пользуюсь. Еще с турбы.
9 авг 19, 12:46    [21945529]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
asviridenkov
Member

Откуда:
Сообщений: 3925
X11,

А что такое "формат условия"? Там написано, что выражение должно возвращать true или false, этого не достаточно?
9 авг 19, 12:46    [21945531]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 13164
wadman
А как писал, что решил в справку подглядеть?


никак не писал, нажал в окошке кнопку Help, понял, что результат должен быть True, потом начал экспериментировать и уже написал тогда sMyString = 'что должно быть в строке'
9 авг 19, 13:09    [21945560]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 1512 1513 1514 1515 1516 [1517] 1518 1519 1520 1521   вперед  Ctrl
Все форумы / Delphi Ответить