Вопрос-[ответ] по Unity
|
|
QWER56 | Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1 |
старожил
Сейчас нет на сайте
| Вопрос-[Ответ] по Unity3d
База скриптов Unity3d Курс Уроков по Unity 3D от Alcatraz
ConsMark - поисковик по интернет магазинам.
Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54 |
|
| |
JIeCHuK | Дата: Суббота, 23 Декабря 2017, 18:25 | Сообщение # 8441 |
был не раз
Сейчас нет на сайте
| Приветствую. Такой вопрос. Создал на потолке источник света Spot и наложил квадратную текстуру cookie. На полу свет к краям квадрата ослабевает. Как сделать так, чтобы интенсивность света была одинаковой по всей площади?
|
|
| |
drcrack | Дата: Суббота, 23 Декабря 2017, 18:47 | Сообщение # 8442 |
старожил
Сейчас нет на сайте
| Нужной тебе модели освещения в движке нет, придется писать самому Смотри здесь: https://docs.unity3d.com/Manual/SL-SurfaceShaderLighting.html
UPD. Еще мысль появилась — поставь эту Cookie на Directional Light, должен получиться примерно такой же эффект
Сообщение отредактировал drcrack - Суббота, 23 Декабря 2017, 20:51 |
|
| |
Bo | Дата: Воскресенье, 24 Декабря 2017, 13:03 | Сообщение # 8443 |
почетный гость
Сейчас нет на сайте
| Вопрос. Написал скрипт движения персонажа.
Код void Update () {
transform.position = new Vector2 (Mathf.Clamp(transform.position.x, -6.6f, 6.6f), Mathf.Clamp(transform.position.y, -4.9f, 4.9f));
if (Input.GetKey ("up")) transform.Translate (Vector2.up * Time.deltaTime); if (Input.GetKey ("down")) transform.Translate(Vector2.down * Time.deltaTime); if (Input.GetKey ("right")) transform.Translate(Vector2.right * Time.deltaTime); if (Input.GetKey ("left")) transform.Translate(Vector2.left * Time.deltaTime); } }
Хочу его переделать так, чтобы проверка (ограничние) Mathf.Clamp была в самом условии IF. При это хотелось бы оставить конструкции Vector2.up /down/left/right (т.е. чтобы не пользоваться, например вариантом типа
Код float yMove = Input.GetAxis("Vertical") * Time.deltaTime; transform.Translate(0f, yMove, 0f); Vector3 clampedPosition = transform.position; clampedPosition.y = Mathf.Clamp(transform.position.y, -4.1f, 4.1f); transform.position = clampedPosition;
и сохранить лаконичность и читаемость
|
|
| |
drcrack | Дата: Воскресенье, 24 Декабря 2017, 13:36 | Сообщение # 8444 |
старожил
Сейчас нет на сайте
| Код void Update () {
var move = Vector2.zero;
if (Input.GetKey ("up")) move += Vector2.up; if (Input.GetKey ("down")) move += Vector2.down; if (Input.GetKey ("right")) move += Vector2.right; if (Input.GetKey ("left")) move += Vector2.left; var position = transform.position + move * Time.deltaTime; position.x = Mathf.Clamp(position.x, -6.6f, 6.6f); position.y = Mathf.Clamp(position.y, -4.9f, 4.9f); transform.position = position; }
Сообщение отредактировал drcrack - Воскресенье, 24 Декабря 2017, 14:00 |
|
| |
Bo | Дата: Воскресенье, 24 Декабря 2017, 14:36 | Сообщение # 8445 |
почетный гость
Сейчас нет на сайте
| drcrack, большое спасибо! Идеально.
|
|
| |
JIeCHuK | Дата: Воскресенье, 24 Декабря 2017, 19:48 | Сообщение # 8446 |
был не раз
Сейчас нет на сайте
| drcrack, с направленным светом получается не так как хочется. Изменил файл Cookie так, что в центре у меня света идёт меньше а дальше к краям - больше. В итоге добился нужного мне вида. Но... Но так как он тускловатый получился (но зато равномерный, как надо), то при добавлении range или intensity от основного источника света идёт то ли повторяющееся отражение, то ли ещё что... То есть будто появляется несколько затухающих источников света... Что это быть может?
|
|
| |
drcrack | Дата: Воскресенье, 24 Декабря 2017, 21:21 | Сообщение # 8447 |
старожил
Сейчас нет на сайте
| Скриншот покажи
|
|
| |
JIeCHuK | Дата: Воскресенье, 24 Декабря 2017, 21:28 | Сообщение # 8448 |
был не раз
Сейчас нет на сайте
| drcrack, Та, что самая яркая (под объектом) - основная... Остальные так и идут с затуханием. Они могут пропасть, если под каким-то определённым углом камера находится...
Сообщение отредактировал JIeCHuK - Воскресенье, 24 Декабря 2017, 21:28 |
|
| |
drcrack | Дата: Понедельник, 25 Декабря 2017, 01:07 | Сообщение # 8449 |
старожил
Сейчас нет на сайте
| Проверь чтобы у Cookie в настройках импорта стояло Wrap Mode → Clamp
Сообщение отредактировал drcrack - Понедельник, 25 Декабря 2017, 01:07 |
|
| |
JIeCHuK | Дата: Понедельник, 25 Декабря 2017, 18:09 | Сообщение # 8450 |
был не раз
Сейчас нет на сайте
| drcrack, спасибо огромное за помощь. Всё заработало как надо.
|
|
| |
BassPiraT92 | Дата: Среда, 27 Декабря 2017, 19:47 | Сообщение # 8451 |
участник
Сейчас нет на сайте
| Подскажите годные уроки или примеры создания рандомных птиц для 2Д проекта? Спрайты и анимация полета имеются.
|
|
| |
drcrack | Дата: Четверг, 28 Декабря 2017, 11:44 | Сообщение # 8452 |
старожил
Сейчас нет на сайте
| Что такое рандомные птицы?
|
|
| |
Bo | Дата: Пятница, 29 Декабря 2017, 06:38 | Сообщение # 8453 |
почетный гость
Сейчас нет на сайте
| В Unity3D есть прекрасный компонент Collider2D. Но вот что мне непонятно. Зачем для обработки столкновений необходимо кроме компонента Collider2D навешивать еще и Rigidbody? Зачем нужна физика для этого?
|
|
| |
FlyOfFly | Дата: Пятница, 29 Декабря 2017, 08:25 | Сообщение # 8454 |
заслуженный участник
Сейчас нет на сайте
| Цитата Bo ( ) В Unity3D есть прекрасный компонент Collider2D. Но вот что мне непонятно. Зачем для обработки столкновений необходимо кроме компонента Collider2D навешивать еще и Rigidbody? Зачем нужна физика для этого?
Потому что физика реализована через Box2D и хоть Unity скрывает реализацию, ну там все колайдеры присоединяется к телу и не обрабатываются отдельно, что логично. так как колайдеры берут позицию именно оттуда
|
|
| |
BassPiraT92 | Дата: Суббота, 30 Декабря 2017, 23:08 | Сообщение # 8455 |
участник
Сейчас нет на сайте
| Цитата drcrack ( ) Что такое рандомные птицы? Птички что бы летали в рандомных позициях
|
|
| |
drcrack | Дата: Суббота, 30 Декабря 2017, 23:49 | Сообщение # 8456 |
старожил
Сейчас нет на сайте
| Цитата Птички что бы летали в рандомных позициях А в чем конкретно проблема? Не можешь создать птичку? Не можешь заставить ее лететь?
|
|
| |
BassPiraT92 | Дата: Четверг, 04 Января 2018, 19:00 | Сообщение # 8457 |
участник
Сейчас нет на сайте
| С птичками разобрался) Теперь проблемка в другом. В иерархии:
street_light (Спрайт с триггерной коллизией) -st_lamp(источник света Spotline)
Написал скрипт:
Код public GameObject Lamp;
private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.name == "Character1") { Lamp.SetActive(true); } } private void OnTriggerExit2D(Collider2D collision) { if (collision.gameObject.name == "Character1") { Lamp.SetActive(false); } }
Лампа исчезает при выходе из триггера но при заходе не появляется, подскажите в чем дело? И какие есть варианты
|
|
| |
drcrack | Дата: Пятница, 05 Января 2018, 01:59 | Сообщение # 8458 |
старожил
Сейчас нет на сайте
| На одном из обьектов должен быть Rigidbody2D, он есть?
|
|
| |
San-Sanych | Дата: Понедельник, 08 Января 2018, 19:38 | Сообщение # 8459 |
был не раз
Сейчас нет на сайте
| Вопрос по экспорту объекта из Cinema 4D в Unity В общем, я создал в синеме меч, сделал для него анимация, сохранил в формате c4d, далее перетаскиваю этот файл в unity и возникает такая ошибка: Cinema 4D couldn't convert the .C4D file to an fbx file. Try exporting the .C4D file to an fbx file manually. EXPORT_ERROR: Source either does not exist or cannot be located Пробовал в ручную в синьке сохранить файл в формате fbx, но он сохраняется без анимации.
|
|
| |
drcrack | Дата: Вторник, 09 Января 2018, 00:37 | Сообщение # 8460 |
старожил
Сейчас нет на сайте
| Цитата Cinema 4D couldn't convert the .C4D file to an fbx file. Try exporting the .C4D file to an fbx file manually. EXPORT_ERROR: Source either does not exist or cannot be located попробуй: запустить юнити от админа запустить синему от админа проверить чтобы в имени твоей учетки были только латинские символы сохранить файл так, чтобы в имени были только латинские символы и не было пробелов закрывать синему перед импортом
Сообщение отредактировал drcrack - Вторник, 09 Января 2018, 00:37 |
|
| |