Вопрос-[ответ] по Unity
| |
QWER56 | Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1 |
старожил
Сейчас нет на сайте
| Вопрос-[Ответ] по Unity3d
База скриптов Unity3d Курс Уроков по Unity 3D от Alcatraz
ConsMark - поисковик по интернет магазинам.
Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54 |
|
| |
Nevlin479 | Дата: Суббота, 15 Октября 2016, 18:52 | Сообщение # 8161 |
уже был
Сейчас нет на сайте
| Добрый вечер,уважаемые форумчане! Не могли бы Вы подсказать, в каком направлении мне копать. Суть такова: Есть персонаж. Как сделать,что бы собрав 10 ключиков, открылась к примеру дверь?
Заранее благодарю за ответ!
Счастлив тот,кто научился искренне любить.
Сообщение отредактировал Nevlin479 - Суббота, 15 Октября 2016, 18:52 |
|
| |
Морриарте | Дата: Суббота, 15 Октября 2016, 19:14 | Сообщение # 8162 |
LINUX ФАНАТ
Сейчас нет на сайте
| Цитата Nevlin479 ( ) Есть персонаж. Как сделать,что бы собрав 10 ключиков, открылась к примеру дверь? Проверка условия.
|
|
| |
Бозингар | Дата: Воскресенье, 16 Октября 2016, 10:51 | Сообщение # 8163 |
почетный гость
Сейчас нет на сайте
| Цитата Nevlin479 ( ) Как сделать,что бы собрав 10 ключиков, открылась к примеру дверь? Как-то так:
Код If (int key >= 10) { bool open_door = true; } Всё зависит от условий конкретно поставленной задачи.
___
Пытаюсь разобраться в волновых алгоритмах поиска пути. Если пигмейским языком, то выходит следующее: 1. Создаём двумерный массив клеток поля типа {1,0,0,0,1}, => 2. Циклом ищем путь (если 0 - ячейка пустая, если -1 - занята) => 3. Из клеток пути создаём waypoint'ы, по которым шагает юнит? Начну с простого: имеется игровое поле из тайлов-квадратиков. На его основе логичней всего генерировать матрицу (0 - если клетка пустая, -1 если здание и т.д) и далее уже от него отталкиваться с алгоритмом проходимости?
#Хийвэл бүү ай, айвал бүү хий.
Сообщение отредактировал Бозингар - Воскресенье, 16 Октября 2016, 11:47 |
|
| |
EchoIT | Дата: Воскресенье, 16 Октября 2016, 13:04 | Сообщение # 8164 |
старожил
Сейчас нет на сайте
| Только обе переменные должны быть объявлены выше, иначе в другом участке кода доступа к ней не будет. И вообще, это можно записать проще:
Цитата Пытаюсь разобраться в волновых алгоритмах поиска пути. Если пигмейским языком, то выходит следующее: 1. Создаём двумерный массив клеток поля типа {1,0,0,0,1}, => 2. Циклом ищем путь (если 0 - ячейка пустая, если -1 - занята) => 3. Из клеток пути создаём waypoint'ы, по которым шагает юнит? Я же уже отвечал. Двумерный массив. * - персонаж, 0 - пусто, 1 - занято, x - точка назначения. 0 0 0 * 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 x 0 0 0
Единицы, т.е. препятствия, заносишь из игрового мира, соответственно, считая клеточки, строишь путь по нулям. Начни с этого.
Долгожданный анонсик: State of War
Сообщение отредактировал EchoIT - Воскресенье, 16 Октября 2016, 13:07 |
|
| |
Бозингар | Дата: Воскресенье, 16 Октября 2016, 15:54 | Сообщение # 8165 |
почетный гость
Сейчас нет на сайте
| Цитата EchoIT ( ) Я же уже отвечал Хорошо-бы по делу и по теме. А про двумерный массив, матрицу и счёт ячеек я и сам написал. Посему впредь попрошу игнорировать мои сообщения - меня интересует конкретика и ответы понимающих в теме людей, а не повторение мной-же сказанного.
#Хийвэл бүү ай, айвал бүү хий.
|
|
| |
EchoIT | Дата: Воскресенье, 16 Октября 2016, 17:49 | Сообщение # 8166 |
старожил
Сейчас нет на сайте
| Цитата Хорошо-бы по делу и по теме. А про двумерный массив, матрицу и счёт ячеек я и сам написал. Посему впредь попрошу игнорировать мои сообщения - меня интересует конкретика и ответы понимающих в теме людей, а не повторение мной-же сказанного. Так это по делу и по теме. Если вы сами всё так хорошо понимаете, в чём тогда проблема? Ставьте, пожалуйста, вопросы правильно, если хотите, чтобы на них правильно отвечали.
Долгожданный анонсик: State of War
Сообщение отредактировал EchoIT - Воскресенье, 16 Октября 2016, 17:50 |
|
| |
Heiwa | Дата: Воскресенье, 16 Октября 2016, 23:48 | Сообщение # 8167 |
был не раз
Сейчас нет на сайте
| Делаю игру с ужасающим кол-вом пререндеренных кат-сцен (по хронометражу их несколько часов). В них может быть вариативность (сюжетные развилки); то есть, некоторые детали в кат-сценах меняются в зависимости от геймплейного выбора.
Как мне лучше эти кат-сцены хранить?
Изначально собирался делать анимацию в виде массива изображений (*.gif[], или *.png[]), но оказалось, что Unity хранит все изображения в DDS (http://answers.unity3d.com/questions/807623/best-image-format-for-unity-game-textures.html), потому сборка с FullHD@60fps-анимацией длительностью в пару минут выглядит примерно вот так (см. приложенный скриншот). http://s1.uploadpics.ru/images/bJc95Y355b.jpg Если хранить и воспроизводить как видео, то придётся для каждой вариативности в каждой кат-сцене делать отдельное видео, что сильно ударит и по времени рендера, и по размеру игры.
Есть ли адекватный способ встроить в игру онлайн-видеопоток?
Как юзать в игре картинки из вне проекта (чтоб они не сериализировались стандартно и не весили как чья-то мамаша), и стоит ли это вообще делать?
Может стоит вообще сменить движок, если жанр — интерактивный фильм (принципиально важен скриптинг на C#)?
|
|
| |
uslucifer | Дата: Суббота, 22 Октября 2016, 21:59 | Сообщение # 8168 |
постоянный участник
Сейчас нет на сайте
| Здравствуйте! поворачиваю спрайт в направлении другого спрайта таким образом
Код Vector3 moveDirection = target.transform.position - transform.position; if (moveDirection != Vector3.zero) { float angle = Mathf.Atan2(-moveDirection.x, moveDirection.y) * Mathf.Rad2Deg; transform.rotation = Quaternion.AngleAxis(angle, Vector3.forward); } target - целевой объект объект поворачивается моментально.
вопрос: как изменить код, чтобы объект поворачивался плавно?
Сообщение отредактировал uslucifer - Суббота, 22 Октября 2016, 22:00 |
|
| |
EchoIT | Дата: Суббота, 22 Октября 2016, 23:58 | Сообщение # 8169 |
старожил
Сейчас нет на сайте
| uslucifer, Quaternion.Lerp или Quaternion.RotateTowards можно использовать.
Долгожданный анонсик: State of War
|
|
| |
Ranger | Дата: Воскресенье, 23 Октября 2016, 09:15 | Сообщение # 8170 |
почти ветеран
Сейчас нет на сайте
| Цитата Heiwa ( ) в виде массива изображений (*.gif[], или *.png[]), Жесть, а что не BitMap-ы без компрессии?
Цитата Heiwa ( ) Есть ли адекватный способ встроить в игру онлайн-видеопоток? тюк тюк
Сообщение отредактировал Ranger - Воскресенье, 23 Октября 2016, 09:16 |
|
| |
dimaantipanov | Дата: Среда, 26 Октября 2016, 08:10 | Сообщение # 8171 |
был не раз
Сейчас нет на сайте
| Начал переносить из блендера в юнити ландшафт и столкнулся с тем, что в блендере я сделал текстурирование ландшафта через ноды, с промежуточными текстурами где находиться на ув развертке тот или иной материал. Как тоже самое можно сделать в юнити?
|
|
| |
Barbatos | Дата: Среда, 26 Октября 2016, 18:43 | Сообщение # 8172 |
3D-моделлер/Руководитель
Сейчас нет на сайте
| dimaantipanov, Запечь текстуру в блендере и перенести в юнити.
Его остатки и на хлеб не намазать. Мой тебе совет Пабло - относись к жизни как к веселухе, но непродолжительной. @Эш
|
|
| |
mrFrankenstein | Дата: Четверг, 27 Октября 2016, 21:01 | Сообщение # 8173 |
частый гость
Сейчас нет на сайте
| Приветствую вас! Подскажите пожалуйста, каким образом можно осуществить Инстанцировать (Instantiate) префаб на определённые координаторы напрямую из папки Assets. Это вообще возможно? Буду очень рад каждому совету)
|
|
| |
dimaantipanov | Дата: Пятница, 28 Октября 2016, 04:53 | Сообщение # 8174 |
был не раз
Сейчас нет на сайте
| В том и вся загвоздка, что ландшафт большой и что бы запечь все текстуры и осталось качество более,менее нужно около 40 текстур расширением 2048\2048, а это мне кажется очень не эффективно,но я нашел способ лучше я установил себе Shader Editor и сделал все в нодах как и в блендере.там все тоже самое даже возможностей будет побольше) Добавлено (28 октября 2016, 04:53) --------------------------------------------- mrFrankenstein а перенести и выставить координаты не получиться?
|
|
| |
mrFrankenstein | Дата: Пятница, 28 Октября 2016, 07:45 | Сообщение # 8175 |
частый гость
Сейчас нет на сайте
| Цитата dimaantipanov ( ) перенести и выставить координаты не получиться? Должен появляться префаб с искрами при каждом выстреле. Как вы думаете, как часто я смогу переносить и выставлять его "руками"? Это нужно делать это через скрипт, правильно думаете.
|
|
| |
Barbatos | Дата: Пятница, 28 Октября 2016, 09:14 | Сообщение # 8176 |
3D-моделлер/Руководитель
Сейчас нет на сайте
| mrFrankenstein, Я не понял суть вопроса. Что выставлять руками?
Создаешь префаб, создаешь скрипт. В инспекторе в prefab - засовываешь префаб вспышки, перетащить мышкой из project в слот prefab в инспекторе. В инспекторе в MuzzelFlashP - засовываешь пустышку, которая обозначает позицию где будет вспышка.
Код public GameObject prefab; public GameObject MuzzelFlashP;
void Update(){
if(кто-то жмет кнопку выстрела){ Instantiate(prefab, MuzzelFlashP.transform.position, Quaternion.identity); }
}
Его остатки и на хлеб не намазать. Мой тебе совет Пабло - относись к жизни как к веселухе, но непродолжительной. @Эш
Сообщение отредактировал Barbatos - Пятница, 28 Октября 2016, 09:14 |
|
| |
EchoIT | Дата: Пятница, 28 Октября 2016, 11:59 | Сообщение # 8177 |
старожил
Сейчас нет на сайте
| mrFrankenstein, прям так, как вы хотите, можно через Resources.Load(). Но способ выше действительно удобнее.
Долгожданный анонсик: State of War
|
|
| |
mrFrankenstein | Дата: Суббота, 29 Октября 2016, 04:42 | Сообщение # 8178 |
частый гость
Сейчас нет на сайте
| Цитата EchoIT ( ) действительно удобнее. Это более чем верно, НО (!) не в этом случае. Я знаю как перетаскивать в инспектор нужный файл, но мне надо чтобы этот файл читался на прямую из памяти. Во первых: по тому, что (мне кажется) иметь на сцене добрый десяток скрытых объектов - не самая лучшая идея (имеется в виду модели оружия в которых будут вспышки-стрижки-шишки и ещё Бог знает что). Особенно это не удобно, когда переходишь с одной сцены на другую. Все префабы (кроме статичных конечно) нужно обратно перешерстить и проверить всё ли правильно работает, и работает ли вообще...
Во вторых: мне кажется, что эта функция ( Resources.Load(), если это то что нужно ) мне в будущем понадобиться. Если вы сможете объяснить или хотя бы подсказать где посмотреть (желательно на русском) про это, я буду очень благодарен))) И кстати, может быть вы знаете, где можно посмотреть информацию по оптимизации (желательно на русском. Можно и на Енглише если есть, но на Русском предпочтительнее)?
Сообщение отредактировал mrFrankenstein - Суббота, 29 Октября 2016, 04:44 |
|
| |
Ranger | Дата: Воскресенье, 30 Октября 2016, 06:30 | Сообщение # 8179 |
почти ветеран
Сейчас нет на сайте
| Цитата mrFrankenstein ( ) Все префабы (кроме статичных конечно) нужно обратно перешерстить и проверить всё ли правильно работает, и работает ли вообще...
в чем проблема? сделай 1 неуничтожаемый синглтон объект, который управляет ресурсами. к нему и обращайся.
|
|
| |
EchoIT | Дата: Воскресенье, 30 Октября 2016, 11:58 | Сообщение # 8180 |
старожил
Сейчас нет на сайте
| Цитата Это более чем верно, НО (!) не в этом случае. Я знаю как перетаскивать в инспектор нужный файл, но мне надо чтобы этот файл читался на прямую из памяти. Во первых: по тому, что (мне кажется) иметь на сцене добрый десяток скрытых объектов - не самая лучшая идея (имеется в виду модели оружия в которых будут вспышки-стрижки-шишки и ещё Бог знает что). Особенно это не удобно, когда переходишь с одной сцены на другую. Все префабы (кроме статичных конечно) нужно обратно перешерстить и проверить всё ли правильно работает, и работает ли вообще...
Их же не будет на сцене, ссылки на них будут только в скрипте. Хотя, даже так часто бывают ошибки, если сцен много.
Цитата Во вторых: мне кажется, что эта функция ( Resources.Load(), если это то что нужно ) мне в будущем понадобиться. Если вы сможете объяснить или хотя бы подсказать где посмотреть (желательно на русском) про это, я буду очень благодарен))) В справке, но вообще всё очень просто:
Код GameObject yourObject=Resources.Load("\\Folder\\File") as GameObject; Через Resource.Load можно загрузить файл из папки Resources. В примере выше путь выглядит так: Resources\Folder\File.prefab. ".prefab" - пример, расширение файла может быть любое, по-моему, и в пути к файлу, судя по справке, оно не пишется. Но на самом деле мне это не совсем понятно, что будет делать программа, если есть например File.prefab и File.material. Хотя там вообще есть возможность добавить typeof для фильтра, но не уверен, что это то, что нужно. К слову, если кто объяснит, буду признателен. Задумался об этом только сейчас.
Долгожданный анонсик: State of War
|
|
| |
|