今天一个本科小学弟问到一个matlab编程问题,说自己只是改了别人的一小段代码,结果程序运行就通不过。给他看了一遍代码,我也没有发现问题。在一个for循环里面,第一遍能跑完,跑到第二遍的时候就会在一句调用sum函数的地方提示错误,反复对比单步调试无果。还多次确认,sum函数本身并没有什么使用限制。后来突然灵光一闪,发现他的for循环里面用到一个变量名就叫 sum, 第一遍循环跑完后,sum变量进
1.边缘光方法(Rim Light): Unity官方教程里有例子,其中核心是这两句代码: half rim = 1.0 - saturate(dot (normalize(IN.viewDir), IN.worldNormal)); o.Emission = _RimColor.rgb * pow (rim, _RimPower); IN.viewDir是当前视
1、Shader是渲染流水线中的某些特定阶段,如顶点着色器阶段、片元着色器阶段等。在Unity中,我们需要配合使用材质和Unity Shader才能达到需要的效果,一个常见的流程是:①创建一个材质②创建一个Unity Shader,并把它赋给上一步中创建的材质③把材质赋给要渲染的对象④在材质面板中调整Unity Shader的属性,以得到满意的效果    在
转载 2024-03-10 20:09:23
148阅读
本系列主要参考《Unity Shaders and Effects Cookbook》一书(感谢原书作者),同时会加上一点个人理解或拓展。这里是本书所有的插图。这里是本书所需的代码和资源(当然你也可以从官网下载)。==========================================...
原创 2022-01-07 10:20:19
1280阅读
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阅读
在今年GDC上发现一个非常有趣的演讲,叫做Animating With Math,遂实现之,是讲述顶点shader动画的,举了几个经典的例子,但是讲者并没有给代码,而是像虚幻引擎那样的节点,这样更加清楚明了 之前博主通过顶点着色器实现了水的波动算法: unity3d 制造自己的水体water effect(二) 顶点着色器动画可以减少动画的开销,并减少关节joint的数量 开始举的例子都很简单,
转载 2024-03-01 20:31:31
125阅读
上一节中说了,在 Surface Shader 中,添加顶点函数,我们可以在 顶点函数中获取到 顶点数据,比如顶点颜色顶点坐标等。这一节学习获取顶点坐标,并且修改顶点坐标,来实现顶点动画。简单介绍原理:在顶点函数中,获取到顶点坐标 vertex,然后,求float offsetY = sin(vertex.x) ,然后将 offsetY 加到 vertex.y 上,这样就把原来的平面 ,变成了
虚幻引擎中VertexPainting工具能够很方便的将几种材质进行混合并绘制在模型上。而在Unity中则可以通过VertPaint这个插件来实现差不多的效果(PS:肯定是没有虚幻中的那么强大)。操作步骤如下(以Bulit—in管线为例):一、首先在Window中找到VertPaint并打开,也可以按Ctrl+Shift+V打开,打开之后会出现右图中的窗口二、把混合材质赋予到需要绘制的物体插件自带
转载 2024-02-27 18:06:47
77阅读
3D数学基础向量向量可以看做具有方向和大小的一条线段。比如:我们如果用点A减去点B,则可以得到一个向量,该向量的方向为点B面向点A的方向,而大小为两点的距离。这个方法在游戏开发中经常用到,比如我们要让物体B面向物体A,一般都是使用物体B的位置减去物体A的位置,得到的向量取模。点积向量的点积表示一个向量在另一个向量上的投影,如下:而相互垂直的两个向量点积为0:我们可以使用这个特性来判断两个向量是否垂
转载 2024-10-05 13:03:08
80阅读
序详见官方文档:Unity - Manual: Mesh data (unity3d.com)Topology:拓扑结构翻译:拓扑描述网格具有的面类型。 网格的拓扑定义了索引缓冲区的结构,索引缓冲区又描述了顶点位置如何组合成面。每种类型的拓扑都使用索引数组中不同数量的元素来定义单个面。 Unity支持以下网格拓扑: 三角形 Quad 线 LineStrip 积分 index data:索
转载 2024-09-09 17:12:53
133阅读
概述之前是使用OpenGL练习图形学项目的,现在要转向在Unity 3d中练习图像学项目。由此,才有了这一系列的项目。本篇将从比较简单的顶点动画说起,开启图形学的篇章。 原理主要的原理,就是在顶点着色器中,对顶点进行各种偏移。这种偏移,可以根据自己的需要,在模型空间、世界空间、裁剪空间等空间中进行。1、压扁效果开放两个属性,TopY和BottomY,代表物体的上部和底部(世界空间中的数值)。再
目录绘制图元的几个方法基于线段的方式基于顶点法绘制立方体基于索引法绘制立方体绘制图元的几个方法OpenGL ES中有5个绘制图元的API调用:glDrawArrays、gIDrawElements、glDrawRangeHonents、 glDrawArraysInstanced和glDrawElementsInstanced。glDrawArrays用元素索引为first到first+count
将渲染流程划分为表面着色器、光照模型和光照着色器这样的层面。其中,表面着色器定义了模型表面的反射率、法线和高光等,光照模型选择是使用兰伯特还是Blinn-Phong等模型。而光照着色器负责计算光照衰减、阴影等。表面着色器实际上就是在顶点/片元着色器之上又添加了一层抽象。表面着色器的一个例子使用表面着色器来实现一个使用了法线纹理的漫反射效果。Shader "Custom/Bumped Diffuse
转载 2024-08-02 16:30:10
170阅读
流动的河流 // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' Shader "Unlit/ScrollRiver" { Properties { //河流纹理 _MainTex ("Texture", 2D) = "white" {
一、简介为了搭建更好的ShaderGraph学习环境,为构建良好、丰富的学习氛围,这是ShaderGraph学习辅助库的开发初衷,当前软件使用Unity原生开发二、您可以通过当前辅助库达到一下目的在输入框中直接输入节点如(Combine)回车可获取到当前节点的讲解:在输入框输入1029-H回车可获取到当前程序帮助页面在输入框输入1029-E回车可获取到服务器中的案例,也可将你制作完成的Shader
这个应该属于撸一个适合自己的小游戏框架的第三篇。上一篇是Unity中的颜色转换,让Log信息更炫酷。 然后今天整理了一个之前copy的网格合并的代码。网格合并就是把多个分散物体(单个物体有单个mesh)组成的物体,合并一下,用一个mesh就能显示出来。来达到优化性能的效果 ,这个很多人写过。直接贴代码了。using System.Collections; using System.Collecti
转载 2024-09-06 13:12:15
32阅读
流动的河流Shader "Unity Shaders Book/Chapter 11/Water" { Properties { _MainTex ("Main Tex", 2D) = "white" {} //河流纹理 _Color ("Color Tint", Color) = (1, 1, 1, 1) //整体颜色 _Magnitude ("Distortion M
转载 2024-10-16 10:42:29
90阅读
使用 MegaFiers 插件,能够使得Unity支持顶点动画的播放。官方视频教
转载 2015-03-12 21:13:00
462阅读
2评论
使用 MegaFiers 插件,可以使得Unity支持顶点动画的播放。官方视频教程如下:在这里简单测试使用下,环境如下:Blender 2.72Unity 4.5.4MegaFiers 2.74在这里简单测试使用下,环境如下:Blender 2.72Unity 4.5.4MegaFiers 2.74创建物体和动画首先打开Blender,默认会含有一个立方体,下面对这个立方体制作一个简单动画,让其在1~100帧做旋转,101
原创 2021-08-20 14:46:07
2224阅读
  • 1
  • 2
  • 3
  • 4
  • 5