
unity
GJQI12
这个作者很懒,什么都没留下…
展开
-
unity 旋转欧拉角 万向锁 解释
万向锁 一直困惑我很久。。。。原因出在这里,我以为欧拉角旋转是以模型坐标(齐次坐标系)为旋转轴。问题就来了,无论旋转那个轴,其它两个轴也会相应的变化,下面看图:根据上面的说明两个旋转面(圆圈)怎么会共面,让我迷糊。假设共面,那这两个旋转面的法线应该是旋转轴,要想两个面共面,那旋转轴肯定平行的。但问题是以模型坐标(齐次坐标系)为旋转轴,无论旋转那个轴,其它两个轴也会相应的变化,而且相互垂直。就不会发生共面,不会出现万象锁???网上说欧拉角坐标轴旋转是按顺序旋转的,即父子关系,如下图还.转载 2020-08-03 13:02:24 · 446 阅读 · 0 评论 -
对C#热更新方案ILRuntime的探究
转载请标明出处:http://www.cnblogs.com/zblade/对于游戏中的热更,目前主流的解决方案,分为Lua(ulua/slua/xlua/tolua)系和ILRuntime代表的c#系。今天就来探究一下ILRuntime是如何实现热更的流程的,新手入门,个中有错误理解,欢迎指正。ILRuntime的原理首先说一下lua的热更新基本过程,unity提供了AssetBundle的资源打包方式,这样可以通过资源的对比来更新最新的资源。而lua文件不需要编译,可以被打包进游戏的资源中,转载 2020-05-28 14:37:21 · 703 阅读 · 0 评论 -
unity3d中对模型进行动态切割方案
1.使用插件Shatter Toolkit2.使用开源库https://github.com/DavidArayan/ezy-slice原创 2020-05-28 14:18:24 · 2350 阅读 · 0 评论 -
Unity进阶技巧 - RectTransform详解
前言最近要做UI,有时候需要在代码中调整改变UI控件的属性,比如位置、大小等,然而在NGUI里面,控制UI控件的位置等属性的是RectTransform这个组件,这个组件继承自Transform组件,却增加许多自己的特性,在不了解这些特性的情况下鲁莽的去使用它,会导致出现很多匪夷所思的问题,而且使用起来也不够得心应手,于是决定研究一下RectTransform到底是如何工作的你将学得到什么?什么是Pivot 什么是Anchor 如何结合使用Pivot和Anchor来调整UI 了解RectT转载 2020-05-20 21:34:04 · 468 阅读 · 0 评论 -
投影矩阵的推导(Deriving Projection Matrices)
本文乃<投影矩阵的推导>译文,原文地址为: http://www.codeguru.com/cpp/misc/misc/math/article.php/c10123__1/Deriving-Projection-Matrices.htm,由于本人能力有限,有译的不明白的地方大家可以参考原文,谢谢^-^! 译者: 流星上的潴 如需转载,请注明出处,感谢! 在3D图形程序的基本矩阵变换中,投影矩阵是其中比较复杂的。平移和...转载 2020-05-19 12:26:34 · 459 阅读 · 1 评论 -
矩阵及变换,以及矩阵在DirectX和OpenGL中的运用问题:左乘/右乘,行优先/列优先,..
(一)首先,无论dx还是opengl,所表示的矢量和矩阵都是依据线性代数中的标准定义的:“矩阵A与B的乘积矩阵C的第i行第j列的元素c(ij)等于A的第i行于B的第j列的对应元素乘积的和。”(实用数学手册,科学出版社,第二版)例如c12 = a11*b11+a12*b21+a12*b13...(二)在明确了这一点后,然后我们再看“矩阵的存储方式”,矩阵存储方式有两种,一种是“行主序(row-major order)/行优先”,另一种就是“列主序(column-major order)/列优先”1)D转载 2020-05-19 11:26:43 · 1982 阅读 · 0 评论 -
Unity Shader-渲染队列,ZTest,ZWrite,Early-Z
简介在渲染阶段,引擎所做的工作是把所有场景中的对象按照一定的策略(顺序)进行渲染。最早的是画家算法,顾名思义,就是像画家画画一样,先画后面的物体,如果前面还有物体,那么就用前面的物体把物体覆盖掉,不过这种方式由于排序是针对物体来排序的,而物体之间也可能有重叠,所以效果并不好。所以目前更加常用的方式是z-buffer算法,类似颜色缓冲区缓冲颜色,z-buffer中存储的是当前的深度信息,对于每个...转载 2020-05-07 14:15:58 · 253 阅读 · 0 评论 -
Unity3d shader中Queue 使用渲染队列进行深度排序
为了让我们真正明确透明度。我们须要了解一下深度排序。或者说,对象的绘制顺序。Unity同意我们控制一个特定对象绘制到屏幕上的顺序,因此我们能够更好地控制哪些对象应该覆盖在其它对象上。你能够把绘制顺序理解成Photoshop中的图层的概念。在处理透明度或者相似界面对象的元素时。绘制顺序尤其重要。本篇将会解说怎样使用Unity内置的标签(tags)来利用这个分层化的方法去渲染你的对...转载 2020-05-07 11:54:19 · 731 阅读 · 0 评论 -
CustomEditor命令(特性)
当我们需要为一个组件添加自己自定义的编辑器内容时,需要用到这个特性:CustomEditor,语法如下:1、publicCustomEditor(TypeinspectedType);2、publicCustomEditor(TypeinspectedType, booleditorForChildClasses); bool editorForChildClasses可以让...转载 2020-04-27 11:40:52 · 2434 阅读 · 0 评论 -
uniy3d学习笔记
1.在project视图的右侧拓展自定义按钮EditorApplication.projectWindowItemOnGUI : 委托用于OnGUI事件在项目窗口每个可见列表项。原创 2020-04-22 19:51:17 · 325 阅读 · 0 评论 -
Unity3D手游开发实践《腾讯桌球》客户端开发经验总结
GameRes游资网授权发布 文 / 吴秦(Tyler) 本次分享总结,起源于腾讯桌球项目,但是不仅仅限于项目本身。虽然基于Unity3D,很多东西同样适用于Cocos。本文从以下10大点进行阐述: 1.架构设计 2.原生插件/平台交互 3.版本与补丁 4.用脚本,还是不用?这是一个问题 5.资源管理 6.性能优化 7.异常与...转载 2019-12-27 10:11:37 · 827 阅读 · 0 评论 -
unity3d及 shader
unity3d及 shader : https://catlikecoding.com/原创 2018-07-03 11:16:41 · 195 阅读 · 0 评论 -
unity3d在手机上显示阴影的设置
最近在用unity3d做一个游戏,要求物体产物阴影,在unity3d中实现实时阴影有多种方法,可以使用unity3d自带的阴影功能,也可以使用projector组件实现。最方便的做法是使用unity3d自带的阴影功能,但是这个方法也比较耗性能,如果游戏不是很大,可以使用。使用unity3d自带的阴影功能时,在电脑上运行正常会产生阴影,但是打包到手机上却发现没有阴影了,查了很久,终于知道原因了,un...原创 2018-04-08 14:43:43 · 4228 阅读 · 0 评论 -
如何在Unity3d中调用android的方法
本文使用的工具是unity3d 5.0以上和eclipse。1.假设个人电脑上已经搭建好了android+eclipse的开发环境,在调用android方法前必须要在eclipse中创建一个android工程,创建的工程使用最小版本的android sdk必须是4.0以上。2.再引入unity3d提供的classes.jar包,该包位于Unity\Editor\Data\P原创 2017-09-29 14:04:49 · 525 阅读 · 0 评论 -
unity网络编程学习
前言最近在学习unity自身封装的网络功能,在游戏物体上挂上Network组件,使其成为网络中的一份子,就像这里所说的,Unity网络协议本身是一个比较高层的网络协议,他并不是独立存在的,而是与引擎的游戏对象结合在一起,所以在Unity中不存在单纯的“发送给服务器”或“发送给客户端的”网络消息,不同的游戏对象之间的通信是独立的,就好像每个游戏对象都有一个独立的通信管道。在游戏中,对转载 2017-10-09 15:25:11 · 647 阅读 · 0 评论 -
Surface Shader的Input输入结构
Input中的UV数据在一个贴图变量之前加上uv两个字母,就代表提取它的uv值,例如uv_MainTex Input 这个输入结构通常拥有着色器需要的所有UV纹理坐标,纹理坐标必须被命名为“uv”后接纹理名字。(或者uv2开始,使用第二纹理坐标集)。Input中的可选变量 可以在输入结构中根据自己的需要,可选附加这样的一些候选值: float转载 2017-10-11 19:29:49 · 1473 阅读 · 0 评论 -
猫都能学会的Unity3D Shader入门指南(一)
动机自己使用Unity3D也有一段时间了,但是很多时候是流于表面,更多地是把这个引擎简单地用作脚本控制,而对更深入一些的层次几乎没有了解。虽然说Unity引擎设计的初衷就是创建简单的不需要开发者操心的谁都能用的3D引擎,但是只是肤浅的使用,可能是无法达到随心所欲的境地的,因此,这种状况必须改变!从哪里开始呢,貌似有句话叫做会写Shader的都是高手,于是,想大概看看从Shader开始能不能转载 2017-10-12 09:19:38 · 266 阅读 · 0 评论 -
猫都能学会的Unity3D Shader入门指南(二)
关于本系列这是Unity3D Shader入门指南系列的第二篇,本系列面向的对象是新接触Shader开发的Unity3D使用者,因为我本身自己也是Shader初学者,因此可能会存在错误或者疏漏,如果您在Shader开发上有所心得,很欢迎并恳请您指出文中纰漏,我会尽快改正。在之前的开篇中介绍了一些Shader的基本知识,包括ShaderLab的基本结构和语法,以及简单逐句地讲解了一个基本的s转载 2017-10-12 09:43:00 · 239 阅读 · 0 评论 -
Unity面板中的Rotation
在3D游戏世界中,任何一个游戏对象在创建的时候都会附带Transform(变换)组件,并且该组件是无法删除的,也不应该删除。在unity中,Transform面板一共有3个属性:Position (位置)Rotation(旋转)Scale(缩放)这三个值都是用来调整游戏对象在游戏界面中的位置,状态等相关参数。Unity脚本中的变量 transf转载 2017-10-12 15:53:28 · 3753 阅读 · 1 评论 -
Unity3d培训中Rotation和EularAngles的正确使用方法
Unity3d里面Transfrom关于旋转的变量是rotation,rotation是一个四元数,四元数就应该有四个值。 但是在编辑器里面,rotation里面只有三个值,这是为啥呢? 在Unity里面,一个正面朝上的Plane,他的EularAngles是new vector3(0,0,0) 但是当我们把他的EularAngles改成new转载 2017-10-12 15:55:35 · 4371 阅读 · 1 评论 -
Shader Alpha混合
注意:源颜色和目标颜色,是跟绘制的顺序有关。如果先绘制了一个红色的物体,再在其上绘制绿色的物体。则绿色是源颜色,红色是目标颜色。如果顺序反过来,则 红色就是源颜色,绿色才是目标颜色。Alpha Blending,中文译作Alpha混合Blending就是控制透明的。处于光栅化的最后阶段。这里例如我们给一个模型贴一个材质,那么在某个点计算出来颜色值称为源,而该点之前累积的颜色值,转载 2017-10-13 15:57:18 · 530 阅读 · 0 评论 -
Unity UGUI 鼠标穿透UI问题
简述 最近在用UGUI的时候遇到了鼠标穿透的问题,就是说在UGUI和3D场景混合的情况下,点击UI区域同时也会 触发3D中物体的鼠标事件。比如下图中这里给Cube加了一个鼠标点击改变颜色的代码,如下 void Update() { if(Input.GetMouseButtonDown(0)) {转载 2017-10-26 15:28:33 · 670 阅读 · 1 评论 -
节奏游戏开发指南
说明本文译自 TIGsource 论坛,为介绍节奏类游戏的开发日志,本文为系列的第一篇。文中作为范例的游戏,A Dance of Fire and Ice,是一款难度很高的单按键节奏游戏,巧妙地将几何变换与音乐两种元素融为一炉。游戏原型的试玩地址见这里。 也可以在在线游戏网站 Kongregate 上找到这个 demo。 移动版本则可以花 1 美元在这里买到,后续将获得转载 2017-11-03 14:34:38 · 3407 阅读 · 0 评论 -
免费UNITY资源的超级列表
原文地址:http://www.procedural-worlds.com/blog/best-free-unity-assets-categorised-mega-list/包含免费UNITY资源的超级列表这篇文章包含大量高品质的免费工具和模型来帮助你开发Unity游戏 - 拥有超过150项资源,并且一直在增长!同时我也在制作一个 低价(低于$ 15) 清单-这些都是转载 2017-12-14 19:21:49 · 3299 阅读 · 1 评论 -
unity3d在xcode中编译工程在模拟器上运行
在Xcode编译unity3d的工程在IOS器上运行,首先在unity3d导出xcode工程的时候需要配置player settings中的Scripting backend选择IL2Cpp,Target SDK 为Device SDK则可以在真机上运行,但是在模拟器上编译出错,Target SDK 为simulator则可以运行到模拟器上。原创 2018-02-01 14:32:33 · 1550 阅读 · 0 评论 -
Unity 3d和iOS交互的问题
Unity 3d+iOS,AR功能的交互和相互之间的通信,3个Errors,提示信息如下:Undefined symbols for architecture armv7: "__PressButton1", referenced from: _SDK__PressButton1_m1275187896 in Bulk_Assembly-CSharp_0.o转载 2018-02-01 19:17:19 · 335 阅读 · 0 评论 -
游戏中的流场(Flow Fields)寻路
现在大部分游戏使用的寻路算法都是A*,但是如果游戏中的NPC或都AI智能体太多的时候,使用A*会特别消耗性能,这时可以考虑使用流场寻路,流场寻路的介绍及基本使用方法在如下链接中:https://howtorts.github.io/2014/01/04/basic-flow-fields.html原创 2018-02-02 11:36:06 · 3472 阅读 · 0 评论 -
unity3d中的Image effect与post processing behaviour
unity中的Image effect,下面是它包含的一些效果,这些效果是可以叠加的1.Vignetting 光晕效果 :可以实现场景中的聚焦,以及对中心之外的物体做模糊处理2.vortexEffect 漩涡状的扭曲效果,可以用于模拟回忆效果,以及吸入等特殊效果的地方3.twirlEffect 基本效果同上4.tonemapping色调映射 改变camera渲染后的整个色调,很有用5.TiltSh...转载 2018-03-01 10:18:28 · 3042 阅读 · 0 评论 -
U3D sorting layer, sort order, order in layer, layer深入辨析
1,layer是对游戏中所有物体的分类别划分,如UIlayer, waterlayer, 3DModelLayer, smallAssetsLayer, effectLayer等。将不同类的物体划分到不同的层,便于相机拣选,在相机的cullmask中可以选择渲染哪些层,不选择的层则不会渲染。还可以用于射线检测对象的拣选,可以指定只对某些层的对象进行射线检测。2,canvas默认是屏转载 2017-09-28 11:07:57 · 605 阅读 · 0 评论