unity

Unity调用Android

匿名 (未验证) 提交于 2019-12-03 00:16:01
1.Unity调用Android 根据unity用户手册,unity可以采用native code(c/c++),但是也提供了C#调用方法,本文对此进行简单讲解。 2.Unity获取android类 通过下述方法即可获取包com.ii.intentreceiver(可类比于C#命名空间)下的类MainActivity。继而可以调用MainActivity的静态方法getIntentResult。其返回值为string,如果无返回值,则直接调用CallStatic即可。 using (AndroidJavaClass mainActivityClass = new AndroidJavaClass("com.ii.intentreceiver.MainActivity")) { Debug.Log("IntentReceiver start catch infomation"); try { result = mainActivityClass.CallStatic<string>("getIntentResult"); } catch(Exception ex) { Debug.Log("IntentReceiver get result failed:" + ex.Message); } } 3.Unity获取android类的实例 通过下述方法即可获取包com.ii

Unity3D Log文件所在

匿名 (未验证) 提交于 2019-12-03 00:15:02
官方地址: https://docs.unity3d.com/Manual/LogFiles.html PS.有时候Unity直接崩溃,这时候使用日志文件查看日志会是定位问题的好方法。 链接附带各种情况下的log文件路径并且分别分平台简述。 来源:博客园 作者: 人生如逆旅你我皆行人 链接:https://www.cnblogs.com/zhang-dkln/p/11777254.html

SreamVR与VRTK(VRTK基础使用)

匿名 (未验证) 提交于 2019-12-03 00:11:01
1.首先SreamVR与VRTK版本要相互匹配,此案例中使用的时SreamVR1.2.3与VRTK3.3.0,unity版本2018.3.14,VRTK3.3.0不支持SteamVR2的版本。 SreamVR1.2.3版本下载地址 https://github.com/ValveSoftware/steamvr_unity_plugin/releases vrtk3.3.0版本下载地址 https://github.com/ExtendRealityLtd/VRTK/tree/3.3.0 来源:博客园 作者: 大漠孤烟mwm 链接:https://www.cnblogs.com/dream-seeker-201907/p/11592731.html

Unity播放视频-Video Player播放视频

匿名 (未验证) 提交于 2019-12-03 00:11:01
Video Player是Unity5.6之后新增加的,丰富了Unity播放频的功能,可轻松实现视频播放速度的控制,快进快退,视频透明度控制等,所以在此不再介绍MovieTexture。在使用时,将文件导入到工程中后,将其导入格式设置成Video Clip,就可以将其直接设置给Video Player组件的Video Clip属性(前提是Source属性选择为Video Clip方式)。当然,也可以设置Source为URL模式,通过给定具体的视频地址实现视频的播放。 Source 可以选择两种资源模式,一种就是本地导入的视频片段,另一种就是URL资源。 PlayOnAwake是否在激活脚本的时候播放。 WaitForFirstFrame 是否等待第一帧,也就是是不是等一帧再播放视频。 Loop 循环播放。 PlaybackSpeed 播放速度。 RenderMode 这里是渲染模式总共有五种,分别是: MaterialOverride:通过重载Material来播放视频; CameraFarPlane:视频渲染在相机的最远端; CameraNearPlane:视频渲染在相机的最近端; RendererTexture:用于MovieTexture; 注意: 在将视频资源拖放到VideoPlayer插件的source,视频没有声音

unity 控制物体移动的三种方法之美

匿名 (未验证) 提交于 2019-12-03 00:05:01
可以使按照指令物体移动的方法 一、常规方法 //四个方向 if ( Input . GetKey ( KeyCode . W )) { transform . Translate ( Vector3 . forward * moveSpeed * Time . deltaTime ); } if ( Input . GetKey ( KeyCode . S )) { transform . Translate ( Vector3 . back * moveSpeed * Time . deltaTime ); } if ( Input . GetKey ( KeyCode . A )) { transform . Translate ( Vector3 . left * moveSpeed * Time . deltaTime ); } if ( Input . GetKey ( KeyCode . D )) { transform . Translate ( Vector3 . right * moveSpeed * Time . deltaTime ); } 二、使用unity自带的移动方式 float H = Input . GetAxis ( "Horizontal" ); float V = Input . GetAxis ( "Vertical" ); if ( H !

Unity shader学习笔记(一)―― 渲染流程

