Как опциональные модули, кидаешь нужные в папочку, все вместе компилируется, получаем либу с нужным набором функций. Завязывать на гит не охота, чтобы не лишаться возможности собрать все вместе локально
Вот я хочу сделать модульную структуру для игрового движка: кидаешь в корневую директорию набор папок, в каждой папке своя библиотека. У каждой библиотеки свой CMakeLists.txt с зависимостями от других библиотек и в корневой директории CMakeLists.txt в котором просто набор add_subdirectory().
Так вот движок может быть разных версий и библиотеки могут предназначаться для разных версий движка. Т.е. при использовании add_subdirectory() нет контроля за версиями и нужно оформлять в виде пакетов и подключать через find_package() и тут я запнулся, ничего понятно. Какие-то разные способы создания пакетов, какие-то конфиги, нигде нет нормального коротенького примера. Еще вопрос по поводу install. Я так понял, он ставит библиотеку в систему, но зачем мне загаживать систему, если все библиотеки используются в пределах одного проекта.
согласен, картинок с сумочками, котиками и пивными кружками можно придумать бесконечное количество, даже диапазона юникода не хватит, зачем было сувать их в стандарт
А предварительная нормализация разве гарантирует, что каждый символ будет представлен одной кодовой точкой?
Иначе в общем случае использование UTF-32 не дает возможность произвольного доступа к символам и не избавляет от необходимости пробегать по всей строке, а памяти жрет чрезмерно.
Разница между ООП и не ООП только в том, что в ООП вы можете не передавать в функцию указатель на структуру, а вызывать метод объекта. А все остальное вы сами себе выдумываете.
Насколько я понял статью gafferongames.com/post/fix_your_timestep там предлагается совсем не экстраполяция к предполагаемому будущему положению объектов, а наоборот остаток используется как коэффициент для интерполяции между текущим и предыдущим состоянием объектов. Т.е. объект на экране не опережает свое время, а наоборот отстает от рассчитанного положения (сильно отстает или не очень — зависит от величины остатка в аккумуляторе). Это сглаживает скачки + нет ошибки экстраполяции. Это отставание не так влияет на игровой процесс, так как в худшем случае это будет отставание в один кадр
Так вот движок может быть разных версий и библиотеки могут предназначаться для разных версий движка. Т.е. при использовании add_subdirectory() нет контроля за версиями и нужно оформлять в виде пакетов и подключать через find_package() и тут я запнулся, ничего понятно. Какие-то разные способы создания пакетов, какие-то конфиги, нигде нет нормального коротенького примера. Еще вопрос по поводу install. Я так понял, он ставит библиотеку в систему, но зачем мне загаживать систему, если все библиотеки используются в пределах одного проекта.
А предварительная нормализация разве гарантирует, что каждый символ будет представлен одной кодовой точкой?
Иначе в общем случае использование UTF-32 не дает возможность произвольного доступа к символам и не избавляет от необходимости пробегать по всей строке, а памяти жрет чрезмерно.