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

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

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

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

Ответ
 
Опции темы
Старый 20.11.2007, 11:21   #1
alligator
AnyKey`щик
 
Регистрация: 19.11.2007
Сообщений: 14
Написано 0 полезных сообщений
(для 0 пользователей)
движение в точку

есть несколько вопросов по поводу движения объекта.
1) как заставить объект двигаться в точку(есть pivot, вокруг него шарики. надо чтобы шарики двигались в сторону pivot.)
код проги:

SeedRnd MilliSecs()

Global t=0

Type cre
Field ball
End Type

Graphics3D 640,480,16,1
SetBuffer BackBuffer()

lit=CreateLight()

center=CreatePivot()

For i=0 To 99
b.cre=New cre
b\ball=CreateSphere(8,center)
ScaleEntity b\ball,.2,.2,.2
PositionEntity b\ball,Rnd(-20,20),Rnd(-20,20),Rnd(-20,20)
EntityColor b\ball,Rnd(0,255),Rnd(0,255),Rnd(0,255)
Next

cam=CreateCamera()
PositionEntity cam,0,0,-40

Repeat

t=Rnd(0,15)
If t=5 merz()

TurnEntity center,.0,.5,.5

UpdateWorld
RenderWorld

Flip

Until KeyHit(1)

End

Function merz()

For b.cre = Each cre
EntityBlend b\ball,Rnd(1,2)
Next

End Function



2 вопрос) как заставить объект перемещаться вниз по оси y, оси x и z должны оставаться текущими.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 11:44   #2
Данил
Модератор
 
Аватар для Данил
 
Регистрация: 11.07.2007
Сообщений: 2,910
Написано 686 полезных сообщений
(для 1,694 пользователей)
Re: движение в точку

1.
PointEntity entity,target[,roll#]
Направляет один объект на другой.


Дополнительный параметр roll позволяет Вам определять, на какой угол объект может поворачиваться за один шаг.

Если Вы хотите направить объект на определенную точку в 3D-пространстве, а не на другой объект, просто создайте невидимую точку (pivot) в этом месте, направьте объект на эту точку, а затем удалите ее.
2.

MoveEntity entity,x#,y#,z#

Описание
Перемещает объект относительно его текущей позиции и ориентации.

TranslateEntity entity,x#,y#,z#

Описание
Перемещает объект от его текущей позиции и независимо от его ориентации.
EntityX EntityY EntityZ

Возвращают координаты объекта.

MoveEntity b\ball , 0 , 1 , 0

или

a=a+1
Translate Entity b\ball , EntityX(b\ball) , a , EntityZ(b\ball)
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 14:31   #3
alligator
AnyKey`щик
 
Регистрация: 19.11.2007
Сообщений: 14
Написано 0 полезных сообщений
(для 0 пользователей)
Re: движение в точку

чёт неработает. ни moveentity не translateentity.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 14:36   #4
Данил
Модератор
 
Аватар для Данил
 
Регистрация: 11.07.2007
Сообщений: 2,910
Написано 686 полезных сообщений
(для 1,694 пользователей)
Re: движение в точку

Покажи где написал...
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 14:59   #5
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Re: движение в точку

пиши между:
For b.cre = Each cre
... пишеш сюда...
Next
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движение по рельсам kiber 3D-программирование 12 14.08.2009 21:07
Движение людей и животных Max Payne Blitz3D 57 06.01.2009 16:36
Движение камеры колёсиком Miha C++ 8 17.11.2008 17:37
Посоветоваться (движение игрока) Fant 3D-программирование 6 18.03.2007 10:52
как создать движение колеса Sqrt 3D-программирование 8 15.03.2007 04:38


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


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