Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Проекты > Проекты на Unity

Ответ
 
Опции темы
Старый 30.06.2010, 00:59   #1
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Проект "Альфа" - обсуждение реализации на Unity3D

Итак хотелось бы узнать мнение здешних юнити-программистов по поводу методов реализации составных частей игры, описанной в следующем дизайн-документе: http://shgames.ru/files/Project_Alpha_DD.pdf

Я преследую следующие цели данного обсуждения:
1. Выбор наиболее оптимальных методов реализации составных частей проекта.
2. Открытым обсуждением поднять интерес не юнити-программистов нашего коммюнити.
3. Привлечение желающих принять участие в реализации проекта.

Прошу не флудить в данной теме, а обсуждать поднятые вопросы по существу. Высказывайте свои идеи, примеры и т.д.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
Dream (30.06.2010), h1dd3n (30.06.2010), Harter (11.07.2010), Nex (30.06.2010)
Старый 30.06.2010, 04:01   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Подкину немного угля...
По поводу траектории уровня вопрос стоял таким образом, чтобы местность, над которой будет летать в уровнях игрок не часто повторялась. Поэтому была придумана система разбиения уровня на тайлы и полет над уровнем по замкнутой кривой. Все это задумывалось еще тогда, когда я о юнити и краем уха не слышал. Тогда я в первую очередь занялся созданием математических классов для кривой уровня. И где-то для XNA у меня они остались, но прошло время, прониклись юнити и я портировал свои кривые на нее, причем сделал возможность редактирования кривых визуально, слава богу юнити дат такую возможность. Сразу скажу что выбрал я кубические кривые безье для реализации данной задумки из за возможностей их настройки так, что можно построить достаточно сложные траектории с минимальным количеством контрольных точек.

Редактирование кривой:

Двойная петля из трех контрольных точек:

Трояная петля из трех контрольных точек:

Тест драйв кривой на 50 сегментов. Полет нормальный ))


Пакадж с примером прикладваю к посту.
Вложения
Тип файла: zip BezierCurves.zip (14.3 Кб, 490 просмотров)
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
den (15.08.2010), Dream (30.06.2010), Harter (11.07.2010), Nex (30.06.2010)
Старый 30.06.2010, 11:20   #3
Morganolla
Бывалый
 
Аватар для Morganolla
 
Регистрация: 03.12.2008
Адрес: наша раша
Сообщений: 762
Написано 129 полезных сообщений
(для 245 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

а что будет побуждать игрока лететь по этой траектории? сори за тупизм...
__________________
Reality Simulation Games
Core 2 Duo 2,8GHz, RAM 1Gb, ATI R5670 1Gb. WinXP 32
(Offline)
 
Ответить с цитированием
Старый 30.06.2010, 11:48   #4
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Сообщение от Morganolla Посмотреть сообщение
а что будет побуждать игрока лететь по этой траектории? сори за тупизм...
В диздоке приведены примеры двух подобных игр, в котрых экран движется прямо, а игрок может еще по нему двигаться. Здесь экран будет двигаться по такой траектории и скорость его движения будет выше чем у предложенных игр, что создаст ощущение скорости и захватывающих виражей на крутых поворотах траектории полета. Кроме того камера будет также наклоняться, что создаст дополнительный эффект скорости.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 30.06.2010, 12:15   #5
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Могу сразу сказать что от неймспейсов наверное придется отказаться (юнити с ними вроде не дружит). Всю геометрии - в FBX.
Больше ничего сказать не могу поскольку если честно не очень понял коцепт игры. Из дд я понял что игра из себя представляет следующее:
Мы летим на нло, камера сверху управление мышью/стрелками по-горизонтали. Летим всегда вперед (то есть без поворотов и т.д.). Справа, слева, спереди вылетают боты мы их убиваем набиваем очки и деньги. Иногда попадаются боссы. В меню можно купить новое оружие/бронь и т.д.. В игре прогресс сохраняется прогресс в профиль игрока.
Вообщем очень похожа на Air Strike. Млжет есть игра которая очень похожа на твою задумку?
Если так то зачем кривые? Просто длинный меш вперед.
Кстати насчет кривых - в антаресе вроде реализовали кривые, можно попробовать.
(Offline)
 
Ответить с цитированием
Старый 30.06.2010, 13:07   #6
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

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

Летим мы вперед, но по кривой траектории, чтобы создать впечатление реального полета. Упраление - мышь, джойстик. Просто длинный мешь не подходит, так как скорость в отличии от подобных игр будет минимум в два раза больше, что обеспечит драйв особенно под подходящую музыку. Поэтому надо сделать возможность лететь сколько хочешь, отсюда и кривая траектория. Кривые у Нео при редактировании сильно тормозят для большого количества контрольных точек. Мои так не тормозят, плюс позволяют точно определить положение на кривой, а не приближенно по созданной апроксимации.

Да и не обязательно НЛО, потому как из некоторых идей концепта возможен был захват разума людей и битва могла быть с замбированными пилотами, это еще надо бы продумать.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 30.06.2010, 14:59   #7
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Первый вопрос с которым я хотел бы определиться:
Стоит ли строить карту по квадрантам, либо взять один ландшафт большого размера?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 30.06.2010, 21:03   #8
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Ландшафт конечно!
Кстати: зашел на форум shgames и заметил что кто-то уже брался за медию. Осталось ли чтонибудь готовое?
+В дд сказано что управление только по горизонтали, но может стоит сделать возможность пролететь немного вперед/назад (как сделано в том же air strike)? Так будет легче уклоняться от выстрелов.
+Вопрос - где будет распологаться враг? на земле? в воздухе? и там и там?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pax (01.07.2010)
Старый 30.06.2010, 21:16   #9
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

1. Скорее всего осталась незатекстуренная моделька первого ЛА игрока. Несколько полуразрушенных зданий - декораций для одной из локаций.
2. Управление не перпендикулярно ближайшей точке к экрану на траектории движения возможно рассмотреть уже на готовом геймлее. Т.к. сейчас неособо представляется такое управление на такой скорости как задумано.
3. Враг летающий, опять же из-за скорости. Наземные объекты просто невозможно будет успеть расстрелять.

Да, траектория полета не в одной горизонтальной плоскости, а еще может подниматься выше и опускаться ближе к земле. Одна из возможных трудностей - рассчитать попадание по врагу, т.к. в таком режиме возможно легко промахнуться... возможно сделать некоторую инерцию для пуль, немного повторяющую траекторию полета.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
h1dd3n (30.06.2010)
Старый 01.07.2010, 11:32   #10
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

По поводу своих кривых вот подумал и решил что не хватает возможности задавать угол крена. Когда возьмусь за доделку, сделаю контрольные точки несколько иначе - управляемые трансформом, вектор forward будет отвечать за направление, пару величин за величину сглаживания кривой в точке, а вращение трансформа будет определять ориентацию и соответственно вектор up будет интерполироваться между контрольными точками для придания полету настраиваемого наклона. Особенно для проекта желателен наклон при поворотах.

Еще есть мысли так же добавить в контрольных точках некоторые дополнительные интерполируемые значения... например для управления скоростью полета: замедления скорости на поворотах и разгона на прямых участках.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 01.07.2010, 11:46   #11
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

То есть: камера летит прямо по кривой, а игрок может отойти чуть влево/вправо.
Кстати замедление на поворотах по-моему не нужно. Наоборот на поворотах добавить наклона скорости и блура немного.
Еще вопрос: как определяется время "появления" ботов? Позицией на кривой?
(Offline)
 
Ответить с цитированием
Старый 01.07.2010, 12:10   #12
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Да, камера летит по кривой, а игрок мышкой влево и в права может управлять ЛА. При увеличении скорости не поворотах у пилота будут страшные перегрузки, которые вызовут кровоизлияние в мозг и смерть )) Не стоит увлекаться Блур да, будет но небольшой.

По поводу времени появления ботов у меня было много размышлений. Позиция на кривой для этого не годится. Скорее всего будет написан свой редактор, который будет определять ВРЕМЯ появления ботов относительно начала уровня или относительно друг друга (т.е. по смещению). Например вылетает 5 врагов через 15 секунд после начала полета со смещением в 1 секунду. Либо еще вариант - вылет следующего после пяти секундной задержки после гибели предыдущего. Собственно замкнутая кривая позволит построить произвольные по времени уровни и начинать с произвольной на ней позиции.

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


PS: На самом деле данный проект задумывался как отдельная часть более крупного проекта - ремейка очень известной игры X-COM. Т.е. аркадный перехват НЛО. Но конечно мы не решились браться за такой крупный проект. А решили сначала сделать его часть как отдельную игру с небольшим сюжетом. В дальнейшем были планы по интеграции этой аркадной части в него.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dream (01.07.2010)
Старый 01.07.2010, 13:22   #13
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Ну тогда надо попробовать сделать террайн. Предлагаю проложить путь между 2-ух скал (так у игрока будет хоть какая-то причина не улетать слишком вправо/влево). Есть идеи как быстро сделать террайн?
(Offline)
 
Ответить с цитированием
Старый 01.07.2010, 15:30   #14
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

Между двух скал постоянно летать не интересно, отдаление от траектории будет максимум на 100-120 метров... это расстояние будет практически помещаться на игровом экране, а камера будет немного сдвигаться вправо и влево.
По поводу террейна - есть Terrain Toolkit и видео по созданию ландшафта... можно его попробовать. Ландшафт тока нужен примерно 20км х 20км минимум...
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 01.07.2010, 19:44   #15
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Проект "Альфа" - обсуждение реализации на Unity3D

20000 юнити-единиц? Сильно большой ландшафт... Может парочку поменьше? Можно будет по разному их раскрасить)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 22:16.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com