Суббота, 16 Ноября 2024, 21:41

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос-[ответ] по Unity
QWER56Дата: Понедельник, 09 Августа 2010, 10:58 | Сообщение # 1
старожил
Сейчас нет на сайте
Вопрос-[Ответ] по Unity3d

  • База скриптов Unity3d
  • Курс Уроков по Unity 3D от Alcatraz

    ConsMark - поисковик по интернет магазинам.

    Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54
  • СамоделкинДата: Суббота, 11 Февраля 2012, 10:44 | Сообщение # 1561
    участник
    Сейчас нет на сайте
    Как решить? (яп не знаю вообще)
    - основные начальные мануалы все на яваскрипте, что очень важно.
    - Учебники по яваскрипты мне показались все слишком заточены под веб (по крайне мере то что я отыскал) и найти сразу практическое применение прочитанного в юнити маловероятно
    - К С# все вроде как уважительнее относятся
    - Литература по С# - справочник я по нему нарыл, который мне в целом по первым страницам хотя бы обшее представление обрисовал. И вроде как вижу ему реальное применение.
    Но все блин пишут на яваскрипте. Был бы я хоть чуток опытнее, то выбрал бы С# а так не знаю.. Куда не залезу простенький пример покоырять, посмотреть - все на яваскрипте. И даже официальные PDF-ки для новичков на unity3d.com Среди юзеров так вообще вроде мало кто С юзает.
    Если какой пример или подсказка нудна - то почти вегда на яваскрипте это.

    Товарищи, дайте мне аргумент какой-нить чтобы чашу весов склонить в любую сторону))

    И ссыль на ресурс/книгу по яваскрипту наиболее полезный и применимый в среде юнити тоже неплохо. А то одни браузеры описываются у всех)
    EyeДата: Суббота, 11 Февраля 2012, 10:52 | Сообщение # 1562
    заслуженный участник
    Сейчас нет на сайте
    Самоделкин, в юнити не JavaScript, а UnityScript.
    Учебников на эту тему не видел, ибо программирование довольно легкое. Весь API находится в ScriptingReference.
    Почитай оф. туториалы - 3D Platformer Game и FPS Tutorial. Там есть разбор US (JS).


    ICQ: 422190728,
    E-Mail: funnyalien@yandex.ru,
    Jabber: funnyalien@jabber.ru,
    Steam: funnyalienvalentine,
    Twitter: MrFunnyAlien,
    Skype: happyconsole,
    ВКонтакте: vk.com/twinemen,
    Мобильный: +79199212414.
    pixeyeДата: Суббота, 11 Февраля 2012, 11:30 | Сообщение # 1563
    Red Winter Software
    Сейчас нет на сайте
    Quote (Самоделкин)
    unity3d.com Среди юзеров так вообще вроде мало кто С юзает.


    Это заблуждение) но разумеется, людей использующих более простой язык больше, однако сомневаюсь что большинство коммерчески сделанных игр на юнити используют UnityScript.
    Ты ненайдешь в справочниках про javascript инфу по юнити, в Юнити нет JS. Это просто пиар название.

    Действительно, на US больше примеров, а С# подразумевает, что ты уже сам можешь отвечать на свои вопросы. Как правило если я чего то незнаю по C# то мне хватает справки майкрософта с его примерами. ( А незнаю разумеется много ).
    API - там практически каждый пример приведен и в US и C#. Над скриптом из трея выбираешь на каком языке показать пример.

    Перевод кода между US и С# на самом деле не сложная задача. Если не знаешь оба языка то тебе без разницы какой учить. Для меня было откровением насколько просто работать с C# после US.
    Начинать как всегда надо с простых вещей и азов. Тут тебе любой учебник по программированию подойдет.
    По началу будет выкидывать много ошибок самого разного и дурацкого характера. Это нормально, так как ты можешь запутаться элементарно в синтаксисе. С каждой полученной ошибки не беги сразу на форум а внимательно прочти ее, там указывается вплоть тебе до строчки откуда она произошла и почему. Как правило 80% таких ошибок ты можешь решить сам потратив на это 10-50 минут своего времени, почитав справки.
    Старайся не использовать примеры чужого кода. Почему? Объясняю - не умея программировать, ты будешь копировать чужой код, который на самом деле может оказаться дааалеко не самым удобным решением. Модифицировать же чужой быдлокод тяжелее чем написать свой и один раз выучиться на ошибке. Если уже потратил пару дней ломая голову, тогда обращайся.

    Сделай максимально простую игру - крестики нолики. Не потому что у тебя идей круче нет;-) А просто на этой игре уже нехило отточишь свой базовый навык.


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    seamanДата: Суббота, 11 Февраля 2012, 13:34 | Сообщение # 1564
    старожил
    Сейчас нет на сайте
    Quote
    Писал по BurgZerg'у. Проверял несколько раз. Всё в точности как у него.

    Плохо проверяете. AdJustedBaseValue пишется не так.
    Nekit_AutДата: Суббота, 11 Февраля 2012, 13:44 | Сообщение # 1565
    The Dizziness - Man
    Сейчас нет на сайте
    Quote (seaman)
    AdJustedBaseValue

    AdJustedBaseVlaue?


    seamanДата: Суббота, 11 Февраля 2012, 16:15 | Сообщение # 1566
    старожил
    Сейчас нет на сайте
    Зачем гадать - посмотрите урок то.
    PS^ подсказка. Большая или маленькая буква имеет значение!
    MeragonДата: Суббота, 11 Февраля 2012, 21:02 | Сообщение # 1567
    был не раз
    Сейчас нет на сайте
    Подскажите пожалуйста: не могу импортировать модельку из блендера, юнити ссылается на ошибку в конвертации (из blend в fbx). Читал оф. форум, обновил скрипт. Изменения нет, все еще просит блендер 2.45 и выше версии.
    - блендер у меня 2.61
    - юнити 3.4.2
    Единственное что он делает, так это префаб создает.
    jazzyДата: Суббота, 11 Февраля 2012, 21:32 | Сообщение # 1568
    заслуженный участник
    Сейчас нет на сайте
    Meragon, Нужно экспортировать в блендере в fbx,а не пытаться открыть блендоровский файл в unity
    MeragonДата: Суббота, 11 Февраля 2012, 21:36 | Сообщение # 1569
    был не раз
    Сейчас нет на сайте
    jazzy, о, спасиб, а то я только блендер начал разбирать, не заметил экспорт. Уж очень не дружественный интерфейс у редактора...
    jazzyДата: Суббота, 11 Февраля 2012, 21:42 | Сообщение # 1570
    заслуженный участник
    Сейчас нет на сайте
    экспорт по моему в любой программе в File->Export
    СамоделкинДата: Воскресенье, 12 Февраля 2012, 04:42 | Сообщение # 1571
    участник
    Сейчас нет на сайте
    Quote (Eye)
    API - там практически каждый пример приведен и в US и C#.

    Вот как раз яркий пример, по этой ссылке нет С шарп варианта. И такое именно на самых первых и простых этапах - когда только пытаешься понять принцип работы всей этой системы.
    Quote (Eye)
    Старайся не использовать примеры чужого кода.

    Я их использую не для применения (хотя конечно на автомате к каким-то чужим решениям пристраститься можно) - я их использую чисто для понимания синтаксиса и правил структуры кода. Вношу изменения и проверяю после, работает ли скрипт и как. Все эти запятые, подчеркивания, маленькие-большие буквы и скобки всех калибров, арифметические знаки, типы переменных и прочие штуки, которые еще друг друга часто не любят больше чем я их. И еще куча всего, чего я пока даже не могу назвать по имени). Это на первом этапе самая страшная беда. В справлчнике даже если прочитаешь описание оператора или чего-то еще - вовсе не значит, что поймешь почему скрипт на него ругается. Я пока двже не могу понимать толком написанный код, даже с комментариями.
    Понятно что все вопросы по началу решаемы за 5-10 минут, но если уже потратил час-полтора - но так и не узнал, что вся проблемма в маленькой букве вместо большой, то толку сидеть еще полтора часа. Я считаю, что вопросы такого плана полезнее сразу задавать (лишние полтора часа скилл не сильно повысят), - другое дело что мало кто любит на них отвечать и это понятно))

    Вопрос: на С# для Юнити новичку лучше учиться кодить в монодевелоп или полезно будет VisualStudio Express какой-нибудь? Разница будет в удобстве и темпах обучения?
    Имеет ли значение с какой версией С# я по учебнику знакомлюсь? Для Юнити это все фиолетово?


    Сообщение отредактировал Самоделкин - Воскресенье, 12 Февраля 2012, 05:10
    RikettaДата: Воскресенье, 12 Февраля 2012, 08:01 | Сообщение # 1572
    Strategist
    Сейчас нет на сайте
    Самоделкин, Unity3D базируется на Mono, так что действительно фиолетово. Ну желательно конечно по 4.0, т.к. новые библиотеки, больше "фишек" узнаешь.
    Хотя, скоро 5.0 выйдет, Майкрософт уже пирует. И студия 2012 выйдет скоро... >_<
    Опять под них прогибаться придется.


    Fougerite - Rust Server OpenSource API
    TerraDev - Terraria OpenSource Hack
    pixeyeДата: Воскресенье, 12 Февраля 2012, 10:18 | Сообщение # 1573
    Red Winter Software
    Сейчас нет на сайте
    Quote (Самоделкин)
    Вот как раз яркий пример, по этой ссылке нет С шарп варианта. И такое именно на самых первых и простых этапах - когда только пытаешься понять принцип работы всей этой системы.

    Тоесть я видимо дурак?)
    Насчет попыток понять принцип работы этой системы. В юнити нигде не написано что это учебная программа призванная научить тебя программировать. Это инструмент которым ты пользуешься. Для этого нужны навыки. Навыки приобретаются во время обучения. Перевод кода из US в С# в большинстве случаев не вызывает даже напряжения мозговой корки. Ну если только ты за раз не переводишь весь проект с его прописанной архитектурой. Следовательно жалоба безосновательна. В твоем случае ты хочешь "обучиться" на практике. Чтож - будет не просто, придется самому очень много рыть инфы. Это вообще твоя прямая обязанность - каждый день насиловать гугл на предмет нужных тебе вещей и знаний.

    Quote (pixeye)
    там практически каждый пример приведен и в US и C#. Над скриптом из трея выбираешь на каком языке показать пример.




    Quote (Самоделкин)
    Все эти запятые, подчеркивания, маленькие-большие буквы и скобки всех калибров, арифметические знаки, типы переменных и прочие штуки, которые еще друг друга часто не любят больше чем я их. И еще куча всего, чего я пока даже не могу назвать по имени). Это на первом этапе самая страшная беда.


    В отличии от многих человеческих языков "словарь" языка программирования куда меньше, чем ты думаешь;-), все что есть в программировании подчинено законам логики и арифметики ( если совсем утрированно )
    так что у тебя не должен вызыывать ужас арифметический знак.

    Кликаем - не скажу что прям, лучший справочник, однако кто ищет в гугле тот всегда найдет;-) Или книжку купи по C#.
    У страха глаза велики.


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю



    Сообщение отредактировал pixeye - Воскресенье, 12 Февраля 2012, 10:26
    seamanДата: Воскресенье, 12 Февраля 2012, 10:52 | Сообщение # 1574
    старожил
    Сейчас нет на сайте
    Quote
    лучше учиться кодить в монодевелоп или полезно будет VisualStudio Express какой-нибудь

    учиться лучше в VS с установленным решарпером. Очень много простейших ошибок, описок выявляется прямо в процессе написания, без необходимости проверять написанное в Юнити. Также прививается культура написания кода. Т.е. стандарт - переменные с маленькой буквы, методы с большой, приватное - начинаем с подчеркивания и т.д. Масса подсказок по улучшению кода - типа инверсии if для уменьшения вложенности скобок.
    СамоделкинДата: Воскресенье, 12 Февраля 2012, 11:52 | Сообщение # 1575
    участник
    Сейчас нет на сайте
    2pixeye Не понимаю чего ты завелся. Я не ною и не жалуюсь, претензий к программе (и уж к тебе тем более) не предъявляю, и все прекрасно осознаю из тех очевидных вещей что ты написал.

    Quote (pixeye)
    так что у тебя не должен вызыывать ужас арифметический знак.
    у меня вызвал ужас восклицательный sad

    Спасибо за ссылку - это удобнее того, чем я пользовался раньше в pdf. Как дочитаю иллюстрированную брошюрку с говорящими компьютерами и мартышками, делящими бананы, так сразу с-simple.ru станет моим кладезем знаний biggrin

    2seaman
    Спасибо Я именно это и имел ввиду. В моно ведь тоже предлагают варианты "дописания строки" налету, когда пишешь. Но если VS поможет быстрее привыкнуть к написанию кода без ошибок, то это несомненный плюс.
    Такие вопросы: Когда я писал код в монодевелоп он предлагал мне варианты только из тех что могут быть использованы в разработке скриптов Unity или вообще все возможное для C#?
    Я правильно понял, что при разработке в VS ошибки можно будет видеть прямо сразу там, а не возвращаюсь в консоль интерфейса Юнити?
    VS Express мне хватит или нужно качать полную версию?


    Сообщение отредактировал Самоделкин - Воскресенье, 12 Февраля 2012, 13:03
    pixeyeДата: Воскресенье, 12 Февраля 2012, 14:35 | Сообщение # 1576
    Red Winter Software
    Сейчас нет на сайте
    Quote (Самоделкин)
    Да - я хочу постичь именну ту область знаний в С# которая позволит мне более или менее осваивать именно Юнити.


    Эх.

    Самоделкин, я не завелся) ей богу, прости если у тебя сложилось такое мнение, просто не понимаю чего ты хочешь. Ну да, возможно самоучка не может тебе объяснить все "на пальцах", хотя бы потому, что учить кого то - это тоже навык и им надо обладать. Я могу тебе дать совет, могу постараться ответить на прямой вопрос который ты задашь по своему коду. Но учить кого - то c нуля - это ответственность)

    И извини меня конечно, но ты льешь много воды.
    Quote (Самоделкин)
    он "на пальцах" бы объяснил, как это все устроено, заняла бы пять минут.

    Никак не может занять
    Quote (Самоделкин)
    А через инет это не пять минут, а недели целые чтобы базис усвоить и пробелы все равно будут.


    Клик вот тебе второй ценный ресурс. По программированию игр на С++ и базовых концепциях программирования. УВЕРЯЮ, все, что там написано в большинстве своем применимо и в C#, написано человеческим доступным языком. Рассмотрены моменты разработки игр. Все очень интересно дано и займет при ленивом чтении и практики неделю времени. Так же описаны концепции программирования вообще.

    Quote (Самоделкин)
    Для абсолютного новичка невдомек что есть разница между заглавными и прописными и тд. Просто вы забыли, как это: видеть код, не имея никакого опыта яп.

    Не забыл, так же как и не забыл первую расстерянность когда захотел написать игру и незнал с чего начать вообще. Пустой лист перед глазами и из этого надо написать игру. И как бился бошкой над глупейшими вещами тоже помню.

    Так что терпение;-) Задавай конкретные вопросы по своему коду

    Quote (Самоделкин)
    Когда я писал код в монодевелоп он предлагал мне варианты только из тех что могут быть использованы в разработке скриптов Unity или вообще все возможное для C#?


    Monodevelop - это среда разработки. Ты можешь в ней писать программы вообще не имеющие отношения к unity. В самом примитивном представлении это просто удобный ( или не очень ) редактор кода. С таким же успехом ты можешь писать скрипты для юнити в блокноте notepad. Например я в свое время писал код на notepad++ c плагинами заточенными под удобную разработку.
    Во время работы ты можешь и скорее все при комплексных разработках будешь использовать функционал C#.


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    СамоделкинДата: Воскресенье, 12 Февраля 2012, 18:16 | Сообщение # 1577
    участник
    Сейчас нет на сайте
    Quote (pixeye)
    Monodevelop - это среда разработки...
    Это понятно. Я хотел бы знать следующее. Юнити поймет все что я написал в скрипте на C# (при условии что код без ошибок) или только то, что включено и описано в API Unity3D?
    И я подумал, раз монодевелоп поставляется сразу в связке с Unity, может он и заточен в этом варианте так, чтобы предлагать подсказки применимые для кодинга только под Unity. Потому и спросил. И вот еще -во всех скриптах что я смотрел:
    Code
    Using UnityEngine;
    Using System.Collections;
    Это мы так "инструментарий" наш определяем? Могут ли в скриптах Юнити использоваться какие-то еще "инструментарии" или всегда только это?
    (термины я в кавычки взял тк не помню как именно это называется (пространство имен вроде))
    pixeyeДата: Воскресенье, 12 Февраля 2012, 18:37 | Сообщение # 1578
    Red Winter Software
    Сейчас нет на сайте
    Quote (Самоделкин)
    Это понятно. Я хотел бы знать следующее. Юнити поймет все что я написал в скрипте на C# (при условии что код без ошибок) или только то, что включено и описано в API Unity3D?


    Эм. Да поймет.

    Quote (Самоделкин)
    Это мы так "инструментарий" наш определяем? Могут ли в скриптах Юнити использоваться какие-то еще "инструментарии" или всегда только это?
    (термины я в кавычки взял тк не помню как именно это называется (пространство имен вроде))


    Да, это называется пространством имен. Да, могут быть любые "инструментарии". Пример.

    Я хочу использовать Generic List в своем коде. Generic List это (Утрированно) массив. Более правильно типизированный список объектов, доступных по индексу. Особенность заключается в том, что он не имеет фиксированного размера и в него можно добавлять только один тип объектов.

    Для того чтобы такой штукой пользоваться, надо добавить

    Code
    using System.Collections.Generic;


    Теперь мы можем написать

    List<GameObject> myObjects = new List<GameObject>(); //создали список игровых объектов.

    В этот List можно будет добавлять ТОЛЬКО GameObjectы

    myObjects.Add(gameObject);

    GameObject o = myObjects[0];


    ACTORS - мой фреймворк на Unity
    Until We Die - игра над которой работаю

    seamanДата: Воскресенье, 12 Февраля 2012, 18:51 | Сообщение # 1579
    старожил
    Сейчас нет на сайте
    Quote
    при разработке в VS ошибки можно будет видеть прямо сразу там

    Далеко не все, но ошибки начинающих очень многие можно видеть сразу. Например неверный регистр практически сразу видно будет, что тут ошибка.
    Другое дело, что чтобы найти в чем ошибка нужно все же знать язык.
    PS^ Да и почти все это с решарпером. Сама VS не сильно отличается от Моно. Чуть удобнее, но не намного.
    СамоделкинДата: Понедельник, 13 Февраля 2012, 14:50 | Сообщение # 1580
    участник
    Сейчас нет на сайте
    Поставил VS2010 Express (пока без решарпера) - понравилось что при наведении на некоторые элементы окошко с их описанием высвечивается. Реально полезная фича. Пока еше толком не разобрался во всем, но под винды с этой штукой (VS) писать проги наверно раз в 100 быстрее чем без нее.
    Есть вопрос по Unity Input : В Мануале (Input - Mobile Input) сказано: Mouse simulation "Помимо поддержки нативных прикосновений (native touch support) Unity iOS/Android обеспечивает симуляцию мыши. Вы можете использовать функционал мыши со стандартным классом Input."
    Это значит, что если я напишу управление для тачскрина через Input.GetTouch то в режиме запуска проекта на самом Юнити, можно будет кликать мышкой и получать какой-то результат?
    Или просто имелось ввиду, что можно написать паралельно скрипт управления для мыши и для тачскрина (было бы странно писать о такой "фиче")?

    Еще: Дробные числа в коде всегда должны быть в хитрой системе счисления? В монодевелоп/VS нет кнопочки которая бы мне сразу перевела нужное число в 8- или 16-ричную систему?
    Парни спасибо за помощь. Теперь я просто обязан идти семимильными шагами, а то стыдно будет. Но пока все не так шустро=)


    Сообщение отредактировал Самоделкин - Понедельник, 13 Февраля 2012, 14:57
    Поиск:

    Все права сохранены. GcUp.ru © 2008-2024 Рейтинг