Вело-изобретателиФорумSR2D - софтовый 2D движок

SR2D, тестируем x64 версию. (18 стр)

Страницы: 113 14 15 16 17 18
#255
8:30, 26 окт 2023

SilentPrayerCG
Да, прибавить то можно - OpAdd, а вот вычесть с такой точностью не выйдет, не предусматривал. Разве что, в два хода:
1. С помощью MullAddS2X вычесть 2.
2. С помощью OpAdd2D найти полусумму исходного и полученного.

#256
14:06, 26 окт 2023

Mikle
А как с помощью OpAdd вообще это сделать?

#257
15:40, 26 окт 2023

Не OpAdd, а OpAdd2D. Это полусумма (среднее арифметическое) источника и приёмника.
Псевдокод:

spr1.MullAddS2X spr2, 0, 0, argb(127,128,128,128), argb(128,128,128,128)
spr1.draw spr2, 0, 0, OpAdd2D
#258
21:08, 26 окт 2023

Mikle а в этом примере, в спрайте1 и спрайте2 изначально одна и та-же картинка?
получится, MullAddS2X убавит яркость
а OpAdd2D чуть чуть прибавит?
или как?

#259
22:40, 26 окт 2023

SilentPrayerCG
> в этом примере, в спрайте1 и спрайте2 изначально одна и та-же картинка?
Во втором спрайте исходник, в первом - не важно, MullAddS2X полностью перезаписывает содержимое.
SilentPrayerCG
> получится, MullAddS2X убавит яркость а OpAdd2D чуть чуть прибавит?
OpAdd2D найдёт среднее между приёмником и источником, в данном случае получается, что прибавит, а если бы мы с помощью MullAddS2X в начале повышали яркость, то OpAdd2D бы убавил её.

#260
20:58, 27 ноя 2023

Mikle
Привет, не знаешь, на .net можно как-то подружить painttodevice и событие paint?
В том плане, что если это форма, то вроде работает нормально
т.е всю логику отрисовки можно засунуть в paint евент, и в конце добавить Paint to device

а вот если это, к примеру picturebox на форме, уже немного иначе себя ведет paint

в случае с формой, если я увожу форму за пределы доступных экранов, а потом двигаю её обратно (т.е участок формы который нужно обновить меняется в положительную сторону), он перерисовывает её нормально

а в случае если я вывожу на picturebox, вродебы поведение такое-же, но если резко поднять форму "со дна", то он PainttoDevice не выресовывавает содержимое целиком, остается пробел, пока invalidate вручную, не сделаешь.
тоже самое с ресайзом

как бы это сделать, чтобы и зазря не перерисовывалось, и дорисовывалось как надо?

причем похоже стандартный e.graphics в paint в picturebox работает нормально, именно Painttodevice не хочет, конфликт чтоли какой-то, я так понимаю в конце события он каку-то отрисовку сам делает. может это вообще не айс paint to device пихать в paint
хотя вроде в форме работает как надо

#261
21:15, 27 ноя 2023

SilentPrayerCG
Так глубоко в эти тонкости я не лазил. На VB6 это всё отлично работает.

#262
21:18, 27 ноя 2023

Mikle
ну похоже придется просто сделать рендер() и вызывать его если происходит ресайз в большую сторону и если форма возвращается на экран (вот это я пока хз как сделать, учитывая что экраны всякие разные могут быть)

потому что просто засунув все в паинт, и потом тыкая invalidate() - вызывает фликкеринг.

я так думаю он в конце paint делает какой-то свой redraw который конфликтует с paint to device

#263
7:13, 3 мар 2024

Привет! извиняюсь если отвлекаю, всплыл тут после долгой паузы со старым вопросом об Ассемблере 64бит - какие варианты существуют при условии что надо инлине режим т.е. вставки на языке более высокого уровня как например PowerBasic пишу ассем вставки dll пока на нём режим 32бита не смотря на версию 64бит самого PowerBasic.

#264
14:27, 5 мар 2024

Кроме Masm64 других вариантов не знаю, но особо и не искал. То есть это не инлайн асм.

#265
10:04, 3 апр 2024

Mikle
Так и не чекал мою перепись на C#?)
https://mega.nz/file/aPBiiSpC#h9sZZXaP1LDCt1beh_7VBkNEOun-HYL9KWje_tfnpYQ

#266
19:40, 3 апр 2024

SilentPrayerCG
Да всё никак. Просто у меня сейчас нигде шарп не установлен.
Постараюсь не забыть.

#267
9:56, 12 апр 2024

Mikle
А то может, можно что-то улучшить там.

Ты кстати вроде упоминал некую новую версию, планируемую?

Страницы: 113 14 15 16 17 18
Вело-изобретателиФорумSR2D - софтовый 2D движок