Почему не срабатывает? Вот такой простой код: находит переменную bool в скрипте AtarSC, и если она верна, то прибавляет единичку в счетчик. Но !- Если функция Update, то счетчик будет "крутиться" с дикой скоростью без остановки. А в Awake (где оно и должно быть, судя по уроку) - никакого эффекта. В чем причина, и как осуществить счетчик?
Пиратский Unity - не такая проблема, как пиратский 3ds Max и пиратский Photoshope. Эти монстры стоят гораздо дороже, а без них - клепать модельки в Blender и рисовать текстуры в Paint - не слишком-то удобно. Больше никогда не буду делать игры.
Как добавить время, через которое функция должна быть выполнена?
Код
if (isGrounded == false)
Если нет соприкосновения, то через заданное время выполняется условие... Делал таким образом: if (isGrounded == false && Time.time > nextTime), но толку никакого. Больше никогда не буду делать игры.
Какой тогда интерес этим заниматься, можно и из интернета ассетов накачать
Цитатаrgs_haker ()
,для тебя это наилучший вариант
Сам уже не первый год на 3ds работаю. Тему запустил, потому что часто вижу подобные вопросы от начинающих и не очень, а внятный ответ редко где встретишь. Почему бы и не собрать все программы и методы в одной теме? Больше никогда не буду делать игры.
Какая программа оптимальней всего подходит для создания реалистичной анимации персонажей "малой кровью" (т.е, без кропотливого выставления каждой кости) ? Понятное дело, возможность нанимать актеров и оцифровывать их движения имеет далеко не каждый игродел-любитель.
Оставляем здесь свои варианты.
В 3ds Max полно плагинов и функций для скелетной анимации, но он достаточно запутан и сложен, тоже самое касается и Maya. Кастрированные Cinema4D и Blender - на очень большого любителя. Есть еще замечательная программа - Poser, позволяющая не только анимировать, но и настраивать внешность персонажа, но, к сожалению, не экспортирует анимацию в 3ds и игровые движки без дополнительных плагинов. Так же слышал, что некие аниматоры вполне успешно создают реалистичных персонажей в NewTek LightWave 3D. Еще варианты или сочетания программ\плагинов? Больше никогда не буду делать игры.
Сообщение отредактировал Vip_and_Rip - Понедельник, 26 Января 2015, 12:01
На сцене два игрока, между которыми можно переключаться нажатием клавиши, используя SerActive. К первому игроку привязан centrOfMass (rigidbody.centerOfMass = MassCentr.localPosition; ), что бы не опрокидывался при передвижении. Но после переключения на другого персонажа и обратным переключением на первого, у него перестает действовать cOM, хотя он актирован и назначен. Какие могут быть причины?
Засунь скрипт Js в папку Plugins, должно помочь. Отключать, как было сказано выше, командой "gameObject.GetComponent<искомый_скрипт> ().enabled = false;". Больше никогда не буду делать игры.
Сообщение отредактировал Vip_and_Rip - Пятница, 23 Января 2015, 16:27
Есть-ли аналог функции "Relative" для velocity? Двигаю объект посредством rigidbody, но функция AddForce дает постоянное ускорение. Rigidbody.velocity держит скорость, но проблема в том, что объект движется не по своим координатам, а по мировым. Как решить этот идиотский вопрос?
P.S Transform в данном случае не подходит. Больше никогда не буду делать игры.
Присвоил объекту анимацию, которая запускается при выполнении условий скрипта (if (...) {Animation.Play (...);}). В настойках анимации стоит "Once", но она все равно зацикливается. Больше никогда не буду делать игры.
сделал проверку на нажатие кнопки, но все равно когда объект подпрыгнул и если снова нажимать на прыжок он прыгает выше и выше... т.е. отталкивается от воздуха)
Сделать проверку коллайдера под ногами персонажа, а на кнопку прыжка поставить условие, что бы срабатывала только при наличии соприкосновения с коллайдером. Больше никогда не буду делать игры.
Да ответ прост, сделать триггер, который проверяет, есть ли данный объект физическим. Это можно сделать или поиском ригидбоди или (и) чарактер контроллера, или прописывать всем физическим телам опредленный тег, а потом для объектов, прошедших проверку, ставить отдельную гравитацию.
А что насчет "гравитационного ветра"? Подъемная сила, тупо придающая ускорение в одном направлении всем rigidbody в определенном радиусе. Без лишних триггеров и маркеров.
void OnTriggerExit(Collider other) { // Выходим из зоны триггера if (other.attachedRigidbody) other.attachedRigidbody.useGravity = true; } // Включаем гравитацию и падаем на землю }
Возможно, кому-то пригодится. Больше никогда не буду делать игры.
Сообщение отредактировал Vip_and_Rip - Вторник, 30 Декабря 2014, 12:29
Если игра - шутер от первого лица, обязательно-ли так заморачиваться с физикой в движке? Не проще-ли отрендерить эту сцену в том же 3DS Max - благо, там весь инструментарий и куча плагинов в придачу для этого есть, - а потом просто тупо вставить ее в игру, как ролик. Больше никогда не буду делать игры.
Вопрос на теорию. А можно-ли сделать область выделенной гравитации? Например, некий радиус, в котором сила притяжения ниже, выше, или вообще направлена по оси z, чем в остальном игровом мире? И какими способами такое можно провернуть? P.S Не только для игрока (иначе было бы слишком просто), а всех объектов. Больше никогда не буду делать игры.
Ответ капитанский конечно, но причина в одном из стандартных скриптов. Наверняка там стоит ограничение на градусы какое нибудь
Очевидно, да. Проблема решилась написанием нового скрипта управления.
Только возник новый вопрос. По прежнему изометрия, вид сверху, как в rpg конца 80х годов. Персонаж представлен двухмерной плашкой, на которую натянута текстура. Как сделать, что бы эта плашка (т.е персонаж) не проходила сквозь стены? Игра большей частью в 3d, потому 2d коллайдеры не панацея. Так же не действует натягивание на плашку box-collader'a. Какие есть варианты? Больше никогда не буду делать игры.
Экспериментировал с изометрией, и столкнулся с такой проблемой: при использование стандартных скриптов ThirdPerson, когда камера повернута вертикально на 90° вниз, персонаж не реагирует на клавиши. Т.е, не двигается, словно скрипт отключается. Пробовал в 2d и в 3d режиме, результат один. Но если сместить камеру хотя бы на одну десятую градуса - то управление инверсируется, и персонаж двигается в обратную сторону. Почему так? Больше никогда не буду делать игры.
Вопрос просто суперски понятный . Задай еще разок только на понятном
На игроке висит скрипт, в котором прописаны координаты точек спавна для каждой локации. "Входя" через "дверь" (application.loadlevel) на новую локацию, он оказывается на конкретной точке (например, рядом дверью, которая согласно игровому миру, выходит в большой мир). Совсем как в Fallout или Skyrim. Но тут проблема - в скрипте могу прописать только по одной точке координат. А в одной локации "дверей" может быть много. Потому и спрашиваю, как прописать множество точек спавна, для каждого отдельного входа на локацию? Больше никогда не буду делать игры.
На каждое действие (например, триггер, рэйкаст или просто нажатие клавиши) повесить анимацию. Анимировать это будет сложнее, нежели потом добавить в игру Больше никогда не буду делать игры.
А как задать несколько точек спавна на карте? Допустим, у меня есть одна большая локация - и в ней несколько поменьше. Как расставить точки спавна возле каждого входа отдельно? Больше никогда не буду делать игры.