2、在整合毒圈(加载项目)的时候,出现这个

因为队友是苹果,我是window,所以点击了SwitchTarget

缺少文件所以爆红色错误(缺少DG),之后导入DG

玩家控制代码
using System;
using UnityEngine;
using UnityStandardAssets.CrossPlatformInput;
using UnityStandardAssets.Utility;
using Random = UnityEngine.Random;

#pragma warning disable 618, 649
namespace UnityStandardAssets.Characters.FirstPerson
{
[RequireComponent(typeof (CharacterController))]
[RequireComponent(typeof (AudioSource))]
public class FirstPersonController : MonoBehaviour
{

    [SerializeField] private bool m_IsWalking;[SerializeField] private float m_WalkSpeed;[SerializeField] private float m_RunSpeed;[SerializeField] [Range(0f, 1f)] private float m_RunstepLenghten;[SerializeField] private float m_JumpSpeed;[SerializeField] private float m_StickToGroundForce;[SerializeField] private float m_GravityMultiplier;[SerializeField] private MouseLook m_MouseLook;[SerializeField] private bool m_UseFovKick;[SerializeField] private FOVKick m_FovKick = new FOVKick();[SerializeField] private bool m_UseHeadBob;[SerializeField] private CurveControlledBob m_HeadBob = new CurveControlledBob();[SerializeField] private LerpControlledBob m_JumpBob = new LerpControlledBob();[SerializeField] private float m_StepInterval;[SerializeField] private AudioClip[] m_FootstepSounds;    // an array of footstep sounds that will be randomly selected from.[SerializeField] private AudioClip m_JumpSound;           // the sound played when character leaves the ground.[SerializeField] private AudioClip m_LandSound;           // the sound played when character touches back on ground.private Camera m_Camera;private bool m_Jump;private float m_YRotation;private Vector2 m_Input;private Vector3 m_MoveDir = Vector3.zero;private CharacterController m_CharacterController;private CollisionFlags m_CollisionFlags;private bool m_PreviouslyGrounded;private Vector3 m_OriginalCameraPosition;private float m_StepCycle;private float m_NextStep;private bool m_Jumping;private AudioSource m_AudioSource;public bool insideOfCircle;//判断是否在毒圈内public int hurtTime = 30;//记录掉血间隔时间public int HurtHp = 10;//记录一次掉血的血量public int hp = 100;//血量条设为100// Use this for initializationprivate void Start(){m_CharacterController = GetComponent<CharacterController>();m_Camera = Camera.main;m_OriginalCameraPosition = m_Camera.transform.localPosition;m_FovKick.Setup(m_Camera);m_HeadBob.Setup(m_Camera, m_StepInterval);m_StepCycle = 0f;m_NextStep = m_StepCycle/2f;m_Jumping = false;m_AudioSource = GetComponent<AudioSource>();m_MouseLook.Init(transform , m_Camera.transform);insideOfCircle = false;//一开始不在毒圈内
}// Update is called once per frameprivate void Update(){RotateView();// the jump state needs to read here to make sure it is not missedif (!m_Jump){m_Jump = CrossPlatformInputManager.GetButtonDown("Jump");}if (!m_PreviouslyGrounded && m_CharacterController.isGrounded){StartCoroutine(m_JumpBob.DoBobCycle());PlayLandingSound();m_MoveDir.y = 0f;m_Jumping = false;}if (!m_CharacterController.isGrounded && !m_Jumping && m_PreviouslyGrounded){m_MoveDir.y = 0f;}if (!insideOfCircle){Hurt();}m_PreviouslyGrounded = m_CharacterController.isGrounded;}public void Hurt()//毒圈伤害{hurtTime += (int)Time.deltaTime;if (hurtTime > 3){hp -= HurtHp;//slider.value = hp;hurtTime = 0;if (HurtHp > 0){Destroy(gameObject);}}}private void PlayLandingSound(){m_AudioSource.clip = m_LandSound;m_AudioSource.Play();m_NextStep = m_StepCycle + .5f;}private void FixedUpdate(){float speed;GetInput(out speed);// always move along the camera forward as it is the direction that it being aimed atVector3 desiredMove = transform.forward*m_Input.y + transform.right*m_Input.x;// get a normal for the surface that is being touched to move along itRaycastHit hitInfo;Physics.SphereCast(transform.position, m_CharacterController.radius, Vector3.down, out hitInfo,m_CharacterController.height/2f, Physics.AllLayers, QueryTriggerInteraction.Ignore);desiredMove = Vector3.ProjectOnPlane(desiredMove, hitInfo.normal).normalized;m_MoveDir.x = desiredMove.x*speed;m_MoveDir.z = desiredMove.z*speed;if (m_CharacterController.isGrounded){m_MoveDir.y = -m_StickToGroundForce;if (m_Jump){m_MoveDir.y = m_JumpSpeed;PlayJumpSound();m_Jump = false;m_Jumping = true;}}else{m_MoveDir += Physics.gravity*m_GravityMultiplier*Time.fixedDeltaTime;}m_CollisionFlags = m_CharacterController.Move(m_MoveDir*Time.fixedDeltaTime);ProgressStepCycle(speed);UpdateCameraPosition(speed);m_MouseLook.UpdateCursorLock();}private void PlayJumpSound(){m_AudioSource.clip = m_JumpSound;m_AudioSource.Play();}private void ProgressStepCycle(float speed){if (m_CharacterController.velocity.sqrMagnitude > 0 && (m_Input.x != 0 || m_Input.y != 0)){m_StepCycle += (m_CharacterController.velocity.magnitude + (speed*(m_IsWalking ? 1f : m_RunstepLenghten)))*Time.fixedDeltaTime;}if (!(m_StepCycle > m_NextStep)){return;}m_NextStep = m_StepCycle + m_StepInterval;PlayFootStepAudio();}private void PlayFootStepAudio(){if (!m_CharacterController.isGrounded){return;}// pick & play a random footstep sound from the array,// excluding sound at index 0int n = Random.Range(1, m_FootstepSounds.Length);m_AudioSource.clip = m_FootstepSounds[n];m_AudioSource.PlayOneShot(m_AudioSource.clip);// move picked sound to index 0 so it's not picked next timem_FootstepSounds[n] = m_FootstepSounds[0];m_FootstepSounds[0] = m_AudioSource.clip;}private void UpdateCameraPosition(float speed){Vector3 newCameraPosition;if (!m_UseHeadBob){return;}if (m_CharacterController.velocity.magnitude > 0 && m_CharacterController.isGrounded){m_Camera.transform.localPosition =m_HeadBob.DoHeadBob(m_CharacterController.velocity.magnitude +(speed*(m_IsWalking ? 1f : m_RunstepLenghten)));newCameraPosition = m_Camera.transform.localPosition;newCameraPosition.y = m_Camera.transform.localPosition.y - m_JumpBob.Offset();}else{newCameraPosition = m_Camera.transform.localPosition;newCameraPosition.y = m_OriginalCameraPosition.y - m_JumpBob.Offset();}m_Camera.transform.localPosition = newCameraPosition;}private void GetInput(out float speed){// Read inputfloat horizontal = CrossPlatformInputManager.GetAxis("Horizontal");float vertical = CrossPlatformInputManager.GetAxis("Vertical");bool waswalking = m_IsWalking;

#if !MOBILE_INPUT
// On standalone builds, walk/run speed is modified by a key press.
// keep track of whether or not the character is walking or running
m_IsWalking = !Input.GetKey(KeyCode.LeftShift);
#endif
// set the desired speed to be walking or running
speed = m_IsWalking ? m_WalkSpeed : m_RunSpeed;
m_Input = new Vector2(horizontal, vertical);

