当前位置: 首页 > news >正文

Mesh网格

Mesh(网格)

定义:Mesh 是一个包含顶点、三角形、顶点法线、UV坐标、颜色和骨骼权重等数据的对象。它定义了3D模型的几何形状。
功能:
顶点(Vertices):构成3D模型的点。
三角形(Triangles):由三个顶点组成的面,定义了模型的表面。
法线(Normals):定义了表面的朝向,对于光照计算非常重要。
UV坐标(UV Coordinates):用于将纹理映射到3D模型上。
颜色(Colors):可以为每个顶点或每个子网格指定颜色。
骨骼权重(Bone Weights):用于骨骼动画,定义了顶点如何受到骨骼的影响。

MeshRenderer

定义:MeshRenderer 是一个组件,用于在Unity场景中渲染Mesh。
功能:
渲染网格:MeshRenderer 渲染与之关联的 MeshFilter 组件中的 Mesh。
材质应用:MeshRenderer 可以应用一个或多个材质到 Mesh 上,每个子网格可以有不同的材质。
光照和阴影:处理 Mesh 的光照和阴影效果。
全局光照:与全局光照系统(如光照探针和反射探针)交互,以实现更真实的光照效果。
脚本控制:可以通过脚本来动态改变 MeshRenderer 的属性,如材质、颜色等。

MeshRenderer 依赖于 MeshFilter 组件来获取要渲染的 Mesh。MeshFilter 组件存储对 Mesh 的引用。

在这里插入图片描述

private Mesh m_Mesh = null;
private Vector3[] m_Vertices = null;
private int[] m_Triangles = null;void Start()
{m_Mesh = new Mesh();this.gameObject.GetComponent<MeshFilter>().mesh = m_Mesh;m_Mesh.name = "Test Mesh";m_Vertices = new Vector3[]{new Vector3(0,0,0),new Vector3(0,1,0),new Vector3(1,0,0),new Vector3(1,1,0),};m_Triangles = new int[]{0,1,2,2,1,3}m_Mesh.Clear();m_Mesh.vertices = m_Vertices;m_Mesh.triangles = m_Triangles;}

在这里插入图片描述

http://www.lryc.cn/news/481852.html

相关文章:

  • LeetCode 509.斐波那契数
  • SQL Server 数据太多如何优化
  • 关于word 页眉页脚的一些小问题
  • 【高等数学学习记录】连续函数的运算与初等函数的连续性
  • 【抖音直播间弹幕】protobuf协议分析
  • Swift 开发教程系列 - 第11章:内存管理和 ARC(Automatic Reference Counting)
  • C#中 layout的用法
  • 【编程概念基础知识】
  • 【React】深入理解 JSX语法
  • 【Linux】从零开始使用多路转接IO --- 理解EPOLL的 LT水平触发模式 与 ET边缘触发模式
  • QtLua
  • c++-有关计数、双变量累加、半衰、阶乘、变量值互换的基础知识
  • MyBatis3-获取参数值的方式、查询功能及特殊SQL执行
  • web——[SUCTF 2019]EasySQL1——堆叠注入
  • 【Ubuntu学习】Ubuntu无法使用vim命令编辑
  • UniAPP u-popup 禁止背景滑动
  • F5全新报告揭示AI时代API安全面临严峻挑战
  • 使用C语言进行信号处理:从理论到实践的全面指南
  • 什么是工单管理系统?全面认识指南
  • 集群化消息服务解决方案
  • python数据结构操作与可视化的应用
  • 【基于轻量型架构的WEB开发】课程 作业4 AOP
  • 跨境独立站新手,如何用DuoPlus云手机破局海外社媒引流?
  • 【Android、IOS、Flutter、鸿蒙、ReactNative 】标题栏
  • 信息安全工程师(83)Windows操作系统安全分析与防护
  • QT Unknown module(s) in QT 以及maintenance tool的更详细用法(qt6.6.0)
  • 如何在vscode中安装git详细新手教程
  • JVM垃圾回收详解二(重点)
  • VLAN 高级技术实验
  • windowsC#-创建和引发异常