Я новичок в использовании C# и пытаюсь создать сенсорный контроллер, но при компиляции выдает следующую ошибку:
joystick.input недоступен из-за до уровня защиты.
Код:
using UnityEngine;
public class Myplayer : MonoBehaviour
{
public float MoveSpeed = 3f;
public float smoothRotationTime = 0.25f;
float currentVelocity;
public bool enableMobileInputs = false;
Transform cameraTransform;
float currentSpeed;
float speedVelocity;
public FixedJoystick joystick;
private void Start()
{
cameraTransform = Camera.main.transform;
}
void Update()
{
Vector2 input = Vector2.zero;
if (enableMobileInputs)
{
input = new Vector2(joystick.input.x, joystick.input.y);
}
else
{
input = new Vector2(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
}
Vector2 inputDir = input.normalized;
if (inputDir != Vector2.zero)
{
float rotation = Mathf.Atan2(inputDir.x, inputDir.y) * Mathf.Rad2Deg + cameraTransform.eulerAngles.y;
transform.eulerAngles = Vector3.up * Mathf.SmoothDampAngle(transform.eulerAngles.y, rotation, ref currentVelocity, smoothRotationTime);
}
float targetSpeed = MoveSpeed * inputDir.magnitude;
currentSpeed = Mathf.SmoothDamp(currentSpeed, targetSpeed, ref speedVelocity, 0.1f);
transform.Translate(transform.forward * currentSpeed * Time.deltaTime, Space.World);
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... tion-level
КОД ОШИБКИ-CS0122: - «joystick.input» недоступен из-за уровня защиты. ⇐ C#
Место общения программистов C#
1736234184
Anonymous
Я новичок в использовании C# и пытаюсь создать сенсорный контроллер, но при компиляции выдает следующую ошибку:
joystick.input недоступен из-за до уровня защиты.
Код:
using UnityEngine;
public class Myplayer : MonoBehaviour
{
public float MoveSpeed = 3f;
public float smoothRotationTime = 0.25f;
float currentVelocity;
public bool enableMobileInputs = false;
Transform cameraTransform;
float currentSpeed;
float speedVelocity;
public FixedJoystick joystick;
private void Start()
{
cameraTransform = Camera.main.transform;
}
void Update()
{
Vector2 input = Vector2.zero;
if (enableMobileInputs)
{
input = new Vector2(joystick.input.x, joystick.input.y);
}
else
{
input = new Vector2(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
}
Vector2 inputDir = input.normalized;
if (inputDir != Vector2.zero)
{
float rotation = Mathf.Atan2(inputDir.x, inputDir.y) * Mathf.Rad2Deg + cameraTransform.eulerAngles.y;
transform.eulerAngles = Vector3.up * Mathf.SmoothDampAngle(transform.eulerAngles.y, rotation, ref currentVelocity, smoothRotationTime);
}
float targetSpeed = MoveSpeed * inputDir.magnitude;
currentSpeed = Mathf.SmoothDamp(currentSpeed, targetSpeed, ref speedVelocity, 0.1f);
transform.Translate(transform.forward * currentSpeed * Time.deltaTime, Space.World);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79334909/errorcode-cs0122-joystick-input-is-inaccessible-due-to-its-protection-level[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия