Искал это на просторах интернета, спасибо тебе огромное дружище ❤❤❤❤❤❤❤
@user-bc5qt9jy5b3 жыл бұрын
Все ясно и понятно разжевано, спасибо. Лайк и подписка. Движение камеры заработало сразу, проблема была с канвас, изменил режим рендеринга на мировое, все поперло. У тебя хорошо получается и не слушай тех, кто ждет от тебя готовую игру абы картинки туда свои воткнуть и родить очередной шлак для монетизации. Смотрел других блогеров, один беспорядочный бубнешь с пятого на десятое, каша из слов и понятий, у тебя же все ровно и последовательно, так держать.
@neverworld88154 жыл бұрын
Самый лучший (Старт) скрипт даже на сегодня ! Вот тут точно подписка. Был вариант сделать на основе ScreenRect(Скрипт из самого движка), но он довольно громоздкий.
@serjey88876 жыл бұрын
Спасибо! Очень полезным оказалось для создания игры, управление которой построено таким образом, что игрок следует за пальцем по оси X!
@andrewzadorozhniuk78484 жыл бұрын
Можешь подсказать как сделал(а)
@ВалерийЛысенко-н7к7 жыл бұрын
За урок спасибо. Как раз что искал.
@Сергей-у4д1м7 жыл бұрын
спасибо большое. Очень полезный урок.
@bay-23634 жыл бұрын
да у меня тоже
@estodvards25 күн бұрын
Спасибо за помощь!
@Lancellot19885 жыл бұрын
У вас уникальный контент, жаль забросили))
@eugenekrutoy14754 жыл бұрын
Согласен, 40 к подписчиков, стоило бы дальше развиваться. Много в чем разобрался благодаря данному каналу.
@SolutionTop3 жыл бұрын
Ты просто лучший!
@ОлегВоронин-б1ъ6 жыл бұрын
Подскажите как реализовать изменение положения обьекта с помощью свайпа по экрану.
@kristinawoncut45254 жыл бұрын
Прошёл год Узнал?
@Tim_Voronkin4 жыл бұрын
@@kristinawoncut4525 лол, самому интересно 🤣
@_storm_7154 жыл бұрын
@@kristinawoncut4525 как же все таки это реализуется?
@gamedevmobile4 жыл бұрын
Прошло 2 года. Узнал?
@Anakonda-m5r3 жыл бұрын
Прошло 3 года Узнал?
@georgeproleev7 жыл бұрын
Ты классный, люблю тебя!
@ANDROIDHELPERRU7 жыл бұрын
Спасибо!)
@georgeproleev7 жыл бұрын
да не за что, чисто по твоим туториалам делал игру
@РоманГривінський-б6и6 жыл бұрын
Можешь скинуть скрипт по X и по Y а то, у меня по X работает а как меняю на Y то начинает лагать
@YarikASMRPOMIRCHIY5 жыл бұрын
НУ ПОЧЕМУ У МЕНЯ НЕ РАБОТАЕТ;(
@salir-63383 жыл бұрын
Криворукий ты значит
@peweklee96375 жыл бұрын
Спасибо, лучший
@inovaregames3 жыл бұрын
а можно тоже самое, но с каким-то объектом?
@TheRoket002 жыл бұрын
Возможно видео старое, но получить компонент камеры лучше так main_camera = Camera.main; (Если она одна), и давайте осмысленные имена переменным
@АЛЕКСАНДРБОКША-з5в3 жыл бұрын
как сделать также только ещё по оси Y?
@ВалентинХода4 жыл бұрын
Как для этого примера сделать инерцию для камеры? Чтобы при отпускании кнопки мыши (тача) камера еще двигалась
@user-pt5uq8yc2o4 жыл бұрын
А этот метод в 3d игре будет работать?
@riotzone77674 жыл бұрын
Ну интересно. Надо будет попрактиковать. Можно такое видео и для анимации перемещения обьектов сделать.
@viktorlevsky56995 жыл бұрын
Все отлично работает. А вот что делать, если на сцене (допустим, карта с выбором уровней) есть объект с меняющимися координатами (например, отображение персонажа, который по завершению уровня смещается к следующему уровню). Вопрос: как задать позицию камеры относительно именно этого объекта (персонажа) при загрузке сцены (карты), не отключая при этом перемещение по сцене свайпом?
@tracersteam1267 Жыл бұрын
Помоему добавить в скрипт код "Vector3 = new Vector3 (координати)
@goryanchik4 жыл бұрын
Cannot implicitly convert type 'UnityEngine.Vector3' to 'float
@LovelyBeastie4 жыл бұрын
Вариант, который сработал в моём случае (3D, Perspective cam) public class CameraController : MonoBehaviour { private Vector3 startPosition; public Camera cam; private void Start() { cam = GetComponent(); } private void Update() { //получаем позицию при старте клика if (Input.GetMouseButtonDown(0)) { startPosition = cam.ScreenToViewportPoint(Input.mousePosition); } //пока держат левую кнопку мыши if (Input.GetMouseButton(0)) { //вычисляем дельту по х float pos = cam.ScreenToViewportPoint(Input.mousePosition).x - startPosition.x; //отнимаем дельту, для инвертированного движения transform.position = new Vector3(Mathf.Clamp(transform.position.x - pos, -50.0f, 50.0f), transform.position.y, transform.position.z); } } }
@itstillruns4 жыл бұрын
Очень резкое движение камеры получается. Как сделать его мягче в вашем коде?
@ThisIsMarsinal2 жыл бұрын
Огромное спасибо
@CreativeStudiochannel7 жыл бұрын
Отличный урок,лайк.Как раз сегодня сам написал скрипт только под андроид,вот только всё дёргается при передвижении
@fluffy68926 жыл бұрын
может кто помочь? у меня почему-то двигается в бок камера ,а должно по вертикали
@dushes_botalov7 жыл бұрын
Скорее всего уже был вопрос подобный, но тему не дадите для студии?) Или название, если готовая из инета.
@ANDROIDHELPERRU7 жыл бұрын
Есть урок как раз про преображению VS. Там и ссылку в описании дал. Найдите на канале.
@dushes_botalov7 жыл бұрын
ANDROIDHELPER [UNITY 5 and more] благодарю :)
@MANSKINI_Blitz3 жыл бұрын
как инвертировать движение камеры? я ставил " * (- 1) " , но у меня всё ломалось
@anderson-dz6dl3 жыл бұрын
как сделать свайп по вертикали помогите пж !!!!!!!!!!!!!!!!!!!!!!!!!!!
@kdas17426 жыл бұрын
Пожалуйста, подскажите, как тоже самое сделать для перспективной камеры?
@kdas17426 жыл бұрын
Решил 😆 Если кому нужно, то надо просто заменить cam.ScreenToWorldPoint, на cam.ScreenToViewportPoint
@Фаниль-я7щ7 жыл бұрын
когда уже сделаешь 3d гонку?! думаю многим интересно будет.
@redmanone37245 жыл бұрын
переписал под повороты в 3д, не работает, обидно
@EternalHardWorker2 ай бұрын
А в 3D это не сработает, да?
@Рецептыпростойивкуснойкулинари6 жыл бұрын
Как сделать чтобы экран не дергался влево при нажатии? А так все круто работает
@sportedit14803 жыл бұрын
а как зделать управление не тольео по x но и по z?
@elbarto10003 жыл бұрын
Круто)) А как сделать ползунок для передвижения камеры
@stanislavkusovskyi40357 жыл бұрын
Vector3 иемеет уже метод Lerp, можно было написать Vector3.Lerp(). Ну это так для справки, а так годно.
@ANDROIDHELPERRU7 жыл бұрын
Я знаю про этот метод и его не использовал, т.к для него надо создавать лишние векторы.
@FreeCoinsChannel4 жыл бұрын
@@ANDROIDHELPERRU но ты и так создаёшь new Vector3
@ANDROIDHELPERRU4 жыл бұрын
@@FreeCoinsChannel кажется я сказал *лишние*, а не придётся создавать Vector3
@FreeCoinsChannel4 жыл бұрын
@@ANDROIDHELPERRU о каких лишних векторах ты говоришь?
@ANDROIDHELPERRU4 жыл бұрын
@@FreeCoinsChannel Vector3.Lerp в параметры принимает векторы, а у нас используется только X координата, и целевая позиция в float.
@EgorRandomize4 жыл бұрын
А если свайп по ГУИ проходит?
@Raxlash4 жыл бұрын
Почему когда я сделал это для двух координат, у меня свайп вправо это наверх, а свайп наверх это движение вправо?
@qterrian41184 жыл бұрын
Поменяй x и y местами
@ButterflyEsophagus4 жыл бұрын
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraMove : MonoBehaviour { public float speed; private Vector2 startPos; private Camera cam; private float targetPos; // Start is called before the first frame update void Start() { cam = GetComponent(); targetPos = transform.position.x; } // Update is called once per frame void Update() { if (Input.GetMouseButton(0)) startPos = cam.ScreenToWorldPoint(Input.mousePosition); else if (Input.GetMouseButton(0)) { float pos = cam.ScreenToWorldPoint(Input.mousePosition).x - startPos.x; targetPos = Mathf.Clamp(transform.position.x - pos, -42.6f, 42.6f); transform.position = new Vector3(Mathf.Lerp(transform.position.x, targetPos, speed * Time.deltaTime), transform.position.y, transform.position.z); } } }
@yaroslav_34523 жыл бұрын
transform.position = new Vector3(Mathf.Lerp(transform.position.x, targetPos, speed * Time.deltaTime), transform.position.y, transform.position.z); Написана не там, где надо. Поэтому и не работает
@keshbel2 жыл бұрын
Надо ли говорить, что здесь с ошибками написано?*)
@Zehir_4 жыл бұрын
Для самых ленивых public float speed; private Vector3 startPos; private Camera cam; private float targetPos; void Start() { cam = GetComponent(); targetPos = transform.position.x; } void Update() { if (Input.GetMouseButtonDown(0)) { startPos = cam.ScreenToWorldPoint(Input.touches[0].position); } else if (Input.GetMouseButton(0)) { float pos = cam.ScreenToWorldPoint(Input.touches[0].position).x - startPos.x; targetPos = Mathf.Clamp(transform.position.x - pos, -3.0f, 3.0f); } transform.position = new Vector3(Mathf.Lerp(transform.position.x, targetPos, speed * Time.deltaTime), transform.position.z, transform.position.y); }
@nikitakoliada66686 жыл бұрын
А как ето зделать для 3д игри?
@kdas17426 жыл бұрын
Надо просто заменить cam.ScreenToWorldPoint, на cam.ScreenToViewportPoint
@apchi62693 жыл бұрын
а как сделать для 3d
@vitalexT7 жыл бұрын
как сделать что бы камера сама передвигалась туды сюды? (нужно для красивого главного меню)
@ANDROIDHELPERRU7 жыл бұрын
Анимация
@vitalexT7 жыл бұрын
можешь сделать ролик(Если небудет тем про что снять), я прост не пойму
@younggd Жыл бұрын
@Дарий да, не понимаю к чему тут анимация, если просто туды сюды
@РоманГривінський-б6и6 жыл бұрын
Можешь скинуть скрипт по X и по Y а то у меня по X работает а как меняю на Y то начинает лагать
@AndrewDreamKeeper6 жыл бұрын
Дайте кто ссылку на нормальный урок плз. Надо под сенсор (windows) чтоб вокруг модельки крутить камеру и свайпом приближать. ну как на мобильниках фотки увеличиваешь. Также будут кнопки по бокам.
@mavarok136 жыл бұрын
Я тоже это пытаюсь сделать. Если уже знаешь, как это сделать, то подскажи пожайлуста.
@Aleksandr-BSK4 жыл бұрын
Alexander zotov там видео найди
@DragonMount1767 жыл бұрын
Как сделать тоже самое только для perspective?
@JohnnyHazz7 жыл бұрын
для 3д камеры ничего не меняется, если вам нужно движение по двум\трём осям то добавляйте функции для "y" и для "z" (как в этом уроке для x)
@kdas17426 жыл бұрын
Надо просто заменить cam.ScreenToWorldPoint, на cam.ScreenToViewportPoint
@foxrage40444 жыл бұрын
Не работает агрится на float pos - говорит ; поставить
@tuitrox20517 жыл бұрын
А как поворачивать камеру в 3д мире ?
@JohnnyHazz7 жыл бұрын
так же, как и любой объект - менять ему transform.rotation
@omarkertis52947 жыл бұрын
Это сработает для тачей по планшету пальцем?
@ANDROIDHELPERRU7 жыл бұрын
А я что в уроке говорил 100500 раз?
@konstantin59717 жыл бұрын
Omar Kertis Сомнительно. Но ты возьми и проверь это)
@ANDROIDHELPERRU7 жыл бұрын
Если без моих "злых" слов, то да, это сработает.
@JohnnyHazz7 жыл бұрын
А видео посмотреть сложно? 7 минут как никак
@omarkertis52947 жыл бұрын
Что ты имеешь в виду?
@КириллИванов-е4ш9г7 жыл бұрын
можно самый тупой вопрос я просто вообще не понимаю в этом как сделать чтоб по нажатью кнопки на UI включался скрипт а при повторном выключался
@5pdamaster6167 жыл бұрын
Подключи SetActive на свой объект,потом помести этот скрипт ОБЯЗАТЕЛЬНО на другой объект,а еще можешь использовать ActiveSelf,чтобы было побыстрее
@slava75227 жыл бұрын
Как сделать для 3d игры, без движения по z ?
@kdas17426 жыл бұрын
Надо просто заменить cam.ScreenToWorldPoint, на cam.ScreenToViewportPoint
@ButterflyEsophagus4 жыл бұрын
Не работает
@AneUr05 жыл бұрын
Ребят плиз дайте этот скрипт, а то зная меня, если буду писать сам ,столько ошибок сделаю..
@bazilik21807 жыл бұрын
Не могли бы вы в следующем видео показать, как можно реализовать строительство (например - деревни) в своей игре. Спасибо.
@ИванВикторович-л8ж7 жыл бұрын
У меня твой скрипт вообще не работает и я написал свой, гораздо проще using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; public class CameraMovement : MonoBehaviour { public float speed; void Update() { if (Input.touchCount == 1) { float deltaPosX = Input.GetTouch(0).deltaPosition.x; gameObject.transform.Translate(new Vector2(-deltaPosX, 0) * Time.deltaTime * speed); } } } Работает только на сенсорном экране, для мышки нужен метод input.GetMousButton(0); и для получения движения курсора использовать GetAxis("Mous x");
@ИванВикторович-л8ж7 жыл бұрын
Лишние библиотеки подключены, я знаю)
@ИванВикторович-л8ж7 жыл бұрын
Не забудьте указать и инспекторе значение speed
@ИванВикторович-л8ж7 жыл бұрын
GetAxis("Mouse X")
@ANDROIDHELPERRU7 жыл бұрын
Может быть и проще, но работать он будет только на мобильных устройствах. И ещё без понятия, что со стабильностью. Если мой скрипт не работает, значит вы видео вообще не смотрели.
@ИванВикторович-л8ж7 жыл бұрын
Смотрел, несколько раз, сделал все точно так же, не работает!
@MrZoran4ik5 жыл бұрын
с такими transform в Update - оптимизация убита
@ANDROIDHELPERRU5 жыл бұрын
Не смешите. Тут особо ничего нет, чтобы оно убивало оптимизацию.
@MrZoran4ik5 жыл бұрын
@@ANDROIDHELPERRU убивает если в камере есть канвас с оргомным количество меню, которые не должны двигаться
@ANDROIDHELPERRU5 жыл бұрын
@@MrZoran4ik что значит "если в камере есть канвас"?
@MrZoran4ik5 жыл бұрын
@@ANDROIDHELPERRU если мне нужно закрепить текст и менюшки(в которых огромное количество объектов) на камеру так что бы они не двигались. то просадка фпс колосальная. Получается что камера тянет с собой кучу объектов.
@MrZoran4ik5 жыл бұрын
@@ANDROIDHELPERRU и если в меню есть Scroll rect то они будут двигаться вместе с камерой на фоне
не хватает знака } в самом конце private Vector2 StartPos; private Camera Cam; public float Speed = 100f; private float targetPos; private void Start() { Cam = GetComponent(); targetPos = transform.position.x; } private void Update() { if (Input.GetMouseButtonDown(0)) StartPos = Cam.ScreenToWorldPoint(Input.mousePosition); else if (Input.GetMouseButton(0)) { float pos = Cam.ScreenToWorldPoint(Input.mousePosition).x - StartPos.x; targetPos = Mathf.Clamp(transform.position.x - pos, -999f, 999f); } transform.position = new Vector3(Mathf.Lerp(transform.position.x, targetPos, Speed * Time.deltaTime), transform.position.y, transform.position.z); } }
@amurlamur31255 жыл бұрын
++++++
@СергейЕврофимович4 жыл бұрын
Хочу сказать тем кто учится по его урокам не перенимать эту ужасную манеру именования переменных. Потому что допустим переменная pos, что она может значить? Пока не посмотришь на то что ей присваивается скорее всего подумаешь что либо это позиция камеры либо позиция прикосновения к экрану. Я уж не говорю про те милисекунды которые он сэкономил сокращая названия, наверняка за сэкономленое время он изобретёт лекарство от рака. Не хочу этим оскорбить автора, просто предупреждаю остальных
@ANDROIDHELPERRU4 жыл бұрын
Это название локальной переменной, присвоение которой не находится где-то далеко в коде. Так что краткое наименование pos, вполне себе логичное и не является "ужасной" манерой.
@СергейЕврофимович4 жыл бұрын
@@ANDROIDHELPERRU впринципе справедливо, но всё равно не считается хорошим тоном
@piperka_animate2 жыл бұрын
писец ты городишь заборы. touch drag используй, есть же)))) не позорь меня 😆😆
@ДимаЖуковский-о3ъ7 жыл бұрын
Зачем нам нужны твои свайпы? Закончи уже наконец-то уроки по кликеру. Это уже не первый твой проект где ты просто берёшь и заканчиваешь по нему снимать. Из-за этого твои видео полезны лишь наполовину...
@ANDROIDHELPERRU7 жыл бұрын
Отлично опомнились спустя пол года. Браво!
@ANDROIDHELPERRU7 жыл бұрын
Если бы все поддерживали эту линейку уроков по кликеру, я бы продолжил. Вам же ооооочень сложно поставить лайк, чтобы я увидел, что эти уроки ещё кому-то надо. На последнем уроке по кликеру 92 лайка на 7к+ просмотров. Поддержка выше крыши. Если вы считаете, что мои уроки "полезны на половину", то идите к какому нибудь другому ютуберу. Он то вас научит, как пользоваться ассет стором, чтобы качать всё готовое и опубликовать очередной треш в Google Play.
@ДимаЖуковский-о3ъ7 жыл бұрын
ANDROIDHELPER [UNITY3D and more] Полезны наполовину они только из-за вас, а поддержку тому проекту я дал максимальную которую мог и да вы не думали что просмотров мало с лайками из-за того что это тема по созданию игр не актуальна. Спасибо за совет, другой ютубер хоть точно будет идти до конца не смотря на свои просмотры и лайки, потому что он знает, то что больше 60000 т. подписчиков у него не будет.
@ДимаЖуковский-о3ъ7 жыл бұрын
ANDROIDHELPER [UNITY3D and more] И да, вы не подумали что я на этом канале могу находится не с самого начала, да и нужен мне пока только кликер.
@ANDROIDHELPERRU7 жыл бұрын
Если вы недавно на канале, то с какого перепугу вы начали говорить за всех "Зачем нам нужны твои свайпы? Закончи уже наконец-то уроки по кликеру"? Если что-то не устраивает, никто вас тут не держит (а то уже начали петь песни "Другие ютуберы точно идеальные, закончат всё что я скажу" и т.д) С просмотрами на той линейке видео было вполне нормально, но поддержки не было, вот я и приостановил эти уроки. Плюс 5 уроков по основам кликера не хватает? Уже интерфейс сами сделать не можете и придумать тему игры?
@TimeRP Жыл бұрын
А как соединить что бы можно было свайпать не только по оси x но и по оси y