SceneKit applyForce в ARKit [дубликат]

Ни один из этих ответов не работал для меня, поэтому я оставил код, который действительно работал. В моем случае даже после убийства процесса с помощью .kill() и получения кода возврата .poll() процесс не завершился.

Следуя документации subprocess.Popen :

"... для правильной очистки хорошо выполненное приложение должно убить дочерний процесс и завершить связь ... »

proc = subprocess.Popen(...)
try:
    outs, errs = proc.communicate(timeout=15)
except TimeoutExpired:
    proc.kill()
    outs, errs = proc.communicate()

В моем случае я не получил proc.communicate() после вызова proc.kill(). Это очищает процесс stdin, stdout ... и завершает процесс.

2
задан john doe 17 June 2017 в 23:58
поделиться

1 ответ

В строке 26 вы передаете постоянный вектор в applyForce. Этот метод принимает вектор в мировом пространстве, поэтому передача постоянного вектора означает, что вы всегда применяете силу в том же направлении - если вы хотите, чтобы направление, основанное на направлении, которое указывает камера или что-то еще, вам нужно вычислить вектор, основанный на этом направлении.

Свойство (новое) SCNNode worldFront может оказаться полезным здесь - оно дает вам направление, указывающее узел, автоматически преобразуемое в мировое пространство, поэтому оно полезно с помощью физических методов , (Хотя вы можете его масштабировать.)

4
ответ дан rickster 16 August 2018 в 01:30
поделиться
  • 1
    Спасибо огромное! Работали как шарм :) Удивительный день! – john doe 18 June 2017 в 16:42
  • 2
    Не могли бы вы добавить какой-нибудь пример кода, чтобы понять это? – Prashant Tukadiya 29 June 2018 в 13:41
Другие вопросы по тегам:

Похожие вопросы: