2016-06-29 2 views
0

나는 C# (monodevelop) 및 unity3d를 사용하여 소프트웨어를 개발 중입니다. 3D 모델을 collada dae 파일로 가져옵니다. 필자가 작성한 스크립트는 dae 파일의 지오메트리 개체를 고려해야합니다. 몇 가지 코드를 작성하고 있지만 코딩 작업에 익숙하지 않으며 C#을 사용하여 대용 파일의 기하학적 객체에 어떻게 액세스 할 수 있는지 알 수 없습니다. 어떤 도움이라도 매우 도움이 될 것입니다.Unity3d에서 C# 스크립트를 사용하여 3d 모델에 액세스

답변

0

코딩에 익숙하다고 말했기 때문에, 나는 Unity의 기본 원리부터 시작할 것입니다.

dae 파일을 프로젝트 탭에서 씬으로 끌어서 놓으면 계층 구조 안에 dae 파일과 동일한 이름의 GameObject가 생깁니다. 그 GameObject는 모든 내부 오브젝트 (모든 GameObjects 임)로 Windows 탐색기처럼 확장 될 수 있습니다.

C#에서 계층 구조의 고유 한 GameObject에 액세스하려면 다음을 수행하십시오. GameObject.Find ("desired-gameobject-name");

의 이름이 고유하지 않은 경우 당신은 또한 당신의 게임 오브젝트의 경로를 지정할 수 있습니다

: GameObject.Find ("GameObject1/GameObject2/기타");

게임 개체로 무엇인가를하고 싶은 대부분의 시간은 구성 요소를 다루어야합니다. 이것은 매우 간단한 Unity 개념입니다. GameObject는 그들과 관련된 컴포넌트를 가질 수 있습니다. 속성 탭에는 선택한 게임 객체에서 사용하는 모든 구성 요소가 표시됩니다.

집을 모델에서 보이지 않게하고 싶다고합시다. 다음과 같이 사용할 수 있습니다. GameObject.Find ("HouseModel/Door"). GetComponent < 렌더러 >() .enabled = false; 당신이 정점 데이터를 받고 같은 뭔가 더 하드 코어를 원하는 경우

는 지금의 MeshFilter 구성 요소를 사용 : Vector3 [] 정점 = GameObject.Find ("HouseModel/문") GetComponent <MeshFilter>() .mesh.. 정점; 이 문에서 모든 정점의 배열을 반환합니다.

나는 그것이 당신에게 어떤 방향을 제공하기를 바랍니다.

+1

안녕하세요. 글래버입니다. 훌륭한 답변이지만, 가장 기본적인 튜토리얼을 찾고있는 ** 질문에는 대답하지 않는 것이 가장 좋습니다. 그것은이 사이트에서 놀라운 혼란을 일으킨다. 나는 항상 OP에 예의 바른 메모를 남긴다. "기본 화합 튜토리얼은 여기에있다.". (유니티는 훌륭한 서적과 비디오를 제공합니다.) 그리고 물론 클릭하여 질문을 닫습니다. – Fattie

+0

답변 해 주셔서 감사합니다. – user51044

관련 문제