*   >> Чтение Образование Статьи >> science >> programming

PushButton Учебник серии - Параллакс Background

<р> Играть демо

<р> скачать Исходный код

<р> вернуться на главную учебник

<р> Параллакс прокрутки относится к явлению, где объекты на расстоянии по всей видимости, больше двигаться медленнее, чем те, на переднем плане. Перемещение или скольжения отдаленные объекты более медленно, чем те, близко используется в 2D-игр, чтобы создать иллюзию глубины. В Кнопочные этот эффект легко подделать с помощью прокрутки большой фоновое изображение какой-то фракции движения игроков.

<Р> Во-первых, мы должны создать объект, который будет отображать изображение.

Это следует обычный процесс создания пространственной и спрайт компонент рендеринга, который тот же процесс мы использовали для каждого визуального объекта игры. Есть две вещи, чтобы указать в этом коде. Во-первых, мы определили значение SpriteRenderComponent layerIndex быть 0. Все другие организации, также указали SpriteRenderComponent layerIndex, но они используют значение 1. Это гарантирует, что фоновое изображение рисуется перед другими лицами, и, следовательно, позади них. Во-вторых, мы должны были установить значение размера SimpleSpatialComponent к чему-то очень большой.

Это останавливает изображение от того забито, заставляя его быть всегда обращается

<р> EntityFactory.as

 статический общественная функция createBackground. (Имя: String, сцена: String): IEntity {уаг лицо: IEntity = allocateEntity (); entity.initialize (имя); вар пространственное: SimpleSpatialComponent = новый SimpleSpatialComponent (); spatial.objectMask = новый ObjectType ("отображаемый"); spatial.size = новая точка (Number.MAX_VALUE, Number.MAX_VALUE); spatial.spatialManager = NameManager.instance.

lookupComponentByName (сцена, SCENE_BOX2DMANAGER_COMPONENT), как Box2DManagerComponent; entity.addComponent (пространственные, "Пространственное"); вар Визуализация: SpriteRenderComponent = новый SpriteRenderComponent (); Render.positionReference = новый PropertyReference ("@ Spatial.position"); Render.loadFromImage = "../media/background.png"; Render.layerIndex = 0; entity.addComponent (Рендер, "Визуализация"); вар playerRender: IDrawable2D = NameManager.instance.

lookupComponentByName ("Игрок", "Оказание"), как IDrawable2D; <р> Новый контроллер BackgroundImageController используется для перемещения фоновое изображение в ответ на движение от другого лица, игрок в этом случае

 Вар bgController: BackgroundImageController = новый BackgroundImageController ();. bgController.TrackObject = playerRender; b

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.