在玩游戏时,有时候会遇见需要保存玩家位置,这种游戏在做游戏和玩游戏时还是很常见的,那么我们是如何来保存玩家的位置,以做到让玩家下次加载时不会受到位置的丢失。下面是我在游戏中的解决方法。

1.先看下我做的简单测试环境。

2.上面有两个按钮,一个按钮是用来保存玩家的位置,另外的一个按钮是用来加载保存的位置。

3.处理save按钮事件和Load按钮事件,完成写Json和读Json。

using UnityEngine;
using System.Collections;
//在工程中引入dll后使用
using LitJson;
using System.IO;public class JsonScript : MonoBehaviour
{//建一个Position类public class Position{public double PositionX { get; set; }public double PositionY { get; set; }public double PositionZ { get; set; }}//当玩家点击保存按钮时public void SaveClick(){Position position = new Position();position.PositionX = transform.position.x;position.PositionY = transform.position.y;position.PositionZ = transform.position.z;JsonData posData = JsonMapper.ToJson(position);string path = Application.dataPath + "/JsonPos.txt";StreamWriter streamWriter = new StreamWriter(path);streamWriter.Write(posData);streamWriter.Close();}//当玩家点击加载按钮public void LoadClick(){string path = Application.dataPath + "/JsonPos.txt";StreamReader streamReader = new StreamReader(path);string pos = streamReader.ReadLine();Position Pos = JsonMapper.ToObject<Position>(pos);transform.position = new Vector3((float)Pos.PositionX,(float)Pos.PositionY,(float)Pos.PositionZ);streamReader.Close();}
}

Unity中游戏重新加载玩家位置不变的方法相关推荐

  1. Unity中通过图片加载造成水纹波动的方法(附贴图材质球和脚本)

    链接:https://pan.baidu.com/s/1XNzI-DZZQW1P1HIOAgOLyA 提取码:99y8 准备一个材质球和各个波纹的图片 建立一个Panel 开始写控制图片加载的脚本 u ...

  2. 【Unity3D日常开发】Unity中的资源加载与文件路径

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有 ...

  3. 关于unity 中使用AssetBundle加载资源,shader偶尔会丢失的问题解决办法

    问题描述: 因为项目中要进行热更新设计,所以用unity官方推荐的打包方式assetbundle进行打包,打包好了以后再电脑上运行正常,但是当发布到android上后发现偶尔场景背景会出现空白,多方查 ...

  4. vim编辑器中cscope自动加载cscope.out文件的方法

    方法一 :vim 插件--autoload_cscope.vim 步骤: 插件下载地址:autoload_cscope.vim 下载之后,讲autoload_cscope.vim放到~/.vim/pl ...

  5. springboot加载指定位置的指定类型配置文件

    方案一:简单使用注解实现 // 该注解用于容器启动时加载指定路径的配置文件 @PropertySource(value = {"file:G:/redis.conf"}) @Com ...

  6. yii2 引入php文件,Yii2中YiiBase自动加载类、引用文件方法分析(autoload)

    本文实例分析了Yii2中YiiBase自动加载类.引用文件的方法.分享给大家供大家参考,具体如下: 在Yii2中这个函数是用来加载类的,没有直接引用文件的相关实现.但是这个也可以用来引用文件. pub ...

  7. Unity上架苹果商店游戏资源加载的问题被拒4.2.3

    由于游戏资源加载的问题被4.2.3拒绝的解决方案 方案一: 加一个下载资源说明.然后改一下逻辑.启动app可以正常进去,然后提醒用户在你进去体验的初期,我们会继续在Wi-Fi环境下继续下载app需要的 ...

  8. unity优化冷启动时间/加载时间总结

    本文一部分博主并未实践过,只是做一个总结,如有错误,请指正 目录 一.概念了解 二.优化目的 1.保证游戏流畅度的基础上DrawCall越小越好 2.Statistics统计面板参数 3.打包编译 三 ...

  9. Pytorch中的数据加载

    Pytorch中的数据加载 1. 模型中使用数据加载器的目的 在前面的线性回归模型中,使用的数据很少,所以直接把全部数据放到模型中去使用. 但是在深度学习中,数据量通常是都非常多,非常大的,如此大量的 ...

最新文章

  1. 几何匹配和分合算法的图像识别技术
  2. 【备忘】Android获取正在使用网络的IP4地址
  3. multiple problems have occured
  4. java程序员闯关题网站_Java程序员每周必逛的十大学习网站
  5. mysql字节对齐_结构体字节对齐(转)
  6. POJ2373-Dividing the Path【单调队列优化dp】
  7. lsof命令_lsof命令的部分说明
  8. php 瓶颈,使用XHProf查找PHP性能瓶颈
  9. 如何给namedtuple添加docstring
  10. php获取服务器数据库信息,PHP获取服务器信息
  11. 使用NDK生成native C/C++的可执行程序
  12. Android 在button 上添加imageview不显示
  13. uni-app框架简介
  14. JNI数据与方法操作实例
  15. NVIDIA NCCL 源码学习(六)- channel搜索
  16. BLUETECH 聚蓝滤水壶的使用方法
  17. Android ios 表单提交,如何在iOS上模拟HTTP表单(POST)提交
  18. ISRC活动来袭,快来领福利!
  19. 模拟时钟(AnalogClock)
  20. vue 导出excel表格 自定义表结构

热门文章

  1. python写cdr插件_python 写一个scheme解释器(一)
  2. 每月10美元的付费iCloud存储空间现在加量不加价
  3. 湘潭校赛 Hard Wuxing
  4. ubuntu字体美化
  5. Spring Boot的配置文件加载优先级
  6. c语言给图片,c语言能显示图片吗
  7. 计算机二级web考点,2017年计算机二级考点解析:WEB程序第三章
  8. ILRuntime入门12 类型绑定
  9. 滴滴Logi-KafkaManager 一站式Kafka监控与管控平台
  10. 【C语言】初识C语言