LINUX.ORG.RU

Избранные сообщения andreyu

Worms Zone - Червячная зона v1.0.4

Форум — Games

Обновил Worms Zone для Linux x86_64 до версии 1.0.4. Сорцы движка, игры и прочих модулей закрыты. В ближайшее время открывать не планирую. Принципиальным любителям открытых сорцов предлагаю воздержаться от использования этой игры.

Краткое описание

Управляя червем, поедать различные «ништяки», разбросанные по арене. Желательно избегать столкновения с другими червями. По арене разбросаны различные поверапы, которые меняют характеристики червя - магнит, ускоритель, умножитель и т.д.

Скриншоты

Особенности

  • В игре доступен большой выбор готовых скинов.
  • Есть редактор скинов.
  • Можно настроить внешний вид мордочки.
  • Таблица лидеров за сутки и за неделю.
  • На арене может быть до 150 червей.
  • В линуксовой версии нет поддержки логина в Facebook, поэтому профиль хранится локально, а скор в лидерборд не отправляется.

Изменения относительно предыдущей версии

  • Исправления багов в игре, обновлен движок.
  • Обновлен и частично переработан UI.
  • Добавлены внутриигровые задания.
  • Добавлены новые скины и морды.
  • Теперь есть возможность «очистить» морду червяка.
  • Добавлены новые фоны.
  • Добавлен новый плоский вид «ништяков».
  • Предпринята очередная попытка улучшения геймплея.

Ссылки

 , , , , zone

andreyu
()

просмотровщик кода для C/C++

Форум — Development

Ищется open source просмотровщик кода, который встраивается в процесс сборки (так, как это делает статический анализатор) и по её результатам способен показать код собранной программы на Си/Си++ с учётом макросов и расположений директорий. В нём должен работать переход к определению. Редактирование не нужно. Есть такой в природе?

Самое важное здесь - это именно встраивание в процесс сборки. Каждый файл должен показываться именно с теми определениями макросов, с которыми он был собран. Без этого точный переход к определению невозможен.

 , code browser,

den73
()

Simple Viewer GL v3.1.0 — просмотрщик изображений

Форум — Talks

Simple Viewer GL — легковесный просмотрщик изображений.

Краткое описание

Интерфейс состоит из одного окна с опциональной строкой статуса и информацией о пикселе под курсором и/или выделенной области (скриншот). Simple Viewer GL умеет определять тип файла по его сигнатуре (параметр -a), а не только по расширению файла. Поддерживается рекурсивный обход директории (параметр -r).

Поддерживаемые форматы

PNG, JPEG, JPEG 2000, PSD, AI, EPS, XCF (GIMP image format), GIF, SVG, TIFF, TARGA, ICO, ICNS (Apple Icon Image), BMP, PNM, DDS, XWD, SCR (ZX-Spectrum screen), XPM, WebP, OpenEXR.

Работает в GNU/Linux, FreeBSD и macOS.

Новое в 3.1.0

  • Добавлена поддержка формата SVG.
  • Переработана поддержка XCF (GIMP image format).
  • Исправлена ошибка загрузки DDS/DXT5.
  • Фиксы связанные с WebP и LCMS2.
  • Улучшено определение формата JPEG.
  • Улучшена обработка ошибок TIFF.
  • Исправлены ошибки, найденные участниками данной ветки.

Где взять?

Проект Simple Viewer GL доступен на BitBucket.

Как я использую вьювер

  1. Жму enter в midnight commander на заинтересовавшем меня файле. С помощью мышки выбираю нужную мне область изображения, что бы определить ее характеристики (позиция/разме спрайта в атласе, определения origin/hotspot спрайта, определение цвета пикселя).

  2. В консоли sviewgl . -r для рекурсивного просмотра всех изображений в директории. Иногда использую параметр -a для определения формата по содержимому файла.

  3. Помечаю с помощью кнопки del файлы для удаления. После чего жму ctrl+del и помеченный файлы удаляются.

 , ,

andreyu
()

Worms Zone - Червячная зона

Форум — Games

Собрал версию Worms Zone для Linux x86_64. Сорцы движка, игры и прочих модулей закрыты. В ближайшее время открывать не планирую. Принципиальным любителям открытых сорцов предлагаю воздержаться от использования этой игры.

Краткое описание

Управляя червем, поедать различные вкусняшки, разбросанные по арене. Желательно избегать столкновения с другими червями. По арене разбросаны различные поверапы, которые меняют характеристики червя - магнит, ускоритель, умножитель и т.д.

Скриншоты

Особенности

  • В игре доступны большой выбор готовых скинов.
  • Есть редактор скинов.
  • Можно настроить внешний вид мордочки.
  • Таблица лидеров за сутки и за неделю.
  • Огромная арена, увеличено количество червей на арене до 150.

