На этом этапе мы изучим как добавить в нашу сцену дополнительные графические объекты и задать их свойства.
Сцена состоит из некоторого количества графических элементов, называемых объектами (entities). Здесь можно провести аналогию с театральными декорациями. В нашей сцене фоновая картинка является объектом. Она была автоматически создана программой ProjectMan, когда мы создали сцену. Но Вы, конечно, заметили, что персонаж ходит сквозь предметы. Нам нужно, чтобы некоторые объекты сцены перекрывали персонажа при необходимости. Например, когда он стоит позади стола, мы хотим, чтобы стол частично закрывал его. Все объекты, которые могут перекрывать персонажа, должны быть созданы отдельно.
Мы создадим объект «стол» («desk») для нашей сцены.
Теперь нам нужно изображение стола. Для этого бы нам понадобилось вырезать в графическом редакторе стол из фоновой картинки. Но для этого примера картинка стола уже готова. Она находится в папке «tutorial\gfx» и называется «desk.bmp». Импортируйте её в папку сцены (процесс импортирования файлов был рассмотрен в Шаге 1).
Откройте сцену в программе SceneEdit (дважды кликнув файл MyScene.scene в дереве файлов ProjectMan).
Выберите слой «main» в списке. Теперь нажмите кнопку «Добавить объект» («Add entity») и выберите «Спрайт» («Sprite entity»). Спрайт представляется графикой (это может быть как статическое изображение, так и анимация). Этот тип объектов мы изучим позже.
SceneEdit создаст новый объект. Он будет называться «new entity» и отображаться в виде красного прямоугольника. Вы можете редактировать его свойства в левом нижнем окне. Измените его название (name) на «desk». Вы также можете изменить его заголовок (caption) на «desk». Теперь нам нужно задать изображение для него. Для этого нужно изменить свойство «Спрайт» («Sprite»). Щёлкните мышкой на его кнопке, в результате чего появится стандартное окно выбора файла. Откройте файл «desk.bmp» в папке «scenes\MyScene», который мы импортировали ранее. После этого изображение стола отобразится в красном прямоугольнике. Остальные свойства мы пока не будем рассматривать.
Вы можете перетаскивать объект мышью. Разместите его так, чтобы он совпадал с изображением стола на фоновой картинке (точные координаты - 432, 327).
|
Вы также можете перемещать объекты стрелками на клавиатуре. Это полезно для точного размещения объекта. Если при этом Вы будете удерживать клавишу SHIFT, объект будет перемещаться с шагом пять пикселов. |
Обратите внимание на список узлов. Они должны располагаться так, как показано на иллюстрации (для приведения узлов в соответствии с изображённым ниже списком используйте кнопки стрелок вверх и вниз):
Порядок расположения узлов в списке очень важен. Он говорит WME в каком порядке отрисовывать элементы сцены (узлы вверху списка будут отрисованы первыми).
В нашем случае список будет выглядеть следующим образом:
WME понимает это так:
Сохраните сцену и закройте приложение SceneEdit. Запустите игру и протестируйте Вашу сцену. Вы увидите, что персонаж на самом деле отрисовывается поверх фона и стола.
Вы можете попробовать изменить порядок узлов, чтобы посмотреть, как это будет влиять на отрисовку элементов сцены. Например, можно изменить список следующим образом:
Так стол будет всегда отрисовываться поверх персонажа.
Но мы хотим, чтобы стол перекрывал персонажа только когда он находится позади стола. Мы закончим нашу работу в Шаге 3: Структура сцены.
Кстати, Вы заметили, что стол стал интерактивным объектом? Курсор мыши меняется при наведении на него, а также выводится заголовок «desk».