[Unity]Photon多人场景

本文提供了一个简单的步骤指南来帮助读者使用Photon Angry Bots Demo创建自己的多人游戏场景。包括下载资源、注册账号、调整游戏场景及解决常见错误等关键信息。

http://bbs.9ria.com/thread-170038-1-1.html


免费范例Photon AngryBots:简单步骤制作多人游戏场景

我们开始吧:


步骤:
  • 打开场景“2_AngryBots_MP”
  • 另存为新场景"2_MyGameScene_MP"
  • 删除“Environment(static)”,“Environment(semi-static)”,“Environment(sounds)”,“Environment(dynamic)”,“MoodBoxes”,“Misc”。
  • 创建plane平面,0,0,0 尺寸:100,1,100(现在角色不会掉落了)在0,0,0(使用这个作为spawnpoint)
  • 创建box箱子(或空的游戏对象),设置标签为spawnpoint
  • 主摄像机,禁止脚本:Quality Manager
  • 主摄像机,禁止脚本:ReflectionFx(减少出错的几率...)
  • 脚步声出现一些错误(需要检查接触的材料?)

  1. “NullReferenceException: Object reference not set to an instance of an object
  2. MaterialImpactManager.GetPlayerFootstepSound (UnityEngine.PhysicMaterial mat) (at Assets/Scripts/Managers/MaterialImpactManager.js:28)”
复制代码
临时解决办法:打开“FootstepHandler.js”,注释掉下列代码:
  1. // sound = MaterialImpactManager.GetPlayerFootstepSound (physicMaterial);
  2. //audioSource.pitch = Random.Range (0.98, 1.02);
  3. //audioSource.PlayOneShot (sound, Random.Range (0.8, 1.2));
  4. //sound = MaterialImpactManager.GetMechFootstepSound (physicMaterial);
  5. //sound = MaterialImpactManager.GetSpiderFootstepSound (physicMaterial);
复制代码
9.  错误:
  1. NullReferenceException: Object reference not set to an instance of an object
  2. MaterialImpactManager.GetMaterialImpact (UnityEngine.PhysicMaterial mat) (at Assets/Scripts/Managers/MaterialImpactManager.js:48)
  3. MaterialImpactManager.GetBulletHitSound (UnityEngine.PhysicMaterial mat) (at Assets/Scripts/Managers/MaterialImpactManager.js:43)
  4. AutoFire.Update () (at Assets/Scripts/Weapons/AutoFire.js:56)
复制代码
临时解决办法:打开“AutoFire.js”,注释掉下列代码:
  1. // Ricochet sound
  2. //var sound : AudioClip = MaterialImpactManager.GetBulletHitSound (hitInfo.collider.sharedMaterial);
  3. //AudioSource.PlayClipAtPoint (sound, hitInfo.point, hitSoundVolume);
复制代码
10.  现在设置摄像机...打开“PlayerMoveController.js”
找到下列代码:
  1. var cameraTargetPosition : Vector3 = character.position + initOffsetToPlayer + cameraAdjustmentVector * cameraPreview;
复制代码
注释掉,添加新代码(设置摄像机位于角色的上方)
  1. var cameraTargetPosition : Vector3 = character.position + new Vector3(0,15,0);
复制代码
11.  注意:如果你想测试游戏,在创建设置你需要设置所有的关卡到创建列表
  1. 0_Preloader
  2. 1_BeginScene
  3. 2_MyGameScene _MP
  4. 3_EndScene
复制代码
清除加载画面
  • 打开场景“0_Preloader”
  • 删除所有标志
  • 打开场景“1_BeginScene”
  • 删除所有标志
  • 选择主摄像机,这里是主菜单:你可以设置“MainLogo”图片
  • 打开MainMenu.cs:你可以设置你的游戏和房间名
  • 完成

其他注意事项:

  • 我的联网功能在关闭unity后就失效了,过了一会又好了……多尝试几次,重启几次unity,然后它会开始正常工作...(?)
  • 还没有找到从列表移除photon应用的办法
  • 很多unity photon教程的链接或demo貌似都失效了...O0?


网页展示:
http://unitycoder.com/upload/demos/PhotonMultiplayerScene1/

原文链接:http://unitycoder.com/blog/2012/12/15/photon-networking-multiplayer-game/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值