查看: 139|回复: 5

[简易教程] 可查看法线的脚本normals line script in unity

[复制链接]

442

主题

75

听众

4092

积分

头头

Rank: 12Rank: 12Rank: 12

发表于 2020-4-14 13:38 |显示全部楼层
共享资源获取更多积分!share your resources get more credits!
  1. using System;
  2. using UnityEngine;

  3. [ExecuteInEditMode]
  4. public class ShowNormals : MonoBehaviour {

  5.     public float length = 1;

  6.     public Vector3 bias;
  7.     public Boolean isShowDebugPoint;

  8.     // Update is called once per frame
  9.     private void OnValidate()
  10.     {
  11.         
  12.     }  
  13.     private void OnDrawGizmos()
  14.     {
  15.         if (isShowDebugPoint)
  16.         {
  17.             // 获取网格法线
  18.             Mesh mesh = GetComponent<MeshFilter>().sharedMesh;

  19.             Vector3[] vertices = mesh.vertices;
  20.             Vector3[] normals = mesh.normals;

  21.             for (var i = 0; i < normals.Length; i++)
  22.             {
  23.                 Vector3 pos = vertices[i];
  24.                 pos.x *= transform.localScale.x;
  25.                 pos.y *= transform.localScale.y;
  26.                 pos.z *= transform.localScale.z;
  27.                 pos += transform.position + bias;

  28.                 Gizmos.DrawLine
  29.                 (
  30.                     pos,
  31.                     pos + normals[i] * length);
  32.             }
  33.         }
  34.     }

  35. }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

楼主热帖
人人为我 我为人人 互相分享 互相学习 互相进步 一带一路

0

主题

31

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2020-5-8 07:09 |显示全部楼层
楼主是超人
回复

使用道具 举报

0

主题

31

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2020-5-8 07:47 |显示全部楼层
好帖就是要顶
回复

使用道具 举报

0

主题

31

听众

200

积分

小学生

Rank: 2

升级   0%

发表于 2020-5-8 07:34 |显示全部楼层
真心顶
回复

使用道具 举报

0

主题

31

听众

203

积分

小学生

Rank: 2

升级   1%

发表于 2020-5-8 07:53 |显示全部楼层
很好哦
回复

使用道具 举报

0

主题

31

听众

205

积分

小学生

Rank: 2

升级   1.67%

发表于 2020-5-8 07:43 |显示全部楼层
不错不错
回复

使用道具 举报

温馨提示:求助请到“Unity技术讨论”版块中发帖,便于集中解决!
您需要登录后才可以回帖 登录 | 立即注册

懒人模式:

关闭

站长推荐 上一条 /1 下一条

Unity3D游戏开发联盟(资源共享平台) -Unity3D,Unreal ( 粤ICP备20003399号-2 )

GMT+8, 2020-5-31 01:14 , Processed in 0.057366 second(s), 39 queries .