Error cs1503 argument 1 cannot convert from unityengine vector3 to float

I am new to Unity and C# code. I am doing a basic step by step tutorial from Brackeys and for no obvious reason I get this error that says "error CS1503: Argument 1: cannot convert from 'float...

I am new to Unity and C# code. I am doing a basic step by step tutorial from Brackeys and for no obvious reason I get this error that says «error CS1503: Argument 1: cannot convert from ‘float’ to ‘UnityEngine.Vector3′». The error appears on both rb.AddForce lines. Does anyone know what’s the problem here? I am using Unity 2020.3.29f1 Personal.

Thanks for your help.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerMovement : MonoBehaviour
{

    public Rigidbody rb;

    public float forwardForce = 2000f;

    void FixedUpdate()
    {
        rb.AddForce(0, 0, forwardForce * Time.deltaTime);

        if (Input.GetKey("d") )
        {
            rb.AddForce(500 * Time.deltaTime);
        }

        if (Input.GetKey("a") )
        {
            rb.AddForce(-500 * Time.deltaTime);
        }
    }
}

derHugo's user avatar

derHugo

77.4k9 gold badges67 silver badges105 bronze badges

asked Mar 1, 2022 at 3:44

SmIqbal's user avatar

4

There are different overloads of AddForce.

AddForce(Vector3 [, ForceMode])

and

AddForce(float, float, float [, ForceMode])

where the ForceMode is optional for both.

You are passing in only one single parameter float so the compiler thinks you want to use the first overload and tries in vain to convert the given float into a Vector3 and obviously doesn’t find any implemented way to do such thing.

You probably rather want

rb.AddForce(Vector3.right * 500 * Time.deltaTime);

or

rb.AddForce(500 * Time.deltaTime, 0, 0);

answered Mar 1, 2022 at 6:13

derHugo's user avatar

derHugoderHugo

77.4k9 gold badges67 silver badges105 bronze badges

