Unity3D学习之(NPC头顶文字的实现)
来源:互联网 发布:淘宝红人模特排行照片 编辑:程序博客网 时间:2024/04/24 15:35
欢迎大家光临我的博客!
欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。
今天介绍一个NPC的实现:
效果图:
代码如下:
//主摄像机对象
private Camera camera;
//NPC名称
private string name = "奥莉";
//NPC模型高度
private float npcHeight;
void Start()
{
camera = Camera.main;
//得到模型原始高度
float size_y = collider.bounds.size.y;
//得到模型缩放比例
float scal_y = transform.localScale.y;
//NPC模型高度
npcHeight = (size_y * scal_y);
}
void OnGUI()
{
//得到NPC头顶在3D世界中的坐标
//默认NPC坐标点在脚底下,所以这里加上npcHeight它模型的高度即可
Vector3 worldPosition = new Vector3(transform.position.x, transform.position.y + npcHeight, transform.position.z);
//根据NPC头顶的3D坐标换算成它在2D屏幕中的坐标
Vector2 position = camera.WorldToScreenPoint(worldPosition);
//得到真实NPC头顶的2D坐标
position = new Vector2(position.x, Screen.height - position.y);
//计算NPC名称的宽高
Vector2 nameSize = GUI.skin.label.CalcSize(new GUIContent(name));
//设置显示颜色为黄色
GUI.color = Color.yellow;
//绘制NPC名称
GUI.Label(new Rect(position.x - (nameSize.x / 2), position.y - nameSize.y, nameSize.x, nameSize.y), name);
}
}
更多精彩请点击:http://unity.gopedu.com/
- Unity3D学习之(NPC头顶文字的实现)
- Unity3D学习之(NPC的实现)
- unity3d学习笔记(十九)--ngui制作人物头顶的头像和血条
- [Unity3D]Unity3D游戏开发之NPC对话系统的简单实现
- Unity3D游戏优化之头顶UI
- unity3d实现NPC显示名称
- Unity3D研究院之人物头顶名称与血条更新与绘制(二十六)
- [Unity3D]Unity3D游戏开发之Xml解析实现NPC对话系统
- unity3D学习【功能实现】之四:滚动文字显示,类似公告面板
- Unity3D 人物头顶名称显示
- 【Unity学习笔记】NPC朝向玩家的代码实现
- 【NGUI】头顶血条(2D与3D的实现)
- Unity3D研究院之人物头顶名称与血条更新与绘制一(转)
- Unity3D之人物头顶名称与血条更新与绘制
- [原创]unity3D学习【功能实现】之五:在图片上显示文字或名字,可更改text mesh
- Unity3D学习之(进度条的加载)
- unity3d 角色头顶信息3D&2D遮挡解决方案(一)
- unity3d 角色头顶信息3D&2D遮挡解决方案(二)
- jquery对象和DOM对象互转
- javaIO2
- 双向广搜的DIJKSTRA算法--简易的北京地铁导航实现
- ZOJ 3537 Cake(凸包+区间DP)
- 像素和分辨率以及换算
- Unity3D学习之(NPC头顶文字的实现)
- 数据结构中的树
- android源码 AndroidManifest.xml属性备注
- iOS开发-AFNetworking imageView,button如何设置图片缓存?
- 跨域请求HTTP数据之JSONP
- 关于URLEncoder编码的问题(中文乱码问题)
- UI基础第十一弹: ImageView
- simple_html_dom使用小结
- 关于cocos2d-x-3.x版本环境的搭建和自己创建工程的步骤