unity

unity技术材料

Unity3D 多平台_预编译相关宏定义

unity

Unity3D 多平台_预编译相关宏定义

# Unity平台和版本定义 - **UNITY_EDITOR**: 编辑器调用。 - **UNITY_STANDALONE_OSX**: 专门为Mac OS(包括Universal,PPC和Intel架构)平台的定义。 - **UNITY_DASHBOARD_WIDGET**: Mac OS Dashboard widget (Mac OS仪表板小部件)。 - **UNITY_STANDALONE_WIN**: Windows操作系统。 - **UNITY_STANDALONE_LINUX**: Linux的独立应用程序。 - **UNITY_STANDALONE**: 独立的平台(Mac,Windows或Linux)。 - **UNITY_WEBPLAYER**: 网页播放器(包括Windows和Mac Web播放器可执行文件)。 - **UNITY_WII**: Wii游戏机平台。

3Dmax 常用-概念理解

unity

3Dmax 常用-概念理解

人物模型建模流程: 建模型 建骨骼 建蒙皮 帮权重 做动画 骨骼: 动作是做在骨骼上的,骨骼有父子关系,移动父骨骼子骨骼会跟着动。 蒙皮: 把模型上的点,绑定到骨骼上,让模型上的点跟着骨骼一起动。比如手臂上有几千个点,只有一个骨骼,将几千个点按照一定的比例,权重,在骨骼动的时候让骨骼和每个点存在一定的运动关系。这就是蒙皮要实现的功能,Skin去做蒙皮。 权重: 选中的模型上的点在每根骨骼上所占有的权重,分配的权重越高,模型的蒙皮和骨骼的运动越紧密。0不动,1动。 IK: 反向动力学,子物体带动父物体的运动关系。在有骨骼后,子物体和父亲物体绑定IK后,子物体就可以带动父亲物体的运动。 UV: 0-1范围的一个二维空间,模型可以在选择面模型的一个后,在UV编辑器中,将选择它在UV贴图中的映射,同时映射是可以重复选择区域的,所以场景中的模型可以将材质方的按同一个材质贴图上。从而优化DrawCall。 多边形建模: 场景中可以建立简单模型,同时模型会有默认的UV。建立自己模型时: 当一个模型是可编辑多边形时:可以选择操作点,操作面,操作边,操作交界,

unity中的各种路径

unity

unity中的各种路径

# Unity3D在各平台上的路径问题 ## 各个路径对应的位置和访问方式总结一下。 ### 1、Resources路径 Resources文件夹是Unity里自动识别的一种文件夹,可在Unity编辑器的Project窗口里创建,并将资源放置在里面。Resources文件夹下的资源不管是否有用,全部会打包进.apk或者.ipa,并且打包时会将里面的资源压缩处理。加载方法是Resources.Load<T>(文件名),需要注意:文件名不包括扩展名,打包后不能更改Resources下的资源内容,但是从Resources文件夹中加载出来的资源可以更改。 ### 2、Application.dataPath路径 这个属性返回的是程序的数据文件所在文件夹的路径,例如在Editor中就是项目的Assets文件夹的路径,通过这个路径可以访问项目中任何文件夹中的资源,但是在移动端它是完全没用。 ### 3、Application.streamingAssetsPath路径 这个属性用于返回流数据的缓存目录,返回路径为相对路径,适合设置一些外部数据文件的路径。在Unity工程的Ass

C# 回调方法

大前端

C# 回调方法

定义事件的类------ 定义某种类型的事件---------在方法中传递该事件类型的参数并调用------将这个类中的数据传递给事件方法并调用 using UnityEngine; using System.Collections; public class CallBackTest : MonoBehaviour { public System.Action NoParamersCallBack; public System.Action<int> ValueCallBack; public delegate bool CallBackDelegate(Info f); public event CallBackDelegate calld; public static CallBackTest _instancs; public int i; public string ss; public Info f; void Awake() { _instancs = this;

Unity对象池笔记

Unity对象池笔记

游戏中常常需要对有些游戏对象进行反复的创建销毁,比如游戏中的子弹、敌人。反复的创建与销毁将浪费一定的系统资源。 引入对象池技术,可以将暂时不需要用到的游戏对象放在对象池(缓冲区),当需要使用到时再从对象池中提取。分为步骤: 建立单例模式的对象池类 建立从对象池里获取的方法 建立对象回收的方法 using System.Collections; using System.Collections.Generic; using UnityEngine; public class ObjectPool { #region 单例 private static ObjectPool instance; private ObjectPool()//给自己创建实例,并实例pool和prefabs { pool = new Dictionary<string, List<GameObject>>(); prefabs = new Dictionary<string, GameObject&

Quaternion.LookRotation ()   Quaternion.Euler()    的区别

unity

Quaternion.LookRotation () Quaternion.Euler() 的区别

![] 面板显示的是物体的局部坐标系旋转,(0 ,0, 90) 是Z轴 旋转90度,(没有父亲物体时 世界坐标 = 局部坐标 ) using UnityEngine; public class A : MonoBehaviour { public Vector3 S = new Vector3(0,0,1); void Update (){ //当看向某个方向时,求出看向这个方向的四元素的角度值,局部坐标而言(物体可以认为都显示的局部坐标) Quaternion a = Quaternion.LookRotation  //(S)调用返回----四元素()  根据一个向量得到-这个向量基于原点的旋转角度 transform.rotation = Quaternion.Lerp (transform.rotation, a, 0.02f);    // new Vector3(0,0,1)

Unity2D碰撞OnColliderEnter 和 OnTriggerEnter 区别

unity

Unity2D碰撞OnColliderEnter 和 OnTriggerEnter 区别

# 碰撞检测与触发器 假设两个物体A和B。 两者都有碰撞体collider(Box Collider,Sphere Collider,Capsule Collider等)。 A和B都有刚体(Rigidbody)。 当A或B中有一个勾选isTrigger时,或者两者都勾选isTrigger时,A和B都可以进入OnTriggerEnter方法,但不可进入OnCollisionEnter方法。 当A和B都不勾选isTrigger时,A和B能进入OnCollisionEnter方法,但不能进入OnTriggerEnter方法。 **结论:** - OnCollisionEnter方法必须是在两个碰撞物体都不勾选isTrigger的前提下才能进入。反之只要勾选一个isTrigger那么就能进入OnTriggerEnter方法。 - OnCollisionEnter和OnTriggerEnter是冲突的,不能同时存在的。 ## 选择OnCollisionEnter和OnTriggerEnter 如果想实现两个刚体物理的实际碰撞效果时使用OnCollisionEnter。Unity

Unity3d中Instantiate函数版本更新变更

unity

Unity3d中Instantiate函数版本更新变更

Object.Instantiate 几种调用方法 public static Object Instantiate(Object original); public static Object Instantiate(Object original, Transform parent); public static Object Instantiate(Object original, Transform parent, bool instantiateInWorldSpace); public static Object Instantiate(Object original, Vector3 position, Quaternion rotation); public static Object Instantiate(Object original, Vector3 position, Quaternion rotation, Transform parent); Parameters