匿名 (未验证) 提交于 2019-12-03 00:03:02
文章目录 渲染流水线 OpenGL 和 DirectX GPU做的事情 总结 渲染流水线 为了渲染一个模型,我们需要知道这个模型的每个顶点信息,有可能还需要知道由几个顶点构成的每个片元的颜色,这个颜色可能是直接指定的顶点颜色然后做的插值,也可能是用一张纹理“贴”上去,然后还要经过顶点变换,裁剪,等等操作,最后才渲染到屏幕上。为了加快这些步骤的执行,我们希望能够将这些步骤拆分成具体的几步,参考CPU指令流水线的思想,用流水线的思想加快执行。 在这些步骤中,可以分成两个部分。一部分在CPU上执行,一部分在GPU上执行。一开始模型的信息都存储在硬盘上,然后CPU要将其读取到内存中,之后设置一些渲染的状态(比如使用哪张纹理,顶点变换规则,颜色计算规则等等),然后将渲染状态和模型的顶点信息发送到显存,再发送一个指向该渲染状态的渲染命令 Draw Call ,通知GPU读取该渲染状态和模型顶点信息,开启第二部分的步骤绘制模型。而在第二部分中,又可以拆分出来两部分。总共三部分的步骤,分别如下: 应用阶段 几何阶段 光栅化阶段 其中应用阶段在CPU上执行,几何阶段和光栅化阶段在GPU上执行。这三个部分里面的十几个步骤(下文提及)最终构成了整个渲染流水线的元素。 注意上文提到的渲染命令,CPU有可能会发送多个,这些命令都会发送到一个命令缓存中,再由GPU一一读取。 OpenGL 和 DirectX

Unity基础―― Unity 中几个重要类

匿名 (未验证) 提交于 2019-12-03 00:02:01
Unity 中几个重要类: GameObject Find(): 1) 通过游戏对象名字找查找指定的游戏对象 2)Find()查找时,只要是当前场景下面的游戏对象, 默认都可以查找到。且不管是将查找的脚本挂载到哪个 对象上来,都是可以找到的。 含有子父级别关系的,也可以查找到。 3)同名的游戏对象,可以查找到几个? 只会查找一个 2. FindWithTag( 标签名 ): 1) 只会找 一个符合标签名的对象 2) 如果没有,null 3) 如果没有提前添加指定的标签,Balls 错误提示:**** is not defined 3. FindGameObejctsWithTag() 1) 通过标签名查找多个符合名字的游戏对象 2)返回的是GameObject类型的数组 3)可对返回的数组进行遍历等操作。 4)获取数组长度为:调用 Length 4.创建游戏对象 5. SetActive( true ); 6.GetComponent(typeOf(Transform)) 泛型 GetComponent< > 来源:博客园 作者: Winward996 链接:https://www.cnblogs.com/winward996/p/11502265.html

Unity3D简单小游戏脚本(1):EatCoin

匿名 (未验证) 提交于 2019-12-02 23:59:01
今日闲来无事,敲些代码也无妨 1 //coin脚本,命名为Pickup 2 3 using System . Collections ; 4 using System . Colllections . Generic ; 5 using UnityEngine ; 6 7 public class Pickup : MonoBehaviour { 8 //初始化 9 void start (){ 10 } 11 //每帧刷新 12 void Updata (){ 13 transform . Rotate ( new Vector3 ( 30 , 30 , 30 )* Time . deltaTime ); 14 //随时间进行30°旋转 15 } 16 } //player脚本,命名为Player using System . Collections ; using System . Collections . Generic ; using UnityEngine ; using UnityEngine . UI ; public class Player : MonoBehaviour { Rigidbody rigid ; //定义刚体 float speed = 3 ; //设定速度 int count = 0 ; //设定金币数 public AudioClip

Unity开源项目整理(长期整理+不定期更新)

匿名 (未验证) 提交于 2019-12-02 23:59:01
此篇用于整理一些感兴趣的开源项目,好的开源项目非常多,但是为了保持简洁,不感兴趣的不再此列。 项目名称 最低版本 技术类型 备注 Spaceship Demo Unity 2019.2.0f1 Visual Effect Graph +HDRP 特效制作蓝图+高清渲染管线 HexMapMadeInUnity2019ECS Unity 2019.1.12f1 ECS DOTS 实体组件系统 UnityMMO Unity 2019.1.4f1 ECS 混合开发 ShaderGraphBlog Unity 2018.2 ShaderGraph 动画材质 Machine Learning Roguelike Unity 2017.2 Machine Learning + Tensorflow 机器学习 Vive IK Unity 5.4.2f2 Motion Capture+HTC Vive HTC追踪器+全身动捕 Skynet Lua 5.3.5 游戏服务器框架 分布式 来源:51CTO 作者: CloudHu1989 链接:https://blog.csdn.net/qq_30137245/article/details/100621488

Unity手册SpriteAtlasManager翻译

匿名 (未验证) 提交于 2019-12-02 23:59:01
SpriteAtlasManager 命名空间:UnityEngine.U2D 描述: 可以在不引用任何 Sprite Atlas 的情况下加载 Sprite ,这样的结果是没有纹理。在用户通过监听 SpriteAtlasManager.atlasRequested 回调将图集注册到 Sprite 之前,它将是不可见的。触发时,它将传入 atlas tag 和 System.Action ,它将接收一个atlas对象. 事件: |事件|描述| |-- |-- | | atlasRegistered || | atlasRequested | | 使用时发现的细节: altasRequested 是在 Start 之后调用,即在即将显示的时候, atlasRegistered 是在 altasRequested 使用回调后调用. altasRequested 即使该精灵绑定的 sprite atlas 已经存在,还是会触发该事件. 另外还发现了一个Unitybug, ?? 操作符有bug在2018.4.8版本中 public class Test : MonoBehaviour { public Text Text; // text已序列化 public Font Font;// null void Start() { Text.font = Font == null ? Text