Геодата

Теги:
 
1 2 3 4 5
+
-
edit
 

Valar77

новичок
У меня получилось выдрать координаты местности из клиента через запросы к Direct3D.
В атаче скиншот из VRML плеера и модель в формате VRML.

VRML клиент можно скачать:


Рекомендую Octaga Player.

На скиншоте и в модели вход в Lair of Antares
 
+
-
edit
 

roller

опытный
А где аттач?
Roller, Тирант - Последний Герой клана OutLaw - 61+ (52+ честно нажитое) Rollw, Скав - Ресурсы, рецепты, спойл. Дорого - 40+ (33+ честно нажитое) Rolly, Cleric - Ready for party ;) - ХЗ+ (30+ честно нажитое) Rollon, SH - гордый и бедный - 48+  
+
-
edit
 

Valar77

новичок
Похоже атачи на форуме не работают

Скачать можно с
http://files.adamant.ua/7159
 

Serge
Serge2

новичок
Valar77:
Похоже атачи на форуме не работают
Скачать можно с
http://files.adamant.ua/7159
 

Очень интересно... но скачка не работает... похоже по IP-шникам прикрыто.
code text
  1. # traceroute files.adamant.ua
  2. traceroute to files.adamant.ua (212.26.128.193), 30 hops max, 38 byte packets
  3.  1  ........... (...........)  1.466 ms  1.324 ms  3.738 ms
  4.  2  .................. (...........)  0.614 ms  0.458 ms  0.492 ms
  5.  3  m9-sw-2-fa0-6.msk.zenon.net (195.2.86.9)  4.734 ms  4.095 ms  7.236 ms
  6.  4  m9-7-ge-1-3-0-401.msk.zenon.net (62.113.112.98)  6.738 ms  7.718 ms  4.238 ms
  7.  5  mow-b2-geth2-1-25.telia.net (213.248.78.177)  4.988 ms  4.594 ms  4.614 ms
  8.  6  s-bb2-pos1-3-1.telia.net (213.248.65.45)  28.723 ms  28.829 ms  35.719 ms
  9.  7  s-b3-pos4-0.telia.net (213.248.66.10)  30.597 ms  31.952 ms  30.724 ms
  10.  8  sl-gw10-sto-5-1.sprintlink.net (213.206.131.33)  28.721 ms  28.204 ms  28.349 ms
  11.  9  sl-bb21-sto-8-0.sprintlink.net (80.77.96.41)  29.722 ms  29.080 ms  30.972 ms
  12. 10  sl-bb21-cop-12-0.sprintlink.net (213.206.129.33)  46.213 ms  42.946 ms  42.590 ms
  13. 11  sl-bb21-ham-13-0.sprintlink.net (213.206.129.58)  41.339 ms  55.065 ms  47.964 ms
  14. 12  sl-bb20-fra-13-0.sprintlink.net (213.206.129.61)  54.084 ms  55.939 ms  53.707 ms
  15. 13  sl-gw11-fra-5-0.sprintlink.net (217.147.96.69)  52.210 ms  55.566 ms  53.582 ms
  16. 14  peer-sprint-l.newline.net.ua (80.91.180.5)  86.566 ms  87.417 ms  86.439 ms
  17. 15  * * *
  18. 16  * * *
  19. 17  * * *
  20. 18  * * *
  21. 19  * * *
...I'm very responsible person, then something goes wrong I'm response.  
+
-
edit
 

Valar77

новичок
Где в России можно выложить файлы?
 
+
-
edit
 
+
-
edit
 
+
-
edit
 

Zzahar

втянувшийся
Выглядет правильно. На основе этого vml файла по моему вполне можно сгенерировать геодату в любом нужном формате(или быть может на основе того, что генерировало этой файл). Но я так и не понял... Что планируется сделать с этим новым знанием? Таким способом можно сгенерировать любую геодату?
L2JZsystem - система управления сервером.  
+
-
edit
 