        // normalize input if it exceeds 1 in combined length:if (m_Input.sqrMagnitude > 1){m_Input.Normalize();}// handle speed change to give an fov kick// only if the player is going to a run, is running and the fovkick is to be usedif (m_IsWalking != waswalking && m_UseFovKick && m_CharacterController.velocity.sqrMagnitude > 0){StopAllCoroutines();StartCoroutine(!m_IsWalking ? m_FovKick.FOVKickUp() : m_FovKick.FOVKickDown());}}private void RotateView(){m_MouseLook.LookRotation (transform, m_Camera.transform);}private void OnControllerColliderHit(ControllerColliderHit hit){Rigidbody body = hit.collider.attachedRigidbody;//dont move the rigidbody if the character is on top of itif (m_CollisionFlags == CollisionFlags.Below){return;}if (body == null || body.isKinematic){return;}body.AddForceAtPosition(m_CharacterController.velocity*0.1f, hit.point, ForceMode.Impulse);}
}

}`

整合吃鸡项目好累,尤其是版本问题,自己做的 项目用的是2019.3.5f版本,队友用的是2019.4.1的,结果整合的时候,玩家人物就动不了了,然后更改版本打开就各种99+报错,所以奉劝大家在搞unity小组开发的时候

一定一定记得先统一好开发版本

Unity3D——仿吃鸡游戏(3)相关推荐

  1. 做了一个仿吃鸡游戏,可多人联网,算是学习总结。

    网上偶见UNITY,很有兴趣于是自学了一段时间,这是我做的一个仿吃鸡游戏DEMO,虽然只是抱着学习实践的很低要求,但从代码.模型.美工.场景都要自己做,繁杂超过了我的预估.对次时代游戏有兴趣可加我qq ...

  2. Unity3D——仿吃鸡笔记(1)

    今天终于要开始做期末作业的试水了 在三影大佬教程的下,自己做的 (小朋友我真的是有很多的问号) 1.首先是导入资源包,并且导入photon 导入成功后的图片如下: 导入之后有报错,报错如下: 上面的问 ...

  3. Unity3D——仿吃鸡笔记(2)

    1.如果套用的人物模型一般都已经设好animation的,直接创一个animation controller拖入到里面就就好了 然后到拖动动画这一步了,有一些素材是不循环的就要勾选loop 2.配置枪 ...

  4. Unity3DPhoton制作吃鸡游戏

    Unity3D&Photon制作吃鸡游戏 https://study.163.com/course/courseMain.htm?share=1&shareId=8348227& ...

  5. 计算机内存不足吃鸡怎么办,Win10玩吃鸡游戏提示虚拟内存不足怎么办?

    Win10玩吃鸡游戏提示"虚拟内存不足"怎么办? 最近吃鸡游戏非常火,大家都想大吉大利晚上吃鸡!因为吃鸡游戏对电脑配置的要求非常高,所以很多用户在玩吃鸡手游时会遇到各种问题,最常见 ...

  6. 达威尔CHERRY樱桃轴 铝合金有线背光电竞吃鸡游戏机械键盘

    作为一名电脑办公的打工仔,如果你有四五年以上的工作经验,可以毫不夸张地说,你至少用过三只以上的键盘了吧?这是最少的了,有的朋友用过的键盘都有十几把了,用过的键盘牌子也有不少了.我打工几年,就用过好几个 ...

  7. MOBA类和“吃鸡”游戏为什么对网络延迟要求高?

    作者:腾讯云技术社区 链接:https://zhuanlan.zhihu.com/p/54468154 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 我们知道,不同 ...

  8. mac版免费吃鸡游戏(荒野行动)

    最近吃鸡游戏非常的火爆,现为大家推出一款Mac腾讯吃鸡游戏"荒野行动 for Mac",是由网易游戏研发的一款射击求生类游戏,该游戏讲述了远洋岛事件爆发之后,小岛遭到极端分子洗劫的 ...

  9. 计算机sd模式怎么打游戏,绝地求生提升fps方法,绝地求生吃鸡游戏提高帧数优化教程(图文)...

    绝地求生对电脑硬件的要求较高,而且游戏优化很差,不少玩家会遇到FPS帧数过低的情况,那么有没有绝地求生提升fps方法?答案是有的,下面云狐网分享一下绝地求生吃鸡游戏提高帧数优化教程.eX0电脑_数码_ ...

最新文章

  1. Linux C中的basename函数用法示例
  2. pytorch使用empty跟内建函数random_进行初始化Tensor
  3. 学术交流丨魏子卿院士:北斗坐标系
  4. 命令行编译_新鲜货:C++ Build Insights告诉你为啥你的代码编译这么慢
  5. 24个很赞的 Node.js 免费教程和在线指南
  6. nginx+fastcgi+c/c++搭建高性能Web框架
  7. 222. 完全二叉树的节点个数 golang
  8. 求数字序列中的第n位对应的数字
  9. 这篇博士论文致谢句句诛心......
  10. c++生成光栅条纹程序_共享屋:一文让你认识光栅尺和编码器
  11. Python入门基础篇(四)字符串的常用操作,全面易懂,简单实用!!!
  12. java后台获取流_java后台发送请求获取数据,并解析json数据
  13. 信息学奥赛一本通(1330:【例8.3】最少步数)
  14. java数组与以逗号分隔开的字符串的相互转换
  15. sqlite关于时间的处理
  16. Python 爬虫工具 —— fake_useragent
  17. 微信小程序 解决disableScroll无法禁止小程序下拉的问题和视频铺满全屏尺寸
  18. 6.Code First 数据注解(实体属性注解)
  19. Atitit 提升开发进度大方法--高频功能与步骤的优化 类似性能优化
  20. Python批量下载XKCD漫画只需20行命令!

热门文章

  1. 超声波之纵波(按照超声波类型)
  2. 高数 |【23数一 李林六套卷】卷二 自用思路 及 知识点 整理
  3. 熊猫TV构建差异化竞争壁垒 游戏直播现新突破
  4. rest风格使用两个变量_REST风格
  5. 多维度了解一对多远程培训系统
  6. 参加科学教师与计算机培训总结报告,信息技术校本培训总结
  7. 模式识别、计算机视觉、机器学习领域的顶级期刊和会议(整理)
  8. freeswitch设置最大呼叫时长
  9. NB物联网之天翼物联(3)——初窥编解码插件(java开发物联网)
  10. win7/8/10系统好用的视频剪辑软件对比