Мегаобучалка Главная | О нас | Обратная связь


Разработка симулятора космической станции



2015-12-07 305 Обсуждений (0)
Разработка симулятора космической станции 0.00 из 5.00 0 оценок




Техническое задание.

 

Я напишу это задание в виде требований и тезисов.

 

1. Группа основной игры «Покорители космоса» https://vk.com/strateg3000

2. Клиент основной игра сейчас выполнен на Flash/AS3.0.

3. Существующий сервер на базе PHP, node.js, mysql.

4. Симулятор будет являться дополнением к игре «Покорители космоса» в социальной сети ВКонтакте.

5. Платформа Юнити 3Д.

6. Язык кодирования C#.

7. Использование сторонних библиотек должно быть четко обозначено, предопределено и по возможности – минимизировано.

8. Использование платных библиотек необходимо исключить.

9. Размер окна приложения в оконном режиме 1000х730 пкс.

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

11. В космосе должна висеть планета. Обычный шар, на который натянута текстура. Возможно, есть варианты сделать планету как-то более интересно, но пока особых требований у меня нет, приму то, как сделает разработчик.

12. Хорошо если в космосе будет что-то летать для создания общей динамики, типа космическая пыль, небольшие астероиды и прочая мелочь.

13. Далекая, но довольно крупная звезда излучает свет. Так же есть целый ряд еще маленьких звезд с разных сторон, которые дополняют картину света.

14. Весь этот космос мы будем называть сектором, или текущим сектором вселенной.

15. Итак, в секторе появляется модуль космической станции. Он имеет достаточно четкую ориентацию в пространстве, координаты привязки по осям X, Y, Z. Эти координаты - не случайные числа, а выбираются из ряда 0, 50, 100… и т.д. То есть модуль всегда находится на невидимой сетке.

16. Для начала работы можно взять просто куб с разноцветными не очень яркими сторонами.

17. Реальный модуль – это 3D модель с наложенными текстурами. Эти модели уже существуют и готовы к использованию. Возможно, их надо будет как-то подправить или сказать, что в них подправить для более удобного/правильного использования. Несколько 3D-моделей существующих модулей будут выданы для примера.

18. Вращение модуля лучше сделать по трем плоскостям, сейчас игра выдает всегда Z=0 и вращение только в одной плоскости – вокруг оси Z. Но на будущее лучше поддержать все три оси и все три плоскости вращения. При этом вращение тоже не на любой угол, всегда кратно 90 градусам.

19. На данный момент в игре все расчеты расстояний ведутся в пикселях, размер одной ячейки сетки, по которой ставятся модули, равен 50 пкс. В целом можно считать, что пиксель это некоторая условная величина, так как в Юнити3Д конечно другое измерение размеров и расстояний.

20. Список модулей загружается из базы данных с сервера, через http запрос, в ответ на который приходит массив с объектами в виде JSON строки.

21. Каждый объект имеет свойства:

22. map_x, map_y, map_z – координаты модуля X, Y, Z относительно центра текущего сектора космоса;

23. module_type – вид модуля, всего сейчас существует порядка 50 видов модулей;

24. level – уровень прокачки модуля, пока это просто параметр, который хотелось бы где-то сохранить и например его можно было бы показывать по клику в модуль или при наведении мыши вместе с названием;

25. module_id – уникальный идентификатор модуля, его просто надо сохранить для дальнейшего использования, аналогично level;

26. rotation – это угол вращения вокруг оси Z;

27. также добавятся rotationX и rotationY.

28. Камера из которой мы смотрим на станцию должна вращаться по всем трем осям, удаляться, приближаться и смещаться вправо влево вверх вниз, в общем то некоторое классическое управление камерой, позволяющее рассмотреть станцию со всех сторон под разными углами.

29. Так как симулятор будет использован в ВК, то будет необходимо при старте приложения получать свой UID и именно его указывать в запросе состава космической станции с сервера, чтобы игрок видел именно свою станцию.

30. Реализация кнопки «Друзья». Необходимо загрузить список друзей, и по отдельной кнопке отображать его, в любом виде, ФИО или фото, с возможность кликнуть и отправить на сервер новый запрос с новым UID и последующим отображением соответствующей станции.

31. Реализация кнопки «Вернуться на свою станцию».

32. Реализация кнопки «Камера по центу сектора». Координаты 0,0,0, все углы вращения камеры сбросить в 0.

33. Реализация кнопки «Камера по центру станции». Координаты центра станции вычисляются как среднее арифметическое, при этом все углы поворота камеры сбрасываем в 0.

34. Дополнительно к основной модели каждого модуля он имеет отдельные, но привязанные к нему подмодели «переходов».

35. «Переход» - это модель цилиндрического вида. Все переходы лежат в одной плоскости образованной осями XY. Они не вращаются относительно самого модуля, для них есть координаты относительно центра модуля.

36. Дополнительно к основным параметрам каждого модуля имеются следующие дополнительные параметры, связанные с его типом module_type:

37. массив переходов, с указанием типа перехода (верхний, нижний, левый, правый), cx, cy – координаты X и Y перехода относительно центра модуля;

38. название модуля;

39. описание модуля;

40. минимальный уровень игрока, с которого модуль доступен для постройки;

41. стоимость модуля – количество Углерода, Кремния, Металла, Квидов, Арго необходимых для покупки;

42. количество вырабатываемых ресурсов – все те же ресурсы, но вырабатываемые модулем в час;

43. на самом деле в игре есть и другие параметры, но мы их пока опустим, для упрощения.

44. По клику в модуль мышкой (или может еще как-то) необходимо отобразить окно с основной информацией: название модуля, уровень модуля, описание модуля и ресурсы.

45. Нужна будет небольшая инструкция по добавлению новых видов модулей и планет, дополняющая комментарии в коде, чтобы я смог потом наращивать объекты симулятора самостоятельно. И вообще инструкция по дальнейшему сопровождению симулятора, небольшое толковое описание основных моментов.

46. На выходе нужно полноценное приложение «Симулятор космической станции», загружаемое в виде IFrame приложения на площадку ВК через юнити веб-плеер.

 

10.10.2014 Игорь Пец https://vk.com/igorpets



2015-12-07 305 Обсуждений (0)
Разработка симулятора космической станции 0.00 из 5.00 0 оценок









Обсуждение в статье: Разработка симулятора космической станции

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (305)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)