unity 人工智能AI,装备解锁临时笔记
A*算法的一种改进设想:
1.如何让角色到达目标点的过程中更加平滑:获取一串到达目标点的网格串之后,就实时用带形状的物理射线检测能否直接到达下一个目标点的再下一个目标点,如果能到达,那么直接朝该方向运动,如果射线检测到有物体阻挡,那么就重新获取当前路径的下一个点
Unity解锁功能
解锁条件为分数和关卡数
一.初始数据存储与读取
0配置bool标识,表示是否第一次进入游戏
1在GameManager中建立配置链表,表中的每个元子保存的是装备的名字(作为键)和是否解锁,以及解锁需要的条件,将所有的设置成否
2如果是第一次进入游戏,那么将配置链表中的数据以键值对保存。读取数据到配置链表,将配置链表的数据重新以键值对形式保存为字典从而提高查找速度。
二.装备栏选择装备和显示
1首先读取装备在字典中的是否解锁功能,如果没有解锁,那么装备标识只显示为问号,否则显示为正确的图标,并且选择该装备生效。
三.解锁装备
1在消灭敌人获得分数或者进入下一关的时候对链表中的每个装备进行判断,如果某个装备满足解锁条件,并且还未解锁,那么对该装备进行解锁,并将解锁数据进行存储和再次读取
疑问:如果每个装备解锁的条件不一样,有的只有一个条件,有的需要多个条件同时达成,有的是时间(时长达到多久)条件(这里应该需要每帧都判断),那么这种配置程序该如何编写,才能对每个装备自由设置条件的同时对性能损耗不是太高
我想换种思路,将装备下面的触发状态换成类链表,类中有个继承方法,用于返回真假,如果链表中的每个类都返回真,那么这个装备就解锁了,这样就可以为链表下的每个类都设置不同的条件了
确实有这个问题,一旦每个装备下的每个链表的每个元素类都运行一遍判真函数,时间复杂度真心有点高,条件相同的还判断重复了
这种我说过方法的吧,用状态位整合条件最好。
每一种条件保存一个容器,当此条件满足,遍历容器中的,将相应的位置为1。
装备的类应该这么写。
class Equipment
{
int currentState;
int triggerState;
}
每次状态位改变,就比较小,相等就激活。
一个int32位,各表示32种不同的条件。
比如一件装备的激活条件组合是01001101,你每次修改当前条件变量的位,比较下是不是等于就可以了
unity 人工智能AI,装备解锁临时笔记的更多相关文章
- 数据挖掘(data mining),机器学习(machine learning),和人工智能(AI)的区别是什么? 数据科学(data science)和商业分析(business analytics)之间有什么关系?
本来我以为不需要解释这个问题的,到底数据挖掘(data mining),机器学习(machine learning),和人工智能(AI)有什么区别,但是前几天因为有个学弟问我,我想了想发现我竟然也回答 ...
- 【转】人工智能(AI)资料大全
这里收集的是关于人工智能(AI)的教程.书籍.视频演讲和论文. 欢迎提供更多的信息. 在线教程 麻省理工学院人工智能视频教程 – 麻省理工人工智能课程 人工智能入门 – 人工智能基础学习.Peter ...
- 人工智能--AI篇
AI背景 在当今互联网信息高速发展的大背景下,人工智能(AI)已经开始走进了千家万户,逐渐和我们的生活接轨,那具体什么是AI呢? 什么是人工智能(AI)? 人工智能:简单理解就是由人制造出来的,有一定 ...
- 解读 --- 基于微软企业商务应用平台 (Microsoft Dynamics 365) 之上的人工智能 (AI) 解决方案
9月25日微软今年一年一度的Ignite 2017在佛罗里达州奥兰多市还是如期开幕了.为啥这么说?因为9月初五级飓风厄玛(Hurricane Irma) 在佛罗里达州登陆,在当地造成了挺大的麻烦.在这 ...
- 人工智能AI芯片与Maker创意接轨(下)
继「人工智能AI芯片与Maker创意接轨」的(上)篇中,认识了人工智能.深度学习,以及深度学习技术的应用,以及(中)篇对市面上AI芯片的类型及解决方案现况做了完整剖析后,系列文到了最后一篇,将带领各位 ...
- 人工智能AI芯片与Maker创意接轨 (中)
在人工智能AI芯片与Maker创意接轨(上)这篇文章中,介绍人工智能与深度学习,以及深度学习技术的应用,了解内部真实的作业原理,让我们能够跟上这波AI新浪潮.系列文来到了中篇,将详细介绍目前市面上的各 ...
- 国家制定人工智能(AI)发展战略的决策根据
在今年两会上,李彦宏的提案有何道理?提案的依据是什么?这个问题必须说清楚,对社会公众有个交代. 回想过去,早在上世纪九十年代,用"电子网络"模拟人脑的想法已经出现.这样的" ...
- python实现人工智能Ai抠图功能
这篇文章主要介绍了python实现人工智能Ai抠图功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 自己是个PS小白,没办法只能通过技术来证明自己. 话不多说, ...
- 【AI测试】也许这有你想知道的人工智能 (AI) 测试--第二篇
概述此为人工智能 (AI) 测试第二篇 第一篇主要介绍了 人工智能测试.测试什么.测试数据等.第二篇主要介绍测试用例和测试报告.之后的文章可能具体介绍如何开展各项测试,以及具体项目举例如何测试.测试用 ...
随机推荐
- spring security 4.2后出现CouldnotverifytheprovidedCSRFtokenbecauseyoursessionwasnotfound
升级到spring security 4.2后,登录不了,出现下面的错误 WARN DefaultHandlerExceptionResolver:361 - Failed to bind reque ...
- User_Agent大全
'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Ver ...
- @Valid基于hibernate
第一步:添加依赖: <!--jsr 303--> <dependency> <groupId>javax.validation</groupId> &l ...
- PHP字符串替换函数
str_replace函数 描述:实现字符串替换,区分大小写 语法:mixed str_replace(mixed $search, mixed replace, mixed $subject, [i ...
- python学习 day22 (3月29日)----(生成器推导式)
新手上路请多担待 1 2 封装 3 私有化封装 #__author : 'liuyang' #date : 2019/3/29 0029 上午 9:35 # 不想让别人看 修改 我的属性 # 源码来说 ...
- 54.NSJSONSerialization类进行json解析(字符串“UTF-8解码”)
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingAllo ...
- 机器学习笔试--LeetCode
#########简单######### 共25道: 1. 两数之和 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用. 示例 ...
- OSS 视频存储
我这里加了 封面图片 可以不理睬! 我没有存oss. 阿里的OSS 自己可以去官网下载 我这里放到 Vendor 下的. 1 # 注意这里OSS中 请设置 存储空间名称为公共的 才能直接使用这里返回的 ...
- Docker技术入门与实战(文摘)
第一部分 基础入门 第1章 初识容器与Docker 第2章 核心概念与安装配置 第二部分 实战案例 第三部分 进阶技能 第四部分 开源项目
- mysql知识积累
验证mysql工作状态 systemctl status mysql.service 启动 sudo systemctl start mysql 停止 service mysql stop 重启mys ...