Есть ли способ найти координаты всех вершин объекта Ursina?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ найти координаты всех вершин объекта Ursina?

Сообщение Anonymous »


У меня есть следующий код для создания куба и плоскости.

из импорта ursina * тела = установить() Г = 0,002 приложение = Урсина (render_mode = 'коллайдеры') ground = Entity(model='plane', color=rgb(230,230,230), масштаб=10, коллайдер='сетка') ground.collider.visible = Истина куб = Entity(модель='куб', цвет=rgb(100, 100, 100), масштаб=2, позиция=Vec3(0, 5,0), коллайдер='сетка', вращение=Vec3(45, 45, 45)) Cube.collider.visible = Истина body.add((куб, 0)) обновление защиты(): глобальные организации новые_боди = установить() для тела, v в телах: hit_info = raycast(Vec3(cube.X, Cube.Y, Cube.Z) , Vec3(0, -1, 0), ignore=(body,), distance=body.scale.y, debug=True) если не hit_info.hit: v += Г body.y -= v еще: в = 0 new_bodies.add((тело, v)) тела = новые_боди РедакторКамера() DirectionalLight(parent=Entity(), y=2, z=3, тени=True, вращение=(45, -45, 45)) приложение.run() Я пытаюсь настроить систему гравитации в функции обновления, которая на самом деле равномерно применяется к объекту, в отличие (насколько я могу судить) от уже встроенного контроллера от первого лица. Самый простой способ, который я могу придумать, — это выполнить лучевое приведение вниз от каждой вершины (чтобы это работало для объектов, которые не являются просто кубами).

Есть ли способ найти вершины объекта? Я пробовал body.model.vertices, но это дает мне ошибку (AttributeError: объект 'panda3d.core.NodePath' не имеет атрибута 'vertices'), говорящий, что функция не существует.

Если нет, есть ли более простой способ реализовать гравитацию? Моя главная проблема с существующими способами заключается в том, что все они приводят к чему-то вроде этого:
Изображение
тогда как на самом деле куб должен просто упасть на пол.

Заранее спасибо.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»