renderer.material 方法过时

举报
陈言必行 发表于 2021/08/14 01:04:09 2021/08/14
【摘要】 今天做Flappy Brid的时候,发现了this.renderer.material方法过时,,, 后来机智的我发现报错后面已经写了,解决办法,,Use GetComponent,,,大家以后注意一下,凡是有过时,弃用的,后面都有解决办法,,,顺便和大家分享一个通过调整材质球的office(偏移)实现简单的动画效果,, 我有这样一个素材;一张图片上三只小鸟(翅膀位...

今天做Flappy Brid的时候,发现了this.renderer.material方法过时,,,Unity报的错

后来机智的我发现报错后面已经写了,解决办法,,Use GetComponent,,,大家以后注意一下,凡是有过时,弃用的,后面都有解决办法,,,顺便和大家分享一个通过调整材质球的office(偏移)实现简单的动画效果,,
我有这样一个素材;一张图片上三只小鸟(翅膀位置不同),如果动起来就可以实现模拟飞行的效果,,如下图:
小鸟
大家可以发现通过更改材质球上的titing和offset 属性可以让图片显示出不同的效果,,,
材质球属性面板
然后我只要通过时间来控制,来控制它的offset属性(偏移)就可以达到模拟飞行的目的,,,控制偏移实现代码如下:

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

public class BridHandler : MonoBehaviour { public float timer;   //计时器, public int frameNum =10;   //  每秒显示几帧 public int frameCount; //  帧的计数器 // Use this for initialization void Start () { } // Update is called once per frame void Update () { timer += Time.deltaTime;  //加上一帧的时间 if(timer >= 1.0f / frameNum)  //大于1帧所用的时间 { frameCount++;   //帧数增加 timer -= 1.0f / frameNum; //三帧  (0,1,2显示每一帧画面) int frameIndex = frameCount % 3; //更新offset x 属性    //this.renderer.material   已过时   着色器的主材质(“_MainTex”) this.GetComponent<Renderer>().material.SetTextureOffset("_MainTex", new Vector2(0.33333f * frameIndex, 0)); } }
}

  
 
  • 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

这样运行游戏小鸟就可以自己飞了,,,,

文章来源: czhenya.blog.csdn.net,作者:陈言必行,版权归原作者所有,如需转载,请联系作者。

原文链接:czhenya.blog.csdn.net/article/details/77995517

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。