Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 08.01.2009, 00:10   #1
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Xors3D + PhysX Проблема

Вот стандартный пример Pabeda на Xors +PhysX вроде сделал все правильно
только машина проезжает сквозь стены...

Include "xors3d.bb"

xGraphics3D 1024,768,32,0,0

;Lights
light = xCreateLight()

;Camera
camera = xCreateCamera()
xPositionEntity camera,0,40,-40
xRotateEntity camera,20,0,0

;PX
pxCreateWorldWithoutDrivers(0, "key")
PxCreateWorld(0, "key")
pxSetGravity(0,-30,0)

;level
level = xLoadMesh ("level.b3d")
xPositionMesh level, 0,-2,0
xScaleMesh level,5,5,5

Видимо сдесь проблема ну по примеру все верно..  хм  странно   

VB = xGetMeshVB(level)
VB_size = xGetMeshVBSize(level)
IB = xGetMeshIB(level)
IB_size=xGetMeshIBSize(level)
in_mesh=pxCreateTriMesh(VB, IB, VB_size, IB_size, 0)


tile = xLoadTexture("..\media\textur.bmp")
xScaleTexture tile,0.02,0.02
xEntityTexture level,tile


;---------Create car------------
car_mesh = xLoadMesh("..\media\pobeda.b3d")
xScaleMesh car_mesh,5,5,5
xRotateEntity car_mesh ,0,90,0
xPositionEntity car_mesh ,0,8,0

car_phys_mesh = xLoadMesh("..\media\pobeda_phys.b3d")
xScaleMesh car_phys_mesh,5,5,5
xRotateEntity car_phys_mesh ,0,90,0
xPositionEntity car_phys_mesh ,0,8,0
xEntityAlpha car_phys_mesh,0

VB = xGetMeshVB(car_phys_mesh)
VB_size = xGetMeshVBSize(car_phys_mesh)

car_body=pxBodyCreateHull(VB, VB_size,1000)
pxBodySetPosition (car_body, 0, 15 ,0)
pxBodySetRotation (car_body, 0, 90, 0)
pxBodySetCMassLocalPosition(car_body, 0, -4, 0)

;------- front wheel-----------
wheel_fr1_body = pxWheelAddToBody(car_body, -4, -2, 8.5)
pxWheelSetRadius(wheel_fr1_body,  2)
pxWheelSetSuspension(wheel_fr1_body,1,200,1)
wheel_fr1_mesh = xLoadMesh ("..\media\pobeda_wheel.b3d")
xRotateMesh wheel_fr1_mesh,0,180,0
xScaleEntity wheel_fr1_mesh,5,5,5

wheel_fr2_body = pxWheelAddToBody(car_body, 4, -2, 8.5)
pxWheelSetRadius(wheel_fr2_body,  2)
pxWheelSetSuspension(wheel_fr2_body,1,200,1)
wheel_fr2_mesh = xLoadMesh ("..\media\pobeda_wheel.b3d")
xScaleEntity wheel_fr2_mesh,5,5,5

;-------back wheel------------
wheel_bac1_body = pxWheelAddToBody(car_body, -4, -2, -6.5)
pxWheelSetRadius(wheel_bac1_body,  2)
pxWheelSetSuspension(wheel_bac1_body,1,200,1)
wheel_bac1_mesh = xLoadMesh ("..\media\pobeda_wheel.b3d")
xRotateMesh wheel_bac1_mesh,0,180,0
xScaleEntity wheel_bac1_mesh,5,5,5

wheel_bac2_body = pxWheelAddToBody(car_body, 4, -2, -6.5)
pxWheelSetRadius(wheel_bac2_body,  2)
pxWheelSetSuspension(Wheel_bac2_body,1,200,1)
wheel_bac2_mesh =  xLoadMesh ("..\media\pobeda_wheel.b3d")
xScaleEntity wheel_bac2_mesh,5,5,5

pxWheelSetFrictionToSide(Wheel_fr1_body, 50000)
pxWheelSetFrictionToSide(Wheel_fr2_body, 50000)
pxWheelSetFrictionToSide(Wheel_bac1_body, 50000)
pxWheelSetFrictionToSide(Wheel_bac2_body, 50000)


;Main Loop
Repeat

xPointEntity camera, car_mesh

If xKeyDown (205) ang = ang+1
If xKeyDown (203) ang = ang-1
If xKeyDown (200) motor = motor+5
If xKeyDown (208) motor = motor-5

If motor>400 motor = 400
If motor<-400 motor = -400
pxWheelSetMotorTorque(wheel_bac1_body, motor)
pxWheelSetMotorTorque(wheel_bac2_body, motor)

