3DPrompt.
GitHub
Вернуться в библиотеку
GPT-6 AstraОписание для вдохновения

Crazy Tanks — 3D-артиллерия на острове

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

Автор jared
Crazy Tanks — 3D-артиллерия на острове

Об этом примере

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

Спецификация реконструкции на основе оригинального исходного кода Crazy Tanks от jared, коммита bf23b8878a1c24dbfb105a227a06b4faa29d42e9 и проверенной версии игрового процесса v92. Модели созданы с помощью Tripo P2, а музыка и звуковые эффекты — с помощью ElevenLabs. Опубликованная запись в социальных сетях не предоставлялась.

3D-танкиартиллерияразрушаемый рельефThree.jsTripo

Промпт

1. Цель проекта Создайте Crazy Tanks — Wild Tides: полноценную играбельную пошаговую артиллерийскую игру с действительно трёхмерным миром на тропическом острове. Игрок управляет небольшим танком, учитывает ветер, заряжает выстрел с нуля и меняет рельеф поля боя с помощью снарядов. Поддержите одиночную игру против ИИ и локальную игру в режиме передачи хода, по умолчанию — бой «каждый за себя» для трёх танков, а также опциональную дуэль двух танков. Побеждает последний уцелевший танк. Используйте текущий референсный игровой процесс и скриншоты как визуальный ориентир. 2. Визуальный стиль Используйте перспективную камеру и свободно вращаемую 3D-геометрию, а не плоские спрайты или фиксированный вид сбоку. Создайте солнечную миниатюрную диораму с округлыми танками нефритового, кораллово-оранжевого и сине-фиолетового цветов, кремовым песком, светло-зелёной травой, бирюзовой отражающей водой, мягкими тенями и лёгкой атмосферной дымкой вдали. Сохраните различимые силуэты трёх танков и соответствующие им стволы. Разместите над полем боя компактную круглую кремовую панель статуса/брони, а под ним — тёмно-бирюзовую округлую панель управления. Золотым цветом обозначайте референсную мощность и действие выстрела; мятным — фактический заряд и дружественный статус. Переключатель внешнего вида Tripo / Three.js должен быть заметен в верхней части интерфейса; по умолчанию используются ассеты Tripo. Переключение внешнего вида не должно менять состояние матча и физики. Используйте тонкие равномерно расположенные бирюзовые штрихи в экранных координатах и ненавязчивый круг предполагаемой точки приземления; не отражайте графику прицеливания в воде. 3. Мир и сцена Используйте разрушаемый остров на основе height field размером примерно 260 × 184 м, окружённый океаном с фиксированным уровнем воды. Разместите стартовые танки далеко друг от друга на устойчивом грунте; распределите камни, пальмы, кактусы и собираемые ящики с припасами. Небольшие декоративные острова создают глубину фона и никогда не заменяют основной разрушаемый рельеф. Взрывы деформируют поверхность и могут создавать углубления ниже уровня моря. Объедините цвет береговой линии и пену на одной поверхности воды, чтобы избежать пересекающихся плоскостей и мерцания. Проецируйте номера танков из мировых координат каждый отрисованный кадр. Предусмотрите общий вид траектории, вид на танк, орбитальный вид и тактический вид сверху. В режиме траектории танк, дуга полёта и расчётная точка приземления должны помещаться в пространстве между HUD и панелью управления. Перед каждым выстрелом показывайте стреляющий танк примерно 0,8 секунды, задерживайте камеру у дульного среза, затем следуйте за снарядом. Ручное управление камерой отменяет кинематическое сопровождение. 4. Список ассетов Используйте стабильные слоты моделей и сохраняйте возможность обращаться к каждой заменяемой модели отдельно: - jade-body: округлый зелёный гусеничный корпус, напоминающий щит; корпус игрока по умолчанию. jade-cannon: соответствующий нефритовый ствол с тёмным каналом и золотыми акцентами, независимо артикулируемый. - ember-body: заострённый кораллово-оранжевый бронированный корпус с низким механическим профилем. ember-cannon: его удлинённый оранжевый ствол с тёмным дульным срезом. - bolt-body: сине-фиолетовый промышленный гусеничный корпус с угловатой плитной бронёй. bolt-cannon: соответствующий толстый синий ствол. - shell: латунный артиллерийский снаряд с тёмным заострённым наконечником и голубым акцентом. Повторно используйте его с оттенком и масштабом, зависящими от оружия. - crate: жёлтый бронированный ящик с припасами, голубой маркировкой и усиленными углами; подбор восстанавливает 20 единиц брони, максимум — 100. - rock: округлая группа камней из тёплого песчаника; используйте с разным масштабом и отдельным прокси-коллайдером. - palm: изогнутый ствол и ярусы зелёных пальмовых листьев; повторяйте как островную растительность. - cactus: компактный зелёный кактус с небольшими цветочными деталями; повторяйте на сухом грунте. - islet: округлый покрытый травой островок на фоне со светлыми каменными/песчаными краями; повторяйте за пределами арены. В первую очередь создайте три пары соответствующих корпусов и стволов, затем снаряд и ящик, а после — элементы окружения. Деформация рельефа, океан, пена, огонь, дым, ударные волны, обломки, графика прицеливания, освещение, UI и прокси-коллайдеры должны быть процедурными. Соответствующие детали корпуса и ствола используют единый дизайн-референс и масштаб. Разместите pivot ствола в его механическом шарнире, направьте его продольную ось по +X и используйте видимый дульный срез как физическую точку запуска. Корпуса танков должны выравниваться по склонам с помощью кватернионов; направление наведения башни остаётся заданным в мировом пространстве. Сохраните исходные PBR-текстуры и UV-швы. Полноразмерные модели для скачивания храните отдельно от оптимизированных копий для игрового рантайма; ссылки и сведения о происхождении файлов должны указывать фактический источник генерации. 5. Игровой процесс и обратная связь В начале своего хода каждый живой танк получает 18 м перемещения. WASD и панель перемещения работают относительно экрана; клавиши со стрелками и панель прицеливания изменяют азимут и угол возвышения. Ползунки задают азимут, угол возвышения от 10 до 80 градусов и референсную мощность от 0 до 100. Выбор противника только разворачивает танк к нему и не должен автоматически рассчитывать выстрел. Бирюзовая дуга оценивает выбранную референсную мощность без учёта ветра. Сохраняйте эту референсную дугу и её золотой маркер неподвижными во время зарядки. Удержание кнопки Fire, клавиши Space или Enter при фокусе на кнопке Fire запускает фактический заряд с 0 каждый раз; увеличивайте его на 18 процентных пунктов в секунду, удерживайте на 100 и выполняйте ровно один выстрел при отпускании, используя фактическую мощность в этот момент. Быстрое нажатие создаёт слабый выстрел. Золотая полоса в пределах 3 процентных пунктов служит только визуальной обратной связью: не используйте привязку к значению или скрытую коррекцию. Отменяйте зарядку при отмене указателя, потере фокуса окна или видимости. Во время зарядки блокируйте перемещение, смену цели и изменение прицеливания. Клавиатурное управление range-input не должно одновременно поворачивать башню. Нулевая мощность означает минимальную скорость запуска, а не неподвижный снаряд. Стрелка и видимые движущиеся полосы ветра показывают направление его воздействия на снаряд. Подписывайте силу ветра и скорость в метрах в секунду; по нажатию на карточку ветра показывайте пояснение. Если ветер дует влево, игрок должен целиться немного правее. Чем сильнее ветер и дольше полёт, тем заметнее снос. Во время выстрела ветер остаётся постоянным и меняется с каждым ходом. Не компенсируйте ветер автоматически в превью игрока. Приблизительно прогнозируйте точку приземления на рельеф; не обещайте в превью столкновения с танками или камнями, разделение кластерного снаряда или рикошеты. Предусмотрите шесть типов боеприпасов: неограниченные фугасные снаряды; кластерный снаряд, разделяющийся на пять суббоеприпасов, летящих вниз; Seismic — с воронкой до 28 м в диаметре и 13 м глубиной; рикошетный снаряд, дважды отскакивающий от поверхности; по одному Cataclysm на танк, с воронкой до 46 м в диаметре и 22 м глубиной; и Incendiary, оставляющий зону огня радиусом 12 м. Огонь наносит 8 единиц урона в конце каждого из шести действий; выход из зоны позволяет избежать урона, а перекрывающиеся зоны не суммируются. Морская вода тушит пламя. Танк целиком, включая поднятый ствол, полностью погружённый в воду, немедленно уничтожается. Показывайте фактический урон, потерю брони, обрушение рельефа, всплеск воды и результат уничтожения. Используйте многослойные огненные шары, расширяющиеся ударные кольца, светящиеся искры, баллистические фрагменты, пыль и дым с умеренной тряской камеры. Используйте предоставленные оригинальные музыку и звуки ElevenLabs: выстрелы из пушек, удары, рикошеты, мощные взрывы, огонь и всплески. Добавьте переключатель звука, паузу/продолжение, инструкции, повтор и возврат в меню. Во время полёта снаряда или хода ИИ предлагайте действие Back to my turn: быстро запускайте ту же симуляцию с фиксированным шагом и сохраняйте все результаты урона, изменения рельефа и опасных зон. Никогда не пропускайте ход локального игрока. 6. Техническая реализация Используйте Three.js с ES-модулями и Vite, локально подключённые шрифты, Web Audio для эффектов и HTML audio-элемент для зацикленной музыки. Храните ресурсы в рамках одного origin и поддерживайте статическую сборку. Используйте перспективный рендерер с антиалиасингом, практичными бюджетами на тени и постобработку, а также корректно освобождайте временную геометрию и материалы. Разделяйте декоративные детали моделей и игровые коллайдеры. Физика должна быть детерминированной и независимой от рендеринга: используйте единицы метр/секунду, гравитацию 9,81 м/с² и фиксированный шаг 1/120 секунды. Для высокоскоростных снарядов применяйте непрерывные swept-коллизии с землёй, водой, танками и камнями; применяйте к отброшенным танкам импульсы взрыва и гравитацию. Выводите позиции запуска из фактического трансформа ствола конкретного танка. Обычное воспроизведение и ускоренная перемотка должны вызывать одни и те же обновления симуляции. Урон и реакция на ветер — стилизованные игровые правила, а не инженерный симулятор взрыва. Поддержите интерфейс на китайском, английском, японском и корейском языках. При первом запуске выбирайте язык устройства; для устройств из Гонконга, Макао и Тайваня, а также устройств с традиционным китайским языком по умолчанию используйте английский. Запоминайте явный выбор пользователя и предоставьте заметный переключатель языка. Поддержите адаптивные макеты для компьютеров, портретной ориентации телефона и коротких альбомных экранов, прокручиваемые меню для невысоких экранов, удобные сенсорные цели, сворачиваемые панели и отсутствие перекрывающихся элементов управления. На сенсорных устройствах не требуйте клавиатурный ввод. Не включайте мутацию состояния и вспомогательные функции прицеливания, предназначенные только для разработки, в продакшен-сборку. 7. Критерии завершения Предоставьте редактируемый автономный исходный проект, lockfile, инструкции npm для разработки/сборки и рабочее статическое превью. Соответствуйте текущим скриншотам и видео игрового процесса, включая кремовую панель статуса, неподвижный золотой референсный маркер, фактический заряд с началом от нуля и полностью 3D-представление танков и острова. Проверьте первый запуск, загрузку моделей, полный цикл хода, поведение каждого типа боеприпасов, паузу, повтор и реальные результаты победы/поражения. Убедитесь, что переключение внешнего вида сохраняет состояние, а отмена с клавиатуры/сенсорного ввода не приводит к выстрелу. В тестовом выстреле без ветра отпускание на референсной мощности должно приводить к приземлению рядом с референсным кругом; встречный боковой ветер должен заметно смещать фактический снаряд, оставляя этот круг неизменным. Проверьте работу на частотах 30/60/144 Гц, высокоскоростные коллизии, глубокие воронки, завершение горения, уничтожение при полном погружении и равенство результатов хода в обычном и ускоренном режимах. Проверьте настольные и узкие макеты на всех четырёх языках; отдельно укажите эмуляцию браузера и тестирование на физических устройствах. Проверьте размещённую страницу и связанные медиафайлы, а не только локальную сборку.

Как использовать этот промпт

01

Начните с подходящего инструмента

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

02

Выберите одно изменение

Замените объект, художественный стиль или окружение. Чётко опишите камеру и взаимодействие. Сначала создайте небольшую версию, затем улучшайте по одной детали.

03

Добавьте собственные объекты в сцену

Для своего персонажа или реквизита создайте 3D-модель по короткому описанию предмета или референсу, затем импортируйте её в проект.

Права на превью принадлежат соответствующим авторам. Перед повторным использованием кода или материалов проверьте первоисточник и лицензию проекта.