private void Init() { //Block of code came from Spline asset string generatedName = "generated by " + GetType().Name; var generatedTranform = transform.Find(generatedName); generatedModelGameObject = generatedTranform != null ? generatedTranform.gameObject : UOUtility.Create(generatedName, gameObject, typeof(MeshFilter), typeof(MeshRenderer), typeof(MeshBender)); generatedModelGameObject.GetComponent <MeshRenderer>().material = material; meshBender = generatedModelGameObject.GetComponent <MeshBender>(); spline = GetComponent <Spline>(); meshBender.Source = SourceMesh.Build(mesh) .Rotate(Quaternion.Euler(rotation)) .Scale(scale); meshBender.Mode = MeshBender.FillingMode.StretchToInterval; meshBender.SetInterval(spline, 0, 0.01f); }
private void Init() { if (m_Spline != null && m_Mesh != null && m_Material != null) { string generatedName = "Mesh"; var generatedTranform = transform.Find(generatedName); m_Generated = generatedTranform != null ? generatedTranform.gameObject : UOUtility.Create(generatedName, gameObject, typeof(MeshFilter), typeof(MeshRenderer), typeof(MeshBender)); m_Generated.GetComponent <MeshRenderer>().material = m_Material; meshBender = m_Generated.GetComponent <MeshBender>(); // m_Spline = GetComponent<Spline>(); meshBender.Source = SourceMesh.Build(m_Mesh) .Rotate(Quaternion.Euler(m_Rotation)) .Scale(m_Scale); meshBender.Mode = MeshBender.FillingMode.Once; meshBender.SetInterval(m_Spline, 0); } }