forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Глюк (http://forum.boolean.name/showthread.php?t=11764)

Blender 20.01.2010 16:09

Глюк
 
Вложений: 1
Вот пример регдолл (взятий из учебника физикс, и чюток отредактированый)
Так вот глючит графика!
Когда появляется регдол, по нему стукаю и начинаю водить мишкой а он местами пропадает .

В вложении пример:
пробел- добавить регдол
В А С Д - управление
ЛКлик - стукнуть.

П.С. Как только запустите пример нажмете пробел регдол появется над камерой (так получилось)

ABTOMAT 21.01.2010 02:49

Ответ: Глюк
 
Это известный глюк блитза.
У каждого ентити в блице есть кулл бокс - эдакий прямоугольный параллелепипед, который описан около меша.
По нему проверяют, попадает ли объект в камеру, или нет, и если нет, то и не рендерят его.
И всё бы хорошо, но вот беда: не обновляется он самостоятельно, если двигаешь кости :(
И вот ты костями увёл модель в синюю даль, а кулл бокс остался на месте валяться. Отвернулся ты от него - и модель не рендерится (хотя он и попадает в экран)
Точнее даже и хз, назвать ли это глюком, ведь подобные выкрутасы со времена разработки блица обыденностью не были.
Ищи справку по команде MeshCullBox (это недокументированная функция, и в справке её нет, но есть на булке)
Она как раз позволяет изменять этот кулл бокс. Как его вычислять? А вот тут тебе уже придётся пошевелить мозгами... (я вот навскидку не вижу нечерезжопных способов)
Удачи в решении проблемы!

den 29.03.2010 19:08

Ответ: Глюк
 
Тоже такая проблема была, но я ёё решил:
Код:

For a.Ragdoll=Each Ragdoll
PositionEntity a\Mesh,pxBodyGetPositionX(a\Bodies[0]),pxBodyGetPositionY(a\Bodies[0]),pxBodyGetPositionZ(a\Bodies[0])
Next

Поставь это где нибуть в главном цикле и всё будет :cool:
Вобшем это перемещяет модел (меш) в позицию самого тела.


Часовой пояс GMT +4, время: 09:31.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot