博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NGU-学习笔记(1)-动态添加删除图集
阅读量:5209 次
发布时间:2019-06-14

本文共 2336 字,大约阅读时间需要 7 分钟。

 

现在 正在做unity的方向 不得不说我选的是UI方向 Unity中很有名的就是NGUI插件了.今天做了个ngui的简单背包系统。非常简陋。。初学着 自己mark下

(1)预览

主要就是个 simple popup list控件(为label制作动态字体方便支持中文)

设置如图

 mark为空物体,作为动态生成的图集的坐标。为他绑定脚本 child:

using UnityEngine;using System.Collections;public class child : MonoBehaviour {    // Use this for initialization    void Start () {                }        // Update is called once per frame    void Update () {        Transform[] chinds = this.GetComponentsInChildren
(); if (chinds.Length >= 3) { Destroy(chinds[1].gameObject); } }}

camera得脚本:

1 using UnityEngine; 2 using System.Collections; 3  4 public class load_sprite : MonoBehaviour 5 { 6     public GameObject parent; 7     private UIDragObject ud; 8     // Use this for initialization 9     void Start()10     {11        12     }13 14     // Update is called once per frame15     void Update()16     {17         parent.transform.position = new Vector3(-1.782f, -0.29f, 0);18     }19     public void create()20     {21         UIAtlas atlas = (UIAtlas)Resources.Load("Atlas/New Atlas_1", typeof(UIAtlas));22         UISprite sprite = NGUITools.AddSprite(parent, atlas, UIPopupList.current.value);23         sprite.transform.localScale = new Vector3(2.0f, 2.0f, 2.0f);24         sprite.transform.localPosition = Vector3.zero;25         sprite.gameObject.AddComponent
().size=new Vector3(100,100,0);26 sprite.gameObject.AddComponent
();27 sprite.tag = "item";28 sprite.depth = 2;29 30 31 GameObject go = GameObject.Find("Sprite");32 BoxCollider col = go.AddComponent
();33 col.size = new Vector3(100, 100, 0);34 go.AddComponent
();35 go.GetComponent
().depth = 10;36 37 38 39 40 41 }42 }

project视图(必须为Resources,内放图集)

还有个动态加载的脚本 重写uidragdropitem

1 using UnityEngine; 2 using System.Collections; 3  4 public class MyDragItem : UIDragDropItem { 5  6     protected override void OnDragDropRelease(GameObject surface) 7     { 8         base.OnDragDropRelease(surface); 9 10         print(surface);11 12         this.transform.parent = surface.transform;13         this.transform.localPosition = Vector3.zero;14     }15 }

很简单的一个入门实验。

 

转载于:https://www.cnblogs.com/mukeyang/p/4425034.html

你可能感兴趣的文章
linux 设置时区
查看>>
异步路由、单播泛洪产生的安全侦听风险
查看>>
《STL源码剖析》STL的双层配置器
查看>>
VC分发包版本问题
查看>>
这是通过 Open Live Writer(是个博客编辑器) 发布的
查看>>
Codeforces Round #401 (div.2)
查看>>
AndroidDevTools简介
查看>>
bzoj 4032: [HEOI2015]最短不公共子串【dp+SAM】
查看>>
python实现连接MySQL、Redis并获取数据
查看>>
大量数据的问题
查看>>
day06
查看>>
JS通过身份证号码获取出生年月日
查看>>
Topshelf入门
查看>>
查询外部链接返回页面时因为外部链接数据对象有个对象成员vsp,造成会查询vsp及关联的数据造成死循环,出现堆oom...
查看>>
[译]GLUT教程 - 位图和正交投影视图
查看>>
第二章作业--林
查看>>
ribbon负载均衡
查看>>
Extjs之Renderer方法中的参数详解
查看>>
JQuery EasyUi之界面设计——通用的JavaScript
查看>>
如果CDN服务器出了问题,怎么做不影响自己的网站
查看>>