Страуструп

Около месяца у меня ушло на работу с книгой "K&R". Читал, изучал, делал примеры. Но как-то скучно все казалось. Да - основательно, да - просто, но как то однообразно. Это действительно системный язык низкого уровня - и этим все сказано.

Дофамин

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

Библиотека GLM

Широко описываемые в различных учебниках по OpenGL библиотечные функции GLU - такие как glRotate, glFrustum или gluLookAt считаются устаревшими. В современных графических приложениях для работы с новыми версиями OpenGL рекомендуется вместо них использовать функции из написанной на C++ библиотеки GLM (OpenGL Математика). В документации к ней сказано, что GLM стремится использовать те же соглашения, что применяются в GLSL. Это обеспечивает более удобную работу при работе с матрицами и шейдерми.

Tags: 

сИмообразование

Как написано в 3-м издании пособия "Язык программирования Си" (Б. Керниган, Д. Ритчи): "Наряду с 'goto' указатели когда-то были объявлены лучшим средством для написания малопонятных программ". Это и определило мое устойчивое отношение к Си. Всегда считал, что этот язык не для меня. Тем более, что в нем и goto - тоже есть!

Памятка С/С++

Несколько полезных правил, которых следует придерживаться при разработке программ на C/C++:
  • Советами нужно пользоваться там, где они применимы. Не существует замены здравому смыслу.
  • Не забывайте в конце своих функций добавлять "return выражение", потому что в противном случае функция обязательно выдаст "мусор".
  • Программа на Си - это много "маленьких функций" и процедур, а не мало больших.
  • Разбивайте сложные выражения на более простые.
  • Уменьшайте набор потенциальных зависимостей (в области видимости) до набора реальных.
Tags: 

Удачный день

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

Во-вторых, пришло поздравление с Хабра:

"Поздравляем! Теперь вам доступен значок «Захабренный». Вы можете увидеть его в своем профиле, пройдя по ссылке ...".

Разработка под OpenGL

В современных графических приложениях широко используется OpenGL. Успех технологии обеспечивает мультиплатформенность, открытость, доступность информации, обширное сообщество специалистов разного уровня. В Сети можно свободно найти необходимое количество материалов для начала работы с этой технологией. Кроме того, для разработки проектов на основе OpenGL существует множество готовых библиотек ([Free]Glut, GLFW, SDL2, GLEW, GLM и т.д.), которые активно помогают в работе над проектом.

Tags: 

Python модули и C++

Любой, кто пишет код под Python и устанавливает дополнительные модули и расширения рано или поздно сталкивается с необходимостью наличия в системе C++ компилятора. Некоторые устанавливаемые модули не имеют, по разным причинам, в своих пакетах распространения бинарников. И если в системе отсутствует компилятор C++ то стандартная процедура установки пакета "pip install ..." завершается неудачей.

Tags: 

Библиотека Vispy

Кто ищет - тот всегда найдет! После продолжительных изысканий програмных средств для работы из среды Python-3 с шейдерами мне наконец повезло - была найдена библиотека Vispy. По информации на сайте разработчика:

"Vispy - это высокопроизводительная интерактивная 2D / 3D библиотека для визуализации данных. Vispy через библиотеку OpenGL позволяет эффективно использовать вычислительную мощность современных графических процессоров (GPU) для визуализации огромных наборов данных.

Vispy может использоваться для:

Tags: 

Python + GLSL

На сегодняшний день для создания качественной графики в OpenGL необходимым условием является использование шейдеров. Через поиск в Сети можно найти несколько нитересных сайтов, на которых есть описание модулей для работы с GLSL и шейдерами.

Страницы

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