Место общения программистов C#
Anonymous
Ошибка «Имя «результат» не существует в текущем контексте», Unity
Сообщение
Anonymous » 10 окт 2024, 05:08
Я получил ошибку «GameObject ui_element = result.gameObject;»
Имя «result» не существует в текущем контексте
вот код:
Код: Выделить всё
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.InputSystem;
using UnityEngine.UI;
public class CubeMapChangeColor : MonoBehaviour
{
public GameObject ui_canvas;
GraphicRaycaster ui_raycaster;
PointerEventData click_data;
List click_results;
void Start()
{
ui_raycaster = ui_canvas.GetComponent();
click_data = new PointerEventData(EventSystem.current);
click_results = new List();
}
void Update()
{
if(Mouse.current.leftButton.wasReleasedThisFrame)
{
GetUiElementsClicked();
}
}
void GetUiElementsClicked()
{
click_data.position = Mouse.current.position.ReadValue();
click_results.Clear();
ui_raycaster.Raycast(click_data, click_results);
foreach(RaycastResult result in click_results);
{
GameObject ui_element = result.gameObject;
Debug.Log(ui_element.name);
}
}
}
я пробую этот код, полученный с YouTube, но почему-то он не работает на моем компьютере
не знаю, в чем дело
Подробнее здесь:
https://stackoverflow.com/questions/790 ... text-unity
1728526112
Anonymous
Я получил ошибку «GameObject ui_element = result.gameObject;» Имя «result» не существует в текущем контексте вот код: [code]using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.InputSystem; using UnityEngine.UI; public class CubeMapChangeColor : MonoBehaviour { public GameObject ui_canvas; GraphicRaycaster ui_raycaster; PointerEventData click_data; List click_results; void Start() { ui_raycaster = ui_canvas.GetComponent(); click_data = new PointerEventData(EventSystem.current); click_results = new List(); } void Update() { if(Mouse.current.leftButton.wasReleasedThisFrame) { GetUiElementsClicked(); } } void GetUiElementsClicked() { click_data.position = Mouse.current.position.ReadValue(); click_results.Clear(); ui_raycaster.Raycast(click_data, click_results); foreach(RaycastResult result in click_results); { GameObject ui_element = result.gameObject; Debug.Log(ui_element.name); } } } [/code] я пробую этот код, полученный с YouTube, но почему-то он не работает на моем компьютере не знаю, в чем дело Подробнее здесь: [url]https://stackoverflow.com/questions/79072527/error-the-name-result-does-not-exist-in-the-current-context-unity[/url]