Войти
ПроектыФорумОцените

Постройка зданий в игре вручную (3 стр)

Страницы: 1 2 3 4 549 Следующая »
#30
19:29, 3 июня 2013

Chupakaber
> Очень не хватает возможности отковыривания досок(столбов)

Я думаю, прежде чем продолжать, я сначала добавлю удаление объектов и загрузку/сохранение. У меня лично пока не хватает терпения строить такие конструкции, как у тебя.

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

Есть хитрость: строительство работает, только пока нажата Alt. Если прикрепить один конец доски и отпустить Alt, то можно перейти в более удобное место, снова нажать Alt и закрепить второй конец.

> Я бы в таком случае сделал разделный цикл прикрепления доски, как в реале -
> приложили доску, прибили один гвоздь, второй конец доски свободен, подошли ко
> второму концу доски, приложили куда нужно и уже прибили вторым гвоздем

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


#31
23:10, 3 июня 2013

В версии №6 добавил уничтожение объектов (по ПКМ в режиме строительства), автоматическое сохранение на выходе из программы и автоматическую загрузку на старте.

PS
Сделал сарай/избушку. Положил сейв внутрь архива building 6.zip

Piccy.info - Free Image Hosting

Как разберусь со стыковкой объектов, надо будет подумать на темы:
1. Какие ещё нужны основные строительные блоки кроме брёвен и досок.
2. Нужна возможность отпиливать лишние куски материала.

#32
11:17, 4 июня 2013

интересная идея
я бы сделал детали более крупными и стандартными
и чтобы они "приклеивались" друг к другу под фиксированными углами (например с шагом в 15 градусов)
получился бы типа конструктор


насчет железа, самыми примитивными горнами были просто ямы в земле

#33
14:43, 4 июня 2013

ninja
> я бы сделал детали более крупными и стандартными
Насколько крупными?

#34
14:59, 4 июня 2013

ninja
Если сделать шаг в углах и шаг в координатах крепления то потеряется вся живость и суть конструктора, превратится в клон майнкрафта
Мне кажется фишка скрепления компонентов "как попало" будет приятна определённой аудитории, которая наверняка уже давно скучает потирая руки, ожидая подобные возможности в играх
Художественность конструкции ручной работы подчёркивают авторские неровности, что делает каждое такое строение произведением искусства в глазах самого автора

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

#35
2:35, 5 июня 2013

Случайно наткнулся на игру Kerbal Space Program. Это космическая песочница, в которой можно строить ракеты, спутники, орбитальные станции и прочее. Можно построить космический корабль и слетать на нём на Луну. Корабли строятся из готовых блоков/модулей, стыкуешь их между собой как-нибудь и, если повезёт, получившаяся конструкция взлетит и долетит куда надо. Забавно.

#36
1:45, 2 авг. 2013

Эксперимент не забыт, но я на распутье. Проблема в способе аккуратной стыковки/подгонки объектов друг к другу. Не уверен, в какую сторону стоит двигаться. Рассматриваемые варианты:

1. Не использовать физику.

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

2. Использовать физику.

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

Решится проблема пересечений между объектами, но возникнет другая ― В каком точно месте должен первоначально материализоваться новый объект? Что если выбранная начальная позиция окажется невозможной, объект в ней пересекается с другими? Можно это проконтролировать и начальную позицию куда-нибудь сдвинуть, но куда конкретно?

#37
2:36, 13 авг. 2013

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

Piccy.info - Free Image Hosting
#38
1:51, 17 авг. 2013

Допилил дему до рабочего состояния. Выложил версию №7:  ссылка на папку
Новый видеоролик: https://vimeo.com/72515200

Сейчас доступны три материала: плоская доска, квадратный брус и цилиндрический ствол.

+ Показать

Принцип строительства не изменился: удерживая Alt, при помощи ЛКМ указать желаемое положение объекта, потом той же ЛКМ сместить объект (если надо), и финальный щелчок ЛКМ на объекте подтверждает конечное положение. ПКМ удаляет уже существующие объекты, а в режиме строительства отменяет последнее действие. Кардинальное изменение по сравнению с предыдущими версиями ― для выравнивания и подгонки объектов друг к другу используется физический движок. Имхо, стало намного приятнее. Ещё вся геометрия процедурная, но это свойство пока особо не используется.

Клавиша E открывает экран выбора материала:

+ Показать

Там же можно отметить на объекте пару точек, которые зададут ориентацию объекта в пространстве во время строительства (см. видео). ЛКМ создаёт точку, ПКМ удаляет. Если точек меньше двух, то строительство работать не будет, если больше, то лишние не используются.

Загрузка и сохранение работают автоматически. Файл с сохранением (building.save) можно удалять.

Приветствую всяческую критику: что неудобно, что мешает, чего не хватает, что неочевидно и т.д.

#39
18:51, 17 авг. 2013

alexzzzz
Хорошо, было бы вообще круто если бы ты смог передрать GUI из макса или из блендера, лучше из блендера.

#40
19:40, 17 авг. 2013

А в чём смысл? Этим ведь будет невозможно пользоваться.

#41
19:46, 17 авг. 2013

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

#42
19:50, 17 авг. 2013

alexzzzz
Без самых важных, основных элементов интерфейса 3D студии будет гораздо хуже конструировать.

#43
20:05, 17 авг. 2013

alexzzzz
А ты убийцу майнкрафта делаешь? Вкладывайся по максимуму в создание суперпесочницы, а игру в неё добавь уже в самую последнюю очередь .

#44
21:55, 17 авг. 2013

У меня приоритет ― простота использования. В САПР будет невозможно играть. Проектировать будет, может, удобнее, но играть ― нет.

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

1. Масштабирования точно не будет. Нельзя взять бревно и просто так его отмасштабировать. Но можно будет отпилить от бревна или доски лишний кусок или распилить доску вдоль на несколько тонких. Процедурная геометрия тут очень пригодится.

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

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

4. Точное задание углов и размеров в градусах и сантиметрах делать не хочу. Хочу вместо этого добавить вспомогательные инструменты, только не в виде элементов интерфейса, а в виде игровых объектов, чтобы игрок мог на них ориентироваться. Например:
а) кусок верёвки ― для измерения расстояний;
б) верёвка с грузом ― отвес;
в) верёвка с колышками на концах ― для обозначения прямой линии между двумя точками.

Кроме верёвки ничего в голову пока не приходит.

etcetera
> А ты убийцу майнкрафта делаешь? Вкладывайся по максимуму в создание
> суперпесочницы, а игру в неё добавь уже в самую последнюю очередь .

Убийцу Майнкрафта я уже делал. Опыт показал, что воксели заразны. Стоит одному вокселю появиться в движке, всю остальную игру придётся писать вокруг него.

Если в смысле геймплея, то Майнкрафт не надо убивать. Я думаю, он так и не родился. Потенциал огромный, а реализация зачаточная. Через две недели изучения игры становится нечем заняться и остаётся только строить, но замок на скале с метрополитеном и кактусовой фермой ничем функционально не отличается от землянки 3х3х3 метра. По песочному геймплею уже сейчас рулит Kerbal Space Program и при этом продолжает развиваться в глубину.

Страницы: 1 2 3 4 549 Следующая »
ПроектыФорумОцените