If ang>30 ang = 30
If ang<-30 ang = -30
    pxWheelSetSteerAngle(wheel_fr1_body,  ang)
    pxWheelSetSteerAngle(wheel_fr2_body,  ang)

    pxWheelSetBrakeTorque(wheel_bac1_body,  1)
    pxWheelSetBrakeTorque(wheel_bac2_body,  1)
    
If xKeyDown (57)
    pxWheelSetBrakeTorque(wheel_bac1_body,  500)
    pxWheelSetBrakeTorque(wheel_bac2_body,  500)
    motor=0
EndIf

pxRenderPhysic(60,0)

xUpdateWorld
xRenderWorld

xUpdatePhysxPose car_mesh

pxDX9BodySetEntity(car_mesh,car_body)


MeshSetToWheel(wheel_fr1_mesh, wheel_fr1_body)
MeshSetToWheel(wheel_fr2_mesh, wheel_fr2_body)
MeshSetToWheel(wheel_bac1_mesh, wheel_bac1_body)
MeshSetToWheel(wheel_bac2_mesh, wheel_bac2_body)


    xText 10,10, "FPS  "+xGetFPS()
    xText 10,30, "TrisRendered  "+xTrisRendered()
    xText 10,50,"angle= "+ang+ "  motor=  "+ motor
 
xFlip
Until xKeyHit(1) Or xWinMessage("WM_CLOSE")

Function MeshSetToWheel (mesh%, body%)
 
    pxWheelUpdateSpec(body,1)
    posX# = pxWheelGetPositionXSpec#(body%)
    posY# = pxWheelGetPositionYSpec#(body%)
    posZ# = pxWheelGetPositionZSpec#(body%)
    rotX# = pxWheelGetRotationPitchSpec(body%)
    rotY# = pxWheelGetRotationYawSpec(body%)
    rotZ# = pxWheelGetRotationRollSpec(body%)
    
    xPositionEntity mesh, posX,posY,posZ
    xRotateEntity mesh, rotX,rotY,rotZ
End Function

помогите если знаете...

за рание спасибо =)

Последний раз редактировалось SBJoker, 08.01.2009 в 01:02.
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 00:34   #2
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Re: Xors3D + PhysX Проблема

не используй этот глючный отстой, здоровее будешь (я про ксорс)...
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 04:30   #3
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Xors3D + PhysX Проблема

А стены у тебя физобъекты ?

еще: устрой модели уровня в максе перед экспортом резет Хформ
__________________
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 09:43   #4
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

NitE Аче Xors так уж плох ?

tormoz мона поподробней? я с максом не очень дружу
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 11:18   #5
newman
Бывалый
 
Регистрация: 20.11.2007
Сообщений: 663
Написано 145 полезных сообщений
(для 176 пользователей)
Ответ: Xors3D + PhysX Проблема

Сообщение от Townboy Посмотреть сообщение
NitE Аче Xors так уж плох ?

tormoz мона поподробней? я с максом не очень дружу
1)Xors не плох, просто таварищу NitE, не дали ключик от него, вот он ИМХО и злится.

2)Выдели все объекты потом справо на боковой панели выбери "Hierarchy"->"Affect Pivot Only" потом ниже "Center to Object" и потом ниже во вкладке "Adjust Transform" нажми "Transform"
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 11:31   #6
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

хех не фурычит все сделал как сказал.. может выложишь че нить ну там плоскость + пару стенок... а то может я че нитак делаю
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 12:30   #7
johnk
Легенда
 
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений
(для 568 пользователей)
Ответ: Xors3D + PhysX Проблема

Townboy, про X Form:
http://forum.boolean.name/showpost.p...50&postcount=4
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ABTOMAT (08.01.2009)
Старый 08.01.2009, 13:11   #8
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

с моделями все норм.. использую с проекта..

http://forum.boolean.name/showthread.php?t=3959 и
http://forum.boolean.name/showthread.php?t=4340

я эти сцены юзал с Blitz3D + PhysX..
а с Xors чета не хочет фурычить..
может в коде че не так..
Миниатюры
Нажмите на изображение для увеличения
Название: image.JPG
Просмотров: 1547
Размер:	103.4 Кб
ID:	5177  
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 15:24   #9
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D + PhysX Проблема

pxSetDX9Entity или щото типа того есть в коде?
с некоторых версий ксорса не рабит.
используй прямую установку мешей в коорды боди и наоборот.
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 15:38   #10
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

pxDX9BodySetEntity есть а pxSetDX9Entity нету

Xors version 1.1

используй прямую установку мешей в коорды боди и наоборот...


мона поподробней ?
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 16:50   #11
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Re: Xors3D + PhysX Проблема

