У меня есть SKShapeNode var Circle = SKShapeNode(circleOfRadius: radius)
на фоне моей игры spritekit, которая использует swift. Круг предназначен для эстетических целей, поэтому с ним ничего не взаимодействует. Я бы хотел, чтобы Circle.strokeColor
постоянно менялся. Мой текущий код изменяет свойство цвета обводки SKShapeNode, но не отображает изменения цвета, потому что я изменяю свойство после того, как оно было добавлено к фону. Цвет остается неизменным на протяжении всей игры, пока игра не закончится, и круг не будет удален с фона, а затем воссоздан. Мой код изменяет цвет, добавляя 1 к var colorTime: CGFloat = 0.0
каждый раз, когда запускается функция обновления, а затем связывает значения RGB цвета круга с функциями косинуса, используя эту переменную colorTime. Как я могу постоянно менять (и отображать) цвет круга?
override func update(currentTime: CFTimeInterval) {
if last_update_time == 0.0 {
delta = 0
} else {
delta = currentTime - last_update_time
}
last_update_time = currentTime
colorTime += 100
redColor = (cos(colorTime/100)+1)/2
greenColor = (cos(colorTime/200 - 2.09)+1)/2
blueColor = (cos(colorTime/300 - 4.18)+1)/2
circleColor = UIColor(red: redColor, green: greenColor, blue: blueColor, alpha: 1)
Circle.strokeColor = circleColor
}