Unity 3dunity3d 画线插件问题

给我们留言
地址:福建省晋江市青阳街道洪山路国际工业设计园纳金网
(周一到周五, 周六周日休息)
设计师入口
查看: 1625|回复: 3
最后登录注册时间阅读权限90积分32973
资深设计师, 积分 32973, 距离下一级还需 17027 积分
纳金币32806 精华12
用gizmos画的辅助线在game场景中如何显示出来啊,画的在scence场景可以出来,怎么在game场景中显示不出来呢
最后登录注册时间阅读权限90积分34022
资深设计师, 积分 34022, 距离下一级还需 15978 积分
纳金币16355 精华174
这个太专业了,有些不太理解
最后登录注册时间阅读权限90积分23577
资深设计师, 积分 23577, 距离下一级还需 26423 积分
纳金币20204 精华62
学习了,虽然还是有难度,谢谢楼主的用心&&
最后登录注册时间阅读权限90积分33209
资深设计师, 积分 33209, 距离下一级还需 16791 积分
纳金币34612 精华100
希望更多的朋友分享制作经验
站长推荐 /2
纳金名模-设计师都知道的模型专辑:重装出发,为您提供高精尖的3d模型专辑。这样的福利我和我的小伙伴们都惊呆了!!下载地址:
纳金论坛APP 1.5.0(Android)版本已于日在纳金网论坛上线,欢迎下载!
Powered by - X2.5
Narkii Inc.君,已阅读到文档的结尾了呢~~
U3D目前发现的一个画线最好的工具插件Vectrosity nbsp
nbsp 画直线 plain
nbsp view plaincopyprint
nbsp Make nbsp Vector2 nbsp array
nbsp in nbsp this nbsp case nbsp we nbsp just nbsp use nbsp 2 nbsp elements
nbsp var nbsp linePoints nbsp
nbsp Random Range 0
nbsp Screen height
nbsp..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
Unity3D 画直线 画点 画曲线 画方框
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口Unity中Line&Renderer画线的使用
&&LineRenderer线渲染器主要是用于在3D中渲染线段,虽然我们也可以使用GL图像库来渲染线段,但是使用LineRenderer我们可以对线段进行更多的操作,例如:设置颜色,宽度等。在这里要注意LineRenderer渲染出的线段的两个端点是3D世界中的点,即他是属于世界坐标(World
Point)中的。
LineRenderer是以组件形成存在的,首先我们新建一个空的Game
Object,然后我们选择“Component→Effects→Line
Renderer”,即可为其添加LineRenderer组件了。
<img STYLE="BorDer-BoTToM: BorDer-LeFT: MAx-WiDTH: 100%; BorDer-Top: BorDer-riGHT: medium none" ALT="" src="/blog7style/images/common/sg_trans.gif" real_src ="http://img.blog.csdn.net/55409"
TITLE="Unity中Line&Renderer画线的使用" />
其实我们也可以通过脚本来为其添加LineRenderer组件:
获取LineRenderer组件:
public class MyControls : MonoBehaviour {
&public Color c1=Color.
&public Color c2=Color.
&private int LengthOflineRenderer=0;
&private int index=0;
&LineRenderer lineR
&// Use this for initialization
&void Start () {
&&lineRend =
gameObject.AddComponent ();
&&lineRend.SetColors
&&lineRend.SetWidth
(0.1f,0.1f);
&&lineRend.SetVertexCount
(LengthOflineRenderer);
&// Update is called once per frame
&void Update () {
&&lineRend = GetComponent
&&if (Input.GetMouseButtonDown
&&&print("1");
&&&position=new
Vector3(Input.mousePosition.x,Input.mousePosition.y,1.0f);
&&&LengthOflineRenderer++;
&&&lineRend.SetVertexCount(LengthOflineRenderer);
&&while (index
&&&print("2");
&&&lineRend.SetPosition(index,position);
&&&index++;
&void OnGUI()
&&GUILayout.Label
("鼠标的x轴"+Input.mousePosition.x);
&&GUILayout.Label
("鼠标的y轴"+Input.mousePosition.y);
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。1、& 画多条线
画多条线需要在场景中放置多个GameObject,因为一个GameObject只能添加一个LineRenderer Component。
2、& 线段样式
线段的样式由LineRenderer组件的材质控制
3、& 坐标系
LineRenderer使用了2种坐标系:World和Location。在设置目标点的时候需要注意你使用的坐标系是哪一种。
transform.LookAt(rh.point);
//GameObject始终面对目标点lineRenderer = (LineRenderer)gameObject.GetComponent ("LineRenderer");
lineRenderer.useWorldSpace=false;
lineRenderer.SetWidth(0.1f,0.1f);
    Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if(Physics.Raycast(ray,out rh)){
          lineRenderer.SetPosition(0, Vector3.forward*rh.distance);//方向*距离,典型的Location坐标系用法
        }
void Start () {
gameObject.SetActive(false);
lr = gameObject.GetComponent(typeof(LineRenderer)) as LineR
lr.SetWidth(0.1f,0.1f);
// Update is called once per frame
void Update () {
if(Input.GetMouseButtonUp(0)){
//Get click position
Ray ray = Camera.mainCamera.ScreenPointToRay(Input.mousePosition);
lr.SetVertexCount(lineSeg+1);
if(Physics.Raycast(ray,out rh)){
pointPos.Add(DrawLine(rh));
if(Input.GetMouseButtonUp(1)){
//destroy point
DestroyLine();
GameObject DrawLine(RaycastHit pointPos){
//Display point
GameObject gb_pointer = GameObject.Instantiate(pointer) as GameO
gb_pointer.transform.position =pointPos.point + (transform.position - pointPos.point) * 0.01f;
gb_pointer.transform.rotation = Quaternion.LookRotation (pointPos.normal, Camera.mainCamera.transform.up);
Vector3 laserpos = new Vector3();
laserpos.x= 90.0f;
laserpos.y= gb_pointer.transform.position.y;
laserpos.z= gb_pointer.transform.position.z;
gb_pointer.transform.eulerAngles =
lr.SetPosition(lineSeg,pointPos.point);
//设置目标点的坐标,使用的是world坐标系
lineSeg++;
return gb_
void DestroyLine(){
int arrayLength = pointPos.C
if(arrayLength & 0){
GameObject.Destroy(pointPos[arrayLength-1]);
pointPos.RemoveAt(arrayLength-1);
lr.SetVertexCount(--lineSeg);
阅读(...) 评论()}

我要回帖

更多关于 3d画线的时候怎么移动 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信