xpostionentity carmesh,pxbodygetentityx(carphys)... и т.д.
newman, неверное имхо, как я уже кое-где писал - убрать проверку ключа дело на 20 мин... просто меня ещё раньше АВТОМАТ предупреждал что это отстой глючный, я скачал офф. примеры и он ниодин не запустил - в каждом разные ошибки - после такого даже разбиратся нехочется в чем дело... ктомуже на офф. сайте ясно написано что Beta а значит тока для мазохистов которым нравится не игру делать а чужие ошибки править...
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 17:18   #12
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

Ну с чемто я согласен но всёже в Xorse есть плюсы подержка DirectX 9
конешно как выйдет финал будет лутше

но всеже чето я непонимаю в Blitz3D я юзал вот это
Function CreateTriMesh(inmesh%)
        
    outmmesh=CreateMesh() 
    outsurf=CreateSurface(outmmesh) 
    outvc=0 
    For sc=1 To CountSurfaces(inmesh) 
        insurf=GetSurface(inmesh,sc) 
         
        For vc=0 To CountVertices(insurf)-1 
            NewV=AddVertex(outsurf,VertexX(insurf,vc),VertexY(insurf,vc),VertexZ(insurf,vc)) 
        Next 
    
        For tc=0 To CountTriangles(insurf)-1 
            AddTriangle(outsurf,outvc+TriangleVertex(insurf,tc,0),outvc+TriangleVertex(insurf,tc,1),outvc+TriangleVertex(insurf,tc,2)) 
        Next 
         
        outvc=outvc+CountVertices(insurf) 
    Next 
    UpdateNormals outmmesh 

        nsurf = CountSurfaces(outmmesh )
        nvert = 0
        nface=0
        For ns = 1 To nsurf
            Local surf = GetSurface(outmmesh ,ns)
            nface = nface+CountTriangles(surf)
            nvert = nvert +CountVertices(surf)
        Next
    
        fbank = CreateBank(nface*4*3)
        nf = 0
        vbank = CreateBank(nvert*4*3)
        nv = 0
        For ns = 1 To nsurf
            surf = GetSurface(outmmesh,ns)
            nfv = CountTriangles(surf)
            For nfc = 0 To nfv -1
                PokeInt fbank,nf*12+0,TriangleVertex(surf,nfc,0)
                PokeInt fbank,nf*12+4,TriangleVertex(surf,nfc,1)
                PokeInt fbank,nf*12+8,TriangleVertex(surf,nfc,2)
                nf=nf+1
            Next
    
            nvv = CountVertices(surf)
            For nvc = 0 To nvv - 1
                PokeFloat vbank,nv*12+0,VertexX(surf,nvc)
                PokeFloat vbank,nv*12+4,VertexY(surf,nvc)
                PokeFloat vbank,nv*12+8,VertexZ(surf,nvc)
                nv = nv+1
            Next
        Next
        bbb%=pxCreateTriMesh(vbank, fbank, nvert, nface,0)
        FreeBank vbank
        FreeBank fbank
        FreeEntity outmmesh 
        Return bbb%
End Function
а в Xors вот это по идее, это замена выше написано
VB = xGetMeshVB(Entity%)
VB_size = xGetMeshVBSize(Entity%)
IB = xGetMeshIB(Entity%)
IB_size=xGetMeshIBSize(Entity%)
in_mesh=pxCreateTriMesh(VB, IB, VB_size, IB_size, 0)
вот не могу понять причем здесь сцена

Последний раз редактировалось SBJoker, 08.01.2009 в 17:55.
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 17:19   #13
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Re: Xors3D + PhysX Проблема

Сообщение от NitE Посмотреть сообщение
просто меня ещё раньше АВТОМАТ предупреждал что это отстой глючный
Ну скажем так я выражался не столь грубо
Моё личное мнение о нём: для автомобильной аркады с тенями и бампом вполне годится, а РПГ я писать на нём не рискнул.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 17:23   #14
Townboy
AnyKey`щик
 
Регистрация: 11.12.2007
Сообщений: 18
Написано одно полезное сообщение
(для 0 участников)
Ответ: Xors3D + PhysX Проблема

вот я чтото типо аркады на авто и хачу чисто для себя..
я раньше не занимался такам ну всеже хочется научится хотябы первоначяльные знания
(Offline)
 
Ответить с цитированием
Старый 08.01.2009, 19:42   #15
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Xors3D + PhysX Проблема

У меня с физикой никаких проблем
в том числе и на автоаркаде

проблемы есть с парентами
__________________
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Physx & Xors3d rustem Физика 6 28.10.2010 23:53
Xors3D+PhysX ? Sleepybear C++ 18 26.09.2009 00:04
Мои вопросы по PhysX (Xors3D) Максим Blitz3D 18 09.01.2009 22:46
PhysX, Xors3D, не примитивная физика Sanzec Библиотеки 5 23.12.2008 12:08
pxWheelSetEntity для PhysX+Xors3D Bagration BlitzMax 0 05.03.2008 14:25


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com