最近工作上用到了Mesh这个组件,需要用这个组件画图,拿十字架练手。 需要用到的组件,Mesh ,MeshRender,MeshFilter。 首先我们了解一下三者的关系,MeshFilter从Mesh拿到需要画图的数据,然后给MeshRender进行渲染。 unity中的图片都是一个个三角形拼接起来的。所以不管是绘制什么,都需要三个点(存在Mesh的vertices中),并且这三个点需要按照逆时            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-28 13:02:08
                            
                                74阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            秉着边学边写边折腾的原则,开始粗糙的工作。真正掌握还是得讲解给别人听。 先给出网课l (有时候这网站会装死,一般过几个小时就会活过来)mesh节分成两段,一段是mesh的例子开始,第二段讲解各个参数1.meshhttp://docs.enthought.com/mayavi/mayavi/auto/mlab_helper_functions.html#mesh 先引用官方实例,官方的代码又有点小问            
                
         
            
            
            
            3D数学基础向量向量可以看做具有方向和大小的一条线段。比如:我们如果用点A减去点B,则可以得到一个向量,该向量的方向为点B面向点A的方向,而大小为两点的距离。这个方法在游戏开发中经常用到,比如我们要让物体B面向物体A,一般都是使用物体B的位置减去物体A的位置,得到的向量取模。点积向量的点积表示一个向量在另一个向量上的投影,如下:而相互垂直的两个向量点积为0:我们可以使用这个特性来判断两个向量是否垂            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-05 13:03:08
                            
                                80阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、点积(又称“数量积”、“内积”) 1、理论知识在数学中,点积的定义为a·b=|a|·|b|cos<a,b> 【注:粗体小写字母表示向量,<a,b>表示向量a,b的夹角,取值范围为[0,π]】。从定义上,我们知道向量的点积得到的是一个数值。而不是向量(这点大家要注意了!要与叉积进行区别)。另外点积中的夹角<a,b>没有顺序可言,即<a            
                
         
            
            
            
            一、Mesh 网格Mesh概念:Mesh是Unity中的一个数据结构,称为网格。通俗的讲,Mesh是指模型的网格,3D模型是由多边形拼接而成,而多边形实际上是由多个三角形拼接而成的。所以一个3D模型的表面其实是由多个彼此相连的三角面构成。三维空间中,构成这些三角形的点和边的集合就是Mesh。1. 顶点、法线、UV、顶点色vertices: normals: uv: tangents: boneWe            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-08 14:18:29
                            
                                165阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言很多情况下,我们发现Unity中的顶点数量与max中的不一致,很是费解,为什么这样呢?到底谁才是对的呢?  测试其实都是对的,只是大家处理的方式不一样而已,但是由于我们最终是要在引擎中进行展示与操作,所以我们还是要以引擎中的为准!那么接下来我们做几个小测试,来看下具体是什么导致顶点数不一样的。 首先,我们在max中新建一个立方体,并导入到unity中进行观察:&n            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-17 11:36:36
                            
                                77阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一.图形绘制1.绘制三角形using UnityEngine;
