Unity中计算面法线与顶点法线
1、什么是法线
法线:是指始终垂直于某平面的直线。在几何学中,法线指平面上垂直于曲线在某点的切线的一条线。
2、面法线与顶点法线
在 Max Wagner 的 《Generating Vertex Normals》文章 中写到——严格意义上讲,点是没有法线的。点的法线是在使用Phone或Gouraud模型时计算光照使用。如果一个面上的所有法线都一样,他们的光照也就一样,就会产生 flatness 效果;而如果把每个顶点的法向设置不同,则更平滑。
3、面法线与顶点法线计算公式
//假设一个面的三个顶点为如下:Vector3 m_vector3s = new Vector3[6];m_vector3s[0] = new Vector3(0,0,0);m_vector3s[1] = new Vector3(0,1,0);m_vector3s[2] = new Vector3(1,0,0);//算出面法线Vector3.normal = Vector3.Normalize(Vector3.Cross(m_vector3s[0] - m_vector3s[1], m_vector3s[0] - m_vector3s[2]));
得到面法线以后,得出顶点法线就简单了:将所有面法线相加 再取顶点平均值即可
Unity中计算面法线与顶点法线相关推荐
- unity中计算向量的模长和归一化向量
unity中计算向量的模长和归一化向量 计算向量的模长 向量归一化 计算向量的模长 创建一个cube, 获取position后计算向量的模长 void fun(){Vector3 pos = this ...
- (简洁)面法线与顶点法线
原文链接:https://blog.kokojia.com/game/b-56.html 每一个面都有自己的法线,在3D游戏中一个三角形代表一个面.法线通常可以用来进行光照计算,用来确定光照的强度如图 ...
- unity中计算不规则模型的体积与表面积—三角面片与四面体
最近项目需要对不规则物体的体积与面积进行计算,查阅了很多资料都没有进展,有的说用微积分的也有用VTK的感觉这些都很麻烦而且没有具体明确的思路,今天看到一篇相关资料感觉很简单易懂而切也很实用. 代码如下 ...
- Face Normals Vertex Normals(面法线跟顶点法线的区别)
What is a face normal? A face normal is a vector that describesthe direction a polygon is facing(see ...
- unreal 顶点法线与 面法线
当前revit 建筑模型软件导出的模型对象 three.js的json文件,都是面法线.(暂时是这样的,是否能导出顶点法线,后续确定,7-9 确定js文件可以标记顶点法线和面法线,同时revit可以通 ...
- unity怎么显示骨骼_骨骼动画的原理及在Unity中的使用
制作骨骼动画 我们看看这几步操作后,我们得到了那些数据: 1.每个皮肤顶点的初始世界坐标. 2.每个骨骼关节顶点的初始世界坐标. 3.每个顶点被骨骼顶点的影响信息. 4.骨骼如何移动. 骨骼动画原理 ...
- Unity 模型顶点法线不统一————使用Blender修改顶点法线
遇到的问题:使用Blender创建的模型,顶点法线都是默认的,或者说顶点法线是基于自身三角形(矩形)的.这就导致同一个空间位置上的一个(在图形学引擎中被视为多个)顶点拥有若干个不同的法线向量.当你使用 ...
- Unity中的法线贴图、漫反射及高光
我们都知道,一个三维场景的画面的好坏,百分之四十取决于模型,百分之六十取决于贴图,可见贴图在画面中所占的重要性.在这里我将列举一些贴图,并且初步阐述其概念,理解原理的基础上制作贴图,也就顺手多了. 我 ...
- 顶点法线计算的几种方式
首先,顶点法线都是从面法线加权平均计算得到.所以有两个维度,一是哪些面参与计算,二是权重如何计算. 一 哪些面参与计算 如果建模工具导出了光滑组,那么方案一是直接使用光滑组信息,属于同一个光滑组的面参 ...
最新文章
- 使用机智云APP控制战舰V3 (转)
- Aspose.Words导出图片 表格 Interop.Word
- J0ker的CISSP之路:How CISSP(3)
- ASP.NET中移除全部缓存
- python怎么连接socket_python socket连接实现即时通讯
- Swift 位运算练习
- [转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别
- hierarchy change in CRM - step1 inbound CSAIBASE queue
- 英特尔移动CPU参数表
- Symbols andSymbol Tables
- 小知识--oppo R9sk手机刷机
- Vue源码学习1--获取源码和查找入口文件
- powerpoint ppt 点击放映后黑屏 解决办法
- MATLAB | 分形的艺术——(Mandelbrot)曼德勃罗特集合
- 测试-- 自动化测试selenium(关于API)
- 模型的参数verbose用法详解
- java scp 传文件乱码_转-linux 打开移动硬盘中的文本文件显示为乱码
- linux可以识别多少lun,Linux上每个SCSI设备的最大LUN数目是多少(by quqi99)
- 12.0 自定义SystemUI下拉状态栏和通知栏视图(二十)之锁屏通知布局
- aspnet boilerplate 随笔一