В линуксовой версии нет поддержки логина в Facebook, поэтому профиль хранится локально, а скор в лидерборд не отправляется.
Если пойму, что к линуксовой версии есть интерес, то постараюсь добавить Facebook Login.

Ссылки

 , , ,

andreyu
()

Cubic Tower v1.3.3

Новости — Игры
Группа Игры

Cubic Tower — изометрический Stacker. Задача игрока построить башню из блоков. В свою очередь блоки состоят из обычных кубов, кубов-монет и кубов-механиков.
Для получения монеты нужно совместить два куба-монеты по вертикали. Кубы-механики позволяют менять поведение игры.

  • Куб level booster строит дополнительный блок поверх установленного игроком.
  • Куб block expander увеличивает установленный блок на два куба.
  • Куб direction changer меняет направление движения блока, а за установленный блок начисляется в два раза больше очков.
  • Куб block inhibitor уменьшает скорость движения нескольких следующих блоков, что весьма полезно при построении высокой башни.

Геймплей игры на Youtube, записано с Apple TV.

Браузерная версия Cubic Tower.
Версия для Linux x86_64.
Версия для Android и Android TV.

Также доступна версия для iOS и tvOS.

>>> Подробности и скриншоты

 cubic tower, , stacker

andreyu
()

Simple Viewer GL v2.99 — просмотрщик изображений

Форум — Talks

Simple Viewer GL — легковесный просмотрщик изображений.

Интерфейс состоит из одного окна с опциональной строкой статуса и информацией о пикселе под курсором и/или выделенной области (скриншот). Simple Viewer GL умеет определять тип файла по его сигнатуре, а не только по расширению, а также рекурсивно сканировать директорию.

Список поддерживаемых форматов:
PNG, JPEG, PSD, AI, EPS, GIF, TIFF, TARGA, ICO, PNM, DDS, BMP, XWD, SCR (ZX-Spectrum screen), XPM, WebP, OpenEXR.

Работает в GNU/Linux, FreeBSD и macOS.


Новое в 2.99:

  • Добавлена поддержка формата OpenEXR.
  • Добавлена поддержка форматов ZX-Spectrum multicolor + border.
  • Уменьшено потребление памяти при загрузке PNG.
  • Расширена поддержка GIF.
  • Добавлена поддержка CMYK PSD.
  • Добавлена поддержка CMYK JPEG.
  • Улучшена поддержка TARGA RGB 16.
  • Добавлена возможность предпросмотра форматов Adobe Illustrator и Adobe EPS.
  • Введена возможность «укорачивания» длинных имен файлов в инфобаре (длина настраивается в конфиге).
  • Теперь вьювер собирается и работает на FreeBSD.
  • Улучшен детектор JPEG формата.
  • В конфиг добавлен параметр «font_ratio».
  • Добавлены правила сборки DEB и RPM.
  • Добавлена поддержка форматов ZX-Spectrum multicolor + border.
  • В macOS конфиг перенесен в «~/Library/Application Support/sviewgl/config»
  • Теперь клавиша <Delete> не удаляет файл, а помечает его для удаления. Для удаления с диска помеченных файлов добавлена комбинация <Ctrl+Delete>.
  • Добавлен хоткей <Shift+?>.
  • Улучшен попап Pixel Info.
  • Починил запуск в полноэкранном режиме.
  • Сделал «ленивую» инициализацию загрузчиков.
  • Добавлена пиксельная сетка и хоткей <g> для нее.
  • Исправлен режим фильтрации текстур.
  • Добрый художник-альтруист нарисовал новую иконку.



Simple Viewer GL на BitBucket.

Бинарная сборка для macOS в разделе downloads.

 , ,

andreyu
()

Свой сайт

Форум — Talks

А как сейчас проще всего завести свой сайт? Какой хостинг? Где регистрировать домен и т.д.?

В принципе, мне подошли бы и бесплатные GitHub Pages, но как-то несолидно скрываться за адресом username.github.io

А то тут Го-дядя заломил цену в двадцать с лишним тысяч за апргрейд за непонятно что, где львиная доля пойдет на какой-то там простенький хостинг с PHP и MySQL, которые я не использую и не планирую в принципе, хотя с ними знаком. У меня, сейчас, вообще, статические страницы, сгенеренные по маркдауну. И я немного был обескуражен их предложением.

В идеале бы иметь возможность использовать свой собственный веб-сервер, но там точно будет что-то другое.

Спасибо!

Перемещено leave из web-development

 

dave
()

Типы для физических величин на C++: поругайте

Форум — Development

