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

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

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

FAQ Туториалы и часто задаваемые вопросы

Ответ
 
Опции темы
Старый 29.04.2014, 19:11   #16
LLI.T.A.L.K.E.R.
Мастер
 
Аватар для LLI.T.A.L.K.E.R.
 
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений
(для 504 пользователей)
Ответ: Учебник по PhysX Wrapper для Blitz3D

Простой пример физической двери (при нажатии на "E" вертится вокруг своей петли):
форум в некоторых местах кода вставил лишние пробелы

pxCreateWorld(1,"key")
...


;============== create compound mesh ===============
door_mesh = xCreateCube()
xScaleMesh door_mesh,0.5,1,0.1
xPositionMesh door_mesh, -0.5,0,0

;============== create compound body ===============
door_desc = pxCreateCompoundDesc()

door_cube_shape = pxCompoundAddCubeShape(door_desc,0.5,1,0.1)
pxCompoundSetShapePos (door_cube_shape, -0.5,0,0)

door_body = pxCreateCompound(door_desc, 1000)
pxBodySetPosition(door_body ,10,7,0)

pxBodySetFrozen(door_body,1)

xPositionEntity door_mesh,pxBodyGetPositionX#(door_body),pxBodyGet PositionY#(door_body),pxBodyGetPositionZ#(door_bod y)
xRotateEntity door_mesh,pxBodyGetRotationPitch#(door_body),pxBod yGetRotationYaw#(door_body),pxBodyGetRotationRoll# (door_body)
;============== END ===============


While Not xKeyHit(1)
...


If KeyHit( 18 )=True Then pxBodySetRotation(door_body,0,pxBodyGetRotationYaw #(door_body)+15,0)
;xPositionEntity door_mesh,pxBodyGetPositionX#(door_body),pxBodyGet PositionY#(door_body),pxBodyGetPositionZ#(door_bod y)
xRotateEntity door_mesh,0,pxBodyGetRotationYaw#(door_body),0


...
UpdateWorld()
RenderWorld()
Wend
Для продолжения, так же можно проверить дистанцию до двери, когда рядом - тогда она активна.
If KeyHit( 18 )=True and EntityDistance(player,door_mesh)<2 then

(так же не зубадьте "пикнуть" дверь)

кстати основная загвоздка бывает в разнице использования PositionEntity ScaleEntity или PositionMesh ScaleMesh
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо LLI.T.A.L.K.E.R. за это полезное сообщение:
KCEPOKC (26.08.2014), St_AnGer (29.04.2014), tirarex (22.05.2014)
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
.Newton Wrapper for Blitz3D itmbin Библиотеки 162 15.11.2017 23:13
PhysX wrapper Render Библиотеки 271 28.09.2016 09:26
Обсужение учебника по PhysX Wrapper для Blitz3D ABTOMAT 3D-программирование 309 24.02.2014 08:46
Русский учебник по PhysX ArtemkA Переводы 38 16.03.2011 11:52
Капсульный игрок в PhysX Wrapper JohnAustin 3D-программирование 10 17.12.2009 20:50


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


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