Годовой архив: 2025

Жизнь без Windows: Кроссплатформенная MulDiv для Delphi

Лично меня достало ради MulDiv вечно подключать Winapi.Windows. Знакомая ситуация? Пишешь код с прицелом на кроссплатформенность, всё красиво, а тут — бац! — нужна MulDiv. И вот уже тянешь за собой всю Windows-зависимость, как якорь.

Шум Перлина: Разбор алгоритма

Шум Перлина — это мост между математикой и природой. Он дает нам инструмент для создания бесконечно разнообразных миров и реалистичных природных эффектов. Он перевернул представления о компьютерной графике и принёс своему создателю Оскар. Давайте разбираться, что это такое и как… (ДАЛЕЕ)

Кубический Сплайн Эрмита

Если требуется превратить корявую ломаную в симпатичную гладкую кривую так, чтобы она проходила через все точки ломаной, то тут может помочь кубический сплайн Эрмита. Если лень читать теорию, а её здесь много, то сразу идём в конец статьи, там исходники… (ДАЛЕЕ)

Как сделать чёрным системное меню элемента Windows

Есть мнение, что сделать чёрным системное меню какого-либо элемента Windows в Delphi не получится. Даже сменив тему всей ОС. Если меняем тему окна на тёмную, внутреннее меню TEdit останется светлым. Что делать? Как приручить дракона?

Пересечение отрезков в 2D и 3D

Пересечение отрезков в последнее время стало основным моим занятием. Зафиксирую, почему именно так, а то потом забудется. Как найти пересечения прямых рассмотрено в статье Пересечение прямых, угол и координаты пересечения. Нас интересуют именно отрезки. Решение векторно-алгебраическое, поэтому будет интересно.

OpenGL: Сглаживание краев. ARB-Multisample

Наконец-то появилось время реализовать ранее написанный obj-ридер в OpenGL. В процессе выяснилось, что с момента моего последнего общения с OpenGL прошло слишком много времени. Совершенно не устраивал результат из-за гадских «ступенек». Мне нужно сглаживание…