Начал пилить некую систему типов для физических величин, где значение величины имеет семантику умножения безразмерного счётчика на абстрактную единицу измерения, чтобы не надо было каждый раз в публичных API вида SetFrequency(int freq) выяснять что же этот int хранит, а также чтобы не давало складывать метры с литрами и записывать результат в секунды (а также метры с километрами без должной конвертации первого или второго). Существующих велосипедов не нашёл, кроме разве Boost.Units, но это страшный overkill, надо чтобы было маленькое и в одном заголовке.

Базовая идея проста и описана в книжке Страуструпа в главе про <chrono> --

template<typename Rep, typename Period = std::ratio<1>>
class X
{
    Rep mCount;
};
 -- сохраняем значение безразмерного счётчика в фундаментальном типе Rep (int, double, etc), а десятичную приставку в виде рациональной дроби держим только в системе типов на этапе компиляции.

Код тут: https://github.com/Jajauma/SIUnits, содрано с std::chrono::duration, остатки libstdc++ ещё не вычистил полностью, так что на MSVC видимо работать не будет (а может и нигде не будет), главый шаблон SI::Units, для демонстрации там же определены типы Frequency и Length и нескучные пользовательские литералы типа _km, _mm и т.д.

 ,

d_a
()

Покритикуйте либу логгинга памяти

Форум — Development

https://github.com/codemeow/svadilfari - субж

Маскирует malloc/calloc/realloc/free с помощью макросов чтобы не менять синтаксис.

Можно переназначит стандартные системные функции чтобы юзать например какие-нибудь raspberry_malloc_ex()

Есть опции, можно включить например автозамену malloc на calloc и автовыход\авторепорт коллбеком в случае фейла

Есть система коллбеков на репорт ошибок

Можно получить инфу по каждому поинтеру - когда, в каком файле и на какой строке он был аллоцирован.

В случае необходимости можно сконвертить либовый поинтер в системный и заюзать какой-нибудь внешний free.

Юзает локи.

Либа с типами (bixi) юзает только один системный хэдер: <time.h>, остальное реализует сама. Может быть полезно на урезанных системах. Тот же хэдер использует svadilfari, кроме него используется <stddef.h> для size_t. Плюс используется <stdlib.h> для дефотного назначения malloc/calloc/realloc/free. Тестовая прога в комплекте использует <stdio.h> чтобы выводить на экран.

Можно: детектить лики, смотреть кто где много жрет, получать инфу о размере аллоцированного поинтера.

 ,

PPP328
()

Simple Viewer GL v2.88 — просмотрщик изображений

Новости — Open Source
Группа Open Source

Simple Viewer GL — легковесный просмотрщик изображений.

Интерфейс состоит из одного окна с опциональной строкой статуса и информацией о пикселе под курсором и/или выделенной области (скриншот). Simple Viewer GL умеет определять тип файла по его сигнатуре, а не только по расширению, а также рекурсивно сканировать директорию.

Работает в GNU/Linux и macOS.

Новое в 2.88

  • Добавлена поддержка встроенных ICC-профилей.
  • Добавлено поддержка exif (включается по хоткею <e>).
  • Добавленя поддержка анимированных GIF.
  • Поддержка автоповтора нажатой клавиши.
  • Расширена поддержка формата PPM (собственная реализация).
  • Расширена поддержка TARGA (собственная реализация).
  • Если при сборке недоступен imlib2, то для загрузки BMP используется своя реализация (неполная поддержка).
  • Улучшена реализация выделения области изображения.
  • Улучшено отображение информации под курсором (хоткей <p>).
  • Расширена поддержка ZX-Spectrum screen.
  • Переработано определение формата изображения.
  • Отрисовка только тех банков изображения, которые видны в окне.
  • Улучшен скрипт сборки.

Поддерживаемые форматы

Сторонняя реализация:

  • PNG (libpng);
  • JPEG (libjpeg);
  • TIFF (libtiff);
  • GIF (giflib);
  • WEBP (webp).

Собственная реализация:

  • PPM (все форматы);
  • XPM (только xpm 2);
  • TARGA (большинство форматов);
  • DDS (частично);
  • PSD (формат до конца не отреверсили, посему не все функции поддерживаются);
  • ICO (png и «обычные» фреймы);
  • XWD (только x11);
  • SCR (ZX-Spectrum screen);
  • PVR, RAW, AGE (это внутренние форматы).

>>> Simple Viewer GL на BitBucket

 , ,

andreyu
()

GDB напечатать вектор обьектов (только некоторые поля)

Форум — Development

Допустим есть что-то такое в коде:

struct Foo {
   int a;
   std::string b;
};

std::vector<Foo*> foos;

Я хочу в gdb напечатать все обьекты из вектора, но только поле «b». Пытаюсь сделать через GDB Command:

(gdb) define pfoo
  set $v = $arg0
  set $i = 0
  while ($i < $v.size())
    print $v[$i]->b;  
  end
end

(gdb) pfoo foos 
Однако получаю ошибку:

