Pull to refresh
21
0
Маланюк Михаил @CJay

Пользователь

Send message

Ну, тут дело не просто в qt-based ui. Поглядите на нижнюю панель с Time Slider. Он 1 в 1 как в майке, как по расположению виджетов, так и их размеру. Видимо, сознательно такое сделано, чтобы профессионалы чувствовали себя "как дома". Молодцы.

А для меня сильной стороной является аналог интерактивного добавления (git add -i), когда прямо в окне diff раскидываю, какие блоки или строки изменения я стэйджу, какие отменяю, а какие пропускаю до следующего коммита. Прям сказка.

А я кого не спрашивал, либо пользуются консолью, либо "черепашкой" коммитят все изменения разом.
Ну а bisect так же неплохо работает и через GUI в том же `SmartGit`.

Уже лет 10 не могу представить свою разработку без SmartGit. Пробовал другие клиенты, но SmartGit для меня удобнее всего.

Чтобы запускать своё приложение, его нужно вписать init.service.recovery.rc вместо /sbin/recovery и запускать устройство с зажатой кнопкой уменьшения громкости?!
А можно как-то перезаписать подправленный нами образ `recovery.img` вместо основного `boot.img`? Чтобы не приходилось при запуске зажимать кнопку громкости.

Прошу прощения, вы правы. Что-то я зациклился не на том, представляя, что функция вызывается в каждом кадре. Как-то даже не ловко, столько букв настрочил )))

Гениально. Назвать сеть ракетных установок вдоль наших границ "абстрактной". К тому же, устанавливавшиеся во времена, когда у нас мир, дружба, жвачка. Задолго до мюнхенской речи. Задолго до Осетии или Украины.

Так, попробую с другого бока.
Посмотрите, вот у вас имеется строка:
SDL_Surface* image = TTF_RenderText_Solid(timerFont,writeYourName,timerColor);
В ней вы создали локальную переменную, содержащую в себе указатель на структуру SDL_Surface. Структура эта создана в куче (то есть, в области динамической памяти), а не на стеке. Если бы она была создана на стеке, то строка имела бы вид:
SDL_Surface image = TTF_RenderText_Solid(timerFont,writeYourName,timerColor);

Когда функция titleInscription(...) завершит своё выполнение, то локальная переменная, содержащая в себе указатель на струкруту SDL_Surface уничтожится, а вот память с этой структурой, выделенная в динамической области памяти, никуда не денется.
А функция titleInscription(...) вызывается на каждом кадре, выделяя память под стркутуру SDL_Surface размером 200x50 пикселей, что должно занимать память не менее чем 200*50*3=30000 байт за кадр. А если кадров 60 в секунду, то в секунду утечка памяти на 30 килобайт. За час работы программы утекает не менее 105 мегабайт памяти только на выводе FPS на экран.
Чтобы этого безобразия не было, нужно в функции titleInscription(...) после строки

SDL_Texture* groundTexture = SDL_CreateTextureFromSurface(gRenderer,image);

вызвать метод SDL_FreeSurface(image);

Вот только SDL_Surface* image -- это не локальная переменная, а указатель на область памяти, выделенный внутри функции TTF_RenderText_Solid.
И чтобы не было утечки памяти, необходимо не забывать вызывать метод SDL_FreeSurface(image).

Извините, но не могли бы рассказать, почему нельзя использовать struct?

В первом методе

SDL_Texture* titleInscription(..)
{
...
}

не нужно ли удалять SDL_Surface* image после конвертации его в текстуру?

