Random Rust Dev
366 subscribers
76 photos
41 videos
1 file
28 links
Разработка на языке Rust.
Пишу простыни со своими мыслями о Rust и проектах на нем.
Download Telegram
Сообщение для комментов
То ли копилот знает алгоритм де Кастельжо, то ли просто угадал
Вообще у людей разное отношение к копилоту и подобным ИИ для порграммистов.

Для меня это просто code completer 80го уровня.
Я никогда не прошу его реализовать функцию, я начинаю писать, а он предлагает. И часто угадывает.

Хотя функции на пару строк может и целиком угадать просто исходя из аргументов и возвращаемого типа.
This media is not supported in your browser
VIEW IN TELEGRAM
Оказывается находить кривую рядом с курсором очень даже просто.
Почти как рисовать. Сэмплишь многоточек и находишь расстояние до них.
Но для перфа сделал еще иерархичные баундин боксы до достаточно короткой секции
3
This media is not supported in your browser
VIEW IN TELEGRAM
В визуальном программировании часто приходится на каждую маленькую операцию вставлять ноду.
Но зачем?

Заменил ноду Add на ноду Expr в демке к egui-snarl.
Теперь можно написать выражение с числами и переменными и его результат будет на выходе.
А для каждой переменной будет вход.

Все же я хочу что бы этот TextEdit был прямо в шапке ноды. Но пока не придумал как объединить это с перетаскиванием ноды за шапку.
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Наконец-то получилось сделать тягание ноды за любой неинтерактивный спот на ней.

А еще ресайз ноды, так что в нее точно помещается весь контент с отступами, но не больше.
🔥2
Нужно ли добавить флаг в стиль что бы связи рисовались под нодами, а не над ними
Anonymous Poll
43%
Да
21%
Нет
29%
Потом
7%
Я бы сам сделал
Это даже проще чем казалось
🔥4
Выглядит неплохо. Сделаю это стилем по-умолчанию
This media is not supported in your browser
VIEW IN TELEGRAM
Сделал схлопывание нод.
Получилось вроде прилично.
Пришлось, правда, переделать отрисовку, разделив рисование заголовка и пинов.

Обычный егуйный CollaspingHeader просто клипает содержимое во время анимации.
Мне же захотелось сделать похитрее - схлопывающийся контент уезжает наверх.
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Схлопывание замедленном режиме
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Зум в egui это сложно, но вот что выходит пока
👍2
Вот теперь зум получается хорошим.
Нужен только один workaround в пользовательском коде для TextEdit - задать явно desired_size и margin.
Первый можно просто занулить, для второго взять ui.spacing().item_spacing например.

За одно переставил зум на колесико мышки. Ограничение зума и скорость будет в SnarlStyle
This media is not supported in your browser
VIEW IN TELEGRAM
Итак. Нодграф в действии.
👍7
Сегодня я узнал что даже вот так бывает с флотами в IEEE754

assert_eq!(a, b);
let c = a - b;

assert_eq!(c, 0.0); // assertion `left == right` failed, left: NaN, right: 0.0


Не ожидал что inf - inf это NaN.
Ну потому что почему бы не 0.0, раз уж они "равны".
Вот такой выходит граф систем для ECS. Вроде миленько.

Теперь прямо в глаза бросается как много систем в motion плагине, а добавлять их надо либо пачкой либо не добавлять, ну или хотя бы парами.
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Соединять пачку пинов с одним теперь проще!
4👍1🔥1
Я полностью перелопатил API у `SnarlViewer`а.
Полностью отказался от концепции записи эффектов.
Теперь методы просто получают &mut Snarl и делают что хотят с ним.
Ноды теперь не обернуты в RefCell и в методы вьюера не передаются, только IDшники, по которым можно получить ссылку
🔥3