ПрограммированиеФорумОбщее

ZenGL Update (31 стр)

Страницы: 126 27 28 29 30 31
#450
10:54, 8 мар 2025

Skvoznjak
> А тут какая-то невозможность найти свои файлы в консоли вылезает.
там выползает информация, что надо проверить проект и закомментировать строку, если проект подготовлен. )))

#451
(Правка: 5:02) 4:57, 15 мар 2025

Mirrel
>там выползает информация, что надо проверить проект и закомментировать строку, если проект подготовлен. )))

И тут вспоминаем знаменитый афоризм про стену и транслит. А инглиш, это транслит в квадрате:)

Ты про падения на больших данных упоминал. Вполне возможно, что с отключенной проверкой на переполнение ты проспал в коде локальный зомбиапокалипсис. На сложных эмиттерах он случается. Но может и не только там. В файл zgl_particles_2d.pas добавил вывод отладочной инфы:

    parCount   := Round((Time - LastSecond) * (Params.Emission / 1000) - parCreated);
    writeln('-uuu-------------- ',parCreated,' ',parCount,' ',Particles);
    if Particles + parCount > EMITTER_MAX_PARTICLES Then
      parCount := EMITTER_MAX_PARTICLES - (Particles + parCount);
    writeln('-qqq-------------- ',parCreated,' ',parCount);
    parCreated := parCreated + parCount;

    for i := 0 to parCount - 1 do

Что тебе нравится в этом древнем коде? Лично мне, что в заумных формулах проверяется количество положительных частиц, а вот количество их зомбей никто не проверяет! А они на сложном эмиттере неплохо так плодятся:

-uuu-------------- 73 0 120
-qqq-------------- 73 0
-uuu-------------- -1571145137 1571145532 1015
-qqq-------------- -1571145137 -1571145523
-uuu-------------- 1 0 2
-qqq-------------- 1 0
-uuu-------------- 182 0 249
-qqq-------------- 182 0

А когда в лонгинт два раза запихивается по полтора миллиарда отрицательных частиц, то переменная трещит по швам, и только выключенная проверка до поры, до времени, спасает от звиздеца. Не разбирался, сколько зомбей надо оставить 0 или 500 миллионов, пока выбрал второе. Если здесь такая проверка, то и в других местах надо к проверкам на положительные величины добавить и проверки на отрицательные.

#452
23:45, 15 мар 2025

Skvoznjak, помечу, пока не вникал сильно что там происходит. Благодарю!

#453
(Правка: 3:09) 3:07, 9 апр 2025

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

+ ютуб

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

#454
19:51, 1 мая 2025

  Очередное обновление ZenGL до версии 4.18. Ссылка.

  Из основных изменений:

- Устранена утечка памяти для LCL/VCL приложений.
- Возвращены старые процедуры pr2d_Circle и pr2d_Ellipse. И "добавлены" новые pr2d_CircleEx и pr2d_EllipseEx - несут небольшое расширение для стандартных процедур, это возможность заливки разным цветом от центра к краям.
- Корректирован код для LightEngine2d.
- добавлены функции: u_ByteToHex, u_WordToHex, u_LWordToHex, u_ByteToBin, u_WordToBin и u_LWordToBin. В большинстве своём они нужны только для отладки.
- исправлены проблемы совместимости кода для OpenGL с кодом для OpenGL ES.
- добавлена процедура wnd_SetAutocenter - указывающая что дальшение изменения окна должны автоматически центрировать окно.

И прочие мелкие изменения.

#455
22:17, 15 июня 2025

Выпущена новая версия --> ZenGL 4.19. <--
Изменения произошли достаточно глобальные и возможно версия не стабильна. Потому, если что, используйте предыдущую версию.

Основные изменения:

- изменена работа с загрузкой файлов. Теперь за счёт флага можно указать, что путь указан глобальный. Необходимо для LCL/VCL приложений, где используются OpenDialog и что-нибудь подобное.
- частицы: добавлены процедура и функция для передачи координат излучателя. В дальнейшем могут быть изменение их работы.
- изменена работа рендера. Исключена вся функциональность glBegin, glEnd, glVertex и другие из функциональности ZenGL. Теперь всё работает посредством использования glDrawArrays - кроссплатформенно по умолчанию.
- изменена работа с цветом. Теперь основа для цвета это zglTColor (zglPColor), ранее было LongWord.
- добавлены расширенные функции для рисования линии, в них можно задавать начальный и конечный цвет.
- множественные изменения согласно изменений выше.

Просьба сообщать о всех проблемах работы с библиотекой! Очень сложно всё протестировать. По возможности проверил всё что возможно, но наверняка что-то упустил.

Страницы: 126 27 28 29 30 31
ПрограммированиеФорумОбщее