Первые проблемы

Началось. Вчера закончил работу над проектированием базовых классов, необходимых для работы графического движка - шейдерная программа, элементы пространства, рендер картинки, взаимодействие с пользователем, математика управления камерой. Для проверки всего в комплексе сгенерировал поле из 500х500 = 250 000 прямоугольников с текстурой. Соответственно - один миллион вершин. Каждый прямоугольник использует отдельный Vertex Array Object (VAO). Все значения VAO хранятся в структуре "list"' для покадрового вызова методов отрисовки каждого элемента (VAO). Понятно, что ТАК делать нельзя.

Управление в трехмерном окружении.

Вчера закончил работу над системой управления положением в трехмерном окружении. Система получилась удивительно компактной - всего двадцать строк в сумме в трех модулях, и удобной. Модульная архитектура приложения предоставляет большую гибкость кода, удобство анализа и модификации.

Мультиплатформенное

В процессе работы над проектом потребовалось решить задачу обмена информацией с сервером. Для передачи данных по сети в реальном времени было решено использовать неблокируемый UDP сокет.

Сервис антиспама

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

cleantalk.org

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

Хроника развития

  • 2015 г, март. Начало воплощения идеи. Первые пробы на Python.
  • 2015 г, апрель. Подключение GLSL шейдеров.
  • Процессы расчета координат и построения пространства выделены в отдельный поток от подпроцессов обработки ввода пользователя.
  • Замеры скорости расчета и загрузки координат точек пространства на платформе Python показали неудовлетворительные результаты.
  • Переход на cPython не принес ожидаемого эффекта.

Компилятор GCC 5.3

На тему разработки мультиплатформенных приложений. Для такой работы логичнее всего использовать мультиплатформенный компилятор/библиотеку. Из имеющихся вариантов довольно популярен "gсс" с библиотеками и утилилитой "make" в составе "mingw-w64". Для его установки на сайте проекта есть несколько вариантов. Самый простой из них - это скачать готовое окружение в архиве и распаковать его на своем рабочем компьютере в нужном каталоге. Никаких инсталяторов, глюков с прокси и прочих проблем.

Tags: 

настройка VIM для работы с C++

Основная машина для разработки у меня под Archlinux. На *nix серверах, с которыми я работаю, на установку и настройку Вима уходит минимальное время, тут все логично - "жизнь диктует". Но недавно я попробовал "причесать" gVim на домашнем буке под Win-8.1 и неожиданно столкнулся с трудностями.

Я спросил у ... Гугля и его коллег. В сети дрейфует огромная масса публикаций о знаменитом редакторе. Вы без труда найдете избитые шуточки, пространные руководства, советы скопировать готовый конфиг (не вникая в суть). Но мне так и не удалось найти ясного и простого руководства, как быстро настроить VIM в качестве IDE для разработки.

Tags: 

Индикатор популярности

Ну вот, дождались. Похоже, что мой сайт начал появляться в выдачах поисковых систем. Уж очень активно поперли новые регистрации с бредовыми логинами и тупыми емайлами. Дорогие мои спамеры - вы прямо индикатор популярности ресурса. Вот только фантазия у большинства на новые логины/майлы слишком бедная. Не будет нормальный человек регистрироваться на новом сайте с логином который не только тудно запомнить, но прочитать без тренировки невозможно. Ну право, глупо же!

Загрузки

check_ogl_ver

Бесплатная утилита с открытым исходным кодом для отображения поддерживаемых версий OpenGL и GLSL

Статическая сборка c библиотекой SDL2

Диалоговое окно в Xfce4

Если в проекте на языке С++ используется SDL2, то обычно исполняемый файл при сборке линкуется с библиотекой динамически. Это не всегда оказывается удобным. Ваше приложение оказывается зависимым от (не)установленных / изменившихся сторонних библиотек, из-за чего в один "прекрасный" момент оно может просто оказаться неработоспособным. В настоящее время лицензия на использование библиотеки SDL2 позволяет без ограничений статически встраивать код библиотеки в Вашу программу. Этим мы сейчас и займемся.

Страницы

Подписка на TRICKRIG RSS