Вопрос-[ответ] по Unity
| |
QWER56 | Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1 |
старожил
Сейчас нет на сайте
| Вопрос-[Ответ] по Unity3d
База скриптов Unity3d Курс Уроков по Unity 3D от Alcatraz
ConsMark - поисковик по интернет магазинам.
Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54 |
|
| |
pixeye | Дата: Воскресенье, 25 Марта 2012, 11:48 | Сообщение # 1761 |
Red Winter Software
Сейчас нет на сайте
| Quote (DarkScorp24) Есть скрипт атаки врага(он атакует меня). В скрипте присутствует команда атаки, срабатывающая в случае выполнения всех условий. Требуется сделать так, что команда атаки, могла выполнится , а могла и нет (Некая вероятность 50%/50%). Как провернуть данное дело? Если можно, то с примером
Code int chance = Random.Range(0,101);
if (chance>50) return;
hp-=dmg;
Добавлено (25.03.2012, 11:48) ---------------------------------------------
Quote (Eizahler) Еще возник вопрос. Я так понял, что абсолютно все связанное с C# для работы с Unity учить не нужно.
Сильно зависит от сложности проекта и опыта. Я например нередко пользуюсь linq, проблема в том, что зная только базовый синтаксис языка ты очень сильно себя ограничиваешь. Многие задачи которые на самом деле решаются проще чем тебе кажется ты будешь делать окольными тяжелыми путями.
Quote (Eizahler) Там где есть возможность сравнить код на US и C#, мне показалось, что языки не очень то одинаковы в написании.
Желательно использовать только один язык , исключение прикладные скрипты которые обычно ты содержишь отдельно от игровой логики. По эффективности сейчас особо нет различий, для новичков US чаще проще для понимания. Однако он бесполезен вне своей среды юнити.
ACTORS - мой фреймворк на Unity Until We Die - игра над которой работаю
|
|
| |
Eizahler | Дата: Воскресенье, 25 Марта 2012, 18:40 | Сообщение # 1762 |
участник
Сейчас нет на сайте
| Quote (pixeye) Я забыл/лень искать сейчас про соотношения в юнити и максе метрики, однако такая проблема у меня возникала и я смотрел на глаз, подгоняя маштабы в максе под маштбы юнити. Вот, в Unity Manual > User Guide > Asset Import and Creation > Meshes нашел: "Use File Units: This option is available only for 3dsMax files. If enabled it imports 3dsMax file with one Max unit equal to one Unity unit, otherwise it imports with 1 cm equal to 1 Unity unit." Если я правильно понял, то если объект из 3dsMax имеет y = 100, то и в Unity объекты должны иметь y = 100, что бы быть одинаковой высоты?
И еще. Вот эту строчку не совсем понял: "Scale Factor: Unity's physics system expects 1 meter in the game world to be 1 unit in the imported file." Объясните пожалуйста.
|
|
| |
sk0rpi0n | Дата: Воскресенье, 25 Марта 2012, 19:38 | Сообщение # 1763 |
Tiberium
Сейчас нет на сайте
| Подскажите, как сделать управление камерой, как в стратегии? Т.е. чтобы когда подводишь курсор к краю экрана, то камера начинает двигаться в ту сторону, где курсор? И как, собственно, мне отобразить курсор? Остальное, типа "невылета" камеры за карту, я и сам знаю, как сделать, и с этим разберусь, а вот с управлением как - хз...
Adventures of the Purple Ball - готов. Wanderer - готов.
|
|
| |
pixeye | Дата: Воскресенье, 25 Марта 2012, 19:44 | Сообщение # 1764 |
Red Winter Software
Сейчас нет на сайте
| Quote (Eizahler) И еще. Вот эту строчку не совсем понял: "Scale Factor: Unity's physics system expects 1 meter in the game world to be 1 unit in the imported file." Объясните пожалуйста.
Ну о чем собственно и гвоорил - метрика объективно влияет только на физику. Физика заточена под юнитевские метры. В таком случае она максимально реалистична. Тоесть если ты например включишь своим объектам гравитацию и сделаешь эти объекты непомерны большими относительно заложенной метрики то он будет очень медленно "падать"
Добавлено (25.03.2012, 19:44) --------------------------------------------- Quote (sk0rpi0n) И как, собственно, мне отобразить курсор? Создаешь объект курсора. И двигаешь его. Code void Awake(){ StartCoroutine(coCursorHandler()); }
IEnumerator coCursorHandler(){ Screen.showCursor = false; Transform cursTransform = GameObject.Find("myCursor").transform; while(true){ cursTransform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition); yield return 0; } }
ACTORS - мой фреймворк на Unity Until We Die - игра над которой работаю
Сообщение отредактировал pixeye - Воскресенье, 25 Марта 2012, 19:46 |
|
| |
sk0rpi0n | Дата: Воскресенье, 25 Марта 2012, 19:54 | Сообщение # 1765 |
Tiberium
Сейчас нет на сайте
| Quote Создаешь объект курсора. И двигаешь его. Пишет мол Assets/Scripts/CameraMoving.js(12,8): UCE0001: ';' expected. Insert a semicolon at the end. Assets/Scripts/CameraMoving.js(9,12): UCE0001: ';' expected. Insert a semicolon at the end. Что я не так делаю?(код скопипастил, ошибок не вижу вроде)
Adventures of the Purple Ball - готов. Wanderer - готов.
|
|
| |
pixeye | Дата: Воскресенье, 25 Марта 2012, 19:58 | Сообщение # 1766 |
Red Winter Software
Сейчас нет на сайте
| Quote (sk0rpi0n) Пишет мол Assets/Scripts/CameraMoving.js(12,8): UCE0001: ';' expected. Insert a semicolon at the end. Assets/Scripts/CameraMoving.js(9,12): UCE0001: ';' expected. Insert a semicolon at the end. Что я не так делаю?(код скопипастил, ошибок не вижу вроде)
очевидно, если ты суешь в js код из cs.
ACTORS - мой фреймворк на Unity Until We Die - игра над которой работаю
|
|
| |
sk0rpi0n | Дата: Воскресенье, 25 Марта 2012, 21:35 | Сообщение # 1767 |
Tiberium
Сейчас нет на сайте
| Quote (pixeye) очевидно, если ты суешь в js код из cs. Ох блин, надо идти отдыхать...
Adventures of the Purple Ball - готов. Wanderer - готов.
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 16:50 | Сообщение # 1768 |
заслуженный участник
Сейчас нет на сайте
| Пытался создать мультиплеер . Начал с этого http://unity3dscripts.ru/05/index.html . Пытался запустить в локалке. Но добиться того чтобы было видно двух игроков(я два клиента одновременно запустил) не получается. Помогите. Скиньте уроки попроще или обьясните что как делать.
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
|
|
| |
seaman | Дата: Понедельник, 26 Марта 2012, 19:23 | Сообщение # 1769 |
старожил
Сейчас нет на сайте
| 1.Сайт, который Вы указали, не работает. Поэтому посмотреть какой урок Вы считаете сложным,- никак. 2. Мультиплейер сам по себе сложная штука. Раз Вы за него взялись - видимо Вы уже сделали пару синглов? Покажите их, чтобы можно было оценить ваш уровень. PS^ Ну, а скорее всего Вы еще ничего не сделали. Поэтому совет - раз Вам такое сложно - беритесь за то, что проще. Сделайте тетрис. Если получится - тогда можно попробовать что-то посложнее. Вы что, считаете, что хирург сразу делает операцию по пересадке сердца? Да наверняка перед этим сотню раз аппендицит вырежет.
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 19:34 | Сообщение # 1770 |
заслуженный участник
Сейчас нет на сайте
| seaman, 1) Да у меня тож не работает. Странно. Ну хотяб в кеше сохранилось. могу скинуть копию. 2) да . Но мне то нужно просто чтоб два игрока могли бегать по терейну 20х20. и всё. Игр как таковых нет. но я же учусь. Учась создавать мультиплеер.
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
|
|
| |
seaman | Дата: Понедельник, 26 Марта 2012, 21:42 | Сообщение # 1771 |
старожил
Сейчас нет на сайте
| Еще раз - представьте хирурга, который учится вскрыв Вам грудную клетку. Зашить не сумел - "но я же учусь." Но вообще - Ваше дело - учитесь. Мое дело - посоветовать. Этот урок видели?- Урок
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 22:15 | Сообщение # 1772 |
заслуженный участник
Сейчас нет на сайте
| seaman, Я нашел укороченную версию: http://blogs.unity3d.ru/2010/09/networking-m2h_2b/ Добавлено (26.03.2012, 22:15) --------------------------------------------- Помогите со скриптом. Даю кусок скрипта-он из урока. Ругается на выделенный фрагмент.
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
|
|
| |
seaman | Дата: Понедельник, 26 Марта 2012, 22:18 | Сообщение # 1773 |
старожил
Сейчас нет на сайте
| Как ругается? Мы не экстрасенсы.
|
|
| |
_LeVoID_ | Дата: Понедельник, 26 Марта 2012, 22:32 | Сообщение # 1774 |
VoID
Сейчас нет на сайте
| Здравствуйте! Мне срочно нужна помощь в создании скрипта. Значит у нас есть игрок и движущаяся платформа. И игрок должен при соприкосновении с платформой продолжать двигаться вместе с ней до тех пор, пока не спрыгнет (классический платформер). Мне нужен именно скрипт, а не советы: "Возьми стандартный контроллер". Буду очень признателен, если вы мне поможете.
QLines v1.3 Forest Owl
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 22:48 | Сообщение # 1775 |
заслуженный участник
Сейчас нет на сайте
| seaman, Не то. Вот: Я понимаю что дело в > но убрав его, или ; оно продолжает ругаться.Добавлено (26.03.2012, 22:48) --------------------------------------------- Блин там вместо > должно быть & g t ; (без пробелов). (Долбаный форум и хтмл в целом)
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
Сообщение отредактировал Knight1032 - Понедельник, 26 Марта 2012, 22:46 |
|
| |
seaman | Дата: Понедельник, 26 Марта 2012, 22:57 | Сообщение # 1776 |
старожил
Сейчас нет на сайте
| Что не то?
Вы читать умеете? Еще раз: Quote Как ругается? Мы не экстрасенсы.
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 22:59 | Сообщение # 1777 |
заслуженный участник
Сейчас нет на сайте
| seaman, самое елементарное при простом удалении & g t ; Добавлено (26.03.2012, 22:59) --------------------------------------------- Дальше начинает не просто ругаться а диким матом ругаться .
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
|
|
| |
ShadowZi | Дата: Понедельник, 26 Марта 2012, 23:09 | Сообщение # 1778 |
постоянный участник
Сейчас нет на сайте
| А что ты хочешьто сделать?)
В указанном тобой коде тупо проверяется длинна массива и если она больше 0 (больше или равна 1), выполняется действие убираешь > в >= и получаешь операцию присваивания, те пытаешься в длину массива записать 1, но эта длинна доступна только для чтения(о чём говорит ошибка которую ты привёл).
зачем там qt и куда ты его пытаешься засунуть
|
|
| |
seaman | Дата: Понедельник, 26 Марта 2012, 23:10 | Сообщение # 1779 |
старожил
Сейчас нет на сайте
| А зачем Вы пытаетесь присвоить какой-то значение System.Array.Length? Что такое >=? И что Вы из него пытаетесь получить, убрав >?
>= - оператор сравнения. Значит именно то, что написано - больше или равно. В данном случае проверяется длина массива >= 1, т.е есть ли хоть один элемент в массиве. = - оператор присваивания. Значит - левому выражению присваивается значение справа от =. Убрав ">" Вы превратили сравнение в присваивание! Ну а длину массива присваиванием нельзя менять,- она только для чтения. Естественно он и ругается. PS^ Это настолько элементарные вещи, что слов нет.
|
|
| |
Knight1032 | Дата: Понедельник, 26 Марта 2012, 23:11 | Сообщение # 1780 |
заслуженный участник
Сейчас нет на сайте
| все кажись понял это ж хтмл походу запорол всё . Пасиба .
Да, я программист, дизайнер, сценарист, Я сам себе издатель и сам себе игрок...
|
|
| |
|