草庐IT

Unity-ugui

全部标签

Unity中通过代码调整分辨率的实现方法与示例

        当开发Unity游戏时,通过代码调整分辨率是一种常见的需求。Unity提供了灵活的API来动态改变游戏窗口或屏幕的分辨率。在本文中,我们将介绍如何使用Unity代码来调整分辨率,并提供一些示例说明。        首先,让我们看一下如何调整Unity游戏窗口的分辨率。以下是一种常用的方法:usingUnityEngine;publicclassResolutionManager:MonoBehaviour{publicinttargetWidth=1280;publicinttargetHeight=720;publicboolfullscreen=false;privatev

【Unity入门】鼠标输入和键盘输入

Unity的Input类提供了许多监听用户输入的方法,比如我们常见的鼠标,键盘,手柄等。我们可以用Input类的接口来获取用户的输入信息一、监听鼠标输入GetMouseButtonUp、GetMouseButtonDown、GetMouseButtoninput.GetMouseButtonDown和input.GetMouseButtonUp能够分别监听鼠标的按下和松开事件,GetMouseButton长按响应,值得注意的是,这三个方法需要传入参数,0表示左键,1表示右键,2表示中间键比如我们可以在代码中这样写,来监听游戏中的鼠标点击:voidUpdate(){/*鼠标输入*/if(Inpu

Unity 获取物体的子物体的方法

Unity中要获取物体的子物体,可以使用以下一些方法。1、只获取一级节点的子物体:publicTransformtran;//StartiscalledbeforethefirstframeupdatevoidStart(){foreach(Transformchildintran){Debug.Log(child.name);}}使用该方法只会获取物体中一级节点的子物体。2、获取物体的所有节点的子物体,使用GetComponentsInChildren方法:publicTransformtran;//StartiscalledbeforethefirstframeupdatevoidStar

Unity与Js通信交互

目录1.Js给Unity传递消息2.Unity给Js传递消息1.Js给Unity传递消息unityInstance.SendMessage(objectName,methodName,value);其中,__objectName__是场景中的对象名称;__methodName__是当前附加到该对象的脚本中的方法名称;__value__可以是字符串、数字,也可为空。 unityInstance在打包之后index.html的位置 在别的地方用unityInstance,要在图片红框位置后面打括号里赋值.ps: __value__如果想传递多个参数.比如两个可以中间添加逗号,读取的时候使用stri

⭐Unity 搭建UDP服务端(02)接收客户端消息

客户端在上一篇由于服务器逻辑写的较为简单所以直接上代码了~usingSystem;usingSystem.Net;usingSystem.Net.Sockets;usingSystem.Text;usingUnityEngine;publicclassUdpServer:MonoBehaviour{publicstaticUdpServerinstance;privatevoidAwake(){if(instance!=null){return;}else{instance=this;}}publicintserverPort=8080;privateUdpClientudpServer;pr

Unity、UE和Godot的优劣对比

大家对Unity和UE比较熟悉,Godot目前的普及度还不是太高,这里有Godot的详细特性:Godot-CSDN博客整体先说下两个商业引擎,Unity和UE这两个商业引擎占据了几乎所有的游戏引擎市场,是行业的两座灯塔,对整个游戏引擎的发展具有引领的作用。我从2016年开始就开始使用和研究这两个引擎,也结合一下业内的共识,一般来说认为,Unity更擅长移动端的开发,而UE更擅长PC项目的开发。Unity的易用性做的最好,当原生功能不满足的时候,非常容易去修改,比方说,渲染管线的修改。而UE的设计理念是,原生功能特别丰富,一般来说做项目是够用的。但是如果要修改的话很难,一般的团队玩不转。另外呢,

Unity——URP & HDRP 渲染模式学习笔记

目录HDRP和UPR是两种完全不同的渲染模式,不能混用,只能选择其中一种,最好在项目刚开始的时候就确定好。否则后期所有模型的材质都要改变非常麻烦。修改渲染模式方法:HDRP,URP,BRP区别备注HDRP和UPR是两种完全不同的渲染模式,不能混用,只能选择其中一种,最好在项目刚开始的时候就确定好。否则后期所有模型的材质都要改变非常麻烦。修改渲染模式方法:projectsettins:1.graphics->Scriptablerenderpipelinesettings要修改,假如从hdrp改为upr那么在asset里首先创建一个upr渲染assets(withuniversalrendere

3D RPG Course | Core | Unity学习笔记(八)

(一)设计玩家升级系统    在属性代码CharacterData_SO中添加代表经验值系统的变量,对于不同类型的对象,比如敌人没有升级系统而玩家有,则不需要的变量不对其赋值即可。设计好等级、经验值、等级增幅和击败敌人获得的经验值,并在造成伤害的方法中判断死亡并提供经验值(由于逻辑是承担伤害所以可以这样调用)。修改后的数据代码:publicclassCharacterData_SO:ScriptableObject{[Header("StatsInfo")]publicintmaxHealth;publicintcurrentHealth;publicintmaxDefence;publici

Unity点击按钮控制视频播放和暂停

省流:整体脚本放在底部,需要可直接到底部1、导入命名空间usingUnityEngine.UI;usingUnityEngine.Video;2、创建变量privateVideoPlayervideoplayer;publicButtonbutton_playorpause;3、第一帧开始时调用videoplayer=this.GetComponent();//获取当前对象上的VideoPlayer组件button_playorpause.onClick.AddListener(OnplayorpauseVideo);//向按钮事件添加监听器4、每帧调用if(videoplayer.textu

Unity 使用NetCode for GameObject(NGO)实现联机

目录一、安装(NetcodeforGameObject)NGO二、基本设置添加NetworkManager:设置NetworkManage属性面板1.选择UnityTransport2.添加具有网络行为的物体1.NetworkPrefabsLists2.设置PlayerPrefab三、网络物体的设置1.NetworkObject组件2.NetworkTransform组件3.举例:设置一个玩家预制体完善游戏:四、联机两种实现方式1.服务器权威2.客户端权威​编辑五、对于联机的理解一、安装(NetcodeforGameObject)NGOunity项目中想要设计联机游戏,需要安装与联网相关的资源