Создайте файл usertype.dat в папке
Читать | Комментарии [13]
10 июня 2009
Создайте файл usertype.dat в папке
Читать | Комментарии [13]
10 июня 2009
Иногда нужно чтобы программа содержала в себе дату и время собственной сборки. Если просто выводить дату и время способом типа:
Читать | Комментарии [13]
9 июня 2009
У большинства пользователей установлен DirectX версии 9.0с, поэтому в некоторых случаях хотелось бы распространять вместе с игрой только библиотеку D3DX. К сожалению, лицензионное соглашение не позволяет распространять ее отдельно от дистрибутива. Однако, в DirectX SDK описан способ создания урезанного дистрибутива DirectX, который может содержать только необходимые компоненты:
Читать | Комментарии [5]
9 июня 2009
Для начала определим класс трассирующего исключения со всеми его функциями-членами:
9 июня 2009
При программировании графики довольно часто приходится юзать тригонометрию,
Читать | Комментарии [44]
9 июня 2009
Стандартный способ загрузки файлов (fopen, open, _open, fstream etc) слишком медленный по времени исполнения. Поэтому мы воспользуемся следующим кодом.
Читать | Комментарии [55]
9 июня 2009
Несколько утилитных функций для работы с числами степени двойки:
9 июня 2009
В C++ нельзя сделать шаблонные typedef'ы. Но, как известно, если нельзя, но очень хочется, то можно. Для этого используем такой trick: завернём нужный typedef в шаблонную структуру.
9 июня 2009
В Microsoft Visual Studio есть клевый и быстрый способ комментирования.
Читать | Комментарии [33]
9 июня 2009
А знаете ли вы, что в Visual Studio есть возможность (точно есть в .Net 2002 и 2003, а также в VS 2005 beta) оставлять себе самому или другим программистам, работающим с вашим кодом, напоминания в комментариях, которые затем все можно просмотреть в окне «Task List»?
8 июня 2009
Легко можно сделать так, чтобы они появлялись и исчезали мгновенно:
29 мая 2009
Все, наверное, знают сочетание клавиш <ctrl>+<space>, с помощью которого можно добавлять операторы по начальным буквам, но не многие знают, что в Delphi также существует сочетание клавишь <ctrl>+<J> оно позволяет вставлять наиболее часто используемые части кода, например:
28 мая 2009
Доступно пользователям со статусом Участник
12 мар 2008
Всем известен макрос
Читать | Комментарии [25]
12 мар 2008
У меня в проекте есть несколько классов, объектов которых не должно быть больше одного. И чтобы не создавать очень похожий код в каждом классе, я использую такой шаблон:
Читать | Комментарии [12]
26 окт 2007
Если у вас вращение некоторого объекта задается кватернионом, и необходимо найти его угловую скорость, то это легко сделать, используя следующую формулу: dq/dt = 0.5*w*q, где
26 апр 2006
Доступно пользователям со статусом Участник
26 мар 2006
Как написать скрипт для экспорта объектов из 3D Studio Max в свой формат.
26 мар 2006
Можно очень просто и практически без потери скорости добавить простую, но неплохо оживляющую картинку, анимацию листвы деревьев и т.п. Нужно просто периодически смещать текстурные координаты вдоль какой либо оси (в зависимости от наложения текстуры). Например по Y:
26 мар 2006
Я, когда начинал программировать игры от первого лица, не имея доступа в Интернет, долго бился над функцией Mouse look. В итоге я нашёл, как мне кажется, наиболее оптимальный вариант.
25 мар 2006
Наверняка многие из вас хотели бы получить общий локальный объем видеопамяти на видеокарте, а не свободный объем локальной (video) плюс нелокальной (AGP) памяти, который возвращается функцией IDirect3DDevice9::GetAvailableTextureMem()?
Читать | Комментарии [26]
25 мар 2006
Для того, чтобы вывести двухмерную картинку на экран в Direct3D необходимо просто вывести полигоны в экранных кординатах. Этого можно добится несколькими способами:
25 мар 2006
Доступно пользователям со статусом Участник
25 мар 2006
Доступно пользователям со статусом Участник
25 мар 2006
В комплекте с MS VC идет достаточно забавная утилита dumpbin.exe.
25 мар 2006
Все наверно знают что в STL есть кроме std::cout еще например и std::cerr, std::clog а так же их версии с поддержкой wchar. Все, что осталось - заставить стандартные потоки писать в нужное нам место. А это сделать очень легко, например:
25 мар 2006
Чтобы CRT автоматически просматривала heap на неосвобожденные блоки памяти нужно где-нибудь по-раньше выполнить:
25 мар 2006
Если у вас много контейнеров, в которых содержатся указатели на динамически выделеные объекты, то надо по всей программе вставлять циклы для освобождения памяти, выделеной для этих объектов. Для того что бы облегчить эту задачу и улучшить читабельность кода можно использывать шаблоны, позволяющие заменить циклы одной строкой.
25 мар 2006
Доступно пользователям со статусом Участник