forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Childs and Parents (http://forum.boolean.name/showthread.php?t=15092)

Mind 09.07.2011 17:13

Childs and Parents
 
Подскажите формулу(геометричискую) привязки childa к parenty.

moka 09.07.2011 17:55

Ответ: Childs and Parents
 
Подскажите формулу чайника..

Nerd 09.07.2011 18:15

Ответ: Childs and Parents
 
Чтобы child был привязан к parent, parent должен любить своего child, покупать ему еду и игрушки...

Gector 09.07.2011 18:15

Ответ: Childs and Parents
 
Для чего хоть это нужно? И причем тут геометрия? Может тебе AddMesh нужен?

IgorOK 09.07.2011 18:18

Ответ: Childs and Parents
 
child_x_global=parent_x+child_x_local

Mind 09.07.2011 19:38

Ответ: Childs and Parents
 
Нет на все ответы. Спасибо сам разобрался после долгих мучений и экспериментов.

Gector 09.07.2011 19:42

Ответ: Childs and Parents
 
Цитата:

Сообщение от Mind (Сообщение 194858)
Нет на все ответы. Спасибо сам разобрался после долгих мучений и экспериментов.

Из чистого любопытства. Что за проблема была и как решил?

Mind 09.07.2011 19:42

Ответ: Childs and Parents
 
У меня еще вопрос на счет макса:
Насколько я знаю перед экспортом нада делать ResetXForm в максе, чтобы потом получить правильную форму физ.геометрии.. так вот я заметил что когда я ставлю ресетХформ у меня обнуляются значения поворота, наверно, движения, увеличения. Почему? и как этого можно избежать?

Mind 09.07.2011 19:46

Ответ: Childs and Parents
 
Gector, проблема:
Все знают игру half-life и все замечательно помнят как фримен поднимал ящики... наподобе этого и я решил сделать. Проблема была в привязке ящика к камере.Ящик - физ.мешь. Ну я долго( где то 2 часа ) мучался и подобрал формулу(там через косинусы и синусы и дистанцию ) для "препаренчивания" обьэкта... Вот и конец!

Nerd 09.07.2011 20:30

Ответ: Childs and Parents
 
Сказал бы конкретнее, мы бы тебе помогли.
Цитата:

Насколько я знаю перед экспортом нада делать ResetXForm в максе, чтобы потом получить правильную форму физ.геометрии.
Хммм... у меня и без ResetXForm всё окей.

moka 09.07.2011 20:47

Ответ: Childs and Parents
 
Цитата:

Сообщение от Mind (Сообщение 194862)
Gector, проблема:
Все знают игру half-life и все замечательно помнят как фримен поднимал ящики... наподобе этого и я решил сделать. Проблема была в привязке ящика к камере.Ящик - физ.мешь. Ну я долго( где то 2 часа ) мучался и подобрал формулу(там через косинусы и синусы и дистанцию ) для "препаренчивания" обьэкта... Вот и конец!

Если бы ты объяснил чё ты хочешь сделать, то тебе бы подсказали простейший способ: создать пивот перед камерой, и припарентить к камере. Затем тупо двигать ящик на позицию пивота...
Никаких синусов там, косинусов и не нужно было бы.

Mind 10.07.2011 11:43

Ответ: Childs and Parents
 
Цитата:

Проблема была в привязке ящика к камере.Ящик - физ.мешь.
Moka,если ты читал бы внимательнее то понял бы что я не идиот и этот способ уже пробывал.В хорсе парентить обычную модель к физической нельзя, а при препаренчивании физ к физ через joint у меня выходил косяк. Поэтому я просто определяю угол поворота камеры и мотодом расчета нужной позиции ставлю ящик в опр.место(относительно камеры).

Egor Rezenov 10.07.2011 12:43

Ответ: Childs and Parents
 
Цитата:

Сообщение от Mind (Сообщение 194937)
Moka,если ты читал бы внимательнее то понял бы что я не идиот и этот способ уже пробывал.В хорсе парентить обычную модель к физической нельзя, а при препаренчивании физ к физ через joint у меня выходил косяк. Поэтому я просто определяю угол поворота камеры и мотодом расчета нужной позиции ставлю ящик в опр.место(относительно камеры).

Парентить физ. тело к камере

Перечитай предыдущий пост.


Mind 10.07.2011 14:43

Ответ: Childs and Parents
 
Цитата:

Перечитай предыдущий пост.
Ты тут походу самый умный "Идиот"!

Для тупых объясняю:
Цитата:

Moka,если ты читал бы внимательнее то понял бы что я не идиот и этот способ уже пробывал.В хорсе парентить физ. модель к обычной(pivot) нельзя, а при препаренчивании физ к физ через joint у меня выходил косяк. Поэтому я просто определяю угол поворота камеры и мотодом расчета нужной позиции ставлю ящик в опр.место(относительно камеры).
Как я по твоему буду распологать ящик относ.камеры если даже не получается считать координаты ребенка(child).
Поэтому и приходиться пользоваться альтернативными способами ( к тому же легко подстраиваемыми под свою нужду )

NitE 10.07.2011 15:05

Ответ: Childs and Parents
 
Да ты-же упоротый. (Тупой здесь только ты, ок.)
Цитата:

Если бы ты объяснил чё ты хочешь сделать, то тебе бы подсказали простейший способ: создать пивот перед камерой, и припарентить к камере. Затем тупо двигать ящик на позицию пивота...
Никаких синусов там, косинусов и не нужно было бы.
Понимаешь что тут написано ?
1. Создаешь пивот.
2. Позиционируешь его относительно камеры (например на 10 единиц вперед).
3. парентишь пивот к камере.
4. двигаешь нужный объект на позицию(в сторону) пивота.

То что у тебя сейчас называеться кривой костыл.

Gector 10.07.2011 15:09

Ответ: Childs and Parents
 
Бл**ь... Ну нафига я спросил?:(

.Squid 10.07.2011 15:54

Ответ: Childs and Parents
 
Вложений: 1
Я просто оставлю это здесь.

Mind 10.07.2011 17:21

Ответ: Childs and Parents
 
Цитата:

Бл**ь... Ну нафига я спросил?
Я жалею что ответил.
Nite раз уж ты даешь такие глупые советы попробуй реализовать сам это!
Мне ДаСтАлО объяснять всем что я хочу прикрутить не ОБЫЧНЫЙ мешь, а ФИЗ.меш к пивойту если реализуешь это то признаю свою бездарность и глупость, тупизм , упорность и пр.
А то сразу все хотят дать советы которые сами не проверяли.
Цитата:

Я просто оставлю это здесь.
.Squid этот пример я знаю давно но он мне не подходит т.к я пользуюсь не PhysxBullet а PhysxWrapper. Еще пробывал реализовать подобное с джоинтами но было стоко проблем что запарился и решил сделать все сам.

Mr_F_ 10.07.2011 17:29

Ответ: Childs and Parents
 
Цитата:

я пользуюсь не PhysxBullet
а мы то все думали, что ты юзаешь именно ФизыксБуллет. только в нём ведь можно парентить физ меши.

по теме:
что ты не можешь вкурить то?
не можешь позицию физ телу ставить равную позиции пивота?

Mind 10.07.2011 17:33

Ответ: Childs and Parents
 
Цитата:

а мы то все думали, что ты юзаешь именно ФизыксБуллет. только в нём ведь можно парентить физ меши.
Интересно сколько я бы еще спорил с другими если ты бы не написал ЭТО! :-D


ДА!

Mind 10.07.2011 17:43

Ответ: Childs and Parents
 
Хочу обьяснить свое отношение к булетту:
1) Пользовался им как токо появился( где то мес. 3), пока на меня не напало куча багов(косяк с трианглами - все меши(хул-,три- и пр)).Боролся как мог но все мои попытки избежать их становились весьма сложными и емкоресурсными.
2) Был мал функционал по отношению к врапперу( ну там веревки, joint`ы и др.)
Поэтому решил перейти(уже давано) на PhysxWrapper(хотя у него тоже есть недостатки).

Venom2 11.07.2011 01:48

Ответ: Childs and Parents
 
Цитата:

Сообщение от Mind (Сообщение 194966)
Я жалею что ответил.
Nite раз уж ты даешь такие глупые советы попробуй реализовать сам это!
Мне ДаСтАлО объяснять всем что я хочу прикрутить не ОБЫЧНЫЙ мешь, а ФИЗ.меш к пивойту если реализуешь это то признаю свою бездарность и глупость, тупизм , упорность и пр.

Не тупи, тебе Nite написал что припарентить к камере надо пивот, а не физическое тело, а физическое тело ставить в позицию пивота:
Код:

SetBodyPosition(физическое_тело, EntityX(пивот, True), EntityY(пивот, True), EntityZ(пивот, True))
ну и повернуть не забудь по углам пивота (тоже глобальных).
Цитата:

Сообщение от Mind (Сообщение 194966)
то признаю свою бездарность и глупость, тупизм , упорность и пр.

Жду признаний :)

NitE 11.07.2011 02:19

Ответ: Childs and Parents
 
Вложений: 1
Цитата:

Graphics3D 800,600,32,2
SetBuffer BackBuffer()

Global cam=CreateCamera()
Global piv=CreatePivot()
Global plane=CreatePlane()
PositionEntity(piv,0,0,10,1)
EntityParent(piv,cam)
PositionEntity(cam,0,10,0,1)

light=CreateLight()

pxCreateWorld(1,"")

MoveMouse(GraphicsWidth()/2,GraphicsHeight()/2)
mousespeed#=0.5
camerasmoothness#=4.5
Global cbody=0

Repeat

If MouseHit(1)
camvx#=EntityX(piv,1)-EntityX(cam,1)
camvy#=EntityY(piv,1)-EntityY(cam,1)
camvz#=EntityZ(piv,1)-EntityZ(cam,1)
ray=pxCreateRay()
pxRaySetDir(ray,camvx,camvy,camvz)
pxRaySetPosition(ray, EntityX(cam,1),EntityY(cam,1),EntityZ(cam,1))
cbody=pxRayGetBody(ray,0)
EndIf


If MouseDown(1) And cbody<>0
cvx#=EntityX(piv,1)-pxBodyGetPositionX(cbody)
cvy#=EntityY(piv,1)-pxBodyGetPositionY(cbody)
cvz#=EntityZ(piv,1)-pxBodyGetPositionZ(cbody)
Local cmod%=2
pxBodySetLinearSpeed(cbody,cvx*cmod,cvy*cmod,cvz*c mod)
EndIf

If KeyHit(57)
Create_Px_Cube()
EndIf

mxs# = MouseXSpeed() * mousespeed
mys# = MouseYSpeed() * mousespeed
camxa# = camxa - mxs Mod 360
camya# = camya + mys
If camya < -89 Then camya = -89
If camya > 89 Then camya = 89
MoveMouse GraphicsWidth() / 2, GraphicsHeight() / 2
RotateEntity cam, camya, camxa, 0.0

Update_Px_Cube()
pxRenderPhysic(30,0)
UpdateWorld()
RenderWorld()
Text(10,10,cbody)
Flip
Until KeyHit(1)
End

Type Px_Cube
Field cube_body%
Field cube_mesh%
End Type

Function Create_Px_Cube()
ocu.Px_Cube = New Px_Cube
ocu\cube_body=pxBodyCreateCube(1,1,1, 3)
ocu\cube_mesh=CreateCube()
ScaleEntity ocu\cube_mesh,1,1,1
EntityColor ocu\cube_mesh,Rand(0,255),Rand(0,255),Rand(0,255)
pxBodySetPosition(ocu\cube_body,EntityX(cam)+Rand(-5,5),EntityY(cam)+Rand(-5,5),EntityZ(cam))
pxBodySetRotation(ocu\cube_body,Rand(-90,90),Rand(-90,90),Rand(-90,90))
End Function

Function Update_Px_Cube()
For ocu.Px_Cube = Each Px_Cube
pxBodySetEntity(ocu\cube_mesh, ocu\cube_body)
Next
End Function
Теперь можешь публично признать свою "бездарность и глупость, тупизм , упорность и пр."
Кстати, упорность и упоротость это очень разные вещи. Не думаю что кто-то тут обвинит тебя в упорности.

Mind 11.07.2011 13:54

Ответ: Childs and Parents
 
Итак начнем по-порядку:
Цитата:

а мы то все думали, что ты юзаешь именно ФизыксБуллет. только в нём ведь можно парентить физ меши.
Nite как ты мог написать пост и не прочесть веше посты где я уже писал...
Ниче признавать не буду т.к проблема оказалась не в моих знаниях а в возмржностях Physx`a.
Зря ты написал свой последний пост для меня т.к я и без тебя это мог сделать если б я пользовался буллетом..
Цитата:

Не тупи, тебе Nite написал что припарентить к камере надо пивот, а не физическое тело, а физическое тело ставить в позицию пивота
Venom ты как Nite не смотришь посты выше...

Цитата:

Жду признаний :)
За что? 0_o! За то что повторил все за Nite.. ппц.
Это ты не тупи..

moka 11.07.2011 14:52

Ответ: Childs and Parents
 
Да тупит, чё поделаешь..

RegIon 11.07.2011 15:36

Ответ: Childs and Parents
 
ну,я и то с пол пинка такой написал (правда на Ньютоне)

Mind 11.07.2011 15:42

Ответ: Childs and Parents
 
Цитата:

ну,я и то с пол пинка такой написал (правда на Ньютоне)
Поздравляю!!!
я тоже (если ты не имеешь в виду припаренчивания физ.меша к пивоту) :-D

RegIon 11.07.2011 15:56

Ответ: Childs and Parents
 
Цитата:

я тоже (если ты не имеешь в виду припаренчивания физ.меша к пивоту) :-D
нет...как в халфе

Colossus 12.07.2011 09:07

Ответ: Childs and Parents
 
если у тебя кривые руки, не нужно винить в этом тех кто пытается хоть как то понять тебя и обьяснить решение проблемы, созданной твоими же кривыми руками )) справку почаще кури, и таких проблем у тебя не будет, друг.


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

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