码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Unity3D学习之UI系统——使用UGUI制作游戏登陆界面


    文章目录

    • 1. 需求分析
    • 2 准备工作
    • 3 面板基类
    • 4 UI 管理器
    • 5 提示面板
      • 5.1 拼面板
      • 5.2 面板逻辑
    • 6 登陆面板
      • 6.1 拼面板
      • 6.2 逻辑相关
    • 7 注册面板
      • 7.1
      • 7.2 面板逻辑
    • 8 服务器面板
      • 8.1 拼面板
      • 8.2 代码逻辑
    • 9 选服面板
      • 9.1 拼面板
      • 9.2 数据准备
      • 9.3 左侧按钮逻辑
      • 9.4 右侧按钮功能
      • 9.5 动态创建按钮
        • 9.5.1 初始化左侧图标
        • 9.5.2 显示上次登陆服务器
        • 9.5.3 更新右侧SV
        • 9.5.4 点击左侧更新右侧
        • 9.5.5 记录上次登陆ID
    • 10 串联各面板
    • 11 图集打包


    1. 需求分析

    在这里插入图片描述

    2 准备工作

    在这里插入图片描述
    设置Canvas为摄像机模式
    在这里插入图片描述

    3 面板基类

    在这里插入图片描述

    设置面板淡入淡出的效果
    在这里插入图片描述
    设置抽象函数让子类继承时实现
    在这里插入图片描述

    设置一个标识符表示是否显示
    在这里插入图片描述

    创建显示和隐藏面板时的函数
    在这里插入图片描述
    在这里插入图片描述
    设置一个事件,让淡出完成时删除自己
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    4 UI 管理器

    在这里插入图片描述
    创建单例模式
    在创建新面板时,得到Canvas对象
    设置 Canvas不被删除,将eventSystem和Camera(渲染UI的)拖入Canvas
    在这里插入图片描述

    设置显示面板函数
    在这里插入图片描述
    隐藏面板,isFade是需不需淡出特效

    在这里插入图片描述
    在这里插入图片描述
    找到面板
    在这里插入图片描述
    修改一下显示面板的逻辑,如果已经创建,则不需要再显示面板

    在这里插入图片描述

    5 提示面板

    5.1 拼面板

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    5.2 面板逻辑

    在这里插入图片描述
    提供外部用的修改文字的函数

    在这里插入图片描述
    创建一个主入口脚本Main
    在这里插入图片描述

    6 登陆面板

    6.1 拼面板

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    6.2 逻辑相关

    登陆数据结构
    在这里插入图片描述
    创建 登陆管理器
    在这里插入图片描述
    提供登陆方法供外部使用
    在这里插入图片描述
    创建panel
    在这里插入图片描述
    在这里插入图片描述
    两TOG框
    在这里插入图片描述
    重写 showMe函数

    在这里插入图片描述

    7 注册面板

    7.1

    拼面板
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    7.2 面板逻辑

    创建数据结构类
    在这里插入图片描述

    在登陆管理器类获取
    在这里插入图片描述
    在构造函数中赋值
    在这里插入图片描述
    提供方法给外部使用

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    创建面板脚本

    在这里插入图片描述

    在LoginPanel中提供方法设置用户名和密码(用于注册成功后,自动填写
    在这里插入图片描述
    重写init函数,增加事件监听

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    串联登陆面板,在登陆面板的点击注册事件中添加显示

    在这里插入图片描述
    处理点击登陆的逻辑
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    8 服务器面板

    8.1 拼面板

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    8.2 代码逻辑

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    重写ShowMe函数,让其显示的时候显示服务器
    在LoginData里增加一个记录上次登陆服务器的内容
    在这里插入图片描述

    在这里插入图片描述
    在登陆面板中串联
    在这里插入图片描述

    9 选服面板

    9.1 拼面板

    在这里插入图片描述
    水平自适应
    在这里插入图片描述
    垂直自适应
    在这里插入图片描述

    9.2 数据准备

    配置文件
    在这里插入图片描述
    在这里插入图片描述
    在BeJson中转换为Json
    在这里插入图片描述
    在这里插入图片描述
    存放json文件到streamingAssets中

    在LoginMgr中获取

    创建单个服务器数据
    在这里插入图片描述
    在这里插入图片描述
    在构造函数中
    在这里插入图片描述

    9.3 左侧按钮逻辑

    在这里插入图片描述
    提供一个初始化ID的函数

    在这里插入图片描述

    9.4 右侧按钮功能

    在这里插入图片描述
    在这里插入图片描述
    提供给外部更新数据的函数
    在这里插入图片描述

    打图集
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    加载图集
    在这里插入图片描述

    9.5 动态创建按钮

    9.5.1 初始化左侧图标

    在这里插入图片描述
    初始化数据
    在这里插入图片描述
    在这里插入图片描述
    增加serverPanel的按钮监听
    在这里插入图片描述

    9.5.2 显示上次登陆服务器

    在这里插入图片描述

    在这里插入图片描述

    9.5.3 更新右侧SV

    在这里插入图片描述
    在这里插入图片描述

    点击右侧物体后隐藏选服面板

    在这里插入图片描述

    9.5.4 点击左侧更新右侧

    在这里插入图片描述

    9.5.5 记录上次登陆ID

    在这里插入图片描述

    10 串联各面板

    判断服务器面板和选服面板

    如果登陆过,进入服务器面板
    如果从未登陆过,则进入选服面板
    在LoginPanel中选择显示
    在这里插入图片描述
    增加函数清除上一个登陆玩家的数据
    在这里插入图片描述
    在注册成功后调用
    在这里插入图片描述
    在点击进入游戏后,存储选择的服务器信息

    在这里插入图片描述
    把背景图改成Panel

    在这里插入图片描述
    挂载脚本
    在这里插入图片描述
    在Main脚本中显示
    在这里插入图片描述
    进入游戏时隐藏panel
    在这里插入图片描述
    自动登陆
    在这里插入图片描述
    在这里插入图片描述
    增加返回后 关闭自动登陆
    在这里插入图片描述

    11 图集打包

    选择文件夹打包
    在这里插入图片描述

  • 相关阅读:
    leetcode:1533. 找到最大整数的索引【奇特的二分】
    CP AUTOSAR标准之COM(AUTOSAR_CP_SWS_COM)(更新中……)
    pikachu靶场-upload-速通
    stable diffusion mode 的使用 invokeAI or stable diffusion web UI?
    Spring整合mybatis
    Java与设备(PLC)通信
    Windows操作系统下用vmware虚拟ubuntu系统测试USB IC卡读写器的说明
    线上问题:如何在静态方法中使用自动装配的对象(通过@PostConstruct初始化对象)
    设计模式学习(九):装饰器模式
    【附源码】计算机毕业设计JAVA客户台账管理
  • 原文地址:https://blog.csdn.net/Lmz_0314/article/details/136044632
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号