Unity3d使用texture画数字
来源:互联网 发布:nginx centos 重启 编辑:程序博客网 时间:2024/06/15 17:34
using UnityEngine;
using System.Collections;
public class DrawTexture : MonoBehaviour {
private Object[] m_RedNumber; //存放数字,这里不能stexture2D,下面进行强制转化,否则在在start()里面读取不到,resource只能读取object类型的数据。
public Transform m_DrawNumPoint;//数字显示的位置
public int m_DrawNumber;//想要画的数字
// Use this for initialization
void Start () {
m_RedNumber = Resources.LoadAll("RedNumber");//放texture的文件夹
}
// Update is called once per frame
void Update () {
}
void OnGUI()
{
DrawTextureMethod(m_DrawNumPoint.position,m_DrawNumber,m_RedNumber);
}
public void DrawTextureMethod(Vector3 vect3,int number,Object[] obj)
{
float x= Vect3To2(vect3).x;
float y= Vect3To2(vect3).y;
char[] chars= number.ToString().ToCharArray(); //将数字转化成字符数组。
Texture2D tempTexture2d = (Texture2D)obj[0];
float width = tempTexture2d.width;
float height = tempTexture2d.height;
foreach (char s in chars) //s相当于s[i];
{
int i = int.Parse(s.ToString()); //将字符数组中的元素转化成数字
GUI.DrawTexture(new Rect(x,y,width,height), (Texture2D)obj[i]);//画照片即数字
x += width;
}
}
/// <summary>
/// 将3D坐标转换成2D坐标
/// </summary>
/// <param name="vect3"></param>
/// <returns></returns>
public Vector2 Vect3To2(Vector3 vect3)
{
Vector2 m_DrawNumPoint2D = Camera.main.WorldToScreenPoint(vect3);
return m_DrawNumPoint2D;
}
}
using System.Collections;
public class DrawTexture : MonoBehaviour {
private Object[] m_RedNumber; //存放数字,这里不能stexture2D,下面进行强制转化,否则在在start()里面读取不到,resource只能读取object类型的数据。
public Transform m_DrawNumPoint;//数字显示的位置
public int m_DrawNumber;//想要画的数字
// Use this for initialization
void Start () {
m_RedNumber = Resources.LoadAll("RedNumber");//放texture的文件夹
}
// Update is called once per frame
void Update () {
}
void OnGUI()
{
DrawTextureMethod(m_DrawNumPoint.position,m_DrawNumber,m_RedNumber);
}
public void DrawTextureMethod(Vector3 vect3,int number,Object[] obj)
{
float x= Vect3To2(vect3).x;
float y= Vect3To2(vect3).y;
char[] chars= number.ToString().ToCharArray(); //将数字转化成字符数组。
Texture2D tempTexture2d = (Texture2D)obj[0];
float width = tempTexture2d.width;
float height = tempTexture2d.height;
foreach (char s in chars) //s相当于s[i];
{
int i = int.Parse(s.ToString()); //将字符数组中的元素转化成数字
GUI.DrawTexture(new Rect(x,y,width,height), (Texture2D)obj[i]);//画照片即数字
x += width;
}
}
/// <summary>
/// 将3D坐标转换成2D坐标
/// </summary>
/// <param name="vect3"></param>
/// <returns></returns>
public Vector2 Vect3To2(Vector3 vect3)
{
Vector2 m_DrawNumPoint2D = Camera.main.WorldToScreenPoint(vect3);
return m_DrawNumPoint2D;
}
}
0 0
- Unity3d使用texture画数字
- Unity3D Texture to Sprite
- Unity3D批量修改Texture属性
- Unity3d:Texture的简单缩放与旋转
- 【Unity3D】【NGUI】如何设置Atlas的Texture
- Unity3d用户手册用户指南 电影纹理(Movie Texture)
- Unity3d Mesh、Texture、UI 压缩降低内存
- Texture
- texture
- android 下使用Direct Texture
- Unity3D翻译——Camera's Depth Texture
- Unity3D基础学习 利用NGUI的Texture播放视频
- Unity3D–Texture图片空间和内存占用分析
- Unity3D–Texture图片空间和内存占用分析
- unity3d 批量修改Texture属性 两种方式加载贴图
- Unity3D–Texture图片空间和内存占用分析
- Unity3D–Texture图片空间和内存占用分析
- Unity3D:Texture图片空间和内存占用分析
- 【整理】linux进程间通信函数整理
- Java集合(stack)
- ORACLE的HINT详解
- Android6.0 旋转屏幕(五)WMS启动应用流程(屏幕方向相关)
- HTML5的 input:file上传类型控制
- Unity3d使用texture画数字
- 常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全
- swagger2 与 springmvc 整合 生成接口文档
- LNK2001
- SVN检出项目配置流程
- 百度地图密钥(KEY)的生成 - studio
- 字体图标
- 光盘刻录系列之刻录时状态显示
- centos 上使用git 实现与 github交互