Результаты поиска
| |
STRATEG766 | Дата: Суббота, 02 Июля 2016, 19:45 | Сообщение # 21 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата Lertmind ( ) Physics2D.IgnoreCollision - для конкретных коллайдеров, Physics2D.IgnoreLayerCollision - для слоёв. Спасибо
|
|
| |
STRATEG766 | Дата: Суббота, 02 Июля 2016, 18:58 | Сообщение # 22 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Есть 2 объекта. Чтобы они не сталкивались, я создал 2 Layera и снял галочки в Edit=> Project Settings=>Physics 2D. А как это сделать в скрипте? Например есть переменная bool, и если она равна true, то эти объекты не сталкивались .
Сообщение отредактировал STRATEG766 - Суббота, 02 Июля 2016, 18:59 |
|
| |
STRATEG766 | Дата: Понедельник, 09 Мая 2016, 22:09 | Сообщение # 23 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Как сделать направление в градусах? Щас вот так у меня Obj.transform.position += transform.up * 12 * Time.deltaTime; Хотел, чтобы вместо "up" поставить например 140%
|
|
| |
STRATEG766 | Дата: Пятница, 01 Апреля 2016, 16:29 | Сообщение # 24 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата seaman ( ) http://docs.unity3d.com/Manual/LayerBasedCollision.html Спасибо, то что надо
|
|
| |
STRATEG766 | Дата: Четверг, 31 Марта 2016, 20:53 | Сообщение # 25 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Как сделать , чтобы игрок при столкновении с некоторыми объектами, игрок проходил сквозь объектов?
|
|
| |
STRATEG766 | Дата: Воскресенье, 20 Марта 2016, 13:32 | Сообщение # 26 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата Fantic ( ) В каких целях? Можно сделать объект дочерним к игроку. То есть, в иерархии перенести объект на/внутрь игрока. Тогда объект будет всегда находиться в одном месте относительно игрока. Если под "следовал за игроком" имеется ввиду какой-то более сложный и глубокий процесс, то распишите его. Нее, это враг. Если что-то , то враг двигается за игроком. Игра 2d.
|
|
| |
STRATEG766 | Дата: Воскресенье, 20 Марта 2016, 00:20 | Сообщение # 27 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Как сделать, чтобы объект следовал за игроком?
|
|
| |
STRATEG766 | Дата: Понедельник, 22 Февраля 2016, 13:36 | Сообщение # 28 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата Vostrugin ( ) вот пожалуйста, нужно что бы этот скрипт был на каждом пауке. Это наиболее простой пример для 2d пространства. Код Очень умно. Спасибо большое!))
|
|
| |
STRATEG766 | Дата: Воскресенье, 21 Февраля 2016, 22:14 | Сообщение # 29 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата Vostrugin ( ) зачастую скрипт более универсален. К примеру при инициализации ты определяешь направление движения и потом двигаешь исходя из направления. Это самый простой способ реализации. Идея именно в том, что бы можно было создать бесконечное множество объектов с этим скриптом без каких либо модификаций. Как это сделать Можешь немного объяснить ? Ну или пример дать)
|
|
| |
STRATEG766 | Дата: Воскресенье, 21 Февраля 2016, 14:52 | Сообщение # 30 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата Vostrugin ( ) на каждом из пауков должен быть скипт движения. 1 скрипт управления на всех объектов или как ? 1 объект двигается влево , а другой вправо, то тогда надо разные скрипты управ. да?
|
|
| |
STRATEG766 | Дата: Воскресенье, 21 Февраля 2016, 13:55 | Сообщение # 31 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Есть у меня в игре 2 паука). Мне надо , чтобы их было 5 - 10. Если дублировать, то Они не передвигаются, а если сделать префаб, и добавить префаб на сцену, тоже самое. Если я создам 10 пауков, то скрипты у них должны быть разные? Есть ли другой способ?
Сообщение отредактировал STRATEG766 - Воскресенье, 21 Февраля 2016, 13:57 |
|
| |
STRATEG766 | Дата: Суббота, 20 Февраля 2016, 16:09 | Сообщение # 32 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата MANMANA ( ) в условиях вместо "move < 0" и "move < 0" напиши условие столкновения с коллайдером стены Спасибо, работает.
|
|
| |
STRATEG766 | Дата: Пятница, 19 Февраля 2016, 21:55 | Сообщение # 33 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Есть объект (Игрок), двигается вправо "Obj.transform.position += transform.right * 4 * Time.deltaTime;". Как сделать , чтобы при столкновении с другим объектом (стена) , Объект(Игрок) менял направление на влево?
Сообщение отредактировал STRATEG766 - Воскресенье, 21 Февраля 2016, 13:57 |
|
| |
STRATEG766 | Дата: Вторник, 16 Февраля 2016, 22:54 | Сообщение # 34 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Как получить ссылку на префаб который находится в "project", то есть не в "Hierarchy". gm = GameObject.Find("Igrok"); gm.GetComponent<Sobrn>().kolvo+=1; Хотел вот так изменить значение переменную , но появляется ошибка "Object reference not set to an instance of an object". Как я понял скрипт должен висеть на объект с которым я работа.
Сообщение отредактировал STRATEG766 - Вторник, 16 Февраля 2016, 23:14 |
|
| |
STRATEG766 | Дата: Суббота, 13 Февраля 2016, 20:53 | Сообщение # 35 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| .
Сообщение отредактировал STRATEG766 - Воскресенье, 14 Февраля 2016, 16:49 |
|
| |
STRATEG766 | Дата: Понедельник, 01 Февраля 2016, 14:11 | Сообщение # 36 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата beril ( ) Ну так Start срабатывает один раз при старте игры. При столкновении с этим объектом у меня i меняется на i+1 . То есть, в начале i==0, сталкиваешься с объектом , i==1 . Если i==1 , то появляется еще один объект . То есть i меняется походу игры. Поэтому, наверное, в методе Start не работал этот код В Update как нибудь написал вот такой код, пока все работает как мне надо. -------------------------------------------------------------------------------------------------
Код if (i == 0) { GameObject obj = Instantiate(Obj1, new Vector3(Random.Range(5, 18), 7, 0), Quaternion.identity) as GameObject; } i=3; if (i == 4) { GameObject obj = Instantiate(Obj1, new Vector3(Random.Range(17, 8), 7, 0), Quaternion.identity) as GameObject; } i=5;
void OnCollisionEnter2D(Collision2D tgObj) { if (tgObj.gameObject.tag == "tgObj") {
gam.GetComponent<ScripstInst>().i += 1;
Destroy(GameObject.FindWithTag("tgObj"));
}
Спасибо
Сообщение отредактировал STRATEG766 - Понедельник, 01 Февраля 2016, 14:32 |
|
| |
STRATEG766 | Дата: Воскресенье, 31 Января 2016, 19:46 | Сообщение # 37 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата beril ( ) Ну так у тебя создается один и тот же объект ведь в Instantiate(Obj1) и там и там Да, но мне надо , чтобы создавались одни и те же объекты , ну чтобы клонировались. То есть, если i==1 , создается один объект, а если i==2 , то 2 объекта чтобы было на сцене.
|
|
| |
STRATEG766 | Дата: Воскресенье, 31 Января 2016, 19:19 | Сообщение # 38 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| в Start написал вот этот код if (i == 0) { GameObject obj = Instantiate(Obj1, new Vector3(Random.Range(17, 8), 7, 0), Quaternion.identity) as GameObject; } if (i == 1) { GameObject obj = Instantiate(Obj1, new Vector3(Random.Range(17, 8), 7, 0), Quaternion.identity) as GameObject; } если i==0 то создается один объект, если меняю 0 на 1 , то второй объект не создается . Подскажите , как сделать так, чтобы при i = 1 создавался второй объект? Добавил этот код в Update , но создаются слишком много .
|
|
| |
STRATEG766 | Дата: Вторник, 26 Января 2016, 21:07 | Сообщение # 39 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| Цитата 8Observer8 ( ) попробуйте Rigidbody.velocity. При столкновении можно проверять rigidbody.velocity.x больше нуля или меньше. Если меньше, значит Player двигается влево, значит, нужно поменять вектор на противоположенный.
Вот так правильно сделал? Или я неправильно понял? void OnCollisionEnter2D(Collision2D obj) { if (obj.gameObject.tag == "stena") {
if (this.rigidbody.velocity.x <= 0) { player.transform.position -= player.transform.right * 5 * Time.deltaTime; }
}Добавлено (26 января 2016, 21:07) ---------------------------------------------
Цитата 8Observer8 ( ) попробуйте Rigidbody.velocity. При столкновении можно проверять rigidbody.velocity.x больше нуля или меньше. Если меньше, значит Player двигается влево, значит, нужно поменять вектор на противоположенный.
А знаешь как без rigidbody.velocity сделать? Ну например с OnCollisiontEnter. В Update я сделал направление вот так player.transform.position += player.transform.right * 5 * Time.deltaTime; Щас надо в Collsion, при столкновении просто он менял направление на left , или как ее там -=right
|
|
| |
STRATEG766 | Дата: Вторник, 26 Января 2016, 00:01 | Сообщение # 40 | Тема: Вопрос-[ответ] по Unity |
частый гость
Сейчас нет на сайте
| My WebPageЦитата 8Observer8 ( ) Так влево или вправо? То есть если Player ударился левым боком, то он должен двигаться вправо? А если ударился правым, то должен двигаться влево? Да-да, ударился левым , то двигается влево, и наоборот .Добавлено (26 января 2016, 00:01) --------------------------------------------- Не знаю прикрепилась ли фотка, но там вместо "Object" , должен быть "Player"
Сообщение отредактировал STRATEG766 - Вторник, 26 Января 2016, 00:00 |
|
| |
|