Показать сообщение отдельно
Старый 12.02.2011, 18:26   #1
Aikon
ПроЭктировщик
 
Регистрация: 12.02.2011
Сообщений: 131
Написано 23 полезных сообщений
(для 52 пользователей)
FPS: Проблема с реализацией игрока

Сделал, как в обучающих примерах, т.е. пивот с камерой сверху
	Const COLLISION_PLAYER = 1, COLLISION_SCENE = 2
	Collisions COLLISION_PLAYER, COLLISION_SCENE, 2, 2
...
	scenePlayer = CreatePivot()
	sceneCamera = CreateCamera(scenePlayer)

	MoveEntity sceneCamera, 0, 3,0
	MoveEntity scenePlayer, 0, 1, 0

	EntityRadius scenePlayer, 1.5
	EntityType scenePlayer, COLLISION_PLAYER
Предположим, что есть лестница. Чтобы игрок по ней взбирался быстрее, т.е. выталкивался обработчиком столкновений, надо увеличить радиус "ног игрока" (scenePlayer). Однако, из-за этого игрок перестает проходить, например в двери (если деревья или обстановку в доме можно расставить по шире, то квадратные двери смотрятся нелепо).
Так же малое значение радиуса позволяет подойти близко к стене и "заглянуть" через нее (это лечится заданием небольшого значения перового параметра в CameraRange).

Что посоветуете сделать?

Подскажите еще, как сделать звук шагов. Простое добавление "воспроизвести звук, если игрок шагнул" на звук шагов не похож.

Последний раз редактировалось Aikon, 12.02.2011 в 19:45.
(Offline)
 
Ответить с цитированием