Комментарии проекта Unity 3D
8

Звук в игре создаётся пачками

» Unity 3D
есть скрипт для озвучки
public void PlaySound(int y_soundNum)
{
GameObject y_gameObject = Instantiate(y_sfx, Vector3.zero, Quaternion.identity) as GameObject;
AudioSource y_audioSource = y_gameObject.GetComponent<AudioSource>();
y_audioSource.clip = y_audioClips[y_soundNum];
y_audioSource.Play();
Destroy(y_gameObject, y_audioClips[y_soundNum].length);
}
но при создании звука он создает сразу пачку объектов. как можно сделать так чтобы звуковой объект создавался только 1? нажатии кнопки, ходьбе, атаке???
Tevirp #1 - 3 месяца назад -2
Что то все равно никак�
Что то все равно не получается(
ledoed #2 - 3 месяца назад 0
а на оф юньке там что нет уроков или материалов как управлять звуком
Tevirp #3 - 3 месяца назад -2
Делал таким образом компанией звука на персонажа при ходьбе, но весь интерес в том что у меня сделан джойстик для движения.
И сделать условия на передвижения звук все равно проигрывается 1 за другим даже не успев начаться
Ledoe подскажи пожалуйста сайт где можно норм озвучку сделать, ато чувствую моим макаром я каши много не сварю)))
ledoed #4 - 3 месяца назад 0
ну смари есть юнит на него навесил компонент звука,и по обстоятельствам проигрывай его обращаясь непосредственно к этому компоненту,в теории звук запущеный должен прикрывать уже идущий
Tevirp #5 - 3 месяца назад 0
Спасибо. попробовал. Теперь звуковые объекты удаляются сразу, но все равно звук удаленых объектов проигрывается до конца
нет не так
Взял полность ваш скрипт попробовал. Но у меня там идёт несколько видов звука под разные условия. И при выполнении остаётся только 1 самый последний когда нужно несколько.
Пример бегал и стрелял. Если бежит. Норм, но при выставлении звук бега прекращается, включается выстрел. И наоборот.
Попробовал в условия поменять на y_audioClips[y_soundNum. Но при этом объекты созданные удаляются, а звук проигрывается до конца
А что за вариант с аудиодорожкой?
ledoed #6 - 3 месяца назад 0
GameObject y_gameObject;
public void PlaySound(int y_soundNum)
{
if(y_gameObject) Destroy(y_gameObject );
y_gameObject = Instantiate(y_sfx, Vector3.zero, Quaternion.identity) as GameObject;
AudioSource y_audioSource = y_gameObject.GetComponent<AudioSource>();
y_audioSource.clip = y_audioClips[y_soundNum];
y_audioSource.Play();
Destroy(y_gameObject, y_audioClips[y_soundNum].length);
}
ну конечно ваш вариант очень утечный,лутше уж уже дать юниту аудидорожку и проигрывать уже его из компонента,так как проигрывание будет прикрывать уже проигравшую музыку
Tevirp #7 - 3 месяца назад 0
Короче сделал отдельный СЃРєСЂРёРїС‚ чтобы Р·РІСѓРє создавался отдельным объектом Рё проигрывался. Далее просто делаю ссылку РЅР° СЃРєСЂРёРїС‚ Рё РІ условии указываю какой Р·РІСѓРєРѕРІРѕР№ объект создавать. РќРѕ СЏСЂРєРёР№ пример это прыжок. РџСЂРё нажатии РЅР° прыжок. Р—РІСѓРєРѕРІРѕР№ объект создаётся каждый раз РїСЂРё нажатии, если брать переменную bool определять РЅР° земле РѕРЅ или нет. РўРѕ Р·РІСѓРєРѕРІРѕР№ объект создаётся РІ нескольких экземплярах РїРѕРєР° персонаж РЅРµ наземное. Р’РѕС‚ теперь думаю можно ли РјРѕР№ СЃРєСЂРёРїС‚ сделать так чтобы ограничить количество созданных звуковых объектов РґРѕ 1. Р?ли подскажите как сделать иначерџ?Љ
Блин
Короче создал скрипт отдельный для создания отдельного звукового объекта
И спомощью ссылки на этот скрипт делаю условия для создания
Но при создании звуковой объект создаётся в нескольких экземплярах
Пример. Прыжок при нажатии на кнопку прыжка. Звуковой объект создаётся при каждом нажатии. Если брать переменную bool определяющую находится ли персонаж на земле или нет. То звуковой объект создаётся несколько раз до тех пор пока не преземлиться.
Р’РѕС‚ думаю как сделать так чтобы сделать ограничение РЅР° создание. Р?ли подскажите как сделать РїРѕ РґСЂСѓРіРѕРјСѓ чтобы этого избежатьрџ?Љ
Подскажите как сделать так чтобы звуковой объект создавался только 1 раз при выполнении условия
ledoed #8 - 3 месяца назад (отредактировано ) 0
звук друг на друга накладывается чтоле
да и непонятно каких обьектов,смотри префаб или метод юзаеться оч часто
4

Отражения игнорируют меш

» Unity 3D
Я что-то не смог загуглить решения проблемы. Почему рефлекшены игнорируются мешью? В сцене стоит обычный point light за дверью, но всё равно отражения есть. Всё стоит на статике с double sided опцией.
Черная Чайка #1 - 4 месяца назад 0
ENAleksey, Сначала да, не откидывал. Прогуглил, узнал, что игнорируются бекфейсы, и нужно включить дабл сайд. Включил, теперь тени отбрасывает правильно, а вот рефлекшен остался тем же.
прикреплены файлы
ENAleksey #2 - 4 месяца назад (отредактировано ) 0
Черная Чайка, всё-таки покажите настройки точечного источника света. Может быть, сам меш стены не откидывает тени?
Черная Чайка #3 - 4 месяца назад 0
ENAleksey, да
ENAleksey #4 - 4 месяца назад 0
А тени для точечного источника включены?
8

Сериализация объектов в C#

» Unity 3D
В этой статье будет подробно разобрана сериализация/десериализация объектов, ее предназначение, форматы и случаи, где какой формат сериализации использовать.

Читать далее...
GeneralElConsul #1 - 5 месяцев назад (отредактировано ) 0
Как только данные усложняются формат становится не сильно более понятным чем бинарный.
Как и твой приведенный, разве нет? Визуальный мусор есть, но сам формат простой. У меня не было случаев, когда не разобрался при просмотре тестового сохранения или я не писал ничего сложного.
Мои причины использования json очень простые: она почти ничем не хуже твоего метода; часто можно не писать парсер, а использовать работающую либу; этот формат известен всем в отличие от своего персонального.
Но твою позицию со своим форматом пониманию.
Doc #2 - 5 месяцев назад (отредактировано ) 2
Я согласен что если есть зависимость от сторонних тулз - можно и подстроиться под формат. В основном правда очень часто единственной тулзой является сам движок игры. И свой сериалайз + парсинг пишется очень и очень быстро, особенно в хайлевел языках, где работа со строками уже налажена. К примеру взгляните на:
здесь функция split_into_words_and_quoted_pieces из 60 строк это весь токенайзер. Далее парсинг совершенно тривиален и добавлять новые части к нему ничего не стоит.
он определяет скобки как блок данных, все нормально читается.
Это ничего не дает, в формате куча визуального мусора и он слишком прост чтобы в него сериализовать более сложные данные, например список из объектов разных под-типов.
Когда в жсоне один линейный список он читается нормально. Как только данные усложняются формат становится не сильно более понятным чем бинарный.
GeneralElConsul #3 - 5 месяцев назад 0
json рулит: по структуре проще xml, а сама структура более понятная чем прямой текст. Про читаемость - открыл в Notepad++ и поехали, он определяет скобки как блок данных, все нормально читается.
prog #4 - 5 месяцев назад 0
Doc, Согласен. Но на самом деле сильно зависит от юзкейсов. Например, собрать прототип на готовой JSON сериализации будет быстрее, если своей либы еще нет готовой - запилить потом другой алгоритм сериализации никто не мешает, когда понадобится и будет дополнительно время на это.
Сам пользуюсь JSON-ом для хранения статичных данных в своем основном проекте т.к. руки не дошли пилить кастомную сериализацию, а анрил из коробки понимает превращение таблиц данных в JSON и обратно и, соответственно, в наличии визуальный редактор и другие плюшки, которые иначе пришлось бы пилить вручную либо с нуля либо допиливать к существующим инструментам. Правда руками я их в итоге трогаю довольно редко, а ингейм сохранения всеравно в бинарниках.
Doc #5 - 5 месяцев назад (отредактировано ) 4
Все это медленнее (за исключением бинарной сериализации) и менее читаемо чем просто ручная запись файлов в плейн-текст формате уровня:
game_state
money 999.99
lives 12
Текст разбивается по пробелам и лайнбрейкам и ручками пишется recursive descent parser (простейшая вещь с которой справится и школьник). Подобный формат легко править и читать даже без наличия продвинутого редактора, он нормально будет смотреться в гит диффах. При желании легчайшим образом добавляется собственное версионирование, к примеру:
game_state
money 999.99 @Since 1.2
lives 12
Одумайтесь. Жсон и хмл совершенно нечитаемые форматы при больших объемах древовидных данных.
alexprey #6 - 5 месяцев назад 0
Ну так поведай нам.
Обратная-совместимость данных. Что делать, когда ты уже в продакшене, а надо расширить или урезать данные, сериализованные в формате X
Msey #7 - 5 месяцев назад (отредактировано ) 0
1.5к объектов не показатель
Msey
более 1500
Самый важный показатель сериализации не рассмотрен
Ну так поведай нам.
alexprey #8 - 5 месяцев назад -3
Если честно, то сравнение сериализации представлено так-себе. 1.5к объектов не показатель. Самый важный показатель сериализации не рассмотрен.
33

Где мне лучше создать планируемое?

» Unity 3D
Хочу создать игру, с сюжетной линией такой, как в помойном WoW. Тоесть с длинным и обширным сюжетом, множестком заданий и сюжетных прохождений.
И вот не знаю, на движке варика запилить компании, или в Юнити 3Д сделать это? Опытные люди, помогите, это важно
Cancel #4 - 6 месяцев назад -4
Предлагаю следующее, если ты в течении месяца мне скинешь екзешник, в котором будет интерфейс стартового меню и анимированные переходы между кнопками этого меню, я закину тебе 500$ на твой банковский счет или qiwi
Соглашайся! Найдёшь исполнителя со стороны, который сделает это за 100 баксов!
Araders #5 - 6 месяцев назад 0
Tiodor, достаточно давно.
Tiodor #6 - 6 месяцев назад 0
Графические функции это что-то типа как GUI в Варкрафте - доступны только в платной версии програмы.
лол, сколько лет ты не заходил в юньку? store.unity.com/ru/products/unity-pro
bifurcated #8 - 6 месяцев назад 0
Есть ещё одно "но", карту сделанную на WordEditor ты не продаш и ни кто у тебя её не купит. Да и Warcraft выпустили в 2003 это тебя не напрягает? Unity с каждым годом развивается, да и тебе для начала надо изучить C#, 3D программу и Photoshop, чтобы воплотить свою идеи в движке. Мидгард? С таким названием была мобильная MMORPG.
Msey #9 - 6 месяцев назад (отредактировано ) 0
Кроме того, если заюзаешь RenderEdge, сможешь превзойти по качеству любой проект на юнити.
На юнити можно сделать все, что имеется в варкрафте - и даже больше, не проиграв по качеству.
Варик все таки ущемлен по функционалу. А с юнити...здесь вопрос упирается в количество просранного на это время и в "на кой хер это вообще нужно".
Araders #13 - 6 месяцев назад 6
Unity
Плюсы:
  1. Для использования всех прелестей Unity тебе будут нужны знания программных языков - C++ или JavaScript, так же их изучение может помочь с дальнейшей карьерой.
  2. Так же у него есть магазин с бесплатными и платными наработками и материалами для твоего "чуда".
  3. Уже устоявшаяся площадка с кучей обучающих статей и видео уроков.
Минусы:
  1. Графические функции это что-то типа как GUI в Варкрафте - доступны только в платной версии програмы.
  2. Количество бесплатного софта настолько не велико что придется делать самому все начиная от графики заканчивая кодом.
  3. За то время пока ты освоишь этот Unity ты возможно сможешь найти себя!
Warcraft 3
Плюсы:
  1. Нету необходимости изучать что-то новое все что есть в редакторе карт уже давно расписано по полочкам.
  2. Бесплатный софт - качай столько сколько хватит места.
  3. Что бы что-то создать нету необходимости даже изучать язык программирования.
Минусы:
  1. Меньший функционал чем практически во всем в отличии от Unity.
  2. Да и в отношении графики Unity более гибкий.
Заключение:
Твой выбор зависит от того какой масштаб всего этого тебе нужен. Если небольшая история то бери Варик, если очень серьезный масштаб размеров аж в целую вселенную то бери Unity.
Прошу добрую часть админов закрыть этот вопрос нахрен.
Komkozavr #14 - 6 месяцев назад (отредактировано ) 4
Артас,
Вселенная Магии

Уже название вселенной не притягивает. А-ля сказки для детишек.

В моей игре все события будут происходить на нашей планете - Мидгард
Наша планета называется Земля или Терра. А Мидгард это откуда-то из Марвел.
Так что если знаешь, то скажи, на каком движке лучше делать уже готовый лор, КОТОРЫЙ ПОВТОРЮСЬ НЕ ОТНОСИТСЯ К ВСЕЛЕННОЙ АЗЕРОТА
Лол. А причем тут движок варкрафта? О.о
Ну создай свою вселенную на движке морровинда или обливиона. Тебе все равно придется создавать всё с нуля, то что я описал выше.
прикреплены файлы
PrincePhoenix #15 - 6 месяцев назад (отредактировано ) 4
В задницу себе запихни свои предложения не по теме
Лучше засунь свои амбиции куда подальше, в свое отверствие, например, и послушай реальные советы по твоим вопросам.
С текущим навыком ты не сможешь создать ничего из вышеперечисленного, я же тебе предложил нормальный способ развития в этой области, если не привлекает ТД-шка на варкрафте, создай мобилку простецкую для андроидов, с простейшей механикой игры и выложи в сеть, получи порцию говнокритики и сделай выводы, что пока ты еще бездарь, школьник-.
Критика нужна не для нас, а для тебя. Если ты на раннем этапе своей идеи уже готов бросаться с пеной изо рта на каждого, кто осудил твои идеи - твои идеи неудачные, гавно

Если бы я в свое время не пришел на XGM и не выложил свой "амбициозный проект" на форуме, не получив при этом порцию разноса моего анала, я бы не научился делать все то, что я умею сейчас.

Теперь вопросы:
Ты все еще думаешь, что твои идеи гениальны для отдельной игры? Выложи у себя в блоге и посмотри на реакцию людей, боюсь разочаровать, тебя быстро с небес на землю опустят.
Raised:
Конечно уверен. Тем более что под вар есть куча нормальных редакторов моделей, не то что все эти помойние Здмаксы, майи и блендеры. Куча всякой ерунды ненужной. Кроме того, если заюзаешь RenderEdge, сможешь превзойти по качеству любой проект на юнити.
Я под столом))
Raised #16 - 6 месяцев назад (отредактировано ) 1
Конечно уверен. Тем более что под вар есть куча нормальных редакторов моделей, не то что все эти помойние Здмаксы, майи и блендеры. Куча всякой ерунды ненужной. Кроме того, если заюзаешь RenderEdge, сможешь превзойти по качеству любой проект на юнити.
Даген Хитрейший #17 - 6 месяцев назад -6
PrincePhoenix, В задницу себе запихни свои предложения не по теме. Я спросил, какой движок лучше и мне нужно только это знать. Давай отвечай
Alexey103, А кто говорит, что я собираюсь переплюнуть близзард и делать по этой вселенной?!
Я свою игру хочу создать со своей вселенной. и эта вселенная называется - Вселенная Магии, впрочем такое же название носит и моя игровая фирма.
И сюжет там будет происходить в реальной вселенной, поэтому стандартные модельки варика мне вообще не нужны. В моей игре все события будут происходить на нашей планете - Мидгард. Лор я давно уже создал и проработал, по лору я давно уже обошёл близзард, поэтому я их ненавижу и презираю, они хороши только в Лоре, но не лучше меня. А в остальном их игры дисбалансны и неиграбельны.
Так что модели для моей игры нужны будут совершенно новые, возможно лишь пара моделей из WoW пригодятся, а именно те, что связаны с титанами.
Так что если знаешь, то скажи, на каком движке лучше делать уже готовый лор, КОТОРЫЙ ПОВТОРЮСЬ НЕ ОТНОСИТСЯ К ВСЕЛЕННОЙ АЗЕРОТА
Raised, Ты уверен?
Stalker Freedom, Вот и я об этом. А насчёт своих плюсов, я для этого и задал вопрос. Ты перечисли мне плюсы всех известных тебе движков, а Я уже сам решу на каком буду разрабатывать
Stalker Freedom #18 - 6 месяцев назад 0
Артас, всё зависит от того, что в твоём понимании значит "лучше". У каждого движка свои плюсы.
На варике сделать легче, там есть готовые наработки, все триггеры интуитивно понятны и твой проект имеет много шансов выйти в свет. Но на варике если ты и сделаешь, то заработать на этом вряд ли получится
Komkozavr #19 - 6 месяцев назад 0
Alexey103,
PrincePhoenix, А что юнити так сложен? Я слышал там игру за 20 минут можно сделать. Вот то что там нет достаточного количества заготовок моделей и механик, гораздо большая проблема.
Это на всем готовеньком. Чтобы создать с нуля ЭПИЧЕСКУЮ РПГ, нужно написать скрипты, придумать сюжет, детально проработать лор, создать персонажей, создать им историю, создать модели, текстуры, модели анимировать, создать локации, создать кучу оружия и доспехов, плюс сеты доспехов с оружием. Создать монстров с которыми ты будешь воевать, создать спеллы.
Правильно говорит Феникс, лет 5-10 уйдёт на реализацию этого, поэтому гораздо проще на движке варкрафта сделать. Мало одного знания юнити и хорошо шарить в нём.
uranus #21 - 6 месяцев назад -1
Проще всего на юнити создать платформер, достигается это за счет встроенной физики. Если не париться над анимациями, то де кода совсем немного придется писать. А вообще есть даже ролик от Microsoft, где как раз урок создания платформера. Но что-то более серьезное за 20 минут? Хм... вряд ли.
ledoed #22 - 6 месяцев назад -5
не слушай не кого бери юньку она удобная ,чем варик сложно будет по началу потом привыкнешь
Alexey103 #23 - 6 месяцев назад -1
PrincePhoenix, Всё сводится к тому что у нас разные понятия о том что такое игра, на стиме сейчас многие "игры" не подходят под ваши критерии.
PrincePhoenix #24 - 6 месяцев назад 4
насмотрятся роликов на ютубе и на одном лишь юношеском максимализме пытаются делать игру. Есть простые шаги к постяжению этой индустрии и начинаются они с элементарного изучения теории, позже работа над чужими идеями, чтобы разобраться, как оно выглядит все изнутри, долгие пробы и эксперименты, помимо всего еще и игровой экспириенс получать надо, чтобы была хоть какая-то библиотека идей в голове.Ну и на последок делать мини-игры, чтобы оценивать свой опыт в понимании структуры игры.
Raised #25 - 6 месяцев назад (отредактировано ) 1
ledoed, согласен. На WIII Engine это реализуется в разы проще.
ledoed #26 - 6 месяцев назад -1
никакой там на юньке вы все легко не сделаете,если не иметь хорошего опыта накопленые скрипты и тд,Это прежде всего титанический труд,даже делая какой нить арканоид.
Raised #27 - 6 месяцев назад 6
Артас, на движке вара лучше. Юнити неудобная фигня. И потом, Джасс перспективней шарпа как не посмотри.
PrincePhoenix #28 - 6 месяцев назад 0
Я и не имею в виду что за 20 минут на юнити можно сваять вов, но какую нибудь бродилку пугалку от первого лица думаю вполне возможно, при наличии нужного импорта и знания движка.
Невозможно. Даже шашки не сделаешь, и даже тетрис не сделаешь.
Слямзить с инета готовый пресет Ply Maker - это не "сделать", сделать - это придумать логику и геймплей игры.
Да и пугалку, тоже сделать ума много надо, без грамотного левел-дизайна и саунд подбора, ты максимум расмешишь или разозлишь игрока гениальностью своей разработки
Alexey103 #29 - 6 месяцев назад 0
PrincePhoenix, Но в реале это условие не имеет смысла, ты просто будешь говорить что это не он создал даже если он это сделает. А он скорее всего натыбрит наработок, в итоге получается что это демагогия, и в любом случае вы останетесь при своём.
PrincePhoenix, Я и не имею в виду что за 20 минут на юнити можно сваять вов, но какую нибудь бродилку пугалку от первого лица думаю вполне возможно, при наличии нужного импорта и знания движка.
PrincePhoenix #30 - 6 месяцев назад (отредактировано ) 4
А что юнити так сложен? Я слышал там игру за 20 минут можно сделать. Вот то что там нет достаточного количества заготовок моделей и механик, гораздо большая проблема.
Такие вот слухи и порождают вот таких вот "гениев" геймдева. Движок не сложный, но помимо того, чтобы разобраться в коде, есть еще: гейм-дизайн, левел-дизайн, сюжет, сценарий, музыка, графика интерфейса, маркетинг, управление, юридические сложности и многое многое другое.
Alexey103:
Я думаю ты проиграешь, что мешает ему стыбрить готовую наработку с гитхаба например?
Очевидно же, что я имел в виду "создать"
Хотя я думаю, он и этого сделать не сумеет

