2015-09-18 3 views
1

Как указано в заголовке, существует ли способ остановить холст/SKScene от очистки содержимого текущего кадра и просто нарисовать его? Теперь содержимое сцены/кадра очищается каждый цикл обновления, я хотел бы просто нарисовать предыдущий кадр.Есть ли способ наложения кадров в SpriteKit?

Я работал с OpenFrameworks и другими инструментами визуального программирования, а также тем, как он работал; вы нарисовываете материал по вызову update, на следующем update звоните, чтобы вы снова установили фон, чтобы «очистить» предыдущий кадр.

Я просмотрел всю документацию SpriteKit и ничего не нашел. Я также попытался подражать эффекту, нажав больше узлов на сцену, заставляя их следовать за шагом «новых» узлов. Это, как я и ожидал, способ тяжелого CPU/RAM.

Нет кода, я знаю, извините, но материал, который я использую, довольно простой. У кого-нибудь из вас есть какие-то мысли по этому поводу?

Надеюсь услышать от вас, спасибо.

+0

Я не думаю, что theres будет способом сделать это, и я не уверен, почему вы хотели бы опираться на предыдущий кадр? – hamobi

+0

Да, на самом деле я не хочу, чтобы я рисовал предыдущий кадр, но я просто не хочу, чтобы холст/контекст очищал каждое обновление. Я думаю, что нет никакого способа сделать это с помощью spritekit .. –

+0

Последняя версия Sprite Kit замедляет цикл обновления, если не изменится какое-то время, я думаю. – Confused

ответ

0

Вы должны быть в состоянии сделать это, установив clearsContextBeforeDrawing на SKView на NO.

clearsContextBeforeDrawing является собственностью UIView, который SKView является подклассом.

Я бы не рассматривал это, чтобы технически быть комплектом Sprite, обеспечивающим поведение, но я считаю, что это то, что вы ищете.

Примечание: Я действительно не проверял это, поэтому возможно, что это не будет работать. Теоретически он идеально подходит для UIKit.

+1

Я проверил, и похоже, вы не можете полагаться на это, чтобы не очистить содержимое. –

+0

Jup, Бен Кейн прав, пробовал это уже, но не работал. –

Смежные вопросы