Наоборот. Игры делать становится проще. К движку идёт огромная бесплатная библиотека фотограмметрических 3д моделей Quixel Megascan, благодаря которым создавать детализированные уровни получается гораздо быстрее и качественнее, чем моделить и рисовать текстуры вручную. Система ландшафта проста и понятна. Генератор моделей MetaHuman позволяет сильно экономить на создании людей. Атмосферные эффекты, облака и прочее, всё из коробки. Бесплатный движок, заточенный на создание открытых миров. Порог входа сильно снижается, цена становится ниже.
И эпики позиционируют движок не только для игр, но и для рекламы, презентаций, фильмов, архитектуры, экранов для концертов или интерактивная графика для TV-эфира. Не так давно выходил короткий анимационный фильм на их движке, сделанный компанией Weta Digital (известная по таким фильмам как Властелин колец, Хоббит, Аватар, Люди Икс, Железный человек, Планета обезьян и д.р.). Так что, целевая аудитория сильно расширилась.
Почему? Я, беря справки из одних госучреждений и относя их в другие госучреждения, всегда думал: «когда же эта бессмысленность закончится и эти ведомства научатся взаимодействовать друг с другом без моего участия?» Видимо, пришло время. Это же хорошо.
Не нужно никого сжигать. С++ для меня язык относительно новый, и примеры с умными указателями и int воспринялись просто как сферический пример, а не руководство к действию.
С коллегами (плюсисты со стажем) листали её, обсуждали, всем понравилась. Доволен покупкой и рекомендую другим, кто хочет дефрагментировать свои хаотичные знания плюсов.
Вот прям в язык встроить? А просто использовать pairs или свою структуру нельзя?
Когда хоронили Flash, одним из минусов называли высокий расход батареи.
Как с этим у flutter? Кто-нибудь в курсе?
Google наконец переизобрели Flash?
Пассивной ещё как как. И активной тоже как, главное, чтобы её уровень сигнала оказался выше уровня сигнала ближайшей базовой станции. И 100 чемоданчиков на столбах не нужно, достаточно одного, но рядом с Лешей, (агенты ж должны быть где-то рядом, в спину дышать, не дальше соседней улицы, если не в доме напротив). Так что, должно сработать. Тем более, если такой чемоданчик будет работать долгое время.
Каковы принципы работы нейронной сети, генерирующей новые изображения? Нелинейное уменьшение размерности входных данных и восстановление этих данных из меньшей размерности обратно.

Если запаковать большое изображение в это скрытое пространство и попробовать восстановить полученный вектор обратно, то должны получить оригинальное изображение (с некоторыми потерями). «Новым» это изображение назвать сложно, скорее, «распакованным». Если говорим про музыку, то посчитаем, что музыканты сыграли какое-то произведение по нотам.

Можно попробовать у полученного вектора изменить какой-то параметр, тогда мы получим точно такое же изображение, только что-то другое, скажем, нос длиннее или губы толще. Это «новое» изображение или «подредактированное»? Неважно, но с музыкантами можно было бы сказать, что они сыграли знакомую мелодию в другой тональности или с какими-то изменениями, но оригинал мы всё же узнали.

Можно сгенерировать входной вектор случайно. Полученный результат уже сложно будет отнести к какому-то конкретному примеру из обучающего набора. Пусть уж будет «новым». Хотя, по факту, это лишь некоторая нелинейная интерполяция обучающей выборки. Вот тут уже в игре музыкантов мы сможем услышать что-то новое, и даже отнести к какому-то музыкальному жанру и сказать, что композитор был явно вдохновлён Моцартом или Шопеном. Творчество? Творчество, бога ради. Так ли работает мозг человека? Пусть так, мне это неважно. Я не хочу об этом спорить.

Моя придирка к данной статье в другом.
Потренировать сеть на обучающей выборке и получить какой-то результат несложно.
Получить вектор по фотографии на уже обученной сети тоже несложно.
Развернуть это вектор обратно в картинку тоже несложно.

Сложно получить качественный результат. Тот же thispersondoesnotexist.com показывает результаты, в которых даже в голову не придёт, что это не фотография реального человека.

Здесь же выходной результат плохой. Вроде кадры напоминают фото, но слабо. Как мне кажется, тут даже GAN не нужен, достаточно вариационного автокодировщика.

Переходы между кадрами — так себе. Какие-то некачественные транзишены в after effects. Автор сам написал, что можно было бы, наверное, поизучать, какой из 512 параметров за что отвечает, найти интересные, проанимировать через них, но не стал. Забил.

И уж если мы говорим про творчество и про музыку, то я бы сравнил эту работу с диджеем, который поставил странные переходы между уже существующими трэками, но с сильно низкой дискретизацией. Какофония. Творчество?! Мне так не кажется.
Согласен, такой вариант я тоже рассматривал. Хотели припугнуть, но западные спецслужбы вовремя их раскрыли и использовали их силу против них самих. Очень логичный вариант. Но каких-то подтверждений этой версии нет.

Information

Rating
5,057-th
Location
Курск, Курская обл., Россия
Date of birth
Registered
Activity