Суббота, 16 Ноября 2024, 05:33

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

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

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

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

    Сообщение отредактировал QWER56 - Вторник, 26 Июля 2011, 20:54
  • Fr0sTДата: Четверг, 19 Июля 2012, 19:04 | Сообщение # 2561
    постоянный участник
    Сейчас нет на сайте
    Здравствуйте.Напишите пример на C#.Нужно чтобы при нажатии кнопки,когда объект двигается в определённую сторону он в неё ещё и поворачивался,а если нажимаю другую кнопку то он двигается в другую сторону и поворачивается в неё.В общем не знаю как попроще сделать чтобы объект поворачивался в сторону движения.



    iNikitДата: Суббота, 21 Июля 2012, 02:37 | Сообщение # 2562
    участник
    Сейчас нет на сайте
    Fr0sT, никогда такое не делал, но вот что у меня получилось:
    Code

      public Transform wayPoint;
      public float speed = 10;  
      private bool inForward, inBack;
       
      void Update () {
       if (inForward && Vector3.Distance(transform.position, wayPoint.position) > 1) {
        Vector3 relativePos = wayPoint.position - transform.position;
              Quaternion rotation = Quaternion.LookRotation(relativePos);
              transform.rotation = rotation;
        rigidbody.velocity = transform.forward * Time.deltaTime * speed;
       }
       if (inBack) {
        Vector3 relativePos = wayPoint.position - transform.position;
              Quaternion rotation = Quaternion.LookRotation(relativePos);
              transform.rotation = Quaternion.Inverse(rotation);
        rigidbody.velocity = transform.forward * Time.deltaTime * speed;
       }
      }
       
      void OnGUI () {
       GUILayout.BeginVertical("box");
       if (GUILayout.Button("Forward")) {
        if (inForward == true) {
         inForward = false;
        } else {
         inForward = true;
        }
        inBack = false;
       }
       if (GUILayout.Button("Back")) {
        if (inBack == true) {
         inBack = false;
        } else {
         inBack = true;
        }
        inForward = false;
       }
      }


    P.S. Требуется rigidbody



    Самый лучший юзер GCUP :3
    danielskachkovДата: Суббота, 21 Июля 2012, 09:28 | Сообщение # 2563
    постоянный участник
    Сейчас нет на сайте
    У всех языков скорость работы разная. У некоторых разница существенная, у некоторых почти не заметная. Но все же неоспоримо, что С++, например, бысрее C#. А если сравнивать Javascript и C#? Что же из них быстрее? И распространяется ли это правило на Юнити? Будет ли различаться производительность 2 совершенно одинаковых игр, если одна написана на Javascript, а другая на C#?

    Из-за преступной халатности работников Эрмитажа картина Казимира Малевича "Черный квадрат" два месяца провисела вверх ногами.
    SarCasmДата: Суббота, 21 Июля 2012, 09:59 | Сообщение # 2564
    заслуженный участник
    Сейчас нет на сайте
    Мне кажется юнити при компиляции всё переводит в какой-то единый, привычный для неё код, поэтому разницы не будет.

    Моя игра Gamiron#11 - Тема Скачать
    RacotДата: Суббота, 21 Июля 2012, 10:20 | Сообщение # 2565
    постоянный участник
    Сейчас нет на сайте
    Quote (SarCasm)
    Мне кажется юнити при компиляции всё переводит в какой-то единый, привычный для неё код, поэтому разницы не будет

    почти. Не "привычный для неё" , а для платформы, под которую идет компиляция. Все транслируется/интерпретируется в байт код


    Специалист "во всем" - специалист "ни в чем"
    ------------------------------------
    Script Reference для Unity3D
    Помогу со скриптами for Unity3D


    Сообщение отредактировал Racot - Суббота, 21 Июля 2012, 10:21
    llldimedrolllДата: Суббота, 21 Июля 2012, 11:37 | Сообщение # 2566
    был не раз
    Сейчас нет на сайте
    Приветствую)Как сделать поиск объекта в триггере?что бы искал только в районе тригера

    sk0rpi0nДата: Суббота, 21 Июля 2012, 12:13 | Сообщение # 2567
    Tiberium
    Сейчас нет на сайте
    Quote
    Как сделать поиск объекта в триггере?что бы искал только в районе тригера

    Можно попробовать вот так:
    Code

    function OnTriggerStay (other:Collider) {
       if (other.tag=="нужный тэг") {
        Нужное действие;
       }
    }

    Можно так же OnTriggerEnter и OnTriggerExit.




    Adventures of the Purple Ball - готов.
    Wanderer - готов.


    Сообщение отредактировал sk0rpi0n - Суббота, 21 Июля 2012, 12:13
    Fr0sTДата: Суббота, 21 Июля 2012, 19:42 | Сообщение # 2568
    постоянный участник
    Сейчас нет на сайте
    iNikit,
    Не у тебя там чтото не то,зачем вейпойнты?Мне для персонажа игрового сделать,чтобы его моделька поворачивалась в сторону движения.




    iNikitДата: Суббота, 21 Июля 2012, 21:06 | Сообщение # 2569
    участник
    Сейчас нет на сайте
    Fr0sT, вроде понял чего ты хочешь. Объясни: Каким образом он передвигается (желательно код), в какую сторону?


    Самый лучший юзер GCUP :3
    Fr0sTДата: Воскресенье, 22 Июля 2012, 11:42 | Сообщение # 2570
    постоянный участник
    Сейчас нет на сайте
    iNikit,
    Кода у меня нет,я не совсем вгоняю как его написать.Фишка в том чтобы персонаж поворачивался в сторону своего движения,как это делает 3rd Person Controller,вот нашёл в его скрипте такой момент
    // Set rotation to the move direction
    if (IsGrounded())
    {

    transform.rotation = Quaternion.LookRotation(moveDirection);

    }
    может кактотак?




    iNikitДата: Воскресенье, 22 Июля 2012, 11:59 | Сообщение # 2571
    участник
    Сейчас нет на сайте
    Fr0sT, всё, я понял что ты хочешь. А разве не легче просто поворачивать твой объект, а потом толкать его в сторону transform.forward? Так будет куда-проще.


    Самый лучший юзер GCUP :3
    RacotДата: Воскресенье, 22 Июля 2012, 12:17 | Сообщение # 2572
    постоянный участник
    Сейчас нет на сайте
    Fr0sT, загляни в 3DPlatform Tutorial

    Специалист "во всем" - специалист "ни в чем"
    ------------------------------------
    Script Reference для Unity3D
    Помогу со скриптами for Unity3D
    Fr0sTДата: Воскресенье, 22 Июля 2012, 13:16 | Сообщение # 2573
    постоянный участник
    Сейчас нет на сайте
    iNikit,
    не,у меня платформер,поэтому нужно именно так как я сказал.Хотя с одной стороны если движение в две стороны можно просто rotate на 180 поворачивать нажатием в сторону.
    Racot,
    ок посмотрю

    Добавлено (22.07.2012, 13:16)
    ---------------------------------------------
    А не подскажет ктонить,как сделать чтобы мой игрок всегда стоял перпендикулярно плоскости?Если например он в гору бежит то прям перпендикулярно плоскости и бежал.




    RacotДата: Воскресенье, 22 Июля 2012, 13:48 | Сообщение # 2574
    постоянный участник
    Сейчас нет на сайте
    Fr0sT, ты сначала начни с земли, а потом и на потолок стены полезешь happy

    Специалист "во всем" - специалист "ни в чем"
    ------------------------------------
    Script Reference для Unity3D
    Помогу со скриптами for Unity3D
    gaaradimДата: Воскресенье, 22 Июля 2012, 15:36 | Сообщение # 2575
    был не раз
    Сейчас нет на сайте
    хай , помогите плиз чтоб было так со скриптом
    var blablabla = 5;
    и чтоб каждую секунду отнималось значение из данной переменной


    Сообщение отредактировал gaaradim - Воскресенье, 22 Июля 2012, 16:48
    Fr0sTДата: Воскресенье, 22 Июля 2012, 17:31 | Сообщение # 2576
    постоянный участник
    Сейчас нет на сайте
    Racot, хорошё,ну а как примерно это делается ты знаеш?Я даже представитьне могу.Ну я конечно могу но сам понимаеш=)



    ZeroCoolДата: Воскресенье, 22 Июля 2012, 22:49 | Сообщение # 2577
    почетный гость
    Сейчас нет на сайте
    Недавно задался вопросом о выборе Яп. Хотя начал изучать С#
    Хотелось бы услышать мнение какой Яп выбрать, C# или JavaScript? Boo сразу откинул
    В рунете пишут по разному: якобы на шарпе много уроков\примеров, как на яве процентов 60...
    Посмотрел спавку на офф сайте, там есть выбор на каком япе отображать код.
    Таке вот, по моему структура кода Java по мне более компактно и понятно, нежели шарповские классы которые растянуты >.<

    Упор делается на то что в будущем я без "затруднения" мог найти нужные мне примеры с кодом, дабы не сочетать два яп в одном проекте.
    Т.к. не советуют использовать несколько ЯП в одном проекте, возможны неприятные нюансы которые приведут к неработоспособности определённых моментов.

    У меня паранойя или это скрытый намёк:
    В демке юнити 3.5.х используется скрипты которых большая часть на яве, остальное на шарпе штуки ... два biggrin
    На офф сайте открыв раздел скрипты в мануае предсавленный код по умолчание отображается на яп. ява

    П.С. Кто знает почему когда используешь кисть на террейне засаживая лесом и ставя галочку на коллайдер, игрок проходит их на сквозь хотя должен сталкиватся...




    Сообщение отредактировал ZeroCool - Воскресенье, 22 Июля 2012, 23:16
    iNikitДата: Воскресенье, 22 Июля 2012, 22:59 | Сообщение # 2578
    участник
    Сейчас нет на сайте
    ZeroCool, бери шарп, ибо он быстрее раза в 2 работает.


    Самый лучший юзер GCUP :3
    DeusEx-12Дата: Воскресенье, 22 Июля 2012, 23:36 | Сообщение # 2579
    постоянный участник
    Сейчас нет на сайте
    Quote (ZeroCool)
    Недавно задался вопросом о выборе Яп. Хотя начал изучать С#

    Литературы достаточно и по одному и по другому языку. Тем не менее изучение С# имеет свои плюсы в том плане, что зная его можно программировать далеко за пределами web. Собственно, С# совершенно полноценный ОО язык. Захотите потом на базе имеющихся знаний писать консольные или winForms приложения? Без проблем. Хотите использовать MONO для портируемости на Mac/Linux? Легко. Захотите создавать игры на другом движке или использовать XNA Framework? Да пожалуйста.

    В то же время применение JavaScript ограничено (в основном) вебом. Это хороший язык со своими плюсами и, что для многих принципиально, еще более легкий в изучении (хотя и C# назвать трудным язык не поворачивается). Что касаемо примеров кода: Вы или будете писать свой код (понимая что Вы пишете) или можете про него забыть. Заниматься копипастой кусков непонятного кода - бессмысленно.


    Ищем партнёров в РФ для реализации (продажи) и поддержки ПО

    Сообщение отредактировал DeusEx-12 - Воскресенье, 22 Июля 2012, 23:41
    ЛевшаДата: Понедельник, 23 Июля 2012, 00:55 | Сообщение # 2580
    почти ветеран
    Сейчас нет на сайте
    Quote (DeusEx-12)
    применение JavaScript ограничено (в основном) вебом.

    Оригинальный Js и U_Js - у них мало общего, ИМХО.

    Quote (iNikit)
    бери шарп, ибо он быстрее раза в 2 работает.

    Cказки не надо рассказывать... cool

    Выбор языка зависит от целей в будущем.
    Если цель - это комфортная и быстрая разработка игр и приложений именно только в Unity - однозначно U_Js.
    Ну а если цель - это развитие в области программирования как специальности и переход впоследствии к другим средам разработки и не только в игрострое - тогда конечно C#, ибо он универсален и поддерживаетьсмя большим кол-вом сред, тогда как U_Js разработан специально для Unity и в этом смысле ограничен. (хотя тоже вопрос спорный, была надобность - я как-то легко перескочил с него на Squirell) smile ИМХО.
    На данном этапе я профессионально работаю с Unity и мой выбор однозначен - U_Js. smile


    X.cor.R (Prologue)

    Сообщение отредактировал Левша - Понедельник, 23 Июля 2012, 00:56
    Поиск:

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