 |
3D-программирование Вопросы, касающиеся программирования 3D мира |
08.03.2007, 20:20
|
#16
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Сообщение от MoKa
Немного над ландшафтом? Там коллизии? Может не точно указан Радиус элипсоида? Попробуй EntityRadius на колёсики.
|
Ближе к реальности. Я пробовал изменять радиус моего кубика и он становился ниже, но в результате - переворачивался, в то время как колесики были над землей. Изменение Радиуса колесиков ни к чему неведет. Вообще.
|
(Offline)
|
|
08.03.2007, 20:26
|
#17
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Передвижение игрока
НО истина в них, да помница, когда я мучал этот сэмпл, было что-то такое, но помню нашёл в чём тема.
|
(Offline)
|
|
08.03.2007, 20:28
|
#18
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Сообщение от MoKa
НО истина в них, да помница, когда я мучал этот сэмпл, было что-то такое, но помню нашёл в чём тема.
|
Думаешь дело только в них???
Просто какой бы я им радиус не ставил, все-равно нчего не меняется...я даже не знаю что пробовать!!
|
(Offline)
|
|
08.03.2007, 20:46
|
#19
|
AnyKey`щик
Регистрация: 19.08.2006
Сообщений: 12
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Передвижение игрока
Fant, попробуй мой пример, без "колёсиков", но вроде работает...
Хотя может я не совсем понял какого именно "прилипания" ты хочешь добиться.
|
(Offline)
|
|
08.03.2007, 20:49
|
#20
|
Дэвелопер
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений (для 17 пользователей)
|
Зачем тебе аж 4колизи?
Делай столкновение самому кубику(радиус подогнать нетрудно), далее после контакта: Узнаеш нормаль контакта 
CollisionNX
CollisionNy
CollisionNz
и по ним выравнивай, получеш то что хотел!
Вот тебе поможет
If EntityCollided(Холодильник,Марсеанская база по производству спирта  )
cx#=CollisionX( Холодильник,1 )
cy#=CollisionY( Холодильник,1 )
cz#=CollisionZ( Холодильник,1 )
nx#=CollisionNX( Холодильник,1 )
ny#=CollisionNY( Холодильник,1 )
nz#=CollisionNZ( Холодильник,1 )
PositionEntity Холодильник,cx,cy,cz
AlignToVector Холодильник,nx,ny,nz, 3 (последний пораметр это скорость напровления, если 0 то мнгновенно)
Endif
|
(Offline)
|
|
08.03.2007, 21:13
|
#21
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Всем еще раз спасибо!
Примерчик оказался мне полезным!
2vlad - возьму твой код на заметку) но уж лчше тогда без колес)
|
(Offline)
|
|
08.03.2007, 21:14
|
#22
|
AnyKey`щик
Регистрация: 19.08.2006
Сообщений: 12
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Передвижение игрока
последний пораметр это скорость напровления, если 0 то мнгновенно
|
Нет, если 1 - то мгновенно
|
(Offline)
|
|
08.03.2007, 22:17
|
#23
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Увы
Игрок как летал, так и летает, если использовать пример Hanima
vlad твой пример почти тоже самое, что и пример
|
(Offline)
|
|
08.03.2007, 22:24
|
#24
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Я в шоке. И отчаянии.
Я испробовал кучу вариантов, но, как оказалось, дело не сдвинулось с мертвой точки.
Заюзал я примеры, данные мне, и вот что я имею на сейчас:
Первое. Игрок не может сдвинуться (странно, а в примере кубик через горы прыгал)
Второе. Игрок опять висит в воздухе (это просто наказание)
Радует, что хоть не переворачивается, как в случае с примером driver
Так что если кто-то знает как обуздать эту штуку, помогите пожалуйста!
1,2 + курсор мыши - навигация по карте
курсор - упраление юнитом
функция - fnUpdateTank1() - обновление танка. Именно там эти косяки...(
|
(Offline)
|
|
08.03.2007, 22:50
|
#25
|
Дэвелопер
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений (для 17 пользователей)
|
Re: Передвижение игрока
Просто убери из моего примера PositionEntity
И гденить в цикле
Translsteentity Холодильник,0,-0.01,0
|
(Offline)
|
|
09.03.2007, 00:27
|
#26
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Сообщение от vlad
Просто убери из моего примера PositionEntity
И гденить в цикле
Translsteentity Холодильник,0,-0.01,0
|
твой код просто не работает. Вообще.
Если кто-то знает как это сделать, напишите пожалуйста! Почему-то у меня никак не получается...по примеру сделал. Все работает (запускается без ошибок), но только игрок слишком высоко...и не двигается
|
(Offline)
|
|
09.03.2007, 13:53
|
#27
|
AnyKey`щик
Регистрация: 19.08.2006
Сообщений: 12
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Передвижение игрока
Попробуй уменьшить радиус коллизии:
EntityRadius tank1\obj,0.2
Гравитация слишком сильная. Уменьши гравитацию или увеличь скорость движения танка. Например, так:
TranslateEntity tank1\obj,0,-0.1,0
|
(Offline)
|
|
09.03.2007, 21:29
|
#28
|
Бывалый
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений (для 5 пользователей)
|
Re: Передвижение игрока
Ну все) я с этим закончил и у меня наконец-то получилось!
Всем еще раз спасибо за помощь и обсуждение!
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 23:47.
|