Unity3D 装备系统学习Inventory Pro 2.1.2 基础篇
前言
前一篇 Unity3D 装备系统学习Inventory Pro 2.1.2 总结
基本泛泛的对于Inventory Pro 这个插件进行了讲解,主要是想提炼下通用装备系统结构和类体系。前两天又读了另一个插件 C# Inventory-uGui v2.0.1的源码(应该也是老外写的),对比了一下觉得还是和Inventory Pro有一定差距的(这个计划在另开一篇进行分析)。所以也就坚定了我更加细致的对于这个插件的学习。
补上一篇没有,贴出的功能展示图
问题求解
问题求解主要是我在学习中遇到的一些问题,希望能够得到明确的答案,如果有高手路过请不要吝惜你的答案。
问题1、本来在前篇中我准备截几张Inventory Pro的运行效果截图,结果失败了,后来发现是因为我copy了工程到另一个电脑上,结果运行就出现了问题,但是如果是新建工程就没有这个问题,请问为何?
问题2、关于属性监视器Inspector,自动生成c#组件中的字段问题,看了些科普,知道是自动可以在面板生成,也可使用一些特性HeaderAttrribute来实现Title什么的,但是这个在类继承体系中,很多分组中,显示顺序,显示名称等,其实要用一种默认的规则来运作(上帝模式),其实很多代码可读性就很差。不知道是否这样?
正文
Demo1的在工程中的位置
首先说一下Demo1的功能,其实很简单主要是建立起来Inventory Pro的运行环境,首先项目的Demo是3d的所以创建项目时,选择是3D工程。运行环境中,使用标准插件库建立一个第三方视角跟随的角色,角色可以在Panel中自由的移动跑跳;然后才是Inventroy Pro的基础配置,主要是引入Setting,在Setting中进行一些基础的配置。具体的运行后的界面如下图所示
这里对于我这种菜鸟来说,角色控制和第三方视角角色跟随看起来都挺难的,没有办法只能看了下标准插件的说明,装备系统也是在3D视角跟随角色的基础上完成的,下面简单说一下吧,老鸟请自觉忽略
角色操作和创建
按照插件说明角色创建很简单,就是首先创建一个Panel GameObject让角色可以在平面上跑,不至于掉下去,因为新手跑,跳是需要重力系统,捡拾也是需要物品在平面上,当然也有物理碰撞什么的,这里就不仔细说了。
第一步在Scene中添加一个Panel,然后把它设置大点,不然角色会掉下去
第二步,找到图中的角色prefab然后直接拖到场景中,reset一下即可
第三方视角相机跟随
第三方视角相机跟随,也是按照标准过程进行
第一步,删除原来的MainCarmar摄像机
第二步,从Asset中拖拽我们需要的Prefab到场景中来
第三步,设置相机的Target为我们的控制角色,这里拖拽即可
至此我们完成了第三方视角的角色跟随系统,是不是很简单,我想这个应该已经有无数人写过教程什么的,简单的发指。让我们又回到了Winform的年代工具栏直接拖拽即可,但是经验告诉我们这种上帝之手的模式,其实对新人是不利的,这里就废话不多说了,比较我们要研究的Inventory System,等以后再遇到了我们再研究吧。
最后是装备系统配置创建
基础环境创建好了,下面我们需要创建下装备系统的自身的基础环境了,涉及到了Srcript,Manage文件夹中的四大基础类
装备系统配置类,
装备系统管理类
Item管理类(工厂可能不准确,欢迎指正)
装备数据Asset类
Demo1中其实要实现的就两步
第一步,创建空游戏对象,配置InventorySetting类
第二步,初始化游戏Item数据Asset
总结
至此,Demo1的内容讲完了,对于老鸟来说其实什么也没有说,但对于Unity3D新手来说其实也是很好的基础学习,大概有以下内容
1、UGui 基本容器Canvs使用
2、标准角色创建
3、标准角色跟随摄像机
4、Inventory Pro 全局Setting使用
转载于:https://www.cnblogs.com/IlidanStormRage/p/5780606.html
Unity3D 装备系统学习Inventory Pro 2.1.2 基础篇相关推荐
- Python学习之旅(核心编程基础篇003运算符)
Python学习之旅 Python核心编程基础篇2020.12.18 一.算数运算符 二.比较运算符 三.赋值运算符 四.逻辑运算符 五.成员运算符 六.身份运算符 七.三目运算符 八.运算符优先级 ...
- 【系统认识张量(一)】基础篇:什么是张量?
[系统认识张量(一)]基础篇:什么是张量? 文章目录 [系统认识张量(一)]基础篇:什么是张量? 前言 一.基础概念 1. 纤维.切片 2. 矩阵化 3. 秩一张量 二.张量的基础运算 1.张量的N模 ...
- 装备系统学习--GameGrind教程
怎样自己用素材做一个装备系统:包括背包面板.物品格子.物品装备:装备放入背包:在背包内移动.交换.叠加装备. 恩,事实证明这不是B站UP主李三影原创,完全照抄自GameGrind却提都没提,Shame ...
- 动力节点王鹤SpringBoot3学习笔记——第二章 掌握SpringBoot基础篇
目录 二.掌控SpringBoot基础篇 2.1 Spring Boot ? 2.1.1 与Spring关系 2.1.2 与SpringCloud关系 2.1.3 最新的Spring Boot3 新 ...
- react ui框架_Web开发 React 学习(二十)连载基础篇大结局
系列文章: 测开技能--Web开发 React 学习(一) 测开技能--Web开发 React 学习(二)环境搭建 测开技能--Web开发 React 学习(三)元素的渲染 测开技能--Web开发 R ...
- 系统学习机器学习之维度归约(完整篇)
这里,我们讨论特征选择和特征提取,前者选取重要的特征子集,后者由原始输入形成较少的新特征,理想情况下,无论是分类还是回归,我们不应该将特征选择或特征提取作为一个单独的进程,分类或者回归方法应该能够利用 ...
- 系统学习金融数据挖掘 之爬虫技术基础(附源代码)(网页结构基础)
个人公众号 yk 坤帝 后台回复 python金融基础 获取源代码 1. 爬虫基础1 - 网页结构基础 1.1 浏览器F12的运用,以及如何看网页源代码 首先安装谷歌浏览器:从官网https://ww ...
- java系统学习(十五) --------xml基础
XML的产生及于HTML的比较 XML的产生 XML的全称是"Extensible Markup Language",是可扩展的标记语言.为什么说它是可扩展的?它又扩展谁?其实它由 ...
- 官网学习Vue(一)Vue基础篇
文章目录 Vue 基础知识 一 Vue介绍 1.1 什么是Vue? 1.2 安装方式 1.3 声明式渲染 二 Vue实例 2.1 创建Vue 2.2 生命周期 2.2.1 图解 2.2.2 重点理解 ...
最新文章
- phpeditor编写php_在php中使用CKEDITOR在线编辑器
- 联合权值 NOIP2014 提高组 Day1 T2
- 昨天521表白失败,我想用Python分析一下...表白记录和聊天记录
- 掌握神经网络模型的快捷方式
- 不会诈骗的公司 都倒闭了
- Struts1——离BeanUtils看struts其原理1
- 故障恢复:一次底层超融合故障导致的异常处理
- sql取字段前4位_SQL学习之旅(7)
- 发行盗版windows的组织为何热衷于更改系统设置
- 官网下载mysql连接驱动jar包教程
- COG注释[Ubuntu 15.10系统]
- 微信小程序踩坑之wxml中有内容,但是页面上不显示
- 微信小程序下载视频到相册(带进度条)
- [DFS] P1236 算24点 ( 普及+/提高
- iOS开发证书不受信任
- nacg python证书_这个nacg证书有用吗?
- LightGBM算法——广告收益回归预测模型
- SpringBoot通过RestTemplate远程调用其他微服务
- d3js 画布 概念
- springbootvue电影购票网站
热门文章
- java stack list_JAVA自己实现List接口Stack
- 数字三角形——递归、递推、记忆化搜索
- C语言判断系统是32位还是64位
- python定义对象的比较方法
- 【C++ grammar】Enhancement for Type System (C++11 对类型系统的增强)
- 远控免杀专题(20)-GreatSCT免杀
- Cake -- ACM解决方法
- mysql 学习笔记15 子查询
- C++ 不懂的地方 记录01
- electron 主进程与渲染进程 渲染进程与渲染进程 之间的通信