using UnityEngine.UI;
public class TestMesh : BaseMeshEffect {
    public override void ModifyMesh(VertexHelper vh)
    {
        vh.Clear();
        vh.AddVert(new V            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-05 12:33:22
                            
                                108阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            01    【创建】|【线】画出如图所示的形状 
  02    在顶视图【创建】|【弧】,画出沙发靠背的形状,修改【插值】卷展栏中的步数为3,如图所示 
  03    选择前面步骤中画的弧形状,添加【倒角剖面】修改器,【拾取剖面】选择把手形状如图所示 
  04    右键转【可编辑多边形】,进入【边界】层级,选择如图所示的边界,在【编辑边界】卷展栏选择            
                
         
            
            
            
            初尝2D骨骼动画编辑工具SPINE,并into Unity3D 一、SPINE使用 
  研究2D骨骼动画,CYou的朋友介绍我SPINE这个工具,开发自Esoteric Software的一款专门制作2D动画的软件,网络上的资料还很少,我这从半吊子美术技术的角度简单说一下使用教程。 
  
  有几个不错的地方: 
 
  1、美术制作前准备的贴图为一堆小切片图。不用非得拼成一张atl            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-02 17:12:23
                            
                                220阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Unity自带的物理引擎,都是用的硬件浮点,硬件浮点有个特点,就是不同CPU,实现的标准可能不一样,导致会有误差。也就是说,Unity自带的物理引擎,在不同平台上,模拟的效果可能会不一样。而且就算是同一机器,也可能因为浮点造成的误差,导致每次模拟的结果都不一样。解决方法就是用软件浮点(定点数)来代替硬件浮点,不同平台,浮点的实现都是统一的方式,而且每次计算结果都是唯一,不存在误差,确定就是定点数性            
                
         
            
            
            
            Unity3D 里有两种动态加载机制:一个是Resources.Load,另外一个通过AssetBundle,其实两者区别不大。 Resources.Load就是从一个缺省打进程序包里的AssetBundle里加载资源,而一般AssetBundle文件需要你自己创建,运行时 动态加载,可以指定路径和来源的。其实场景里所有静态的对象也有这么一个加载过程,只是Unity3D后台替你自动完成了。详细说一            
                
         
            
            
            
            用户在管理帐户或进行购买前,他或她必须使用熟悉的登录过程登录到 Duwamish 7.0。“Logon”(登录)页使用 ASP.NET 基于窗体的身份验证来验证用户是否提供了唯一的电子邮件别名和密码。尚未建立帐户的用户可以通过单击“New Customer”(新建客户)按钮创建一个帐户。有关创建新帐户的详细信息,请参见帐户管理。实现“Logon”(登录)页使用下面的 ASP.NET 文件和 C#             
                
         
            
            
            
            unity内置时间变量:_Time float4 t是自该场景加载开始所经过的时间 (t/20,t.2t.3t)_SinTime t是时间的正弦值 (t/8,t/4,t/2,t)_CosTime t是时间的余弦值(t/8,t/4,t/2,t)unity_DeltaTime dt是时间增量 (dt,dt/2,smoothDt,1/smoothDt)纹理动画序列帧动画顶点着色器中完成顶点变换与定点纹理            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-08 11:14:43
                            
                                119阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在上一个例子中,我们得到了由mesh组件传递的信息经过数学转换至合适的颜色区间以颜色的形式着色到物体上。这篇文章将要在此基础上研究片段的擦除(discarding fragments)和前面剪裁、后面剪裁(front face culling and back face culling)来达到透明效果。当一个mesh组件的信息被传递后,我们可以通过代码决定哪些部分渲染(render)出来,而哪些部            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-19 15:33:02
                            
                                182阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在实际项目开发中,提起unity优化,肯定是有DrawCall的相关内容的,下面就讲解一下什么是DrawCall以及如何对DrawCall进行优化操作。一、什么是DrawCall?        在unity中,每次CPU准备数据并通知GPU的过程就称之为一个DrawCall。        具体过程就是:设置颜色--            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-07 13:49:19
                            
                                162阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            本文将讲述动画系统的发展,让读者对动画的发展及当下动画的基础知识有一个深入的了解一、静态模型(Mesh)在游戏中,模型作为我们最常接触的美术资源,其本身是由一系列顶点(坐标)信息组成的数据集,因此,单纯的模型是纯静态的,如下图的网格交汇点便是顶点二、动画为了让模型动起来,我们需要让模型的各个顶点按照一定规律运动起来,实现“动画”效果,也就是所谓的“顶点动画” 该效果出自UnityShader_翻书            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-28 09:14:59
                            
                                64阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              项目中用到了spine动画,使用Assetbundle打包后,在手机上运行会出现丢材质的情况。如果不进行打包,直接放到Resources目录下是可以正常加载的,但是,这样包就会很大,而且也不能进行热更新。进过测试,发现在代码中创建spine组件是可以解决这个问题,于是就有了下面的方案。我们先说方案,再说问题。方案:spine动画制作人员提供的spine动画三个文件分别是.json,.            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-04 12:21:18
                            
                                439阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            上一节中说了,在 Surface Shader 中,添加顶点函数,我们可以在 顶点函数中获取到 顶点数据,比如顶点颜色、顶点坐标等。这一节学习获取顶点坐标,并且修改顶点坐标,来实现顶点动画。简单介绍原理:在顶点函数中,获取到顶点坐标 vertex,然后,求float offsetY = sin(vertex.x) ,然后将 offsetY 加到 vertex.y 上,这样就把原来的平面 ,变成了            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-13 13:16:50
                            
                                262阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在今年GDC上发现一个非常有趣的演讲,叫做Animating With Math,遂实现之,是讲述顶点shader动画的,举了几个经典的例子,但是讲者并没有给代码,而是像虚幻引擎那样的节点,这样更加清楚明了 之前博主通过顶点着色器实现了水的波动算法: 
unity3d 制造自己的水体water effect(二) 顶点着色器动画可以减少动画的开销,并减少关节joint的数量 开始举的例子都很简单,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-01 20:31:31
                            
                                125阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            初识基础:首先点和面的联系:三个点构成一个小三角形,然后面就是由无数的小三角形构成 另外相同位置的顶点可以复用,就像一个正方形,四个点即可三角面有正反之分,关键看法线方向 发现朝外的,我们能看到,反过来就看不到了,可以参考unity的Planeuv: 纹理坐标 目的是让我们的图片正确的显示到我们的图形上,也就是贴图吧 取值范围就是0到1三角形序列(triangle) 都是三点倍数emmmm关于以上            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-03 10:12:54
                            
                                98阅读
                            
                                                                             
                 
                
                                
                    