나는 물체가 화면 상에 뜨기를 원했고, 중력에 저항하고 전혀 움직이지 않았습니다.SpriteKit의 물리학에 150의 신비한 요인. 중력과 힘
이것은보기의 중력 설정입니다.
self.physicsWorld.gravity = CGVector(dx: 0, dy: 5.0)
은 위쪽으로 5m/s^2 설정있다. 따라서 객체는 초당 5m만큼 가속됩니다. 오브젝트
질량은 중력에 저항 할 수 있도록 I 개체에 힘을인가 1.0kg
self.physicsBody?.mass = 1.0
설정된다. 그래서 나는 다음과 같이했다. I 개체에인가되는 중력 1kg의 *를 5m/s^2 = 5N이다 생각했기
func update(delta: TimeInterval) {
...
let force = CGVector(dx: 0.0, dy: -5.0)
self.physicsBody?.applyForce(force)
}
난
-5N 적용.
-5N을 적용하면 개체가 중력에 따라 화면에 떠있는
-5m/s^2에 의해 가속됩니다.
하지만 작동하지 않았습니다. 대신 나는 이것을해야만했다.
let force = CGVector(dx: 0.0, dy: -5.0 * 150.0)
-5 150 승산은 -750이다. 그럼, 이건 어디서입니까 에서 왔습니까? 왜 제가 -750N -5N 대신에 중력 저항을 만들기 위해 적용해야합니까?
나는 또한 중력 설정에 따라 다른 질량과 힘을 테스트했습니다.
self.physicsBody?.mass = 2.0
let force = CGVector(dx: 0.0, dy: -5.0 * 150.0 * 2)
self.physicsWorld.gravity = CGVector(dx: 0, dy: 15.0)
self.physicsBody?.mass = 2.0
let force = CGVector(dx: 0.0, dy: -15.0 * 150.0 * 2)
그들은 모두 발견을했다. F = ma.
질문은 신비한 요소 입니다. 도대체 어디로 양식이 오나요?
150은 150 미터에서 1 미터 사이이며, 미터에서 포인트로 변환하지 못했습니다. – Knight0fDragon