Название: Трехмерный движок для qt Отправлено: DistinctVision от Август 28, 2016, 15:56 Добрый день.
Делал трехмерный движок для qt, может кому здесь пригодится: https://github.com/DistinctVision/QScrollEngine (https://github.com/DistinctVision/QScrollEngine) К слову есть еще один велосипед, используемый совместно с тем велосипедом: https://github.com/DistinctVision/PhysicsEngine (https://github.com/DistinctVision/PhysicsEngine) Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 29, 2016, 09:33 Вас не смущает 178 предупреждений конвертации size_t в int?
Название: Re: Трехмерный движок для qt Отправлено: DistinctVision от Август 29, 2016, 17:33 Смущало бы, если бы они у меня были. Разные компиляторы, по разному на все реагируют.
Видимо когда менял код, что то забыл Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 29, 2016, 17:59 Какой у вас компилятор? Версия?
Название: Re: Трехмерный движок для qt Отправлено: DistinctVision от Август 29, 2016, 18:07 Qt 5.6,1, msvc 2013
Название: Re: Трехмерный движок для qt Отправлено: Day от Август 29, 2016, 23:35 Вас не смущает 178 предупреждений конвертации size_t в int? Там какой-то простой флажок нужно выставить. Типа "не предупреждать о потере значности при приведении типов" size_t = unsigned int. Вряд ли размер чего-то в нормальном проекте превысит int-значность. :)Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 30, 2016, 07:30 Согласен, что int значность не превысится. Но такой флажок, как мне известно будет игнорировать и потери для переменных меньшей разрядности.
Если использовать этот код в ином проекте (как это и предполагается), то разработчик скорее всего не захочет отключать такие предупреждения. По сути тут всего лишь добавить static_cast Название: Re: Трехмерный движок для qt Отправлено: kamre от Август 30, 2016, 07:40 Смущало бы, если бы они у меня были. Попробуйте собрать 64-битную версию, обычно такие ошибки в MSVC именно на 64-битной сборке вылезают.Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 30, 2016, 09:45 Там даже встречаются предупреждения size_t => qint16
У меня компиль msvc2015 x64 Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 30, 2016, 10:02 Цитировать Isosurfaces (marching cubes) А что это?Название: Re: Трехмерный движок для qt Отправлено: DistinctVision от Август 30, 2016, 12:14 https://ru.wikipedia.org/wiki/Marching_cubes
Грубо говоря, это визуализация трехмерной функции. На github есть гифка, непонятный меняющийся объект слева, это оно и есть. Название: Re: Трехмерный движок для qt Отправлено: Igors от Август 30, 2016, 12:49 Чуть подробнее. Напр как построить такую бяку (аттач)? Запускается полигонайзер (marching cubes) который зовет Ваш калбэк (density function). Калбэк получает координаты точки в пр-ве и должен вернуть -1 если точка "снаружи" или +1 если "внутри". Упрощенный пример
Код Меняя density function можно получать очень причудливые формы. В общем - классика Название: Re: Трехмерный движок для qt Отправлено: __Heaven__ от Август 30, 2016, 14:17 А это интересненько. Только мне marching tetrahedrons больше подойдёт. Но, в далёком будущем.
|