error CS1503: Argument `#1′ cannot convert `UnityEngine.Vector3′ expression to type `UnityEngine.Ray’

I don’t even know what’s going wrong here, the Unity database is super vague and I just don’t know what I’m doing by using t$$anonymous$$s, but I’m having a problem with Spherecast. I’ve tried searc$$anonymous$$ng for answers online, but I couldn’t find an answer that solved my problem.

So t$$anonymous$$s is the ONE line of code that has huge problems, I dont know if I need to supply more code, but if I do, I’d happily provide you with more of the code. Anyway, here goes:

I dont know what is going wrong. I dont know why t$$anonymous$$s error is caused, when it seems like wherever I look, it tells me to give a vector3, w$$anonymous$$ch I am doing.

Some clarification or help would be great, thanks guys, Im just utterly lost on t$$anonymous$$s one

3 Ответов

Ответ от Landern · 19/12/16 17:10

You’re missing the RaycastHit.

The rest of the parameters after the RaycastHit have default parameters but you must supply origin, radius, direction, and $$anonymous$$tinfo parameters.

Ответ от UnityCoach · 19/12/16 17:16

According to the documentation, there are three implementations :

public static bool SphereCast(Vector3 origin, float radius, Vector3 direction, out RaycastHit $$anonymous$$tInfo, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);

public static bool SphereCast(Ray ray, float radius, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);

public static bool SphereCast(Ray ray, float radius, out RaycastHit $$anonymous$$tInfo, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);

The first one is the only one to take a Vector3. So you need to at least pass it : (Vector3 origin, float radius, Vector3 direction, out RaycastHit $$anonymous$$tInfo)

Источник

using System;
using UnityEngine;
using UnityEngine.InputSystem;

namespace platformer
{

    public class HeroInput : MonoBehaviour
    {
    
        [SerializeField] private Hero _hero;

        private HeroInputAction _inputActions;

        private void Awake()
        {
        _inputActions = new HeroInputAction();
        _inputActions.Hero.HorizontalMovement.performed += OnHorizontalMovement;
        _inputActions.Hero.HorizontalMovement.canceled += OnHorizontalMovement;

        _inputActions.Hero.SaySomething.performed += OnSaySomething;
        }

        private void OnEnable() 
        {
        _inputActions.Enable();
        }
        
    

        private void OnHorizontalMovement(InputAction.CallbackContext context )
        {
        var direction = context.ReadValue<float>();
        _hero.SetDirection(direction);
        
        }

        private void OnSaySomething(InputAction.CallbackContext context)
        {
          
        _hero.SaySomething();
        
        }   
    }
}

Pasho43K

0 / 0 / 0

Регистрация: 26.01.2019

Сообщений: 3

1

26.01.2019, 17:34. Показов 4691. Ответов 5

Метки нет (Все метки)


Помогите с ошибкой в коде C#, писал для игры на Unity, в консоли вышла ошибка: «AssetsScriptsPlayerController.cs(63,60): error CS1503: Argument 2: cannot convert from ‘method group’ to ‘float'».
Исправить ничего не помогает.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
[RequireComponent(typeof(Rigidbody2D))]
public class PlayerController : MonoBehaviour
{
    public float runSpeed = 3f;
    public Transform CircleTarget;
    public float radCir = 0.3f;
    private Rigidbody2D rb;
    public bool isGround;
 
    public void Jump()
    {
        throw new NotImplementedException();
    }
 
    public int Lives = 3;
 
    Rigidbody2D PlRgb;
    Animator Anim;
    SpriteRenderer sprite;
 
    void Awake()
    {
        PlRgb = GetComponent<Rigidbody2D>();
        Anim = GetComponent<Animator>();
        sprite = GetComponent<SpriteRenderer>();
    }
    private void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }
      
 
 
 
    public void Move(float ax)
    {
        Vector3 direction = transform.right * ax;
        transform.position = Vector3.Lerp(transform.position, transform.position + direction, runSpeed * Time.deltaTime);
    }
    void Update()
    {
        if (Input.GetAxisRaw("Horizontal") > 0)
        {
            PlRgb.velocity = new Vector3(runSpeed, PlRgb.velocity.y);
            sprite.flipX = false;
        }
        else if (Input.GetAxisRaw("Horizontal") < 0)
        {
            PlRgb.velocity = new Vector3(-runSpeed, PlRgb.velocity.y);
            sprite.flipX = true;
        }
        else
        {
            PlRgb.velocity = new Vector3(0, PlRgb.velocity.y);
        }
        if (Input.GetButtonDown("Jump") && isGround)
        {
            PlRgb.velocity = new Vector2(PlRgb.velocity.x, Jump);
        }
        Anim.SetBool("IsGround", isGround);
        Anim.SetFloat("Speed", Mathf.Abs(PlRgb.velocity.x));
 
    }
    void OnTriggerEnter2D(Collider2D Other)
    {
        if (Other.gameObject.tag == "Ground")
        {
            isGround = true;
        }
    }
    void OnTriggerExit2D(Collider2D Other)
    {
        if (Other.gameObject.tag == "Ground")
        {
            isGround = false;
        }
 
 
 
    }
}

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Администратор

Эксперт .NET

15248 / 12287 / 4904

Регистрация: 17.03.2014

Сообщений: 24,884

Записей в блоге: 1

26.01.2019, 17:45

2

Pasho43K, в 63 строке идет обращение к методу Jump без скобок — то есть это не вызов метода и так можно делать только в контексте делегатов. Кроме того метод Jump ничего не возвращает, в то время как конструктор Vector2 очевидно ожидает float. Как исправить ошибку тебе должно быть виднее.



0



Pasho43K

0 / 0 / 0

Регистрация: 26.01.2019

Сообщений: 3

26.01.2019, 18:33

 [ТС]

3

Дело в том, что при «public float Jump» для этого кода начинает выдавать ошибку второй код, который к привязан к первому. в 16 строке он ругается на Jump, т.к. он неназываемый член, который не может использоваться как метод. При этом программа предлагает создать метод PlayerController.Jump, при его создании он начинает ругаться на то, что тип PlayerController уже содержит определение для Jump(имеется ввиду «public float Jump»). Честно говоря не очень понимаю как это исправить.

Это второй код, который выдает ошибку в 16 строке —

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
[RequireComponent (typeof(PlayerController))]
public class UserController : MonoBehaviour { 
 
    private PlayerController pc;
 
    void Start() {
        pc = GetComponent<PlayerController>();
    }
 
    void Update() {
        if (Input.GetButtonDown("Jump")) { 
            pc.Jump();
    }
            pc.Move(Input.GetAxis("Horizontal"));
    }
}



0



489 / 285 / 129

Регистрация: 30.10.2018

Сообщений: 1,309

26.01.2019, 18:48

4

Pasho43K, в первом коде ты ожидаешь от метода Jump float, во втором ты хочешь что бы этот метод делал прыжок, ты определись.



0



0 / 0 / 0

Регистрация: 26.01.2019

Сообщений: 3

26.01.2019, 18:50

 [ТС]

5

Я хочу, чтобы при «Input.GetButtonDown(«Jump»)» был Jump.



0



489 / 285 / 129

Регистрация: 30.10.2018

Сообщений: 1,309

26.01.2019, 19:06

6

Цитата
Сообщение от Pasho43K
Посмотреть сообщение

PlRgb.velocity = new Vector2(PlRgb.velocity.x, Jump);

эту строки перекинь в метод и вызывай Jump()



0



Re: работа Raycast с tag

Макс писал(а):

elf01 писал(а):

Макс писал(а):то тогда она не знает что такое Hashtable

Зачем Hashtable, если в последних моих примерах я заменил Hashtable на словарь?

Понял. ну тогда я пока не знаю как те ошибки можно решить. Но ту строку длинную надо наверн разюить как нить.

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 07:44

Эти 4 ошибки аж бесят уже, пробовал объявить там или разбить на несколько, ничего не помогло(

Код: Выделить всё
error CS1502: The best overloaded method match for `System.Collections.Generic.Dictionary<string,UnityEngine.GameObject>.this[string]' has some invalid arguments
error CS1503: Argument `#1' cannot convert `int' expression to type `string'
error CS1502: The best overloaded method match for `UnityEngine.Object.Destroy(UnityEngine.Object)' has some invalid arguments
error CS1503: Argument `#1' cannot convert `object' expression to type `UnityEngine.Object'

