【发布时间】:2015-10-28 16:57:26
【问题描述】:
我正在尝试编写一个脚本,使立方体变为蓝色,并在运行时选择时在其上显示立方体的顶点。所以基本上当点击时,它会显示所有顶点,然后允许用户选择立方体的不同顶点。
这是我目前所拥有的,基本上只是将立方体变成蓝色。如何将立方体的顶点显示为球体?我希望以后能够选择这些顶点。
using UnityEngine;
using System.Collections;
public class Cube : MonoBehaviour {
void OnMouseDown() {
Renderer rend = GetComponent<Renderer>();
rend.material.color = Color.blue;
//insert method to display vertices
}
}
【问题讨论】:
-
你是如何找到你的“立方体”的顶点的?你用什么作为“球体”? Unity 原语?
-
@LOLslowSTi 我还没有找到顶点,我假设它们在某种数组中作为立方体的属性。我想使用统一原语作为球体。 (我是统一的新手,所以我可能说错了,指出我在哪里看的正确方向将不胜感激)
-
什么是“立方体”,它也是原始的吗?
-
是的,它也是一个原始的
-
您可以使用 GetComponent
().mesh.vertices (docs.unity3d.com/ScriptReference/Mesh-vertices.html) 获取模型顶点的 Vector3s 数组。 “显示顶点”有非常广泛的解释。您是否正在考虑编写一些着色器代码来渲染模型的线框,每个顶点周围都有一个填充颜色的圆圈?用鼠标“选择顶点”可以通过光线投射(在一个顶点上射击,你给它周围有一个小的圆形对撞机)或编写自定义代码来根据 x/y 鼠标坐标选择东西来完成。