Unity 的一道面试题 随机颜色
来源:互联网 发布:动画演示软件 编辑:程序博客网 时间:2024/05/22 13:11
题目:让场景中的Cube一秒更换一种颜色;
涉及的内容大致如下:
一个计时器
得到Cube的材质
写一个随机产生颜色的方法
Unity中颜色采用的RGB颜色标准 。在写随机产生颜色方法的时候,我们需要知道RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。红色绿色蓝色又称为三原色光,用英文表示就是R(red)、G(green)、B(blue)。在电脑中,RGB的所谓“多少”就是指亮度,并使用整数来表示。通常情况下,RGB各有256级亮度,用数字表示为从0、1、2…直到255。注意虽然数字最高是255,但0也是数值之一,因此共256级。
所以RGB一共能产生256 x 256 x 256 = 16777216种颜色。通常也被简称为1600万色或千万色。也称为24位色(2的24次方)。
但是在Color这个类中,是0-1中的一个值。这个值 是亮度级/255得到的一个小数。
介绍了这么多,我们可以看看相关的代码
using UnityEngine;using System.Collections;public class RandomColor : MonoBehaviour { // Use this for initialization void Start () { } float timer; // Update is called once per frame void Update () { timer -= Time.deltaTime; if(timer<=0){ this.gameObject.GetComponent<MeshRenderer>().material.color = RandomColor1(); timer = 1; } } public Color RandomColor1() { float r = Random.Range(0f,1f); float g = Random.Range(0f,1f); float b = Random.Range(0f,1f); Color color = new Color(r,g,b); return color; }}
就是这样了,还是比较简单的。
1 0
- Unity 的一道面试题 随机颜色
- 中兴的一道面试题
- 一道面试题的思考
- 微软的一道面试题
- 一道NEC的面试题
- 一道面试题的分析
- 一道数字的面试题
- 一道错误的面试题
- 一道公司的面试题
- google的一道面试题
- google的一道面试题
- 一道有趣的面试题
- 外企的一道面试题
- 一道C的面试题
- 腾讯的一道面试题
- 微软的一道面试题
- 一道以前的面试题
- 一道面试题的解析
- Android沉浸式状态栏完全解析
- max sum
- QT里使用sqlite的问题,好多坑
- 定时器中断
- logstash 各种时间转换
- Unity 的一道面试题 随机颜色
- android 动画
- java学习日记_31:面向对象之继承的概述、使用、特点和弊端
- 线性表的链式存储实现(有头结点)
- 对php四种排序的粗浅认知
- 文件上传
- 王爽汇编第二版第三章答案
- hdu 4734 F(x) 数位DP
- js--this