Блин, да из-за этих ошибок у меня теперь даже игра не запускается пока не исправить их.

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение 2rusbekov 19 июл 2013, 08:15

Молодой человек, ну можно же погуглить почитай что такое Дишнэри, что такое Хэштэйбл. Как ими пользоваться.

Используется csharp

using UnityEngine;
using System;
using System.Collections.Generic;

public static class Global
{

              public static  Dictionary<String, GameObject> GO = new Dictionary<String, GameObject>();
}

public class InstantiateGO : MonoBehaviour {
public Light fonarik;
public GameObject cher;
private GameObject o;

        void Awake(){

         
                fonarik.enabled = !fonarik.enabled;

                string j;
                for(int i = 1; i<= 30; i++){

               
            o = GameObject.Instantiate(cher, new Vector3(Random.Range(100,1000),1,Random.Range(1000,100)),transform.rotation)  as  GameObject;
                        j = «cher»+i;
                        o.name = j;
                        Global.GO.Add(j, o);
                }
                if(Input.GetKeyUp(KeyCode.F)) fonaryk.enabled = !fonaryk.enabled;

        }

       
       
       
}

Используется csharp

using UnityEngine;
using System.Collections;
using System;

public class Playerr : MonoBehaviour {
private GUIText gText;
                private float dist = 5f;
        int i;
        // Use this for initialization
        void Start () {
        i=0;
        }

void Awake(){

gText = GameObject.Find(«kol cher»).guiText;//делаем ссылку  на гуи элемент
}

void Update () {
                              Ray ray = new Ray(transform.position,transform.forward);
               RaycastHit hit;

               
if(Physics.Raycast(ray,out hit,dist))
                {

                         Collider c = hit.collider;//делаем ссылку на  коллайдер
                         if(c.tag == «chep»)
                        {

                                 i++;
                                 gText.text=i+«»;
                                 Destroy(Global.GO[c.name]);//удаляем ГО по ссылке из массива
                                 Global.GO.Remove(j);//удаляем ссылку на ГО из массива
                         }
 }
}
}

Still alive…

Аватара пользователя
2rusbekov
Адепт
 
Сообщения: 1409
Зарегистрирован: 06 апр 2012, 12:57
Откуда: Бишкек

Re: работа Raycast с tag

Сообщение Макс 19 июл 2013, 08:27

Вот тут можно почитать о массивах и словаре:

http://habrahabr.ru/post/142285

И к каждому массиву там есть ссылочка на подробнейшую документацию на русском и с примерами, от msdn.microsoft.com

Макс
UNIверсал
 
Сообщения: 372
Зарегистрирован: 20 июн 2013, 23:05

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 09:35

2rusbekov писал(а):Молодой человек, ну можно же погуглить почитай что такое Дишнэри, что такое Хэштэйбл. Как ими пользоваться.

Макс писал(а):Вот тут можно почитать о массивах и словаре:

http://habrahabr.ru/post/142285

И к каждому массиву там есть ссылочка на подробнейшую документацию на русском и с примерами, от msdn.microsoft.com

Спасибо конечно, я почитал. Но тогда я не пойму почему остались ошибки:

Код: Выделить всё
error CS0103: The name `j' does not exist in the current context
error CS1502: The best overloaded method match for `System.Collections.Generic.Dictionary<string,UnityEngine.GameObject>.Remove(string)' has some invalid arguments
error CS1503: Argument `#1' cannot convert `object' expression to type `string'

