private void GenerateCapVertices() { for (var i = 0f; i <= 1.001f; i += 1f / (StemHeightDivisions)) { var baseVertex = _capSplineController.GetHermiteAtTime(i); //_stemVertices.Add(vertex); for (var theta = 0.0f; theta < 2 * Mathf.PI + 0.001f; theta += 2 * Mathf.PI / StemAxisDivisions) { var vertex = new Vector3(); vertex.x = Mathf.Cos(theta) * baseVertex.x; vertex.y = baseVertex.y; vertex.z = Mathf.Sin(theta) * baseVertex.x; _capVertices.Add(vertex); var uv = new Vector2(theta / (2 * Mathf.PI) * _uTiling, i * _vTiling); _capUvs.Add(uv); } } Debug.Log(string.Format("Vertices Generated: " + _stemVertices.Count)); }
private void GenerateStemVertices() { for (var i = 0f; i <= 1.001f; i += 1f / (StemHeightDivisions)) { for (var theta = 0.0f; theta < 2 * Mathf.PI + 0.001f; theta += 2 * Mathf.PI / StemAxisDivisions) { var vertex = _stemSplineController.GetHermiteAtTime(i); vertex.x += Mathf.Cos(theta) * Mathf.Lerp(StemBaseRadius, StemTopRadius, i); vertex.z += Mathf.Sin(theta) * Mathf.Lerp(StemBaseRadius, StemTopRadius, i); _stemVertices.Add(vertex); var uv = new Vector2(theta / (2 * Mathf.PI) * _uTiling, i * _vTiling); _stemUvs.Add(uv); } } Debug.Log(string.Format("Vertices Generated: " + _stemVertices.Count)); }