LineRenderer画线
Contents
LineRenderer 画线
LineRenderer是Unity提供的一个用于画线的组件使用它我们可以在场景中绘制线段
一般可以用于
- 绘制攻击范围
- 武器红外线
- 辅助功能
- 其他画线功能
LinRenderer组件属性
Loop 是否连接终点和起点
Positions线段的点
- Size 点的数量 两个点构成一个线段 xyz轴对应世界坐标
- width 可以修改线的粗细 通过曲线
Color 颜色
Corner Vertices 角顶点,圆角 增加此属性可以使线角看起来更圆
End Cap Vertices 终点和起点的圆角
Use World Space 是否使用世界坐标系
Materials 线使用的材质球
不常用属性
Alignment 对其方式
- View 视点 线段对这摄像机
- Transform Z 线段面向其Z轴
Texture Mode纹理模式
- Stretch拉伸 沿整条线映射纹理一次
- Tile 瓷砖平铺 不停的重复纹理
- Distribute Per Segment 分配执行
- Repeat Per Segment 重复显示
Shadow Bias 阴影偏移
Generate Lighting Data 生成光源数据
Lighting 光照影响
- Cast Shadows是否开启阴影
- Receive Shadows 接收阴影
Probes光照探针
LightProbes光探测器模式
- 不适用光探针
- 使用内置光探针
- 使用三维网络内插光探针
- 自定义从材质决定
Reflection Probes 反射探测器模式
- 不使用反射探针
- 启用混合反射探针
- 启用混合反射探针 并且和天空盒融合
- 启用普通探针 重叠式钚混合
Additional Settings 附加设置
Motion Vectors运动矢量
使用相机运动来跟踪运动
使用特定对象来来跟踪运动
不跟踪
Dynamic Occludee 动态遮挡剔除
Sorting Layer排序图层
Order in Layer此线段在图层中的顺序
可视化编辑
Simplify Preview 简化预览
Tolerance 宽容度 偏离值越大 偏差越大
编辑点模式
- Show Wireframe 显示线框
- Subdivide Selected 选择两个或者多个相邻的点 然后再两个点之间插入一个点
添加点模式
Input输入模式
- Mouse Position 鼠标位置
- Physics Raycast 基于物理射线
- Min VertexDistance 最小顶点距离 拖动鼠标创建点时 会在超出该距离时创建一个点
- Offset 偏移量
LineRenderer代码相关
通过代码添加一个线段
GameObject line = new GameObject();
line.name = "line";
var lineRenderer = line.AddComponent<LineRenderer>();LineRenderer属性
lineRenderer.loop = true;//首尾相连
lineRenderer.startWidth = 0.02f;//开始宽
lineRenderer.endWidth = 0.02f;//结束宽
lineRenderer.startColor = Color.Red;//开始颜色
lineRenderer.endColor = Color.white;//结束颜色
lineRenderer.material = material;//设置材质
//设置点 要线设置点的数量
lineRenderer.positionCount = 4;
lineRenderer.SetPositions(vector3);//设置点的位置 传入Vector3数组
lineRenderer.generateLightingData = true;//使线段受光的影响