| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование игр, графики и искусственного интеллекта > Передвижение игрока по ландшафту |
| Автор: Dronchik 7.8.2007, 13:49 |
| Привет всем. Как реализовать движение игрока по неровному ландшафту на С++ и DirectX9? |
| Автор: ShellRaiser 7.8.2007, 14:31 |
| Если ты юзал когданить Блитз3д то там была такая функция MoveEntity(объект,x,y,z) ну вот думаю подобным образом тебе придётся реализовывать на с++, только при этом ещё и учитывать коллизию... Добавлено через 1 минуту и 12 секунд и посмотри сэмлы с DirectX SDK там как раз реализован ответ на твой вопрос... |
| Автор: arilou 7.8.2007, 18:22 |
| Dronchik, ландшафт должен уметь давать высоту Y по указанным X, Z. Типа GetHeightAt(float x, float z); на каждое движение чара получаешь новое значение высоты и кооректируешь его позицию. |
| Автор: Dronchik 8.8.2007, 07:35 |
| То есть высота ландшафта на каждой позиции гдето записана? А где и как получить её? Добавлено через 2 минуты и 35 секунд ShellRaiser, в блитце я никогда не работал, можешь рассказать об этой функции? Добавлено через 11 минут и 9 секунд О придумал, ландшафт делатся в 3Д максе, я его сфоткаю сверху, переведу в чёрно-белый вид и загружу эту карту высот вместе с модель ландшафта. Но как проверит что игрок столкнулся с деревом например? Ведь деревьев там будет много. А каждую координату проверять долго. |
| Автор: ShellRaiser 8.8.2007, 10:23 | ||
| как я помню в блице была такая хрень - EntityType тоесть она указывала тип объекта, и просто при инициализации указывал коллизи каких типов могут происходить...т.е. коллизия чела например и ландшафта... А насчёт функции MoveEntity(объект, х,у,z): вот пример как я думаю эт бут на jave, где описан частичный код Entity в блитзе
тоесть как ты заметил ты лиш прибовляеш к координатам небольшое смещение, в случае коллизи думаю ты догадаешся что сделать)) |
| Автор: arilou 8.8.2007, 11:15 |
| Dronchik, из карты высот. сгенери карту каким-нить World Machine, и строй ландшафт из нее. Google "построение трехмерных ландшафтов" |