Часто приходится вести отладочную информацию, чаще всего, в простых случаях это делается в консоль. Но гораздо чаще необходимо вести лог и в консоль, и в файл. Поведаю Вам о простом классике логирования, который симулирует стандартные cout, cerr, используя шаблонную функцию-оператор <<. Расскажу о некоторых специфичных моментах с которыми столкнулся.
Как известно Tao Framework, уже не развивается, и даже на его странице sourceforge, пишут: "возьмите OpenTK, как замену". Но вот появился луч надежды на возрождение, Tao Framework.
Выходят новые версии OpenGL. И все время, появляется информация, о том, что какие-то функции уже не рекомендуемые,а какие-то удалены. Фиксированный графический конвейер(ФГК) уходит, с новыми версиями OpenGL. Точнее он уже ушел, в OpenGL 3.3, core profile его уже нет. А, что же тогда приходит на смену традиционному, старому функционалу?!
Отрисовка текста в OpenGL, обычно нетривиальная задача, особенно для новичков. Стандартно эта задача сводится к рисованию прямоугольников с натянутой текстурой, на которой отображена та или иная буква. Располагая, которые, относительно друг, друга собираются в слова. Когда-то, когда я еще учился в Академии, мы делали на ASP.NET капчу отрисовывая строки текста и линии в картинку. На C# это делается очень легко, встроенными методами класса Graphics. Им и воспользуемся для рисования нашего текста. В этом посте я покажу очень примитивный и к сожалению не масштабируемый пример.=)
Думаю практически все программисты(и не только) знают или хотя бы слышали, что такое freetype. Поэтому не будет долгих вступлении, копипаста информации с других ресурсов, о том, что такое freetype.
Turbulenz - игровой движок для социальных игр, использующий HTML 5, WebGL JavaScript. Его возможности позволяют делать захватающие реалтайм 3D игры, с физикой.
У многих при использовании библиотек(glut, glfw) создающих окна и контекст OpenGL, возникает необходимость убрать консоль. Которая появляется вместе с запуском Вашего OpenGL приложения. Но многие не знают как это делается. На самом деле здесь нет ничего сложного, повторив все описанные здесь действия, Вы добьетесь желаемого=)
Использование STL контейнера vector. Производительность vector-а Использование контейнеров стандартной библиотеки C++, всегда обусловлено простотой и удобством, производительностью. Но как и всякий "инструмент" его нужно использовать правильно, ведь хороший и эффективный инструмент в неумелых руках может быть бесполезен или неэффективен. В этой небольшой статье, я поведаю, как его использовать максимально эфективно и какие проблемы, подводные камни могут возникнут при первом знакомстве.
Тестирование производительности участка кода. Оценка производительности алгоритма
Иногда бывает необходимость протестировать алгоритм или часть кода, чтоб узнать "не здесь ли тормозит?". А использование профайлера слишком монструозно или не практично. Тогда можно замерить производительность участка кода, прямо в коде. Для этого есть много методов, и все они не без погрешностей.
Воспроизведение звуковых файлов, в играх, и не только, с помощью простой и удобной библиотеки audiere (С++) Звук в игре - одна из основных неотъемлемых составляющих, добавляющая реалистичности и играбельности. Поэтому, звук должен хотя бы присутствовать. В этом топике я разберу базовый код, для воспроизведения звуковых файлов с помощью библиотеки audiere.
Для загрузки из файла трехмерных объектов (Meshs) в OpenGl , нет встроенных решений. Так, как OpenGL- это кросс-платформенная библиотека, которая была написана для вывода графики, а не для работы с файловой системой, потоками....
Поэтому хочу поведать, как грузить удобный, и простой для понимания загрузки, DirectX-совский .X файл. Мы будем использовать связку C# + Tao.Framework, поэтому желательно почитать пару уроков, как ее использовать.
Есть быстрый и удобный способ проиграть видео в прям на форме, с помощью COM элемента Windows Media Player. Не будет терять лишнее время и приступим сразу к делу.