c# - 协程无法正常工作
问题描述
嗨,我在 c# 中的脚本的以下协程部分遇到问题。我收到的错误消息附在屏幕抓取中,似乎是:GetComponent<Renderer>()
。
using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
public class test: MonoBehaviour
{
public float model2;
public float model1;
public void section1()
{
SceneManager.LoadScene("section1", LoadSceneMode.Single);
}
public void fade()
{
StartCoroutine(colorlerpin());
}
public IEnumerator colorlerpin()
{
float ElapsedTime2 = 0.0f;
float TotalTime2 = 1f;
while (ElapsedTime2 < TotalTime2)
{
// fades out main heart
ElapsedTime2 += Time.deltaTime;
model1.GetComponent<Renderer>().material.color = Color.Lerp(new Color(1f, 1f, 1f, 1f), new Color(1f, 1f, 1f, 0f), (ElapsedTime2 / TotalTime2));
yield return null;
// fades in cutaway
ElapsedTime2 += Time.deltaTime;
model2.GetComponent<Renderer>().material.color = Color.Lerp(new Color(1f, 1f, 1f, 0f), new Color(1f, 1f, 1f, 1f), (ElapsedTime2 / TotalTime2));
yield return null;
}
}
}
解决方案
该图像告诉您问题出在哪里:您试图调用GetComponent
类型为 的字段,而float
不是 aGameObject
或MonoBehaviour
。
floats
是普通数字,例如0.5
or 2
,它们没有分量。您可能希望将类型更改为GameObject
/MonoBehaviour
推荐阅读
- android - Flutter Android 通知未显示
- amazon-web-services - 为现有实例编写 Terraform 代码 aws_lb_target_group_attachment 错误 不支持的块类型
- flutter - Flutter在不同的类中使用一个变量错误:找不到Getter:'allJobs'
- python - 寻找简单问题的更简单解决方案
- python - 确定列表列表中的所有值是真还是假
- git - 在 git 中编辑 1 个分支时,其他更新为
- powershell - 制作一个盒子菜单。如何为选择着色/突出显示?
- java - 使用 Stream API 根据 JAVA 中的 2 个不同条件将数据流拆分为不同的列表
- android - android studio中Recycler视图的问题-仅偶尔出现
- javascript - Embed a JS script WooCommerce on Thanyou page with Order data