unity库存系统插件-Ultimate Inventory System(一)功能简介

这篇具有很好参考价值的文章主要介绍了unity库存系统插件-Ultimate Inventory System(一)功能简介。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

如果说一个rpg游戏必不可少的功能,那就必须想到背包、商店、宝箱、交易、物品栏这些,我们可以将其统称为库存系统。可以说哪怕非rpg游戏也有库存系统的需求。
本文将使用Ultimate Inventory System插件快速实现库存系统,抛弃掉繁杂冗余的编程开发,快速实现游戏原型(主要为rpg、arpg类型),十分适合独立游戏开发者,尤其是独狼(像我一样)。而该插件也和我之前发布的文章 对话系统(Dialogue System for Unity) 有相关的集成支持。


一、库存系统?

以该插件举例,库存系统涵盖了物品、食谱、装备升级合成、货币,以及拾取互动、宝箱互动,当然商店、背包、物品栏这些UI的划分也是不可或缺的。
所以,答应我,不做(a)rpg的请划走!
插件地址(该系列教程文章使用Ultimate Inventory System 1.2.16,需要或者想要练习的可以私信我,毕竟价格90$比较贵,如需商用请购买正版)
文档

二、功能简介

1、库存系统
打开工具栏 Tools -> Opsive -> Ultimate Inventory System -> Main Manager ,点开项目类别和定义可以看到有个默认的模板,我们可以浏览插件默认的demo和子demo示例了解插件拥有的基本功能,这里不做过多说明。
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
2、设置,能够快速添加游戏的模块到自己的项目当中
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
3、物品类别(itme翻译问题,所以图里显示为项目)
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
4、物品定义
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
5、工艺类别
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
6、食谱、货币同物品定义,不做展示
7、导入导出,说实话用不到ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
8、多种UI配置一键生成,如果想改直接修改对应预制体即可
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
9、集成支持
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

三、创建自己的库存

需求:制作rpg类模板,快速实现相关功能

1、准备工作(以下操作在首次使用时实现一遍即可)

1、新建场景,创建一个Plane当作场地,再创建一个胶囊作为角色,给角色加上Character Controller组件和内置脚本ExampleMove。摄像机移动到能看到主角的位置即可。
2、拷贝一份示例供我们自己使用,自带的demo就可以删除了。
具体操作为打开工具栏 Tools -> Opsive -> Ultimate Inventory System -> Main Manager(以后简称为Main Manager),如下图点击齿轮复制一份示例到自己规划的目录底下。ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
3、加载功能脚本,绿色框拖入角色物体,添加需要的功能ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
角色身上的库存脚本如下,不需要的功能可以不加
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
场景中game的脚本,包含对象池、声音管理等
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

4、UI构建-经典模板
进入Main Manager的UI Designer,点击Create Canvas Managers的Setup按钮创建UI管理器,如图选择一个模板(我这里选经典),然后找一个文件夹保存
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
然后点下面的Spawn In Scene就自动生成到当前场景中了。
5、物品拾取模板
通过Setup创建拾取模板,第一个随便找个模型即可(不要加碰撞组件),第二个需要选择刚刚生成的经典模板文件夹里面的预制体(3d的UI显示器),最后点击Create场景就会生成出一个掉落物 Item Pickup Template
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

2、设置基础物品

1、首先我们给角色自身添加点东西,点击角色身上的脚本,如下图先点击默认的Main ItemCollection集合,再添加任意物品。
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
2、货币设置
再打开角色身上的Currency Owner货币管理添加多个货币
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
3、掉落物设置
找到掉落物模板,点Change随便选个物品
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

3、运行游戏
可以发现人物持有货币正确

我们先打开背包,发现物品如期生成

再按E捡取炸弹,发现背包里多出了炸弹

ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

3、设置制作配方

首先我们打开下图UI的制作菜单,找到上面的Crafter(工匠)脚本
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
如图添加所有配方
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
运行游戏发现没有商店入口,很尴尬,其实官方是留接口的;如下图,找到UI,发现上面都有 Display Panel 脚本,运行状态下点击Smart Open即可打开制作界面。ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

4、设置商店物品

首先我们打开下图UI的商店菜单,找到上面的Inventory(库存)脚本
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序

如图随意添加物品
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
运行游戏发现没有商店入口,又很尴尬,其实官方是留接口的;如下图,找到UI,发现上面都有 Display Panel 脚本,运行状态下点击Smart Open即可打开商店。(哈哈,复读机)
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序
想使用按钮调用,我们找到Classic Schema Full Layout这个UI,在该UI下创建一个按钮,再新建脚本添加按钮绑定事件,如下图为商店的打开代码。同理,其他的界面也能愉快的打开了。呃,其他的方法如关闭(为SmartClose方法)可以查阅Display Panel 脚本。

public Button ShopBtn;
public DisplayPanel displayPanel;
private void Start()
{
	ShopBtn.onClick.AddListener(displayPanel.SmartOpen);
}

5、保存加载

接上操作,我们捡起炸弹,打开商店卖掉其他装备。背包现在就一个炸弹,然后点下面的保存。
重新运行游戏,点刚刚保存的文件进行加载,发现背包只剩下了炸弹。
ultimate inventory system,unity库存系统,unity,ui,游戏引擎,游戏,游戏程序


总结

该篇文章粗略介绍了库存系统的创建和基本设置,囊括了物品设置、拾取、合成,背包,商店,货币,相信能让不懂代码的小伙伴也能快速入手。但一个游戏往往细节决定成败,物品、合成的自定义技巧,拾取or自动拾取,背包商店里的物体如何进行管理,考虑怎么通过代码脚本实现接口自由支配插件等等是一个好游戏需要打磨的关键。

接下来我们将渐入佳境,下面几篇分别是,自定义物品篇(物品、合成等),自定义视图UI篇(拖动、物品分类等偏UI的功能),自定义代码篇(如何调用接口接入自己的项目)。ok,我已经迫不及待了!如果你看完了觉得有用不妨点个赞支持一下,如有疏忽、错误请留言指出,共同学习。文章来源地址https://www.toymoban.com/news/detail-807926.html

到了这里,关于unity库存系统插件-Ultimate Inventory System(一)功能简介的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 详解Unity中的粒子系统Particle System (二)

    上一篇我们简要讲述了粒子系统是什么,如何添加,以及基本模块的介绍,以及对于曲线和颜色编辑器的讲解。从本篇开始,我们将按照模块结构讲解下去,本篇主要讲粒子系统的主模块,该模块主要是控制粒子的初始状态和全局属性的,以下是关于该模块的介绍,请大家指

    2024年01月17日
    浏览(48)
  • 详解Unity中的粒子系统Particle System (十一)

    今天讲最后一个模块——External Forces,该模块需要和Force Field组件配合使用,作用是模拟物理的力对粒子的影响。至此,Unity内置粒子系统的最后一块物理砖补齐,理论上来讲我们已经可以通过粒子系统来模拟世间万物了。废话不多说,进入正题。 本系列提要 Unity粒子系统专

    2024年02月13日
    浏览(36)
  • 详解Unity中的粒子系统Particle System (三)

    上一篇我们详细讲解了有关主模块的全部内容,已经对粒子系统的基本运作有了足够的了解,本篇就来讲一下被粒子系统默认启用的Emission、Shape、Renderer模块又在粒子系统中扮演着怎么样的作用吧。 本系列提要 Unity粒子系统专题博客共分成十二篇来讲解: 【本篇为第三篇】

    2024年02月02日
    浏览(42)
  • 【Unity_Input System】Input System新输入系统(三)——在游戏中更换按键绑定

    Binding只由一个部分组成,一般绑定单个按键或者摇杆 CompositeBinding由两个以上部分组成,一般是用于将多个按键组成虚拟轴 更换按键绑定时,Binding和Composite Binding需要分别处理,对Composite Binding需要循环各个部分进行修改。 可以用InputBinding.isComposite来判断是否是Composite Bind

    2024年02月04日
    浏览(44)
  • 第五十二章 Unity Input System 新输入系统

    新输入系统InputSystem是2019年Unity新推出的插件。请注意,Unity默认使用旧的Input Manager,新的Input System处于未启用状态。当你安装Input System组件时,Unity会询问你是否启用新的输入系统。如果你选择Yes,Unity会启用新的并禁用旧的,之后编辑器将重新启动。具体的操作是,打开包

    2024年02月07日
    浏览(37)
  • Unity New Input System 及其系统结构和源码浅析【Unity学习笔记·第十二】

    转载请注明出处:🔗https://blog.csdn.net/weixin_44013533/article/details/132534422 作者:CSDN@|Ringleader| 主要参考: 官方文档:Unity官方Input System手册与API 官方测试用例:Unity-Technologies/InputSystem 如果c#的委托和事件不了解,参考我这篇:【C#学习笔记】委托与事件 (从观察者模式看C#的委

    2024年01月25日
    浏览(46)
  • 【Unity InputSystem】实用教程-实现角色移动跳跃功能(Input System在PC端鼠键!手机端触摸屏!主机手柄!三端使用教程)

    在上一篇文章当中我们手把手的跟大家分享了InputSystem的基础操作(如何使用5种不同的方式获取到InputSystem种的输入检查信息)。那么接下来我们继续分享一下在我们获取到InputSystem输入信息后,如何使用检测到的信息实现我们对应的输入功能。 本次我们使用的Unity编辑器版本为

    2024年02月11日
    浏览(53)
  • Unity新(Input System)老(Input Manager)输入系统代码对比

    以下介绍都是基于Unity2022版本 一、键盘操作 当w键按下时 当w键抬起时 当w键按着时 二、鼠标操作 获取鼠标位置 获取鼠标滚轮 获取鼠标左键按下 获取鼠标右键抬起 获取鼠标中间按着

    2024年02月16日
    浏览(44)
  • Enterprise level safety function system 企业级安全功能系统快速开始 elsfs

    最新文档:https://elsfs.gitee.io/ elsfs 框架:https://gitee.com/elsfs/elsfs-cloud 必要环境 Java17+ Maven 3.8+ MySQL 8.0+ Redis 5.0+ nacos 2.2.x 常用工具 idea 2022+ navicat switchHosts Git 注意:必须配置 hosts ,禁止修改代码中配置成IP | 梯子、VPN 等软件会导致 hosts 配置失效,请关闭!! 平台 地址 gitee git

    2024年03月21日
    浏览(53)
  • Unity VR:XR Interaction Toolkit 输入系统(Input System):获取手柄的输入

    输入系统是 VR 应用中非常重要的一部分。我们通常需要获取 VR 手柄上某个按键的输入,然后将其作用到应用中,比如按下手柄的 Grip 键进行抓取。在我的其他 Unity XR Interaction Toolkit 的开发教程里,已经有介绍如何去获取手柄的输入。那么这篇教程我将做一个总结,将相关的

    2024年02月12日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包