Если по документации и по сделаному «вроде» правильно написано.

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение 2rusbekov 19 июл 2013, 09:59

Тут опечатка. Можно же и самому понять. Что j не существует, что напсиано и в ошибке. Её надо заменить на c.name

Используется csharp

Global.GO.Remove(c.name);

Still alive…

Аватара пользователя
2rusbekov
Адепт
 
Сообщения: 1409
Зарегистрирован: 06 апр 2012, 12:57
Откуда: Бишкек

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 10:02

2rusbekov писал(а):

Тут опечатка. Можно же и самому понять. Что j не существует, что напсиано и в ошибке. Её надо заменить на c.name

Используется csharp

Global.GO.Remove(c.name);

да я пробовал менять так но выскочило вот такое:

Код: Выделить всё
error CS0104: `Random' is an ambiguous reference between `UnityEngine.Random' and `System.Random'
error CS0103: The name `Random' does not exist in the current context
error CS0104: `Random' is an ambiguous reference between `UnityEngine.Random' and `System.Random'
error CS0103: The name `Random' does not exist in the current context
error CS1502: The best overloaded method match for `UnityEngine.Vector3.Vector3(float, float, float)' has some invalid arguments
error CS1503: Argument `#1' cannot convert `object' expression to type `float'
error CS1502: The best overloaded method match for `UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion)' has some invalid arguments
error CS1503: Argument `#2' cannot convert `object' expression to type `UnityEngine.Vector3'
error CS0103: The name `fonaryk' does not exist in the current context
error CS0103: The name `fonaryk' does not exist in the current context
elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение 2rusbekov 19 июл 2013, 10:12

Выложи оба скрипа полностью

Still alive…

Аватара пользователя
2rusbekov
Адепт
 
Сообщения: 1409
Зарегистрирован: 06 апр 2012, 12:57
Откуда: Бишкек

Re: работа Raycast с tag

Сообщение Макс 19 июл 2013, 10:27

Не, это жопа… там походу в разных скриптах, ошибка на ошибке, да ещё лог ошибок странный, ни имён ни номеров строк… Ты вообще в Юнити это пытаешся запускать, или в чём? где нормальный, развёрнутый лог ошибок из консоли Юнити?
Если хочешь чему-то научиться, то надо пытаться писать свои скрипты, и пробовать как по отдельности работают различные методы, а не тупо копипастить чужие, нифига в них не понимая.

Макс
UNIверсал
 
Сообщения: 372
Зарегистрирован: 20 июн 2013, 23:05

Re: работа Raycast с tag

Сообщение seaman 19 июл 2013, 11:46

Нужно просто читать ошибки, думать и читать документацию. Больше ничего не надо для решения всех проблем.
Первая ошибка. Random есть в нескольких местах. Это Вам четко написало — error CS0104: `Random’ is an ambiguous reference between `UnityEngine.Random’ and `System.Random’
Прочитали. Думаем. Их несколько, Компилятор сам не может решить какой использовать. Что нужно сделать?- Указать компилятору — какой использовать! Как указывается? Уточняется перед переменной/классом… Т.е. вместо Random нужно использовать UnityEngine.Random. Если он используется во многих местах — это нудно везде менять. Тогда используется using.
Т.е. в начале скрипта пишем:

Используется csharp

using Random = UnityEngine.Random;

Все, — теперь когда компилятор видит Random он понимает что нужно использовать Random из Юнити.
Вторая ошибка. Прочитайте что тут написано: error CS1502: The best overloaded method match for `UnityEngine.Vector3.Vector3(float, float, float)’ has some invalid arguments
И подумайте что это значит. Это Вам домашнее задание.
ЗЫ:

лог ошибок странный

Это ошибки в Моно или VS

seaman
Адепт
 
Сообщения: 8351
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 16:37

seaman писал(а):Нужно просто читать ошибки, думать и читать документацию. Больше ничего не надо для решения всех проблем.
Первая ошибка. Random есть в нескольких местах. Это Вам четко написало — error CS0104: `Random’ is an ambiguous reference between `UnityEngine.Random’ and `System.Random’
Прочитали. Думаем. Их несколько, Компилятор сам не может решить какой использовать. Что нужно сделать?- Указать компилятору — какой использовать! Как указывается? Уточняется перед переменной/классом… Т.е. вместо Random нужно использовать UnityEngine.Random. Если он используется во многих местах — это нудно везде менять. Тогда используется using.
Т.е. в начале скрипта пишем:

Используется csharp

using Random = UnityEngine.Random;

Все, — теперь когда компилятор видит Random он понимает что нужно использовать Random из Юнити.
Вторая ошибка. Прочитайте что тут написано: error CS1502: The best overloaded method match for `UnityEngine.Vector3.Vector3(float, float, float)’ has some invalid arguments
И подумайте что это значит. Это Вам домашнее задание.
ЗЫ:

