今天把 图像数据保存完善了一下。天冷,没打多少字,见谅。

接着昨天说的,首先我们打开u3d,做一个空物体gameobject,然后做几个sprite,如下图所示

上面的sprite 排成四个 正方形。

资源,你可以用昨天 我说的切好的图像,随意放里面。

下面我们给 gameobject 添加 代码

using UnityEngine;
using System.Collections; public class ResourcesSprite : MonoBehaviour
{ void Start()
{
OnAutoTileSave("", "sea", , );
OnAutoTileSave("", "sea", , );
OnAutoTileSave("", "sea", , );
} void Update()
{ } //根据 图片名字,键值名字,当前帧 和 总共帧 保存单例中
void OnAutoTileSave(string path, string name, int current, int total)
{
object[] objs = Resources.LoadAll(path);
Sprite[, ,] dict;
//是否存在 键值
if (GameModel.getInstance().dictSprite.ContainsKey(name))
{
dict = GameModel.getInstance().dictSprite[name];
}
else
{
dict = new Sprite[total, , ];
GameModel.getInstance().dictSprite.Add(name, dict);
} int i = ;
foreach (object obj in objs)
{
Sprite sp = obj as Sprite;
if (sp != null)
{ dict[current, i / , i % ] = sp;
i++;
}
}
GameModel.getInstance().dictSprite[name] = dict;
}
}

这个代码很简单,里面用到了单例,我也贴出来,防止小白不懂

using UnityEngine;
using System.Collections;
using System;
using System.Collections.Generic; public class GameModel
{
public Dictionary<string, Sprite[, ,]> dictSprite;
private static GameModel model;
public static GameModel getInstance()
{
if (model == null)
{
model = new GameModel(); model.init();
}
return model;
} private void init()
{
dictSprite = new Dictionary<string, Sprite[, ,]>();
}
}

单例我就不说了,说说 ResourcesSprite类,

它的功能主要是 加载资源,然后放到 字典里面去,为什么要这么写法,原因是为了 显示更加方便。

废话不多说,我们给 下面 四个 sprite,分别添加 脚本

using UnityEngine;
using System.Collections; public class AutoTileShow : MonoBehaviour
{
int i = ;
private Sprite m_Image;
void Start()
{
if (!gameObject.GetComponent<SpriteRenderer>())
{
m_Image = gameObject.AddComponent<SpriteRenderer>().sprite;
}
} float timebattle;
void Update()
{
timebattle -= Time.deltaTime;
if (timebattle <= )
{
timebattle = .2f;//闪烁频率 if (i == )
{
i = ;
}
m_Image = GameModel.getInstance().dictSprite["sea"][i, , ];
gameObject.GetComponent<SpriteRenderer>().sprite = m_Image;
i++;
}
}
}

这里 的作用是 从 单例的字典里面 找到并  显示出来。

为了让update 播放的 别这么快,我就 添加了 0.2秒 换一张图。

换图?是的,现在 显示出来的是  动画的 水,你们 按照昨天我这么搞的,结合今天的,就能看出是动画的水了。

今天先到这,打这几个字,手基本就冻麻木了,明天继续吧。

链接:http://pan.baidu.com/s/1eQSoMl0 密码:8c7m

AutoTile 自动拼接(三) 学习与实践的更多相关文章

  1. AutoTile 自动拼接(一) 学习与实践

    恩,大家好,这两天江苏冷空气袭击,下了今年 第一场第二场雪. 不过今天我要说的 ,和 上面的 屁关系都没有. 今天要说的是 2d无缝自动拼接.大家有没有玩过  RPG Maker VX Ace. 类似 ...

  2. AutoTile 自动拼接(五) 学习与实践

    今天不讲 权值检索,考虑到后期 自动拼接 做出来 更好玩,操作更方便.所以 今天我 补充一节, 网格计算与操作. 具体就是这么个效果,和地图编辑器一样,不过图块还是没有自然的拼接,这个一定一定是 下一 ...

  3. AutoTile 自动拼接(六 大结局) 学习与实践

    昨天在网上找了一些资源图片,这回就不用担心 背景资源不多的问题了,现在我一边 制作,一边发布文章. 各种各样,500多个,这里还是特别感谢 ,万恶的资本主义,不设密码就给我分享. 在制作前,大家看下这 ...

  4. AutoTile 自动拼接(四) 学习与实践

    今天主要来说下,数据绑定. 之前第一章,我说到 把 资源图 画成格子,你们应该还有印象吧. 那么,当我 知道 格子数据,能否拿到 资源对应的图片呢? 大家先复习一下 第一章,发现很多格子数据 是相同的 ...

  5. AutoTile 自动拼接(二) 学习与实践

    开始代码前,我们要做点准备工作. 下面 跟着我做. 首先我 扣了一个 图. 这个是 做 水的资源,所以是动态的,我把其余两张也扣了出来. 看起来一样,不是,这样看肯定 看不出所以然,你们先放到u3d中 ...

  6. AutoTile 自动拼接 番外篇(自动融合技术)

    http://pan.baidu.com/s/1dDQyfSl 密码:ttud 先睹为快吧. 之后 还差一个 智能替换 技术.

  7. NLP+词法系列(二)︱中文分词技术简述、深度学习分词实践(CIPS2016、超多案例)

    摘录自:CIPS2016 中文信息处理报告<第一章 词法和句法分析研究进展.现状及趋势>P4 CIPS2016 中文信息处理报告下载链接:http://cips-upload.bj.bce ...

  8. 2018-2019-2 20165215《网络对抗技术》Exp10 Final Windows本地内核提权+Exploit-Exercises Nebula学习与实践

    目录 PART ONE :Windows本地内核提权 漏洞概述 漏洞原理 漏洞复现 windbg调试本地内核 查看SSDT表和SSDTShadow表 查看窗口站结构体信息 利用Poc验证漏洞 漏洞利用 ...

  9. Weex学习与实践

    Weex学习与实践(一):Weex,你需要知道的事 本文主要介绍包括Weex基本介绍.Weex源码结构.初始化工程.we代码结构.Weex的生命周期.Weex的工作原理.页面间通信.boxmodel ...

随机推荐

  1. PHP中使用CURL(六)

    curl常用的几个例子 1.抓取无访问控制文件 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://local ...

  2. Spark 倾斜连接

    [数据倾斜出现的原因] 并行计算中,我们总希望分配的每一个任务(task)都能以相似的粒度来切分,且完成时间相差不大.但是由于集群中的硬件和应用的类型不同.切分的数据大小不一,总会导致部分任务极大地拖 ...

  3. Gentoo/Funtoo USE标记介绍

    Gentoo/Funtoo USE标记 USE的简单理解如下:一个软件不只包含软件本身,还包括其组件,如,文档,插件,GUI支持等.USE就是用来标记是否要安装软件的同时安装这些组件. 声明USE标记 ...

  4. OR查询

    OR查询包含:$or和$in $or可以在多个键中查询任意给定的值:$in可以指定不同类型的条件和值. 查询MasertID小于3或者MasterSort等于3的文档: db.SysCore.find ...

  5. ios 将彩色照片转化成黑白等几种类型

    -(UIImage *)changeColoursImageTograyScaleImage:(UIImage *)anImage type:(int)type { CGImageRef imageR ...

  6. 【Machine Learning in Action --5】逻辑回归(LogisticRegression)

    1.概述 Logistic regression(逻辑回归)是当前业界比较常用的机器学习方法,用于估计某种事物的可能性. 在经典之作<数学之美>中也看到了它用于广告预测,也就是根据某广告被 ...

  7. UIKit继承结构和UIView.h文件详解

    @interface UIView : UIResponder<NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem> ...

  8. 在Activity之间传递数据—传递值对象

    传递有两种方式,一种是类继承自Serializable(Java方式,速度较慢),另一种是类继承自Parcelable(Android方式) 继承自Serializable的时候,实现比较简单,类只需 ...

  9. JavaScript 错误 - Throw、Try 和 Catch

    http://www.w3school.com.cn/js/js_errors.asp try 语句测试代码块的错误.catch 语句处理错误.throw 语句创建自定义错误. 错误一定会发生 当 J ...

  10. 再谈KMP

    昨天讲解了字典树和AC自动机后感觉整个人都蒙掉了.还好就是自己今天在网上看见一篇对KMP讲解非常详细的帖子,果断收藏.(点击这里查看) 然后代码的实现也就简单分析一些了,具体的知识点大家直接自己链接过 ...