среда, 20 июля 2011 г.

3D. Часть вторая. Это легко.

Я сам не так давно начал пробовать создавать элементарные модели. Так как я предпочитаю бесплатное ПО, то при выборе моделлера, мой взгляд сразу пал на Blender. Да, признаюсь, пугали отзывы везде, что Blender сложен в освоении, и новичку лучше брать 3ds Max, но принцип есть принцип. Зайдя на http://www.blender.org очень удивился размеру установщика - 20Мб, это вам не 10Гб Макса.
Включив его первый раз, я растерялся. Практически все инструменты находятся через 2-3 перехода по вкладкам. Но как оказалось ими почти не придется пользоваться. Естественно на http://www.youtube.com/ очень много уроков, и как это не странно, но нашел хорошие уроки на русском: Урок 1. Часть 1, Урок 1. Часть 2, Урок 2. Часть 1, Урок 2. Часть 2, Урок 2. Часть 3, Текстурирование. Все уроки с сайта http://itcomp.org.ua. Собственно этого мне пока хватает. Горячие клавиши запоминаются довольно легко, а с их помощью намного удобней и быстрее делать модель. Конечно первая модель вызвала восторг, хоть и была убога ;) Кстати не так трудно сделать саму простую модельку, как затекстурировать её: тут могут вылезти косяки с нормалями, можно ошибиться с выбором UV развевертки и так далее. Главное не сдаваться, и пробовать, пробовать, пробовать. Нужные для FOnline комьюнити модели можно посмотреть в первой части статьи, так можно не только практиковаться в несложных моделях, но и помочь с внедрением 3D в проекты на движке FOnline. На fonline.ru есть тема посвященная разработке моделей, куда можно выложить готовый материал: http://www.fonline.ru/forum/showthread.php?t=21164, если что, то люди укажут на ошибки и помогут подкорректировать модель.

В следующей статье о 3D я расскажу как добавить свой scenery объект в игру.

Маппинг.


Всем доброго времени суток. Я Тихон, маппер и немного писатель диалогов на проекте Racial Wars. Это меньшее, что я могу на данный момент, но я серьезно намерен заняться скриптописанием и 3D-моделированием, благо неплохо знаком с программированием и есть добрые люди, всегда готовые помочь приобщиться. Хочу поведать о своих наработках и поделиться своим небольшим, но все-таки, опытом.



Маппинг.На самом деле процесс создания карт в фомаппере очень прост, но имеются определенные ньюансы, которыми с ходу не овладеть. Огромное спасибо форумчанам с никами LoadRunner и Dagnir за то что они делятся мудростью с нуждающимися.

Обьекты. Все объекты разделены по типам (стены, тайлы, объекты окружения и т.д.), они сами уже распределены по группам, и тут уже возникает проблема, ведь если группы тайлов разделены пустыми тайлами с названиями типа "newgroup/endgroup", то группы стен могут прерываться и перемешиваться, что очень неудобно. Однако со временем уже запоминаешь, где и что искать.
Гексы. Гексам посвящена отдельная закладка в меню, и им посвящается немалая доля времени создания карты. Многие начинающие мапперы просто не обращают на них внимания, как и я поначалу. При создании карты крайне важно заделать дыры в стенах и сделать объекты непроходимыми, что можно узнать на форуме. Куда более болезненна проблема расстановка гексов перехода и гексов блокиратора прокрутки (блокираторы, не позволяющие игроку увести камеру за край карты). Про гексы перехода очень понятно рассказал Krizalis на своем информационным портале http://www.fonline.su. С гексами же блокиратора прокрутки дело у новичков могут возникнуть серьезные проблемы.
Обратите внимание на форму карты "поле".Это, можно сказать, ромб. И блокираторы расставлены как раз по краям этого ромба. Это серьезная ошибка. В игре камера будет застревать и дико глючить. Krizalis предупреждал меня по этому поводу, но пока сам не наткнулся с этим, и не почесался.
Пришлось переделывать все карты, что уже сделано. Размер карты был увеличен, а блокираторы расставлены в форме прямоугольника.

Криттеры. Список криттеров обширен, и очень проблематично найти необходимый. Куда проще создать необходимый криттер самому. Для этого в папке, где содержатся списки криттеров (Server/proto/critters/) создаем текстовый файл (.txt) с любым названием на латинице и заполняем его.
Заполняется таким образом:
1) Найдите криттер, похожий на тот, что вы хотите создать и запомните его номер.
2) Откройте текстовым редактором файл с нужным криттером и найдите его по номеру. Затем скопируйте все его характеристики.
3) Откройте созданный вами файл и вставьте туда эти характеристики. Не забудьте поменять номер! Затем изменяйте характеристики по своему желанию.

Позднее я расскажу о созданных мной картах и диалогописании.

3D. Часть первая. Trollwars


Все, кто интересуется движком FOnline или проектами на нем, знают, что 3D - это крайне болезненная тема. На форумах разворачиваются целые битвы по поводу внедрения в FOnline 3D элементов. Нельзя говорить, что 3D это две стороны одной монеты, так как спрайты подобны трупам, которые люди до сих пор продолжают насиловать. Безусловно, сейчас переход находится в зачаточном состоянии, но ничего не делается сразу. Для тех, кто еще не знает/не видел вот несколько ссылок на таблицы предметов: 3D оружие, 3D броня, остальные 3D объекты.
Расскажу про плюсы и минусы 3D, с моей точки зрения.
Минусы:
  • Возможная непонятность работы с объектами
  • Ограничение на количество полигонов
  • Выделение 3D на фоне спрайтов
  • Не каноничность сделанных моделей
Разберу все по пунктам:
1) Огромное количество опций при вживлении модели, отсутствие user-friendly редактора, довольно трудоемкое внедрение оружия и брони.
2) Всегда хочется чтобы модель выглядела отлично, но ограничение на количество полигонов для быстроты работы клиента, в которое все упирается, режет все на корню, хотя с другой стороны расстояние до моделей будет таким, что это буд
ет не сильно заметно.
3) 3D объекты, как бы люди не старались, все равно будут выделяться на фоне спрайтов, но с другой стороны это стимул во-первых для перехода в полное 3D, а во-вторых для улучшения качества сделанной модели и вылизывания текстур.
4) Ну без этого никуда. Лучше чем сделали это Black Isle не сделает никто, так как это канон и уже легенда.

Теперь перейдем к плюсам:
  • Простота модификации объектов
  • Простота создания новых объектов
  • Простота создания новых анимаций
  • Более-менее приятный вид при приблежении
Собственно плюсов столько же, но они на порядок важнее.
1) Модифицировать готовый объект можно и в моделлере и даже просто изменив текстуру - в обоих случаях можно получить совершенно новое.
2) Чтобы создать новый спрайт, а уж тем более криттер, нужно заниматься пиксель-артом и иметь огромное количество свободного времени. А в 3D, даже при не умении работать в моделлере, см. пункт 1.
3) К примеру, криттер ванаминго состоит из 11000+ картинок. И как вам оно? Уж увольте, я лучше потрачу время на изучение создания анимаций в моделлере, нежели каждый раз буду мудохаться со десятками тысяч спрайтов.
4) Хоть в модели более заметны углы, но зато нет размытых квадратов в пол экрана.

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

вторник, 19 июля 2011 г.

NPC. Что? Зачем? Как?

Для людей не понимающих о чем пойдет речь, поясняю цитатой из Википедии:

Неигровой персонаж (англ. Non-Player Character — NPC) в компьютерных и настольных ролевых играх — персонаж, управляемый программой или мастером, в последнем случае иногда может называться мастерским персонажем.

В компьютерных и настольных ролевых играх термином «NPC» обозначают общающихся с игроком персонажей, независимо от их отношения к игроку. NPC могут быть дружественными, нейтральными и враждебными. Неигровые персонажи служат важным средством создания игровой атмосферы, мотивируют игроков совершать те или иные действия и являются основным источником информации об игровом мире и сюжете игры.

Конец цитаты. Далее я буду называть их просто НПЦ или непись.

В данном случае, когда мы хотим снабдить каждого НПЦ нормальным диалогом или даже квестом, то учитывая данное их количество(100+), только на одной карте, стоит задуматься о создании группировки и некой упорядоченной структуры всех НПЦ на каждую из ёмких карт. Начинать посоветую с разбиения всех неписей на условные группы, такие как, например: охрана, мафия, бомжи, мирные торговцы, зависимые торговцы, ученые, кузнецы и так далее; самое главное, чтобы вам потом было легче разобраться, ну и не забывайте про стандарт - английский язык, если необходимо или не уверены, то добавьте комментарии, лишним это точно не будет.
Далее, смотрим на карту, тут конечно надо спросить у автора карты, что и где он подразумевал, но это можно сделать уже в процессе, либо чуть позже подкорректировать. После этого сравнивая сложившееся представление о карте, наносим условный графический рисунок расположения групп НПЦ, примерно вот такой:
Здесь я буквально за 5 минут набросал несколько зон: зеленая - охрана, оранжевая - мафия, фиолетовая - ученые, синяя - трущобы(низший слой). Конечно самим желательно делать масштаб 1:1, тщательно выбирать зоны и закрашивать их. Так же удобно расписать цвета на самом рисунке и использовать разную прозрачность, для указания плотности НПЦ в данном месте. Еще советую пронумеровать квадраты зон. Ну, думаю принцип понятен.

И так у нас есть график. Теперь беремся за маппер(ну или маппера-человека, это уже по желанию) и расставляем НПЦ по карте в зависимости от зон. Поздравляю, самая легкая часть закончена!
Дальше нужно включать фантазию - составляем таблицу расставленных НПЦ. Я предлагаю вариант в 5 столбцов: 1-й имя нпц, 2-й принадлежность группе, 3-й номер квадрата, 4-й внешний вид(скрин или описание, например, лысый в кожаной броне), 5-й комментарий. Для удобства стоит группировать/разделять строки по столбцам 2 и 3.
Ну и остается теперь все это либо отдать сценаристу, который будет придумывать имена, истории, диалоги и заполнять/дополнять таблицу, либо же распределить это между вашими коллегами(за не имением сценаристов так обычно и получается), либо же, набравшись мужества и терпения, сесть делать это самому. В любом случае, уже можно трезво оценивать ситуацию, распределять нагрузки и контролировать процесс.

Почему Брокен Хиллс? Почему большие карты?

Всем интересны эти вопросы и каждый ими задавался.
Брокен Хиллс отличный город, в котором можно полностью показать практически всю концепцию сервера. И конечно нам дает огромное преимущество и свободу для действий то, что все начинается примерно через 30 лет после событий второй части Фоллаута или через 200 лет после того как "bomb falls", а точнее 2277 год. Отсюда следует, что большинство из людей в таких условиях за прошедшие годы умерли, и надо придумывать новых. Ну и конечно наполнение их нормальными диалогами, а не как обычно у всех нпц: подходишь тыкаешь в него, он тебя посылает. Тем самым людям можно поведать не только свою историю и представление пустоши, но и заинтересовать их в игре, развитии и ее последующем исследовании.

К сожалению сейчас над проектом ведем работу только я и Тихон, да и тот на заработках. И черт нас побери, мы самые что ни на есть технари. А сценаристы... Ну что с них взять... Был один - ушел за недостатком времени, второй появился не так давно, девушка, но дело не дошло даже до объяснения задачи, тоже не хватает времени. В общем с этим беда. Именно поэтому пришлось отодвинуть срок релиза до сентября, и то не успеем.

Большие карты. Большие это мягко сказано, так как еще ни на одном сервере я не видел на столько огромных карт. Ярчайшим примером служит карта "Поле", которую наш художник Dendroit отскринил в реальном размере:
Соответственно еще больший размах для действий, как наших, так и действий игроков. Так же такой размер карт предоставляет огромнейшие тактические возможности со стороны боёвки. Самое смешное, что места на карте всегда мало, и чем дальше заходишь, наполняешь ее триггерами, неписями, тем больше и больше требуется места для осуществления новых идей. Как говорится: "Чем дальше в лес, тем толще партизаны".

Надеюсь я ответил на эти два вопроса более-менее полно. В следующих статьях я пожалуй примусь уже за конкретные примеры и возможно обучение работы с СДК на примере FOnline: Racial Wars

Добро пожаловать!


И вот я решил создать блог, в котором буду описывать различные нюансы, аспекты, мотивы принятия тех или иных решений при разработке нашего проекта на движке FOnline. Писатель из меня довольно хреновый, но постараюсь излагать как можно более ёмко и понятно.


Прошу учесть, что все написанное здесь имеет отношение только ко мне и ни к кому более. Это всего лишь мои позиции и мысли.