понедельник, 27 мая 2013 г.

Фигуры Лиссажу для анимации оружия

Оружие в шутерах от первого лица не должно быть прибито к камере гвоздями - оно раскачивается в такт ходьбе, да и при стоянии на месте медленно ходит туда-сюда из-за постоянного движения рук. Конечно, довольно трудно сымитировать этот эффект в полном соответствии с реальностью, но можно обойтись дешевым и убедительным фейком. Оружие можно двигать вдоль кривой Лиссажу: x = sin(t), y = cos(2t). В результате получается траектория, изображенная на рисунке справа.
Vector2f lissajousCurve(float t)
{
    return Vector2f(sin(t), cos(2 * t));
}

//...

if (playerWalking)
    t += 10.0f * delta;
else
    t += 1.0f * delta;
    
if (t > 2 * PI)
    t = 0.0f;
    
Vector2f p = lissajousCurve(t) / 10.0f;
weapon.localPos = Vector3f(p.x, p.y, 0.0f);


вторник, 21 мая 2013 г.

Меню в Atrium

Состоялось довольно значительное обновление кодовой базы Atrium. В частности, было реализовано главное меню и меню паузы. Кроме того, репозиторий был синхронизирован с последней ревизией dlib.

Доступны свежие сборки:
Для Windows (1,74 МБ)
Для Linux (2,76 МБ).

Исходники проекта доступны на GitHub.


воскресенье, 12 мая 2013 г.

Журнал "FPS" №23

Вышел 23 номер электронного PDF-журнала "FPS", посвященного разработке игр, программированию, компьютерной графике и звуку.

Читайте в этом номере:
 
> Blender: новости
> История Blender
> "Икона стиля": 

новые тенденции в дизайне значков
> GIMP. Фотолаборатория: 

отделение темных участков от светлых
> Derelict. Джентльменский набор разработчика игр
> Новости игровой индустрии
> И в этом вся соль! Native Client от Google
> Загадки числа "Пи"
> Страсти по Оруэллу: на пороге электронного тоталитаризма
> 20 причин не использовать Facebook


Номер доступен для онлайн-чтения и загрузки на сервисе Issuu.com, Документах Google и Dropbox

Последние новости по проекту вы можете узнать в публичной странице журнала в социальной сети Google+: http://gplus.to/fpsmag. Добавляйте нас в круги, оставляйте свои комментарии и отписывайтесь в нашем сообществе.
 

четверг, 2 мая 2013 г.

Сохранение PNG в dlib

В dlib теперь поддерживается сохранение изображений в формат PNG (Portable Network Graphics) - ранее было доступно только чтение файлов этого формата. За сохранение отвечает функция savePNG в модуле dlib.image.io.png.
Изменения доступны в ревизии r22 и выше.

http://code.google.com/p/dlib/