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

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

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

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 27.05.2007, 21:57   #1
smersh
Нуждающийся
 
Регистрация: 23.02.2007
Сообщений: 98
Написано 0 полезных сообщений
(для 0 пользователей)
Сообщение злополучная физика

уверен что вопрос этот или похожий поднимался.
подскажите ссылку или простой пример воздействия на mesh сил тяжести инерции на чистом б3д . что то вроде катящегося бокса попдпрыгивающего на скачках.или инфу о принципе этого алгоритма зараннее благодарен
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 00:31   #2
alcoSHoLiK
Дэвелопер
 
Регистрация: 17.01.2006
Сообщений: 1,512
Написано 78 полезных сообщений
(для 110 пользователей)
Re: злополучная физика

http://www.boolean.name/showthread.php?t=30
Школьный учебник по физике тоже не помешает. Лучше конечно достать учебник по общей физике. Понадобится только том про механику.
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 04:14   #3
smersh
Нуждающийся
 
Регистрация: 23.02.2007
Сообщений: 98
Написано 0 полезных сообщений
(для 0 пользователей)
Re: злополучная физика

вот я слепил сам по механике, если не затруднит укажите на промах
;-----------------------------

Graphics3D 640,480 
SetBuffer BackBuffer() 

camera=CreateCamera() 
light=CreateLight() 
;-пивот der весомое тело
der=CreatePivot() 
PositionEntity der,0,0,5 
nagr=3;нагрузка
;-----граници---
Dim d(8),xxx(8),yyy(8),zzz(8)
For i = 0 To 8
d(i)=CreatePivot(der)
If i=1 Then xxx(i)=1 yyy(i)=1 zzz(i)=1
If i=2 Then xxx(i)=1 yyy(i)=1 zzz(i)=-1
If i=3 Then xxx(i)=1 yyy(i)=-1 zzz(i)=1
If i=4 Then xxx(i)=1 yyy(i)=-1 zzz(i)=-1
If i=5 Then xxx(i)=-1 yyy(i)=1 zzz(i)=3
If i=6 Then xxx(i)=-1 yyy(i)=1 zzz(i)=-1
If i=7 Then xxx(i)=-1 yyy(i)=-1 zzz(i)=1
If i=8 Then xxx(i)=-1 yyy(i)=-1 zzz(i)=-1
PositionEntity d(i) ,xxx(i),yyy(i),zzz(i)
ss=CreateSphere(8,d(i))
ScaleEntity ss,.05,.05,.05
Next 


While Not KeyDown( 1 ) 
;-----------расстояние проекций------------
xder1#=Sqr(Abs((EntityX(der,True)-EntityX(d(1),True))^2-(EntityY(der,True)-EntityY(d(1),True))^2))
xder2#=Sqr(Abs((EntityX(der,True)-EntityX(d(2),True))^2-(EntityY(der,True)-EntityY(d(2),True))^2))
xder3#=Sqr(Abs((EntityX(der,True)-EntityX(d(3),True))^2-(EntityY(der,True)-EntityY(d(3),True))^2))
xder4#=Sqr(Abs((EntityX(der,True)-EntityX(d(4),True))^2-(EntityY(der,True)-EntityY(d(4),True))^2))
xder5#=Sqr(Abs((EntityX(der,True)-EntityX(d(5),True))^2-(EntityY(der,True)-EntityY(d(5),True))^2))
xder6#=Sqr(Abs((EntityX(der,True)-EntityX(d(6),True))^2-(EntityY(der,True)-EntityY(d(6),True))^2))
xder7#=Sqr(Abs((EntityX(der,True)-EntityX(d(7),True))^2-(EntityY(der,True)-EntityY(d(7),True))^2))
xder8#=Sqr(Abs((EntityX(der,True)-EntityX(d(8),True))^2-(EntityY(der,True)-EntityY(d(8),True))^2))
;--------------крутящие моменты----------------
mom1#=Sqr(xder1#^2+nagr^2)
mom2#=Sqr(xder2#^2+nagr^2)
mom3#=Sqr(xder3#^2+nagr^2)
mom4#=Sqr(xder4#^2+nagr^2)
mom5#=Sqr(xder5#^2+nagr^2)
mom6#=Sqr(xder6#^2+nagr^2)
mom7#=Sqr(xder7#^2+nagr^2)
mom8#=Sqr(xder8#^2+nagr^2)

mom_1#=(mom1#+mom2#+mom3#+mom4#)-(mom5#+mom6#+mom7#+mom8#); ось x
mom_2#=(mom1#+mom3#+mom5#+mom7#)-(mom2#+mom4#+mom6#+mom8#); ось z

;-------------управление вращением---------------
If KeyDown( 208 )=True Then pitch#=pitch#-1 
If KeyDown( 200 )=True Then pitch#=pitch#+1 
If KeyDown( 203 )=True Then yaw#=yaw#-1 
If KeyDown( 205 )=True Then yaw#=yaw#+1 
If KeyDown( 45 )=True Then roll#=roll#-1 
If KeyDown( 44 )=True Then roll#=roll#+1 

;-----------вращение и воздействие------------
RotateEntity der,pitch#,yaw#,roll# 
TurnEntity der,mom_1#,mom_2#,0
RenderWorld 

Text 0,10,"xder1 : "+xder1# 
Text 0,20,"xder2 : "+xder2# 
Text 0,30,"xder3 : "+xder3# 
Text 0,40,"xder4 : "+xder4# 
Text 0,50,"xder5 : "+xder5# 
Text 0,60,"xder6 : "+xder6# 
Text 0,70,"xder7 : "+xder7# 
Text 0,80,"xder8 : "+xder8#
 
Text 0,100,"mom_1# : "+mom_1# 
Text 0,110,"mom_2# : "+mom_2#


Flip 

Wend 

End
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 04:37   #4
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: злополучная физика

Ох эти смайлы!!!! РРРР!!!!
Значит, теперь по коду, что это и для чего? Речь ведь о физике? А я только покачто увидел верчение сфер, притом они вроде и кубик, но одна сферка далеко... =)

ЗЫ Заключай код в такие тэги [_CODE_][_/CODE_] (без "_")
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 04:47   #5
smersh
Нуждающийся
 
Регистрация: 23.02.2007
Сообщений: 98
Написано 0 полезных сообщений
(для 0 пользователей)
Re: злополучная физика

по идее это центр тяжести и консоли
удаленная консоль должна повиснуть под центром
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 04:59   #6
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: злополучная физика

Как понял, вычисление будет относительно всех вершин меша?
Относительно коллизии, тут понятно, а насчёт отталкивания?
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 05:15   #7
smersh
Нуждающийся
 
Регистрация: 23.02.2007
Сообщений: 98
Написано 0 полезных сообщений
(для 0 пользователей)
Re: злополучная физика

меш будет привязан к пивоту "дер"
а коллизия относительно консолей
сферы здесь для визуализации
(Offline)
 
Ответить с цитированием
Старый 28.05.2007, 05:25   #8
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: злополучная физика

Понятно.
Тогда будет проще, но при столкновении тонких объектов, будет сложновато.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
физика NitE BlitzMax 5 23.07.2010 00:00
Физика ger1234567 Delphi 9 30.11.2009 18:34
Физика Petrofan 3D-программирование 9 30.01.2009 20:56
Физика для игр, посоветуйте... Bagration Blitz3D 22 17.11.2007 19:32
Физика! pipns 3D-программирование 7 06.07.2007 22:46


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


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