Пожалуйста, помогите исправить ошибку
Assets\script2.cs(11,19): error CS0117: ‘Input’ does not contain a
definition for ‘Getkey’
в коде, который на картинке.
alexsteeel
5612 серебряных знака10 бронзовых знаков
задан 11 дек 2021 в 17:35
3
Все очень просто: GetKey — функция состоящая из 2х слов, каждое слово в функции пишется с большой буквы.
ответ дан 12 дек 2021 в 8:04
GetKey пишется с двумя большими буквами, поэтому и ошибка
ответ дан 13 дек 2021 в 0:34
Обе ошибки из-за того, что у вас нету нормальной ссылки на камеру. В первом случае вы подсунули newcam, что совпадает с названием вашего класса, а посему компилятор пытается интерпретировать это как вызов статического метода. Во втором случае вызов метода у camera не срабатывает, потому что вы взяли туториал трёхгодичной давности, а Component.camera уже давным-давно выпилили. Решить это всё можно двумя способами: обращаться к камере через Camera.main, либо сделать публичное поле и в инспекторе перетащить туда камеру.
Пригласить эксперта
1) У newcam нет метода WorldTo…. Какой вообще это тип данных?
2) Не найдена перегрузка с нужными параметрами для VIewportTOWorldPoint. Параметры не те в функцию переданы короч.
Судя по вопросу — вы новчиек в программировании. Поэтому — сначала научитесь программировать, а потом суйтесь в юнити.
-
Показать ещё
Загружается…
21 сент. 2023, в 12:34
2000 руб./за проект
21 сент. 2023, в 12:17
80000 руб./за проект
21 сент. 2023, в 12:08
3000 руб./за проект
Минуточку внимания
Im trying to show on console when a gameobject collides with another gameobject with collide. I keep getting this error on unity’s console ERROR CS0117, ‘Debug’ does not contain a definition for ‘log’.
- im on mac using .net core
- im using vs code 1.35.1
and unity 2019.3.0a5 - i already have all the usings that i need, but intellisense does not find a definition for my debug or for anything whatsoever, this is frustrating :/
-
i dont have any other .cs file named debug neither
using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.SceneManagement; public class DeadZone : MonoBehaviour { private void OnCollisionEnter2D(Collision2D collision){ Debug.log("Collision"); } private void OnTriggerEnter2D(Collider2D collision){ Debug.log("Trigger"); } }
i expect a «collision» message in the console of unity when my ball gameobject touches a wall gameobject, both with collider but i only get that error within the console, i also already tried using UnityEngine.Debug.log(); but havent got any success yet…
mjwills
23.4k6 gold badges40 silver badges63 bronze badges
asked Jun 20, 2019 at 5:24
3
You are using Debug.log()
. but you should be using Debug.Log()
. Notice the capitalised «L» on «Log».
By naming convention for C# method names will always start with a capital letter.
If you look at the Unity Docs for Debug.Log you’ll also see in the code examples/title that it uses the capital L
Also judging from your tags you are using Visual Studio. Make sure that intelliSense is turned on, as this should detect and most of the time even automatically fix these kinds of typos for you.
answered Jun 20, 2019 at 6:12
RemyRemy
4,8535 gold badges31 silver badges61 bronze badges
9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Comments
I am upgrading from Google Play Services from v 0.9.01 to 0.9.20 in unity 4.5, but I am getting this error Assets/GooglePlayGames/Editor/GPGSPostBuild.cs(41,39): error CS0117: UnityEditor.BuildTarget' does not contain a definition for
iOS’
I am developing for android not IOS, any idea how to fix this?
I solved this problem by installing the latest Unity3d. But still unable to get the google play services setup on the main menu of the editor.
After you updated, can you remove the GooglePlayGames folder in the Assets folder, and reimport the package? The menus should be under Windows/Google Play Games. (We moved them recently to be a better citizen of the Unity editor). If they don’t show up, there must be still some errors in the console?
yes found it, it is under Windows/Google Play Games. I did not delete the GooglePlayGames folder. using the 0.9.20 version as it is. I deleted the old version 0.9.01 completely with all its files and folders before importing the new one. Thanks claywilkinson
well google play games for pc? i have tried because i have the same issue but:
error CS0117: ‘BuildTarget’ does not contain a definition for ‘GameCoreXboxSeries’
but i dont have that windows/googlePlayGames folder.
appreciate your help.
У меня тожа такая ошибка
ошибка CS0117: «buildTarget» не содержит определения для «GameCoreXboxSeries»
Сейчас пробую обновить до новой версии, может поможет.
Если кто-то знает решение напишите пожалуйста!
Решил вопрос.
Установил новую версию Unity запустил проект на ней
Одна из распространенных ошибок при работе в Unity — это ошибка CS0117. Эта ошибка может возникнуть при обращении к несуществующему методу, полю или свойству. В этой статье мы рассмотрим причины возникновения ошибки CS0117 и как ее можно исправить.
Причины возникновения ошибки CS0117
-
Ошибка в имени метода, поля или свойства.
-
Необходимо добавить пространство имен, которое содержит определение метода, поля или свойства.
-
Отсутствие определения метода, поля или свойства.
Как исправить ошибку CS0117
Проверьте правильность имени метода, поля или свойства
Проверьте правильность имени метода, поля или свойства, на которое ссылается ваш код. Убедитесь, что вы правильно написали имя переменной или метода, и что оно полностью совпадает с определением в классе.
Добавьте пространство имен
Если имя метода, поля или свойства находится в другом классе или пространстве имен, вам нужно будет добавить его в ваш код. Например, если вы пытаетесь использовать метод, определенный в классе «Player», то вам нужно добавить пространство имен «Player» в ваш файл скрипта.
using Player; // добавляем пространство имен
public class PlayerMovement : MonoBehaviour {
void Update() {
Player.Move(); // вызываем метод Move() из класса Player
}
}
Определите метод, поле или свойство
Если в вашем коде используется метод, поле или свойство, которого нет в вашем проекте, вам необходимо определить его самостоятельно или использовать уже определенный.
public class Player {
public static void Move() {
// код для перемещения персонажа
}
}
public class PlayerMovement : MonoBehaviour {
void Update() {
Player.Move(); // вызываем метод Move() из класса Player
}
}
Заключение
Ошибка CS0117 может возникнуть при работе в Unity и может быть вызвана неверным именем метода, поля или свойства, отсутствием пространства имен или отсутствием определения метода, поля или свойства. Чтобы исправить эту ошибку, вам нужно проверить правильность имени, добавить пространство имен или определить метод, поле или свойство. Важно следить за правильностью написания имен и не забывать добавлять необходимые пространства имен.