`
lwp11411
  • 浏览: 22037 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

修改FPSWalker.js

阅读更多

unity3d游戏开发

替换说明:用FPSWalker.js替换掉Assets\Standard Assets\Scripts下的FPSWalker.js
主要功能:
1、新增"+"  "-"号控制行走的速度,"+"增加速度,"-"减慢速度
2、新增"["  "]"号控制视野范围。
3、"W":向前
   "S":向后
   "A":向左
   "D":向右
4、(   增加胶囊高度和半径
   )   减小胶囊高度和半径
1 var speed = 6.0;
2 var jumpSpeed = 8.0;
3 var gravity = 20.0;
4
5 private var moveDirection = Vector3.zero;
6 private var grounded : boolean = false;
7
8 function FixedUpdate() {
9    
10     if(Input.GetKey(KeyCode.KeypadPlus)||Input.GetKey(KeyCode.Equals))
11     {
12         speed+=0.05;
13     }
14     if(Input.GetKey(KeyCode.KeypadMinus)||Input.GetKey(KeyCode.Minus))
15     {
16         if(speed>0)
17         {
18             speed-=0.05;
19         }
20         else
21         {speed=0;}
22     }
23    
24     if (grounded) {
25         // We are grounded, so recalculate movedirection directly from axes
26         moveDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
27         moveDirection = transform.TransformDirection(moveDirection);
28         moveDirection *= speed;
29        
30         if (Input.GetButton ("Jump")) {
31             moveDirection.y = jumpSpeed;
32         }
33     }
34
35     // Apply gravity
36     moveDirection.y -= gravity * Time.deltaTime;
37    
38     // Move the controller
39     var controller : CharacterController = GetComponent(CharacterController);
40     var flags = controller.Move(moveDirection * Time.deltaTime);
41     grounded = (flags & CollisionFlags.CollidedBelow) != 0;
42     if(controller.height>4||controller.height<1) {
43     controller.height=2;controller.radius=0.4;
44     }
45     if(controller.height>=1||controller.height<=4){
46         if(Input.GetKeyDown(KeyCode.Alpha9))
47         {   
48               controller.height -= 0.2;
49               controller.radius = controller.height*0.2;
50         }
51         if(Input.GetKeyDown(KeyCode.Alpha0))
52         {
53                controller.height += 0.2;
54                controller.radius = controller.height*0.2;
55         }
56     }
57    
58     var camera : Camera = GameObject.Find("Main Camera").GetComponent(Camera);
59     if(Input.GetKey(KeyCode.RightBracket)){
60       if(camera.fieldOfView<90){
61         camera.fieldOfView+=0.5;
62        }
63     }
64     if(Input.GetKey(KeyCode.LeftBracket)){
65       if(camera.fieldOfView>60){
66         camera.fieldOfView-=0.5;
67        }
68       else {camera.fieldOfView=60;}
69     }
70 }
71
72 @script RequireComponent(CharacterController)

分享到:
评论

相关推荐

    Unity3d FPSWalker 行走脚本 改良

    你的角色行走畸形?那你不如看看这段代码,助你一B之力,让你早日打leader的脸,当上leader,然后被人打脸

    Unity3D人物行走脚本示例2

    在Unity3D游戏开发中,角色的行走与交互是至关重要的。本文将详细解析一个基于Unity3D的人物行走脚本示例,该脚本适用于第一人称视角...通过理解并修改此类脚本,可以为Unity3D项目中的角色行为添加更多复杂的功能。

    Unity3D走路与飞行的脚本1

    在这里,我们可以看到CharacterController和FPSWalker两个组件的依赖关系,这两个组件都是Unity3D游戏开发中非常重要的组件。 这个脚本主要用于控制游戏中的人物运动,包括行走、飞行、跳跃等动作。通过这个脚本,...

    Unity3D_改良行为控制脚本

    脚本名称:`FPSWalker_edit02` 用途:这是一个针对第一人称视角(FPS)的角色行走与交互行为控制脚本。 ### 2. 公共变量定义 - `speed`: 角色的移动速度。 - `jumpSpeed`: 角色跳跃时的初始速度。 - `gravity`: ...

    MATLAB-四连杆机构的仿真+项目源码+文档说明

    <项目介绍> - 四连杆机构的仿真 --m3_1.m: 位置问题求解 --m2_1.m: 速度问题求解 --FourLinkSim.slx: Simlink基于加速度方程的仿真 --FourLinkSim2.slx: Simscape简化模型仿真 --FourLinkSim3.slx: Simscape CAD模型仿真 - 不懂运行,下载完可以私聊问,可远程教学 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

    ridge_regression:用于岭回归的python代码(已实现以预测下个月的CO2浓度)

    ridge_regression 用于岭回归的python代码(已实现以预测下个月的CO2浓度) 资料可用性 文件 Ridge.py :标准函数和Ridge回归函数window_make.py :使用滑动窗口方法制作大小为p(窗口大小)的时间序列列表。 Final_version.ipynb :使用Co2数据对代码进行实验

    Polygon3-3.0.8-cp35-cp35m-win_amd64.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    【java毕业设计】风俗文化管理系统源码(ssm+mysql+说明文档+LW).zip

    功能说明: 系统主要分为系统管理员和用户两个部分,系统管理员主要功能包括首页,个人中心,用户管理,节日风俗管理,饮食风俗管理,服饰风俗管理,礼仪风俗管理,信仰风俗管理,建筑风俗管理,我的收藏管理,留言板管理,论坛管理,系统管理。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    中国城市温度历史数据(2000-2020)-最新全集.zip

    中国城市温度历史数据(2000-2020)-最新全集.zip

    中国土地利用现状遥感监测数据(1km)-最新.zip

    中国土地利用现状遥感监测数据(1km)-最新.zip

    pgmagick-0.7.5-cp35-cp35m-win_amd64.whl.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    yolo算法-香烟盒子数据集-320张图像带标签-.zip

    yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值

    java资源Google API for Java

    java资源Google API for Java提取方式是百度网盘分享地址

    中国分地区地级市泰尔指数数据集(2000-2019).zip

    中国分地区地级市泰尔指数数据集(2000-2019).zip

    【java毕业设计】高职院校教学中心可视化教学分析系统源码(ssm+mysql+说明文档).zip

    环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    【java毕业设计】整体衣柜定制系统源码(ssm+mysql+说明文档).zip

    环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    【java毕业设计】房屋出租系统源码(ssm+mysql+说明文档+LW).zip

    功能说明: 系统功能实现了首页,房源信息,交流论坛,公告资讯,个人中心,后台管理等功能。系统的后台实现了个人中心,用户管理,房东管理,房源类型管理,房源信息管理,在线咨询管理,预约信息管理,订单信息管理,签订信息管理,申请退租管理,交流论坛,系统管理等功能的添加、删除和修改。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    yolo算法-电线杆数据集-1493张图像带标签-.zip

    yolo算法-电线杆数据集-1493张图像带标签-.zip;yolo算法-电线杆数据集-1493张图像带标签-.zip;yolo算法-电线杆数据集-1493张图像带标签-.zip

    安装包eclipse-jee-neon-3-win32-x86-64

    安装包eclipse-jee-neon-3-win32-x86_64提取方式是百度网盘分享地址

    param-1.12.2-py2.py3-none-any.whl.rar

    PartSegCore_compiled_backend-0.12.0a0-cp36-cp36m-win_amd64.whl.rar

Global site tag (gtag.js) - Google Analytics