- 2024-11-17unity3d————场景异步加载
总结本文介绍了Unity中场景切换的两种方法:同步切换和异步切换。同步切换在切换场景时会删除当前场景的所有对象并加载下一个场景的信息,可能导致卡顿。因此,异步切换被引入来解决这个问题。异步切换有两种实现方式:通过事件回调函数和通过协程。通过事件回调函数实现异步加载代
- 2024-11-15unity3d————Resources异步加载
知识点一:Resources异步加载是什么?在Unity中,资源加载可以分为同步加载和异步加载两种方式。同步加载会在主线程中直接进行,如果加载的资源过大,可能会导致程序卡顿,因为从硬盘读取数据到内存并进行处理是需要时间的。而异步加载则是Unity内部新开一个线程进行资源加载,这样就不会造
- 2024-11-06unity3d————四元数概念
一、定义与表示四元数是由一个实数部分和三个虚数部分组成,通常表示为q=w+xi+yj+zk,其中w是实数,x、y、z是实数系数,i、j、k是虚数单位,满足以下关系:i²=j²=k²=-1ij=k,ji=-kjk=i,kj=-iki=j,ik=-j四元数也可以表示为q=[w,v],其中v=(x,y,z)是矢量,w
- 2024-11-05unity3d————叉乘的知识点
一、向量叉乘的知识点定义与公式:向量叉乘的定义为:对于两个三维向量a和b,它们的叉乘结果是一个向量c,记为c=a×b。叉乘的计算公式为:c=(y1z2-y2z1)i+(x2z1-x1z2)j+(x1y2-x2y1)k,其中a=(x1,y1,z1),b=(x2,y2,z2),i、j、k分别为x、y、z轴的单位向量。几何意义:叉乘得到的向量c与
- 2024-11-03unity3d————坐标转换(世界转本地)
this.transform.InverseTransformPoint1. 世界坐标系与局部坐标系世界坐标系:Unity3D中的全局参考框架,所有游戏对象的位置、旋转和缩放都是相对于这个框架来定义的。局部坐标系:每个游戏对象都有自己的局部坐标系,这个坐标系是相对于该游戏对象的位置、旋转和缩放来定义的。2
- 2024-11-03unity3d——Time
在Unity3D中,Time类是一个非常重要的工具类,它提供了一系列与时间相关的属性和方法,帮助开发者在游戏中实现各种时间相关的操作。以下是一些Time类常用的方法及其示例:一、常用属性Time.time含义:表示从游戏开始到现在的时间,以秒为单位。该时间会随着游戏的暂停而停止计算。示例
- 2024-11-03unity3d——Vector3
在Unity3D中,Vector3是一个非常重要的结构体,用于表示三维空间中的位置和方向。以下是关于Vector3的一些关键知识点:一、Vector3的基本概念和属性定义:Vector3是一个包含三个浮点数的结构体,分别代表X、Y和Z轴上的分量。它用于描述具有大小和方向两个属性的物理量,如速度、加速度
- 2024-10-31unity3d————三角函数
先上代码,结合代码讲解:publicclassLesson2:MonoBehaviour{//StartiscalledbeforethefirstframeupdatevoidStart(){#region知识点一弧度、角度相互转化//弧度转角度floatrad=1;floatanger=rad*Math
- 2024-10-28Unity3D学习FPS游戏(6)武器发射子弹
前言:上一篇中设置好了武器的瞄准,本篇将实现一个武器发射子弹的效果。子弹子弹发射位置在Weapon01下面新建一个GameObject用来设置发射子弹的位置,调整Position放在枪口位置。子弹模型子弹模型在下面路径找到子弹模型,然后拖入到项目中,并右键Prefab-unpack(为了避免影响
- 2024-10-23Unity3D教程:次表面散射的简单实现
次表面散射指的是光线射入半透明材质,在内部发生散射后再透射出来的光线传播过程,考虑到有些项目会需要使用次表面散射,下面就给大家介绍下在Unity3D中次表面散射的简单实现,希望可以帮到大家。 一、前言本文旨在与大家一起探讨学习新知识,如有疏漏或者谬误,请大家不吝指出。以下内
- 2024-10-20Unity3D c# 使对象物体始终面向摄像机
usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassLookAtMainCamera:MonoBehaviour{ //Usethisforinitialization voidStart(){ } //Updateiscalledonceperframe voidUpdate(){
- 2024-09-23Android平台Unity3D下如何同时播放多路RTMP|RTSP流?
技术背景好多开发者,提到希望在Unity的Android头显终端,播放2路以上RTMP或RTSP流,在设备性能一般的情况下,对Unity下的RTMP|RTSP播放器提出了更高的要求。实际上,我们在前几年发布Unity下直播播放模块的时候,就已经支持了Android多实例播放RTMP|RTSP,随着大家对这块的技术诉求和性能要求越
- 2024-09-22音视频生态下Unity3D和虚幻引擎(Unreal Engine)的区别
技术背景好多开发者跟我们做技术交流的时候,会问我们,为什么有Unity3D的RTMP|RTSP播放模块,还有RTMP推送和轻量级RTSP服务模块,为什么不去支持虚幻引擎?二者区别在哪里?本文就Unity3D和虚幻引擎之间的差异,做个大概的分析,实际上,Unity3D和虚幻引擎(UnrealEngine)在游戏开发及其他相关领域都
- 2024-09-17Unity3D下如何播放RTSP流?
技术背景在Unity3D中直接播放RTSP(RealTimeStreamingProtocol)流并不直接支持,因为Unity的内置多媒体组件(如AudioSource和VideoPlayer)主要设计用于处理本地文件或HTTP流,而不直接支持RTSP。所以,你可以通过一些间接的方法来实现RTSP流的播放,或者通过比较成熟的第三方插件来播。可选方
- 2024-09-17Unity3D下如何播放RTSP流?
技术背景在Unity3D中直接播放RTSP(RealTimeStreamingProtocol)流并不直接支持,因为Unity的内置多媒体组件(如AudioSource和VideoPlayer)主要设计用于处理本地文件或HTTP流,而不直接支持RTSP。所以,你可以通过一些间接的方法来实现RTSP流的播放,或者通过比较成熟的第三方插件来播。
- 2024-09-10LayerMask 的介绍和使用
LayerMask实际上是一个位码操作,在Unity3D中一共有32个Layer层,并且不可增加。Unity中的使用:LayerMaskmask=1<<3;表示开启Layer3。LayerMaskmask=0<<8;表示关闭Layer8。LayerMaskmask=1<<1|1<<9;表示开启Layer1和Layer9。LayerMaskmask=0<<4|0<<5;表示关闭L
- 2024-09-02Unity3d 截屏保存到相册,并且刷新相册
要做一个截图的功能,并且玩家可以在相册中看到。 做的时候遇到了三个问题: 1、unity自带的截图API,Application.CaptureScreenshot在Android上不生效 2、图片保存的路径获取 3、保存的图片可以在手机的文件管理中找到,但是相册中没有。 解决
- 2024-08-31unity3d拼图__附带资源
要达到吸附效果则需要每个拼图上挂载碰撞体达到整张图片的替换效果需要选中所有拼图部件把材质球拖上去、制作材料球脚本挂载到随便一个空物体上usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassPinTu:MonoBehaviou
- 2024-08-28Unity 3D学习资料集合
本文包含了unity3D游戏开发相关的学习资料,包含了入门、进阶、性能优化、面试和书籍等学习资料,含金量非常高,在这里分享给大家,欢迎收藏。学习社区1.Unity3D开发者Unity3D开发者论坛是一个专注于Unity引擎的开发者社区。在这个论坛上,开发者们可以分享自己的项目经验、技术问
- 2024-07-25AI外包团队 Unity3D结合AI教育大模型 开发AI教师 AI外教 AI英语教师 AI课堂案例
自2022年底ChatGPT引爆全球之后,大模型技术便迎来了一段崭新的快速发展期,由其在GPT4.0发布后,AI与教育领域结合产品研发、已成为教育+AI科技竞争的新高地、未来产业的新赛道、经济发展的新引擎和新产品的诞生地。据不完全统计,目前国内已有包括科大讯飞、百度、阿里、华为、网易在
- 2024-07-23unity3d碰撞
unity3d碰撞 Unity3D提供了多个碰撞事件函数,用于处理不同类型的碰撞情况。常用的碰撞事件函数包括:OnCollisionEnter:当两个物体开始碰撞时触发。这是碰撞的起始点,可以用于执行碰撞开始时的逻辑,如播放碰撞音效、改变游戏状态等。OnCollisionStay:在两个物体持续碰撞的过程中不断
- 2024-07-21unity3d Dictionary 根据key获取value
unity3d Dictionary 根据key获取value usingSystem;usingSystem.Collections.Generic;usingUnityEngine;publicclassDictionaryExample:MonoBehaviour{privateDictionary<string,int>myDictionary;voidStart(){//初始化
- 2024-07-20unity3d缩放物体
unity3d缩放物体 usingUnityEngine;publicclassScaleObject:MonoBehaviour{//缩放速度,可以根据需要调整publicfloatscaleSpeed=0.1f;//控制缩放的方向,这里以X轴为例publicboolscaleX=true;publicboolscaleY=false;publi
- 2024-07-18unity3d get post请求
unity3dget post请求 usingUnityEngine;usingUnityEngine.Networking;publicclassNetworkRequestExample:MonoBehaviour{IEnumeratorStart(){stringurl="https://api.example.com/data";UnityWebRequestrequest=U
- 2024-07-17unity3d sqlite
usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingMono.Data.Sqlite;//注意:这取决于你使用的SQLite库publicclassSQLiteExample:MonoBehaviour{//数据库文件路径privatestringdbPath="URI=file:"+Applicatio