Ответ 1
A Sprite
- это в основном изображение с положением, размером и вращением. Вы рисуете его с помощью SpriteBatch
, и как только у вас есть ваш Sprite
и ваш SpriteBatch
, у вас есть простой, низкоуровневый способ получить 2D-изображения на экране в любом месте. Остальное зависит от вас.
Actor
, с другой стороны, является частью графика сцены. Это более высокий уровень, и там гораздо больше, что входит в график сцены, чем просто позиционирование изображений. Корень графа сцены - это Stage
, который сам не отображается. Stage
представляет собой контейнер для Actors
, который вы добавляете к нему, и используется для организации сцены. В частности, входные события передаются вниз через Stage
в соответствующий Actor
, а Stage
знает, когда нужно сказать Actor
для рисования. Например, событие касания отправляется только на Actor
, который был затронут.
Но обратите внимание, что Actor
не содержит текстуры вроде Sprite
. Вместо этого вы, вероятно, захотите использовать Image
подкласс Actor
, который, вероятно, ближе к Sprite
, чем просто простой Actor
. Другие подклассы Actor
содержат текст и т.д.
Другим большим преимуществом Actor
является то, что они могут иметь Action
s. Это большая тема, но они по сути позволяют вам планировать последовательность событий для этого Actor
(например, затухание в, перемещение и т.д.), Которое затем произойдет их собственный, как только вы их установили.
Таким образом, в основном Actor
делает намного больше, чем Sprite
, потому что это часть графической структуры.