лог ошибок странный

Это ошибки в Моно или VS

Спасибо. Все ошибки решены.
И все должно роботать ок, только вот когда перетаскиваю скрипт, выскакивает ошибка:

Код: Выделить всё
Can't add script
Can't add script behaviour fonaryk. The scripts file name does not match the name of the class defined in the script!

Название скрипта и класс совпадают.
Название: fonaryk
А вот скрипт:

Используется csharp

using UnityEngine;
using System;
using System.Collections.Generic;
using Random = UnityEngine.Random;

public static class Global
{

              public static  Dictionary<String, GameObject> GO = new Dictionary<String, GameObject>();
}

public class InstantiateGO : MonoBehaviour {
public Light fonaryk;
public GameObject cher;
private GameObject o;

        void Awake(){

         
                fonaryk.enabled = !fonaryk.enabled;

                string j;
                for(int i = 1; i<= 30; i++){

               
            o = GameObject.Instantiate(cher, new Vector3(Random.Range(100,1000),1,Random.Range(1000,100)),transform.rotation)  as  GameObject;
                        j = «cher»+i;
                        o.name = j;
                        Global.GO.Add(j, o);
                }
                if(Input.GetKeyUp(KeyCode.F)) fonaryk.enabled = !fonaryk.enabled;

        }

       
       
       
}

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение borr 19 июл 2013, 16:42

InstantiateGO ?

borr
UNIт
 
Сообщения: 112
Зарегистрирован: 01 мар 2013, 09:15

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 17:09

borr писал(а):InstantiateGO ?

Да, в скрипте ж написано.

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59

Re: работа Raycast с tag

Сообщение seaman 19 июл 2013, 18:13

Название скрипта и класс совпадают.
Название: fonaryk

Тролите?
Что за издевательство!
Скрипт назван fonarik, а судя по Вашему посту класс называется Global! Даже если Вы решили, что не Global, то InstantiateGO. Больше классов просто нет!
Ну что Вы мозги то пудрите!То от одного несколько часов добиваешься, чтобы он посмотрел на тег, то другой утверждает фигню!
Хорош уже!

seaman
Адепт
 
Сообщения: 8351
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: работа Raycast с tag

Сообщение elf01 19 июл 2013, 18:58

seaman писал(а):

Название скрипта и класс совпадают.
Название: fonaryk

Тролите?
Что за издевательство!
Скрипт назван fonarik, а судя по Вашему посту класс называется Global! Даже если Вы решили, что не Global, то InstantiateGO. Больше классов просто нет!
Ну что Вы мозги то пудрите!То от одного несколько часов добиваешься, чтобы он посмотрел на тег, то другой утверждает фигню!
Хорош уже!

нет скрипт реально называется fonaryk. Прост осначало у меня был js скрипт fonarik. а потом мне помогли чтобы легче было два скрипта на CS и дал название скрипту fonaryk. Могу скрин сделать. для убедительности.

elf01
UNIверсал
 
Сообщения: 370
Зарегистрирован: 07 июл 2013, 08:59


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 31



Add Answer
|
View In TPC Matrix

Technical Problem Cluster First Answered On
June 2, 2021

Popularity
5/10

Helpfulness
10/10


Contributions From The Grepper Developer Community

Contents

Code Examples

  • error cs1503 argument 3 cannot convert from ‘double’ to ‘float’
  • Related Problems

  • error cs1503: argument 1: cannot convert from ‘double’ to ‘float’
  • TPC Matrix View Full Screen

    error cs1503 argument 3 cannot convert from ‘double’ to ‘float’

    Comment

    3


    Popularity

    5/10 Helpfulness
    10/10
    Language
    csharp

    Source: forum.unity.com

    Tags: c#

    Cooperative Being

    Contributed on Jun 02 2021

    Cooperative Being

    5 Answers  Avg Quality 9/10


    Понравилась статья? Поделить с друзьями:
  • Error cs1503 argument 1 cannot convert from string to int
  • Error cs1503 argument 1 cannot convert from string to char
  • Error cs0034 operator is ambiguous on operands of type vector3 and vector2
  • Error cs0030 cannot convert type string to int
  • Error cs0029 unity