Attempt to take address of value not located in memory.

Или еще проще:

(gdb) set $v = foos
# работает
(gdb) print $v
# не работает
(gdb) print $v.size()
Attempt to take address of value not located in memory.

Помогите пожалуйста сделать задуманное.

 , ,

KennyMinigun
()

Simple Viewer GL - вьювер изображений

Форум — Desktop

Когда-то давно я не смог найти для себя вьювер, который удовлетворял моим требованиям. Посему был написан свой вьювер - simple viewer, базирующийся на GFL SDK (используется в xnview).

Через некоторое время я решил отказаться от GFL SDK в пользу открытых библиотек (libjpeg, libtiff, giflib, libpng, etc.) и перешел на OpenGL. Так 8 лет назад родился Simple Viewer GL: https://bitbucket.org/andreyu/simple-viewer-gl

Картинка для привлечения внимания: https://bitbucket.org/repo/XgobE8/images/1203610096-simpleviewergl.png

Поддерживается все, что умеет ImLib2 (BMP, TARGA, куча прочих форматов), а так же:

  • PNG (libpng),
  • JPEG (libjpeg),
  • TIFF (libtiff),
  • GIF (giflib),
  • PPM (частичная поддержка),
  • DDS (частично),
  • PSD (формат до конца не отреверсили, посему не все фичи поддерживаются),
  • ICO (png и «обычные» фреймы),
  • XWD (только x11, за реализацию x10 даже не брался),
  • SCR (ZX-Spectrum screen),
  • PVR, RAW, AGE (это внутренние форматы).

Интерфейс - одно окно с опциональной строкой статуса и информацией о пикселе/селекшене под курсором.
Вьювер умеет определять тип файла по его сигнатуре, а не только по расширению.
Умеет рекурсивно сканировать директорию.

Работает под Linux и macOS. Вместо мертвого freeglut используется glfw3.

Сегодня собрался с силами и смержился с development.
Постараюсь ответить на все ваши вопросы по вьюверу.

Перемещено beastie из talks

 , ,

andreyu
()

API xorg | Как захватить экран?

Форум — Development

Доброго времени суток! Какой метод вызывается при захвате экрана?
Хочу захватить экран для скриншотов.
Заранее спасибо.

 ,

continue
()

Не-IDE для микроконтроллеров

Форум — Development

По работе пришлось заняться микроконтроллерами, для испытаний взял конечно же ардуину-уно в силу шаговой доступности, но довольно быстро понял, что все эти студии(тм), скетчи и шилды — не более, чем замануха для нуба, чтобы помигать лампочкой без особых умственных затрат на даташиты и прогрева паяльника. Писать что-то в этом невозможно, поскольку редактор не сильно отличается от блокнота. Плюс ко всему в ардуине например странный компилятор, который не понимает

void
setup()
{
}

ему почему-то нужно, чтобы void setup были на одной строке. Не трагедия, но довольно-таки странно.

Поскольку основной софт пишу в виме и собираю мейком, то хотелось бы узнать у бывалых эмбедщиков, чем они пользуются при разработке. Например можно ли кросс-конпелять сорцы обычным gcc или другой консольной тулзой и заливать через /dev/cu* обычной последовательностью по типу AT-команд или какой там протокол у встроенных программаторов? Также интересно, какой чип вы юзаете для рандомных исследовательских задач, т.е. когда непонятно, сколько нужно будет Кб и МГц. Пока смотрю в сторону готовых STM32/discovery со встроенным отладчиком (st-link, если я правильно все понял), т.к. у них есть весьма жирные камушки, способные на худо-бедную обработку данных. Расбери-пи конечно дороговат, но истории успеха также приветствуются.

Шаблонизатор проекта я могу склепать самостоятельно, главное то, можно ли отвязаться от этих студий, чтобы не делать туда ctrl-c ctrl-v из вима, а вместо этого писать нормально, как обычные модульные десктопно-консольные программы, линковать [свои] библиотеки, собирать и выкатывать все через make struct / make build / make upload / cat минуя графические свистелки.

В интернетах в основном восторги по поводу простоты, ориентированные на тех, кому за 16, ничего такого пока не видел.

 ,

arturpub
()

Cinelerra открывает офис в России

Форум — Talks

Проект Cinelerra (HV) анонсировал в своём фейсбучике открытие московского представительства по адресу Проспект Вернадского, 11/19, вход 1B. Алсо, им можно написать по адресу moscow@cinelerra.org. На декабрь якобы намечен день открытых дверей.

В офисе будут сидеть технический специалист и продажник. Комментарий с вопросом, кто конкретно эти люди, и какова их компетенция, был стёрт, спросивший — забанен :)

Надеюсь, дальше будет так же интересно.

 они уже здесь

AP
()