MrShoor
> Поворачиваешь эту нормаль вокруг оси Z (у нас ведь 2д, даже TBN базис не нужен
> получается) в соответствии с повортом червя
Зачем? По идее в граф. конвейере учитываются трансформации же, не?
Dan Diamond
У меня движок-велосипед, я там не использую практически ничего (и особенно не использую D3DX) - просто разворачиваю квад со спрайтом так, как мне нужно, и рисую. Поэтому всё руками.
Dan Diamond
> Зачем? По идее в граф. конвейере учитываются трансформации же, не?
А ну, да :) Как бы еще проще тогда получается, вот.
upd. Вот сбил меня с мысли. Не учитываются они, нормаль которая из текстуры не повернется же. Так что крутить нормаль все равно придется.
MrShoor
> Не учитываются они, нормаль которая из текстуры не повернется же. Так что
> крутить нормаль все равно придется.
Нутк, ты же сначала поворачиваешь треугольники, на которые натянут спрайт. А текстуру натягиваешь в соответствии с uvw map. А потом уже освещение и прочие пиксельные шейдеры.
Позиция пикселя = транформации полигонов + uv map.
Kozinaka
>У меня движок-велосипед, я там не использую практически ничего (и особенно не использую D3DX) - просто разворачиваю квад со спрайтом так, как мне нужно, и рисую. Поэтому всё руками.
Софтрендер? o_O Мсье знает толк в извращениях =)
Dan Diamond
> Позиция пикселя = транформации полигонов + uv map.
Мы сейчас не о позиции пикселя говорим, а о нормали, которая уже прочитана из нормалмапы.
Dan Diamond
> Софтрендер?
Ненене, DirectX9, но велосипедный, без движков, без D3DX, без вершинных шейдеров (всё в экранных координатах) - кручу квады с блендингом, FFP + пара простых шейдеров для блюров.
Впервые увидел - в видео по ссылке из обсуждения обзоров Ducat-а.
Прошёл все 8 уровней, очень понравилось!
> и мрачной атмосферой безудержного пожирания.
атмосфера вполне удалась!
> Очень хотелось бы получить обратную связь и послушать ваше мнение и идеи по проекту.
будет ли больше уровней?
черви (особенно красные) откусывают мне шею с хирургической точностью, буквально один сегмент сразу после головы. Это так и задумано, не является ли это читерством с их стороны?
Будут ли какие-то другие опасные для червей существа? сейачс их могут жрать только другие черви, а клещи (или как их там) могут только угрожающе клацать челюстями.
Можно было бы сделать некоторых жуков ядовитыми. А для лечения от их яда надо есть других ядовитых жуков, правильный порядок пожирания даёт взаимную нейтрализацию ядов. Ещё можно сделать что у разных жуков/козявок разная пищевая ценность, и червю надо разнообразное питание чтобы хорошо расти.
Некоторые уровни приходилось переигрывать по несколько раз, но всё равно интересно.
хотелось бы дождаться мультиплеера в будущем.
>правка
посмотрел видео из поста #72, чёрный червь без лапок больше похож на змею.
soflot
Привет! Спасибо за позитивный отзыв и конструктивные предложения! :) Ты удивительно упорен, раз прошел все 8 уровней. Судя по имеющейся статистике отзывов уровень с гонками и последний уровень оказались избыточно сложны, их я буду упрощать.
>атмосфера вполне удалась!
Супер! Я рад, что пока не сдал в главном. В попытках поднять планку качества игра сильно меняется, очень легко выплеснуть с грязной водой что-нибудь существенное.
Попробую ответить на вопросы:
>будет ли больше уровней?
Конечно! Игры-то нет пока, это альфа-версия. Тестовая демонстрашка перед релизом для Гринлайта, который тоже будет по сути демкой. :) Создание диалогов и скриптование уровней занимают удивительно много времени. Я всё расширяю арсенал фишек, которые можно использовать для создания уровней, но при этом откладываю создание самих уровней на потом. В итоге, когда технически игра готова к очередному альфа-релизу, происходит оттяжка длинною в месяц, в течение которой я с большим удивлением набрасываю жалкий десяток уровней.
Ближайший план в общем прост:
1. Перерисовать червей и имеющихся существ в новом стиле (на последнем видео в этой теме можно поглядеть черновик нового стиля червя).
2. Добавить замедляющих паразитов, летающих жуков, плюющихся жуков и червей.
3. Добавить одного босса для финального уровня. Это будет червь, у которого с обоих концов будет по голове и совсем не будет хвоста.
4. Накидать 12 или 16 уровней, включая те, что уже существуют (эти скорректировать и перетасовать). Использовать пару идей уровней из прошлого релиза 2.х, добавить несколько уровней на демонстрацию новых плюющихся существ. Т.е. по сути набор уровней, это просто демонстрашка разных возможностей игры, которые при конечном левелдизайне можно реюзать в разных комбинациях.
5. Выложиться в этом виде на Гринлайт, пока его к чертям не закрыли (впрочем, очень возможно, что к этому моменту готовности его уже не будет).
>черви (особенно красные) откусывают мне шею с хирургической точностью, буквально один сегмент сразу после головы.
Всё честно. И AI-контроллер и игрок используют одну и ту же модель червя для передвижения. Чтобы перемещаться AI-черви, также как и ты, вынуждены давить на виртуальные кнопки "влево" и "вправо", включать режим резких поворотов.
Почему срезают шею? Они просто используют режим резких поворотов. Искуственный интеллект червей в этой игре устроен очень просто. Есть приориет целей (разный для разных типов червей), червь ползёт к ближайшей цели крупными петлями, если цель далеко и включает режим резких поворотом при сближении. Это логичное поведение, я тоже так делаю. Ну, там у них ещё плюс несколько эвристик типа резкого разворота, если цель сзади, и пачка защит от тупого поведения, но это сути не меняет. В тот момент, когда AI-червь пересекает твою шею он просто резко раскачивается с маленькой амплитутой и большой частотой. Ты же, скорее всего, "прошиваешь" его насквозь по прямой заранее рассчитывая траекторию. При включенном адреналине ты можешь демонстрировать те же чудеса реакции, таким образом адреналин выступает уравнителем людей и машин на этой войне. Плюс я немного затупил AI-червей в целях оптимизации замедлив им скорость смены целей и искусственно придавив прыгучесть, т.к. прыжки со стороны AI-червей из невидимой области воспринимаются как личное оскорбление и читерство автора (даже если игрок я сам и понимаю что всё честно).
>Будут ли какие-то другие опасные для червей существа?
Думаю, нет, червь в этой игре - вершина пищевой цепочки. Будут неприятные. Ближайшие кандидаты - паразитирующие попрыгушки, которые наскакивают на ближайшее существо и прилепляются к нему. Существо замедляется тем сильнее, чем больше на нём налепилось паразитов. Червь может съесть паразитов со своего хвоста, там где может дотянуться. Паразиты на голове и шее остаются до самой смерти. Дальше будут плотоядные жуки, но есть они будут только мелочь. Они будут поворачиваться к жертве задом и стрелять из него парализующим зарядом. Мелочь будет временно парализовываться (жук в это время ползёт к ней, чтобы съёсть), а вот от червей жуки будут просто отстреливаться и убегать - выстрел в голову просто заставляет червя отвернуться как от препятствия. Выстрел в тело может замедляет, а может вообще пофигу.
А потом я привешу "плевкоган" на червя - это будет червь, который не умеет прыгать. Вместо прыжка, он будет точно также сжиматься подтягивая к себе хвост, а потом делать плевок полностью аналогичный плевку жука. Т.е. червь с альтернативной механикой в качестве врага и разнообразие геймплея на пару-тройку уровней в качестве существа, управляемого игроком.
> Можно было бы сделать некоторых жуков ядовитыми. А для лечения от их яда надо есть других ядовитых жуков, правильный порядок пожирания даёт взаимную нейтрализацию ядов.
У меня есть светлячки, они есть на уровне с гонками. Они не доделаны, не умеют летать. Я задумывал как ходячие бонусы - поедания светлячка предполагалось даёт какой-то эффект. Иногда положительный, иногда отрицательный. Например, ретроэффект, когда червь игрока начинает жрать свой собственный хвост или поворачивать только под прямым углом, как его прадедушка из Snake. Или временная подсветка всего съедобного зелёным, а всего несъедобного красным. Если про яд, то, боюсь, сложное "разлочивание" яда а) скуёт возможности создания уровней, т.к. вместе с ядовитыми жуками надо обязательно совать на уровень "противоядие" б) заставит игрока выйти из режима священной прожорливой ярости, меня в играх кончающийся кислород, время или отрава очень фрустрируют, мне кажется это не те чувства, которые мне хотелось бы вызвать у игрока.
Впрочем, спасибо за идею, я подумаю. Если сделать отраву не смертельным, а просто неприятным эффектом, а "противоядие" сделать очень простым, то это может быть приятным разнообразием. Во! Вообще, отключать отраву по таймеру и всё. Т.е. будут жуки, которых можно есть, но за это нужно платить временным понижением характеристик. Т.е. игрок будет их есть только тогда, когда ему позарез нужно набрать вес. С AI ещё нужно будет как-то тактику поедания такой снеди разрулить. Я подумаю. Вообще после одного абзаца раздумий мне затея с ядом кажется вполне практичной - наличие еды, которую можно съесть, но не всегда стоит, это правильное разнообразие игрового процесса.
>хотелось бы дождаться мультиплеера в будущем.
Будет хотсит, а там поглядим. Черт! Я забыл включить хотсит в план похода на Гринлайт. С ним шансы успеть всё к лету становятся призрачными. :(
>посмотрел видео из поста #72, чёрный червь без лапок больше похож на змею.
Реалистичность в играх я променял на ластик ещё в 10 классе. Вообще, черви в "Несыти" изначально гибриды: вымышленная смесь червей, насекомых и змей. От червей прожорливость, быстрая регенерация и живучесть, от насекомых хитин, сегментированность и ротовой аппарат, от змей способ передвижения и размножения (откладывание яиц). По характеру внешности черного червя пруф вот такой:
Будет, круто, если получится сильнее к приблизиться к этому жуку за счет фактуры поверхности звеньев. Впрочем, тоже не факт, что нужно. Красивых жуков килограмм на пятак дают, прямо вот жукочервь мне тоже не сдался.
Тему не читал, но несколько лет назад играл в данную игрушку, получив при этом немалый заряд бодрости в области независимого геймдева, который правда рассеялся вследствие некоторых унылых персонажей. Но всё же желаю удачи разработчику, бодрости духа и всяческих благ!
Bloody mess
Спасибо за тёплые слова, очень заряжает! В свою очередь, желаю тебе как можно больше приятных открытий и как можно меньше унылых персонажей на пути! :)
Уровень с откладыванием яиц натолкнул на вопрос - а как же будут развиваться червяки, если им никто не будет мешать? Чтобы это посмотреть, надо чтобы был только я и такие червяки, которые друг друга не кушают. То есть зелёные. И вот я решил съесть всех красных червяков на уровне, а зелёных не трогать. И посмотреть как они будут размножаться, что будут делать.
Это оказалось для меня очень сложным вызовом. Чаще всего меня съедали красные, а когда мне в минуты редкого везения удавалось загрызть двух красных и даже немного пожрать букашек чтобы отрастить челюсти для схватки с большим красным, то чаще всего оказывалось что зелёный уже съеден и всё это напрасно.
После многих попыток всё же удалось! Вот некоторые скрины (надеюсь изображения будут видны)
Вот я вам ещё одну букашку пригнал
угощайтесь
soflot
Ха! Я так на этом уровне не экспериментировал! :) Черный червь - заботливая мамочка для тупых зелёных крошек. :D
Ты явно серьёзно раскачался - красные на этой карте доминируют и съедают зелёных довольно быстро. Спасибо тебе за внимание к игре, это очень бодрит и даёт силы двигаться дальше. Сейчас занимаюсь переводом на английский язык, как закончу, так добавлю в релиз деревья, исправлю найденные баги, упрощу управление, упрощу уровень с гонками и заряжу блоху на последнем уровне. Это будет альфа 3.5.
Да, кормить зелёных червей на последнем уровне гораздо сподручнее - просто прыгаешь в рот и делу конец. :D
Нашел паскахлку с экранчиком на последнем уроне?
Запилил индиктор проглатываемой еды в левую часть экрана (под яйцом). Надо было как-то объяснить игроку задержку между попаданием еды в рот и наращиванием длины и размера. Всё это время еда проглатывается (уменьшающиеся спрайты собираются в центре головы червя). Теперь по каждому проглоченному объекту слева выпрыгивает полоса прогресса его проглатывания.
Kozinaka
Честно скажу, такого отвращения, как от просмотра дукатовского выпуска с твоей игрой, я не испытывал уже давно)
Kozinaka
> Ближайшие кандидаты - паразитирующие попрыгушки, которые наскакивают на ближайшее существо и прилепляются к нему. Существо замедляется тем сильнее, чем больше на нём налепилось паразитов. Червь может съесть паразитов со своего хвоста, там где может дотянуться.
Этот выпуск, я, боюсь, не досмотрю.
Саша123
>Честно скажу, такого отвращения, как от просмотра дукатовского выпуска с твоей игрой, я не испытывал уже давно)
Круть, спасибо! :) Важно не потерять сути, сосредоточившись на графическом лоске и оказуаливании.
Скрытая под конфетностью утробная мерзота - самое то, что мне нужно.
На самом деле, когда ты управляешь червём сам и можешь есть других, то он уже не пугает, пусть враги трепещут и всё такое.
Тема в архиве.