public Material _material;//圆柱的材质private bool _castShadows = true;private Dictionary<int, Mesh> _meshMap = new Dictionary<int, Mesh>();void update(){drawCylinder(GOA.transform.position, GOB.transform.position);}private void drawCylinder(Vector3 a, Vector3 b){float length = (a - b).magnitude;Graphics.DrawMesh(getCylinderMesh(length),Matrix4x4.TRS(a,Quaternion.LookRotation(b - a),new Vector3(transform.lossyScale.x, transform.lossyScale.x, 1)),_material,gameObject.layer,null, 0, null, _castShadows);}private Mesh getCylinderMesh(float length){const float CYLINDER_MESH_RESOLUTION = 0.1f;int lengthKey = Mathf.RoundToInt(length * 100 / CYLINDER_MESH_RESOLUTION);Mesh mesh;if (_meshMap.TryGetValue(lengthKey, out mesh)){return mesh;}mesh = new Mesh();mesh.name = "GeneratedCylinder";mesh.hideFlags = HideFlags.DontSave;List<Vector3> verts = new List<Vector3>();List<Color> colors = new List<Color>();List<int> tris = new List<int>();Vector3 p0 = Vector3.zero;Vector3 p1 = Vector3.forward * length;int _cylinderResolution = 12;float _cylinderRadius = 0.003f;//圆柱的半径for (int i = 0; i < _cylinderResolution; i++){float angle = (Mathf.PI * 2.0f * i) / _cylinderResolution;float dx = _cylinderRadius * Mathf.Cos(angle);float dy = _cylinderRadius * Mathf.Sin(angle);Vector3 spoke = new Vector3(dx, dy, 0);verts.Add(p0 + spoke);verts.Add(p1 + spoke);colors.Add(Color.white);colors.Add(Color.white);int triStart = verts.Count;int triCap = _cylinderResolution * 2;tris.Add((triStart + 0) % triCap);tris.Add((triStart + 2) % triCap);tris.Add((triStart + 1) % triCap);tris.Add((triStart + 2) % triCap);tris.Add((triStart + 3) % triCap);tris.Add((triStart + 1) % triCap);}mesh.SetVertices(verts);mesh.SetIndices(tris.ToArray(), MeshTopology.Triangles, 0);mesh.RecalculateBounds();mesh.RecalculateNormals();mesh.UploadMeshData(true);_meshMap[lengthKey] = mesh;return mesh;}

效果如图:

Unity给手加入圆柱骨骼相关推荐

  1. 利用Unity插件Anima2D创建2D骨骼动画

    利用Unity插件Anima2D创建2D骨骼动画 创建步骤 导入Anima2D插件 准备2D素材 配置2D骨骼 对2D角色应用IK(反向动力学) 利用Animation创建2D人物动画 创建步骤 导入 ...

  2. Unity制作手机端VR第一步

    基于Unity制作手机端VR小游戏 我并非专业人员,写文章目的在于分享和请教: 1.指针与射线的创作 调整好大小颜色,简单的准星就制作好了. 2.下面利用C#制作射线,我个人认为这是很重要的部分,需要 ...

  3. Unity关于手游端摇杆移动、摇杆按钮冲突问题

    Unity关于手游端摇杆移动.摇杆按钮冲突问题 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 **Unity关于手游端摇杆移动.摇杆按钮冲突问题** 一.摇杆移动问题 1 ...

  4. Unity火炬手领跑移动互联马拉松

    我们生活在历史的长河之中,每天如同乘坐高速列车观看外面的景色不断变换.在记忆中搜索,以便看清现实的场景. 记得,大约在2003年年底,第一名桌面马拉松竞赛火炬手美国红帽(RedHat)宣布退出,200 ...

  5. [Unity][FairyGUI]场景中龙骨骨骼动画设置播放

    Spine和DragonBones都是FairyGUI可以显示的骨骼动画. DragonBones骨骼动画显示. 首先得在Unity项目中配置 DragonBones的SDK. 在FairyGUI编辑 ...

  6. Unity学习笔记(7) Unity2D骨骼动画制作流程

    用骨骼动画最大的好处就是方便之后做换装系统. 无论对3Dor2D游戏都是这样的. 这篇博文记录一下2D骨骼动画的制作流程,参考b站麦扣的系列教程: https://space.bilibili.com ...

  7. Unity 修改场景中人型骨骼模型的骨骼旋转角度

    出自1909-ca-fk 1 unity中设置 模型设置 选中asset中模型,在inspector中选中Rig,取消"Optimize Game Object"的勾选. (如果需 ...

  8. Unity URP 手撸一个自己的PBR材质

    嘿嘿,你能认出哪个是官方的lit shader,哪个是我手撸的PBRshader吗 . 然后就可以魔改成风格化的PBR拉 先占个坑,后面有空的话会梳理一遍URP的pbr流程和相关公式 最后一定要注意自 ...

  9. Unity 给手游用的高性能辉光(Bloom) Shader

    某天项目中美术大哥们提出使用Bloom的需求.但是直接使用Unity 的PostProcess Bloom性能消耗又很大. 所以开发了一个简单的Bloom效果,能满足基本需求,又能兼顾性能.**使用方 ...

最新文章

  1. python与excel结合-Python和Excel终于可以
  2. JAVA的知识点4——字符型变量/常量 boolean类型变量/常量
  3. java新闻爬虫_java实现简单的爬虫之今日头条
  4. [Asp.Net+C#]Datagrid使用技巧一(怎样灵活控制表头)
  5. SAP 电商云 UI 持续集成里 workflow 触发条件一览
  6. 智能识别技术对电子警察设备的影响
  7. CAN笔记(7) CAN协议(二)
  8. 一图理解M0不同优先级中断及Pendsv切换
  9. [故事]Making machines with brains
  10. excel 通用进销存(由excel+VBA+MSSQL制作)
  11. 一步步实现 仿制Android LOL多玩盒子(二) 物品装备相关
  12. 两独立样本率的非劣效性试验-样本量计算
  13. 永不消逝的电波(三):低功耗蓝牙(BLE)入门之如何调戏别人的小米手环
  14. 用心筛选新股 追求利润最大化
  15. 4大主流CPU处理器技术架构详解
  16. Java-斗地主游戏(部分功能)
  17. aspen压缩因子_利用aspen plus进行物性参数的估算
  18. TOM带你玩充电 篇三:15款5号电池横评及选购建议——南孚金霸王小米宜家耐时品胜一个都逃不了...
  19. Kicad软件的基本使用
  20. 工欲善其事,必先利其器之—使用ImageMagick处理图片

热门文章

  1. 七鑫易维彭凡演讲实录:眼球追踪技术让VR更“人性”
  2. Business English 商务一点通
  3. PPT“备注”内容字体可以修改颜色也能直接看到修改效果
  4. Android 10 默认输入法
  5. 企业微信的上级有哪些权限?
  6. 全面接入:ChatGPT杀进10个商业应用,让AI替你打工
  7. Win10 安装 UG10.0 UG8.5教程 --(及安装错误问题解决)--NX 8.5 NX 10.0 安装教程
  8. word 编号圆圈里面带个数字的输入
  9. 综合布线系统工程中计算机插座的标识符号是,TD是综合布线系统工程中计算机插座的标识符号。...
  10. 如何顺利获得美国工作签证