По сабжу, начинать нужно с малого, а не "ААА" проектов. Например ТДшку оригинальную сделать на wc3 хотя бы
Alexey103 #31 - 6 месяцев назад 0
PrincePhoenix, А что юнити так сложен? Я слышал там игру за 20 минут можно сделать. Вот то что там нет достаточного количества заготовок моделей и механик, гораздо большая проблема.
Артас, Нивалы на юнити даже мор утопию уже года три делают, а ты хочешь близзард переплюнуть. У юнити есть одно преимущество если по делу, твою игру на нём можно монетизировать, и только часть от прибыли заплатить разрабам, а у варика преимущества это то что тут больше стандартных ресурсов из той-же вселенной что ты собираешься воплощать, не нужно знать С# и другого кодинга, однако и монетизация затруднительна, всё равно потом придётся как айс фрогу искать спонсоров.
PrincePhoenix, Я думаю ты проиграешь, что мешает ему стыбрить готовую наработку с гитхаба например?
PrincePhoenix #32 - 6 месяцев назад 4
Я в Юнити быстро освоюсь, я в реальной жизни обладаю высшим интелектом и мудростью.
Unity.
Предлагаю следующее, если ты в течении месяца мне скинешь екзешник, в котором будет интерфейс стартового меню и анимированные переходы между кнопками этого меню, я закину тебе 500$ на твой банковский счет или qiwi, но если ты не выполнишь это, ты ставишь на аву "я самоуверенный баран школьник, который ничего не умеет"
Даген Хитрейший #33 - 6 месяцев назад (отредактировано ) -13
PrincePhoenix, А зачем этот помойный зачёркнутый текст? И где ты вдел в теме, что бы было написано, что посоветуйте в зависимости от моих навыков? Я в Юнити быстро освоюсь, я в реальной жизни обладаю высшим интелектом и мудростью. Просто если юнити не так хорош, как его описвают, то жаль будет потраченого на него времени. Вот и спрашиваю.
ПО ФУНКЦИОНАЛЬНОСТИ, где мне лучше создать игру с огромной и эпической сюжетной линией??
Компании в варике сделать или на юните 3Д? Или ещё какой нибудь движок есть для этого?
Игру я планирую в Жанре РПГ делать, как Divinity 2 Пламя Мести