renderer.material 方法过时
【摘要】 今天做Flappy Brid的时候,发现了this.renderer.material方法过时,,,
后来机智的我发现报错后面已经写了,解决办法,,Use GetComponent,,,大家以后注意一下,凡是有过时,弃用的,后面都有解决办法,,,顺便和大家分享一个通过调整材质球的office(偏移)实现简单的动画效果,, 我有这样一个素材;一张图片上三只小鸟(翅膀位...
今天做Flappy Brid的时候,发现了this.renderer.material方法过时,,,
后来机智的我发现报错后面已经写了,解决办法,,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)