Valar77

новичок
Zzahar:
Выглядет правильно. На основе этого vml файла по моему вполне можно сгенерировать геодату в любом нужном формате(или быть может на основе того, что генерировало этой файл). Но я так и не понял... Что планируется сделать с этим новым знанием? Таким способом можно сгенерировать любую геодату?
 


Что планируется делать с этим новым знанием нужно узнать у разработчиков сервера (я не разработчик).

Этим методом можно сгенерировать любую геодату.
 

Beast

разработчик l2j-сервера
А как насчет зданий, мостов и т.д.? Их координаты таким способом выдираются?
 
+
-
edit
 

Valar77

новичок
Beast:
А как насчет зданий, мостов и т.д.? Их координаты таким способом выдираются?
 


Получить можно всё, что рисуется на экране.
 

Hober

новичок
Valar77:
У меня получилось выдрать координаты местности из клиента через запросы к Direct3D.
 


Можешь описать подробно, как это ты смог зделать?
 
+
-
edit
 

Valar77

новичок
Hober:
Valar77:
У меня получилось выдрать координаты местности из клиента через запросы к Direct3D.
 


Можешь описать подробно, как это ты смог зделать?
 


Для этого нужно создать прокси между клиентом и Direct3D.
Пишется dll-ка d3d9.dll (для девятого DirectX), ложится в католог system клиента. Клиент использует твою dll-ку, твоя dll-ка использует реальный Direct3D.
В своей dll-ке перехватываеш вызовы методов BeginScene, EndScene, SetStreamSource, SetIndeces, DrawIndexedPrimitive, DrawPrimitive и т.д.
Методы DrawIndexedPrimitive, DrawPrimitive выводят примитивы (например треугольники). При вызове этих методов сохраняеш данные на диск.

За основу можно взять разработку proxydll:
http://www.proxy.mikoweb.de/

или рекордер/плеер Direct3D:
http://www.users.on.net/~triforce/d3dbench.zip - исполняемые файлы
http://www.users.on.net/~triforce/d3dbenchsrc.zip - исходники

ЗЫ: Я не большой специалист в программировании Direct3D, неделю назад я ничего не знал по этой части.
 

Styx

разработчик l2j-сервера
Как обычно идея настолько проста, что до нее никто не додумался :)
Респект :)
...and what better way to say goodbye than to kill everyone in sight? © Syntari  
+
-
edit
 

Balancer

администратор
★★★★★
Жаль, что у меня внутренний блок против DX :) Я когда-то пытался начать программировать DX1.0, потом, через какое-то время, DX3.0. Тогда ничего не понял, и сейчас, понимая, что наверняка очень многое стало проще, всё равно разбираться себя заставить не могу :D

...

А вот по сабжу для сервера - по многим размышлениями пришёл к выводу, что организовывать надо в виде набора плоскостей-полигонов, заданных вершинами. Проблема только в их формировании из любого вида имеющихся данных. Зато потом будет сказка. Высокая скорость определения координат (полагаю, одной целочисленки хватит), многоэтажность, определение градиента (для лёгкого вычисления скорости перемещения) и т.п. :)
 
+
-
edit
 

Valar77

новичок
Хорошо было бы найти человека, разбирающегося в програмировании DirectX и хорошо знающего C++. Я думаю у него не составило бы проблем получить всю нужную информацию по рельефу. У меня нет опыта ни в DirectX, ни в С++, хотя кое каких результатов я добился.

Теперь если предположить, что мы можем получить полигональную модель рельефа, то нужно подумать об алгоритмах поиска пути и проверки столкновений персонажа с рельефом. Кое какую информацию я нашел на сайте Статьи / GameDev.ru — Разработка игр в разделе Collision Detection.
 
+
-
edit
 

Goodwin

новичок
прокси между клентом и d3d? думаете товарищь, за40т вам :) честно и в голову не приходило подобное...
не претендую на "хорошо знающего dx" (ибо выварачивает от этого апи наизнанку).

вопрос: размер карты высот в lineage?
т.е. если описывать ландшафт картой высот (проще для обработки, но объем файлов может быть впечатляющий :)), то какого она должна быть размера?
нужны по сути только ограничивающие полилинии. построить их можно на основе разницы высот
между соседними точками на карте. ммм...правда со строениями будет немного подругому:
здание по сути призма, её основа и будет ограничивающей полилинией. конструкция у мостов
сложнее, там уже есть возможность попасть под объект...и т.д.

столкновение игрока с рельефом...можно глянуть исходники движка q3 что бы сделать грамоно :)
можно "испускать" луч из игрока по направлению его (игрока) движения и проверять на пересечение
с ограничивающими полилиниями в данной локации (сравнение со всеми имеющимися == прощай cpu)

главное получить карту высот ландшафта и каркасные модели строений, что с ними делать дальше,
разберемся. :)

можно оффтопичный вопросик? с4 клиент работает по протоколу 560? с текущей версией сервера
будет работать? (хочется таки попробовать). заодно бы уж и геодату сразу делать для с4.
 

Styx

разработчик l2j-сервера
Valar77:
или рекордер/плеер Direct3D:
http://www.users.on.net/~triforce/d3dbench.zip - исполняемые файлы
http://www.users.on.net/~triforce/d3dbenchsrc.zip - исходники
 

Эх, клиент вылетает при отображении чара (сразу после загрузки). Жаль...
...and what better way to say goodbye than to kill everyone in sight? © Syntari  
+
-
edit
 

Valar77

новичок
Я почти сделал карту высот местности.
Скриншот можно увидить тут:

Полная карта занимает около 30Мб

Вот только с деталями ландшафта (деревья, камни, дома, стулья, столы, книжные полки и т.д.) могут быть проблемы. Для сервака большинство деталей не нужны. Придется вручную удалять лишнее или преобразовывать в Bounding Box. На это нужно будет куча времени :(
 

Forb

новичок
Valar77:
Я почти сделал карту высот местности.

Вот только с деталями ландшафта (деревья, камни, дома, стулья, столы, книжные полки и т.д.) могут быть проблемы. Для сервака большинство деталей не нужны. Придется вручную удалять лишнее или преобразовывать в Bounding Box. На это нужно будет куча времени :(
 

Может команду организовать ? Будем описывать геодату, только чтоб потом не получилось что это всё зря, вообшем есть все скажем 90 % что это можно будет прикрутить к серверу ? :)
 
+
-
edit
 

Valar77

новичок
Styx:
Valar77:
или рекордер/плеер Direct3D:
http://www.users.on.net/~triforce/d3dbench.zip - исполняемые файлы
http://www.users.on.net/~triforce/d3dbenchsrc.zip - исходники
 

Эх, клиент вылетает при отображении чара (сразу после загрузки). Жаль...
 


Да, есть такое :(
 
+
-
edit
 

Balancer

администратор
★★★★★
Что по сабжу? Если снимаются данные по стенам и т.п. - то готов плотно взяться. В т.ч. и за алгоритмы устранения избуточных данных.
 
RU sys[antaris] #14.11.2005 17:14
+
-
edit
 

sys[antaris]

новичок
Balancer, помоему нужно сначала подключить уже существующуюю геодату а потом уже в любом случае браться за области С3-С4, да и некоторые С2
 
+
-
edit
 

Balancer

администратор
★★★★★
Уже существующая - это какая? И есть ли в ней информация о стенах и мостах? :)

А то я знаю только несколько вариантов геодаты рельефа. Но толку с такой мало.
 
AD Реклама Google — средство выживания форумов :)

Murkt

Pythoneer

Он имеет в виду оффовскую геодату, наверное :D Задолбали уже :mad:
[team Їжачки - сумні падлюки]  
1 2 3 4 5

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru