Перейти к содержанию

Asteroth

Пользователь
  • Постов

    50
  • Зарегистрирован

  • Посещение

Информация

  • Пол
    Мужчина

Достижения Asteroth

31

Репутация

  1. Сделать это можно например так. Все повторяющиеся соединения объектов заполняются в массив состоящий из записей. При выборе новой комбинации объектов будет проверка была ли такая комбинация в массиве и если была , то ищется следующая.  Далее по поводу времени. Числа рандомом генерируются по несколько миллионов в секунду. То есть можно создать вначале просто кучу размещенных объектов соединенных между собой в виде записей в любом виде т.е. массивы , списки или базы данных , а затем уже визуализировать это и исправить то что вышло особо неудачно. Не знаю как насчет времени которое займет визуализация , но создать такой алгоритм вполне реально.  У любого игрового мира есть система координат. Вот и все. Все объекты имеют в ней заданные координаты и банальным перебором всех возможных чисел все равно можно достичь необходимого результата. Опять же алгоритмы могут быть абсолютно разными. Можно для примера задать алгоритму скрывать крайние части моделей дабы не торчали углы или же устанавливая углы в каждой части пещеры вручную в соответствии с координатами этой точки. А то что недоделала программа уже исправит дизайнер.
  2. Это все неверно заданные условия. К примеру чтобы поставить объект на пол свойство высоты объекта присваивается 0+высота объекта в системе координат отвечающей за высоту - т.е. в системе координат x,y,z  y получает значения от нуля до высоты объекта. Такой подход не дает возможность чему либо находиться не на земле. А поскольку максимальная высота ограничена , и объект не может быть размещен выше нее , а минимальная высота равна 0 то получается что объект всегда находится на полу. Это такой простенький алгоритм процедурного размещения объекта в закрытом одноуровневом помещении. Правда при этом объект может стать где угодно , в том числе и в центре комнаты и об него будут спотыкаться мобы. (Описано для редакторов в которых в свойствах отвечающих для установки объекта в системе координат описываются максимально допустимые значения т.е. практически везде). Но по сути можно придумать кучу алгоритмов размещения объектов. А потом просмотреть то что было и доделать его вручную.  По поводу задач: а не проще ли один раз создать алгоритм который сможет создавать практически неограниченное количество миров , чем каждый раз делать все заново. Алгоритм действия таков : программа сгенерировала ландшафт , дизайнеры исправили то что им не понравилось. И так уже не один год делают. Ибо создавать мир вручную слишком долго и неудобно. И опять же любое визуальное взаимодействие можно реализовать с помощью кода.
  3. Способы есть. Кодом можно реализовать абсолютно все. Но можно сгенерировать карту высот алгоритмом ,а то что нужно подправить вручную.   Я не говорю о генерации с помощью редакторов. Я говорю о генерации с помощью процедур написанных на объектно ориентированном языке программирования.К примере связать движок игры с с# и уже в шарпе писать процедуры по размещению объектов.
  4. О генераторе в котором есть процедура которая позволяет разместить нужный пользователю объект в рандомном месте если в заданных координатах нет другого объекта. Да , можно ее рисовать ручками , но зачем если есть алгоритмы генерации карты высот? К примеру есть такая вещь как алгоритм Перлина или алгоритм Diamond Square или же генерация ландшафта с помощью фракталов. И это только самые известные алгоритмы. На самом деле таких алгоритмов не один десяток. 
  5. Оттуда что никто в наше время не генерирует ландшафты вручную. Есть программы для создания ландшафта по заданной генерируемой по одному из алгоритмов карте высот. В зависимости от насыщенности цвета генерируется высота и так далее.После чего задаются процедуры генерирующие ландшафт с их свойствами т.е. - разрешение , размер , количество высот.После этого накладываются текстуры.  Создавать ландшафт вручную - слишком долго и дорого. Ибо платить нанятым сотрудникам сначала за создание ландшафта в среде 3d моделирования , затем создавать текстуры и натягивать их (например в программе Blender).На все может уйти несколько месяцев. И куча отданных денег в то время как специализированные утилиты смогут сделать ландшафт по заданной  карте высот за несколько часов.
  6. Может предоставите исходники кода игры раз вы так хорошо знаете как там и что?  Дабы я смог в этом убедиться.
  7. В No Man Sky не процедурная генерация мира.А насчет того что космос везде одинаковый , видимо вы не играли в серию игр X. В ней как раз космос хоть большой , но и не пустой и живущий своим миром. А по поводу Ведьмака. Ландшафт там создан процедурно. Далее налепили в редакторах домишек и NPC прикрутили им сценарии поведения(скрипты) и скорее всего сундуки располагали тоже процедурным методом т.е. рандом с заданными условиями. 
  8. Насчет мира один к одному - насколько мне не изменяет память сейчас создается игра No man sky в которой таки будет мир один к одному. В Elite : Dangerous тоже что то подобное. Жанр конечно другой ,но сути это не меняет.  Да плыть пришлось бы один день , но при этом можно было бы разместить больше народу и селений. И отличались бы они как в The Elder Scrools II Daggerfall парочкой текстур.   Вполне себе можно. Для описания шаблона поведения NPC вполне можно использовать несколько одинаковых классов (опять объектно ориентированное программирование) и тогда каждый NPC загружал бы оперативную память своим присутствием в поле видимости , и видеопамять тем что видеоадаптеру пришлось бы компилировать его внешний вид и сохранять его в разделе динамических переменных. Но каждый из этих NPC пользовался бы одним из методов единого класса присущего им. И процессор бы это не особо загружало.   Скорее не кегли для боулинга , а флюгера на ветру. "Куда рандом понесет там и постою". Толпа кстати не особо виснет. На серверных процессорах линейки Intel Xeon рассчитанных на обработку множеств потоков данных одновременно. А то что Ubisoft решили забить на все и не оптимизировать свою игру это уже их косяк. Но при этом в Париже из Unity хоть как то чувствовалось что идешь по большому городу. А не по деревне из 8 домов с 12 людьми.
  9. Как Скайрим работает с памятью я видел , как Ведьмак - нет. Ведьмак употребляет больше ресурсов из за менее оптимизированного движка(куча статических переменных , динамические массивы записей , возможно даже есть небольшие реляционные базы данных)    Для этого давно уже существует система обработки локаций при которой если персонаж игрока уходит из одной локации и заходит в другую , то данные о пройденной будут стерты из оперативной памяти , а данные новой заполнены. Ярким примером такого является Grand theft auto 4 в которой оперативную память загружали только той частью карты в которой находится игрок. Да это труднореализуемо , но не невозможно. И были бы толпы народа в несколько сотен человек на квадратный километр при сравнительно небольших требованиях к железу.
  10. А жаль.Мне было бы интересно побегать в тридцатитысячном Новиграде.Хотя бы и загруженной оперативной памятью.   Это уже проблемы с движком GameBryo. Этот движок вместо создания НПС по шаблону и заполнение их в один массив записей, создает под каждого НПС свой массив записей со всеми свойствами и методами присущими данному НПС.(покэпстую : если не ясно что такое метод стоит погуглить "методы в ООП") Поэтому количество бойцов в армиях не больше пятидесяти. И поэтому же в городах нет толп неписей. Чтобы не загаживать пользователю оперативную память. Попробуйте заспавнить больше ста враждебных нпс в пределах видимости и поймете о чем я.
  11. Как бы это сказать. Между этими играми 13 лет разницы. То что было хорошо в 2002 в 2015 стало обыденностью. Для своего времени Морровинд был шедевром , и многим ныневыходящим играм есть чему у нее поучиться. Например размещению ценного лута в местах в которых его не так просто забрать. По поводу мира Ведьмака. Будь он в закрытом мире было бы не столько претензий к косякам. А так даже в Dragon Age 3 мир лучше. Но опять же разные жанры. Скайрим скучный?! Может быть , но там есть чем заняться кроме прохождения сюжетной линии. Квесты кстати в Ведьмаке вполне себе скопипащены с других игр. Игр с разными жанрами от action до quest.И интересными мне они не показались. Сюжет не оригинален и скучен. Подача его слабовата. Мало непредсказуемых сюжетных поворотов. Готика и Морровинд как раз были вполне себе с неинтересным сюжетом (обе о спасении мира) ,но обладали кучей других преимуществ в отличии от Ведьмака. И в них было интересно играть как в начале так и в конце.  А ничего что это была цитата вышенаписавшего товарища. И вторая буква написана большой неспроста.   Смысл выжигать землю за собой? Вы шутите? Землю выжигают если не уверены в победе. Чтобы если эту землю отбили , то добавить отбивающим проблем.   Не помню такого. Мой косяк.
  12. Оксенфурт слишком маленький город(в игре , не в книге) чтобы там могла разместиться армия эквивалентная армии Нильфгаарда. И кстати лугов там достаточно. Лагерь Нильфгаардцев от Фронта находится максимум в 5 километрах. Группа легкой кавалерии преодолеет это расстояние за несколько минут. И исходя из этого Нильфгаардцы могли бы захватить и Новиград и Оксенфурт за несколько часов.   Они расположены или далеко в холмах и о с хорошо просматриваемой местностью (лагеря братьев бури) ,  или на крупных трактах (легион).   ГраММатический нацист вообще то. Вернее даже "Grammar nazi". А я надеюсь на то что в аду будет экзамен на знание филологии. И за каждый неправильный ответ к сроку пребывания будет добавляться лишний миллион лет.
  13. А с каких это пор для величайшей империи на континенте является проблемой послать строителей и настроить новых домов.   YRLY. Вспоминается мне форт Нильфгаардцев в 100 метрах от Реданской деревни.
  14. А то что Оксенфурт и куча деревень в игровом мире находятся под контролем Редании под охраной двух с половиной пехотинцев вас не волнует? Лагеря армий обычно размещаются поближе к фронту. И их там нет в достаточном для противодействия Нильфгаардской армии количестве.А пара кораблей и пара десятков прогуливающихся по Оксенфурту пехотинцев бригаде щитников на один зуб. ТИмерская , не "НЕ" , а "ни" ,  "Ни к чему " , перед а ставится запятая. Извините , но не люблю ошибки в словах. Текст делается нечитабельным.   Может быть. Но в Bethesda по крайней мере старались сделать более-менее логично размещенный мир без лагеря легиона в двадцати шагах от деревни братьев бури , что в Ведьмаке встречается сплошь и рядом.   Может быть , но я этих фильмов не видел. Или не запомнил. Буду рад если вы предоставите ссылки. А еще лучше если научитесь ссылаться на какую нибудь информацию в интернете сразу с предоставлением ссылки на полный текст. Иначе это уже попахивает попыткой сказать "это так , потому что я так сказал" , а этого в интернете не ценят.
  15. Земли можно заселить Нильфгаардскими крестьянами. В книге Эмгыр так уже делал.   Скай не расчитан на взрослую аудиторию это раз. Хоть и в обеих этих играх возрастной рейтинг M скайрим больше подходит под PG13. И Скайрим не написан по очень жестокой книге. И сеттинг скайрима - фэнтези в отличии от дарк фэнтези Ведьмака. Так что в Скайриме и не должно быть того что я описал. Далее : в Скайриме в отличии от континента на котором происходят действия Ведьмака есть лагери обеих противоборстующих сторон. В Ведьмаке же всего один крупный лагерь - лагерь Нильфгаардской армии центр. Лагерей Реданских войск нет. Согласитесь - это  крупная недоработка.    Держите. Главный герой - обычный человек который узнает что ему осталось жить шестьдесят минут. И за это время он может делать абсолютно все что ему угодно. А в конце оказывается что его обманули и ему придется расхлебывать последствия своих действий. 
×
×
  • Создать...