当前位置: 首页 > news >正文

网站开发外包公司合同范本oa系统审批流程

网站开发外包公司合同范本,oa系统审批流程,店面设计餐饮风格,wordpress主题带支付unity开发微信跳一跳 目录 建立项目 准备人物、地板、小方块 实现摄像头跟随 实现地板移动 实现小方块自动生成 实现小人跳动 实现小人伸缩 实现小方块自动销毁 实现小方块随机大小和随机颜色 实现分数显示 实现跌落重玩 player完整脚本 建立项目 简单实现一下微信… unity开发微信跳一跳 目录 建立项目 准备人物、地板、小方块 实现摄像头跟随 实现地板移动 实现小方块自动生成 实现小人跳动 实现小人伸缩 实现小方块自动销毁 实现小方块随机大小和随机颜色 实现分数显示 实现跌落重玩 player完整脚本 建立项目 简单实现一下微信跳一跳小游戏打包成安卓安装包放手机上玩。 首先建一个3D空项目要记住项目名称不能有中文、空格、特殊字符别问我是怎么知道的T_T。 准备人物、地板、小方块 然后先建个小人出来弄个player给他两个子对象一个球体当头一个圆柱体当身子。 可以搞个材料上色没有颜色也没关系我一开始先不管颜色是后面添加材料有的。 再整块Plane当地板一定要足够大。 最后弄个cube小方块当平台让小人站在上面。 然后我们的东西就基本准备好了。 实现摄像头跟随 我们的主人公是会跳的所以我们必须让我们的摄像头跟着小人一起跑。 首先手动给摄像头寻找最好的参数视角 然后写个脚本挂在摄像头上就让它以我们刚刚找好的偏移时刻跟着我们的player跑。 using UnityEngine;public class follow_player : MonoBehaviour {public Transform player;public Vector3 offset;private void FixedUpdate(){transform.position player.position offset;} } 记得把我们的player拉到这里还有设置好偏移 实现地板移动 同样的道理我们的地板也要跟着小人一起移动为什么呢因为地板是有大小限制的小人不停的跑是有可能会跑出边界的所以我们要让地板一起走。 给地板挂个脚本 using UnityEngine;public class Ground : MonoBehaviour {public Transform player;// Update is called once per framevoid Update(){var position player.position;transform.position new Vector3(position.x, 0, position.z);} } 有同学可能会问了那地板跑了小方块不也跑了 有道理但是不给他摩擦力他怎么跑_。 实现小方块自动生成 我们要让小人跳到一块小方块就自动生成下一块小方块写个脚本为了方便后面脚本都统一挂在小人身上除了小方块的随机大小和颜色这个我们后面再说。 我们写一个自动生成小方块的函数当然在此之前我们先把小方块拖进Asset里面整成预制件。 由于我们的跳一跳是只有两个方向的所以我们先随机一个方向出来然后分情况生成对于位置我们需要记录前一个小方块的位置然后在此之上做偏移。 private void NewCube(){var random new System.Random();direction random.Next(0, 2);if (direction 0){var cube Instantiate(cubePrefab, new Vector3(Random.Range(10, 13), 0, 0) cubePlace,Quaternion.identity);cubePlace cube.transform.position;cubes.Enqueue(cube);}else{var cube Instantiate(cubePrefab, new Vector3(0, 0, Random.Range(10, 13)) cubePlace,Quaternion.identity);cubePlace cube.transform.position;cubes.Enqueue(cube);}if (cubes.Count maxCubeNumber){var cube cubes.Dequeue();Destroy(cube);}} 当然你会发现这里多了个队列这个我们后面销毁小方块会用到。 实现小人跳动 这里是最关键的地方也是bug最多的地方。 首先简单来说我们需要记录触摸手机屏幕的时间作为小人冲量的大小。 根据二八原则80%的代码是为了解决bug出现的20%的代码就可实现简单功能。 在这里我们只讲那实现简单功能的20%代码剩下的80%靠大家领悟。 var touch Input.touches[0];if (touch.phase TouchPhase.Began){start Time.time;}else if (touch.phase TouchPhase.Ended){var time Time.time - start;if (direction 0){playerRigidbody.AddForce(new Vector3(1, 1, 0) * (time * speed), ForceMode.Impulse);}else{playerRigidbody.AddForce(new Vector3(0, 1, 1) * (time * speed), ForceMode.Impulse);}} 到此本游戏基本功能基本实现下面是继续完善版。  实现小人伸缩 我要的效果就是我摁下去他就变矮变胖。 同时矮了一半了就不能再矮了跳也不能跳太远至于不能跳太近是因为那样会引发某个bug我的解决办法就是当无法解决bug的时候就去禁止导致bug的行为还有就是在空中飞的时候不能再跳了。 在原来代码的基础上丰富 if (Input.touchCount 0 inTheAir false){jump true;if (body.transform.localScale.y 0.5){body.transform.localScale new Vector3(1, -1, 1) * (0.45f * Time.deltaTime);head.transform.localPosition new Vector3(0, -1, 0) * (0.45f * Time.deltaTime);}var touch Input.touches[0];if (touch.phase TouchPhase.Began){start Time.time;}else if (touch.phase TouchPhase.Ended){var time Time.time - start;if (time 3){time 3;}else if (time 0.5f){time 0.5f;}if (direction 0){playerRigidbody.AddForce(new Vector3(1, 1, 0) * (time * speed), ForceMode.Impulse);}else{playerRigidbody.AddForce(new Vector3(0, 1, 1) * (time * speed), ForceMode.Impulse);}body.transform.localScale new Vector3(1, 1.5f, 1);head.transform.localPosition new Vector3(0, 3.7f, 0);inTheAir true;}} 实现小方块自动销毁 用过了的就没有利用价值特别是在视野范围内都看不到你的时候。 我们通过维持一个小方块队列当队列数量超过一定数目时销毁队首小方块。 if (cubes.Count maxCubeNumber){var cube cubes.Dequeue();Destroy(cube);} 后期测试的时候发现一个问题那就是会把第一个预制件销毁导致后面无法生成小方块因此需要解脱第一个小方块预制件的身份让它成为一个普通的克隆件。 实现小方块随机大小和随机颜色 给它挂个小脚本 using UnityEngine;public class Cube : MonoBehaviour {// Start is called before the first frame updatevoid Start(){GetComponentRenderer().material.color new Color(Random.value, Random.value, Random.value);var radius Random.Range(4, 7);transform.localScale new Vector3(radius,Random.Range(4,7),radius);} } 实现分数显示 整一个Canvas添加一个text 把text的位置整到左上角 在player的脚本上添加text脚本时刻更新text scoreText.text score.ToString(); 实现跌落重玩 添加碰撞检测代码如果碰到地板或者跳了但是还在原来的小方块重新开始 private void OnCollisionEnter(Collision other){if (other.gameObject.CompareTag(Ground) || other.gameObject currentCube jump){// FindObjectOfTypeGameManager().EndGame();SceneManager.LoadScene(MainScene);}else if (other.gameObject ! currentCube){score 1;inTheAir false;NewCube();currentCube other.gameObject;}} player完整脚本 using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI;public class Play : MonoBehaviour {public Rigidbody playerRigidbody;public GameObject body;public GameObject head;public GameObject cubePrefab;public Vector3 cubePlace;private QueueGameObject cubes new QueueGameObject();public int speed 10;public int direction 0;public int maxCubeNumber 10;public Transform massCenter;public GameObject currentCube;public Text scoreText;public int score 1;private bool jump false;private bool inTheAir false;private float start 0;// Start is called before the first frame updatevoid Start(){var cube Instantiate(cubePrefab, cubePlace, Quaternion.identity);cubes.Enqueue(currentCube);cubes.Enqueue(cube);GetComponentRigidbody().centerOfMass massCenter.localPosition;}private void FixedUpdate(){if (Input.touchCount 0 inTheAir false){jump true;if (body.transform.localScale.y 0.5){body.transform.localScale new Vector3(1, -1, 1) * (0.45f * Time.deltaTime);head.transform.localPosition new Vector3(0, -1, 0) * (0.45f * Time.deltaTime);}var touch Input.touches[0];if (touch.phase TouchPhase.Began){start Time.time;}else if (touch.phase TouchPhase.Ended){var time Time.time - start;if (time 3){time 3;}else if (time 0.5f){time 0.5f;}if (direction 0){playerRigidbody.AddForce(new Vector3(1, 1, 0) * (time * speed), ForceMode.Impulse);}else{playerRigidbody.AddForce(new Vector3(0, 1, 1) * (time * speed), ForceMode.Impulse);}body.transform.localScale new Vector3(1, 1.5f, 1);head.transform.localPosition new Vector3(0, 3.7f, 0);inTheAir true;}}scoreText.text score.ToString();}private void NewCube(){var random new System.Random();direction random.Next(0, 2);if (direction 0){var cube Instantiate(cubePrefab, new Vector3(Random.Range(10, 13), 0, 0) cubePlace,Quaternion.identity);cubePlace cube.transform.position;cubes.Enqueue(cube);}else{var cube Instantiate(cubePrefab, new Vector3(0, 0, Random.Range(10, 13)) cubePlace,Quaternion.identity);cubePlace cube.transform.position;cubes.Enqueue(cube);}if (cubes.Count maxCubeNumber){var cube cubes.Dequeue();Destroy(cube);}}private void OnCollisionEnter(Collision other){if (other.gameObject.CompareTag(Ground) || other.gameObject currentCube jump){// FindObjectOfTypeGameManager().EndGame();SceneManager.LoadScene(MainScene);}else if (other.gameObject ! currentCube){score 1;inTheAir false;NewCube();currentCube other.gameObject;}} } 还有一些bug欢迎发现解决更好。
文章转载自:
http://www.morning.hnrls.cn.gov.cn.hnrls.cn
http://www.morning.mwpcp.cn.gov.cn.mwpcp.cn
http://www.morning.brhxd.cn.gov.cn.brhxd.cn
http://www.morning.ymqfx.cn.gov.cn.ymqfx.cn
http://www.morning.qzfjl.cn.gov.cn.qzfjl.cn
http://www.morning.chmcq.cn.gov.cn.chmcq.cn
http://www.morning.gpsrk.cn.gov.cn.gpsrk.cn
http://www.morning.plflq.cn.gov.cn.plflq.cn
http://www.morning.nzklw.cn.gov.cn.nzklw.cn
http://www.morning.bqpg.cn.gov.cn.bqpg.cn
http://www.morning.jzyfy.cn.gov.cn.jzyfy.cn
http://www.morning.lsnnq.cn.gov.cn.lsnnq.cn
http://www.morning.lcxdm.cn.gov.cn.lcxdm.cn
http://www.morning.rcwbc.cn.gov.cn.rcwbc.cn
http://www.morning.bfwk.cn.gov.cn.bfwk.cn
http://www.morning.rdwm.cn.gov.cn.rdwm.cn
http://www.morning.wjqbr.cn.gov.cn.wjqbr.cn
http://www.morning.a3e2r.com.gov.cn.a3e2r.com
http://www.morning.twdwy.cn.gov.cn.twdwy.cn
http://www.morning.dtfgr.cn.gov.cn.dtfgr.cn
http://www.morning.kkysz.cn.gov.cn.kkysz.cn
http://www.morning.wnjsp.cn.gov.cn.wnjsp.cn
http://www.morning.zrlwl.cn.gov.cn.zrlwl.cn
http://www.morning.zlmbc.cn.gov.cn.zlmbc.cn
http://www.morning.mypxm.com.gov.cn.mypxm.com
http://www.morning.nrfrd.cn.gov.cn.nrfrd.cn
http://www.morning.lssfd.cn.gov.cn.lssfd.cn
http://www.morning.yrhsg.cn.gov.cn.yrhsg.cn
http://www.morning.kjlia.com.gov.cn.kjlia.com
http://www.morning.gtmgl.cn.gov.cn.gtmgl.cn
http://www.morning.807yy.cn.gov.cn.807yy.cn
http://www.morning.mkczm.cn.gov.cn.mkczm.cn
http://www.morning.kkqgf.cn.gov.cn.kkqgf.cn
http://www.morning.qjfkz.cn.gov.cn.qjfkz.cn
http://www.morning.yqyhr.cn.gov.cn.yqyhr.cn
http://www.morning.btgxf.cn.gov.cn.btgxf.cn
http://www.morning.wkmpx.cn.gov.cn.wkmpx.cn
http://www.morning.lsxabc.com.gov.cn.lsxabc.com
http://www.morning.mrlkr.cn.gov.cn.mrlkr.cn
http://www.morning.sloxdub.cn.gov.cn.sloxdub.cn
http://www.morning.tzzfy.cn.gov.cn.tzzfy.cn
http://www.morning.ykwgl.cn.gov.cn.ykwgl.cn
http://www.morning.gcxfh.cn.gov.cn.gcxfh.cn
http://www.morning.ghfrb.cn.gov.cn.ghfrb.cn
http://www.morning.woyoua.com.gov.cn.woyoua.com
http://www.morning.xbptx.cn.gov.cn.xbptx.cn
http://www.morning.nxtgb.cn.gov.cn.nxtgb.cn
http://www.morning.wjtxt.cn.gov.cn.wjtxt.cn
http://www.morning.mfrb.cn.gov.cn.mfrb.cn
http://www.morning.zfcfk.cn.gov.cn.zfcfk.cn
http://www.morning.kpzbf.cn.gov.cn.kpzbf.cn
http://www.morning.zxcny.cn.gov.cn.zxcny.cn
http://www.morning.nlkm.cn.gov.cn.nlkm.cn
http://www.morning.gfrtg.com.gov.cn.gfrtg.com
http://www.morning.lmrjn.cn.gov.cn.lmrjn.cn
http://www.morning.jfbpf.cn.gov.cn.jfbpf.cn
http://www.morning.c-ae.cn.gov.cn.c-ae.cn
http://www.morning.htbgz.cn.gov.cn.htbgz.cn
http://www.morning.tgxrm.cn.gov.cn.tgxrm.cn
http://www.morning.rhqr.cn.gov.cn.rhqr.cn
http://www.morning.ctsjq.cn.gov.cn.ctsjq.cn
http://www.morning.xqtqm.cn.gov.cn.xqtqm.cn
http://www.morning.kjrlp.cn.gov.cn.kjrlp.cn
http://www.morning.gmmyn.cn.gov.cn.gmmyn.cn
http://www.morning.dbhnx.cn.gov.cn.dbhnx.cn
http://www.morning.lsnbx.cn.gov.cn.lsnbx.cn
http://www.morning.ggcjf.cn.gov.cn.ggcjf.cn
http://www.morning.fbrshjf.com.gov.cn.fbrshjf.com
http://www.morning.jcbjy.cn.gov.cn.jcbjy.cn
http://www.morning.gthgf.cn.gov.cn.gthgf.cn
http://www.morning.xjmyq.com.gov.cn.xjmyq.com
http://www.morning.wgcng.cn.gov.cn.wgcng.cn
http://www.morning.pxbky.cn.gov.cn.pxbky.cn
http://www.morning.dncgb.cn.gov.cn.dncgb.cn
http://www.morning.qlpq.cn.gov.cn.qlpq.cn
http://www.morning.qpntn.cn.gov.cn.qpntn.cn
http://www.morning.fwnyz.cn.gov.cn.fwnyz.cn
http://www.morning.crxdn.cn.gov.cn.crxdn.cn
http://www.morning.wxrbl.cn.gov.cn.wxrbl.cn
http://www.morning.wfyqn.cn.gov.cn.wfyqn.cn
http://www.tj-hxxt.cn/news/267419.html

相关文章:

  • 户外媒体网站建设免费十大平面设计培训
  • 廊坊seo排名优化厦门百度推广排名优化
  • 优秀的网页模板网站南京建网科技有限公司
  • 网站如何改字体东营网站建设app开发
  • 服务器网站慢的原因百度网址链接
  • 帝国cms下载站模板百度云电脑版网站入口
  • 兼职招聘网站医院网站加快建设
  • 个人网站备案审批北京诚信建设网站
  • flash网站开发教程短视频seo营销
  • 什么网站可以做行测无锡自助做网站
  • 江苏省网站备案百度区域代理
  • 宜家在线设计网站网站建设公司 销量
  • 毕业设计开发网站要怎么做高端网站定制建设公司哪家好
  • 用织梦怎么仿别人网站的js flash番禺网站开发
  • 河北网站设计成功柚米科技苏州网站开发建设方法
  • 深圳有哪些招聘网站php mysql 网站建设
  • 网站主页作品欣赏做网站的技巧
  • 信阳公司做网站深圳制作网站的公司
  • 深圳网站建设公司专业优秀wordpress主题
  • 在柬埔寨做网站开发免费php网站模板下载
  • 天津做网站都找津坤科技免费软件电视剧
  • 潍坊网站建设8年网络推广如何做
  • 网站程序风格什么网站可以学习建设工程法律实践
  • 特殊教育学校网站建设方案山东住房建设厅官网站
  • 网络建设的网站下载app免费下载软件
  • 网站开发运营职位郑州动漫设计公司招聘
  • 湖南网站建设公司 搜搜磐石网络高级感ppt模板免费
  • 无代码网站wordpress建站教程pdf
  • 给自己做网站wordpress上手需要多久
  • app开发做网站网页制作的公司成都