Как да напиша игра в Qt - Урок 1

Този урок започва поредица от статии за това как да напишете игра в Qt. В предишната статия се обсъждаше системата за позициониране за графики QGraphicsItem в QGraphicsScene. Начертан беше триъгълник и поставен в центъра на графичната сцена, размерите на които бяха 500 на 500 пиксела. И сега е дошъл моментът да съживим този триъгълник, или по-скоро да започнем да го управляваме.

Нека съставим техническата задача на урока:

  • Прозорецът съдържа графична сцена с размери 500 х 500 пиксела (това вече е направено в предишния урок);
  • В центъра на графичната сцена има червен триъгълник (което също беше направено в последния урок);
  • Триъгълникът трябва да се движи при натискане на клавишите със стрелки нагоре, надолу, наляво, надясно;
  • Триъгълникът не трябва да надхвърля графичната сцена, тоест той трябва да бъде ограничен от размерите на графичната сцена.

Забележка. Този проект използва WinAPI, така че проектът е приложим за използване в операционната система Windows, а за Linux и MacOS е приложим само алгоритъмът, използван в този урок. Следователно, ако искате да напишете игра за тези ОС, тогава ще трябва да използвате библиотеките на тези ОС за асинхронна обработка на натискания на клавиши.

Структура на проекта

  • Triangle.pro - профил на проекта, създаден по подразбиране и не изисква корекции в този проект;
  • main.cpp - файлът, от който стартира приложението, в този файл се извиква джаджата, в която ще се намира графичната сцена с триъгълника, която ще контролираме;
  • widget.h - заглавен файл на извиканата джаджа с графична сцена;
  • widget.cpp - файл с изходен код на джаджа;
  • triangle.h - заглавен файл на класа Триъгълник, който наследява от QGraphicsItem;
  • triangle.cpp - изходен файл на класа Триъгълник.