프로그래밍/Unity(29)
-
Unity에서 Prefab 연결끊기
프리팹은 상당히 유용하면서도 가끔씩 귀찮다 특히 더이상 프리팹으로 활용하고 싶지 않을때 기존 오브젝트에 걸려있는 링크가 신경쓰일때가 있다. 또는 프리팹을 삭제하여 빨갛게 미싱난 상태의 오브젝트가 꼴보기 싫을때... 1) 프리팹을 삭제해 연결이 끊어져 빨갛게 미상난 경우 ==>유니티 상단 게임오브젝트 목록에서 break Prefab Instance 를 클릭한다 ==>클릭하면 셀렉트버튼이 남아있지만 다른오브젝트 찍고 돌아와보면 없어져있다. 해결. 2) 프리팹은 살려두고 프리팹 연결만 끊고싶을때 ( 여러개의 프리팹중 하나만 연결을 끊고싶을때) ==>연결을 끊고 싶은 프리팹오브젝트 대상을 프로젝트로 드래그해서 새로운 프리팹 개체로 만든다. ==>새로운 개체로 만든 프리팹 삭제하면 빨갛게 미싱이 난다. ==>1번..
2015.08.25 -
GetComponentsInChildren<>() 자식오브젝트에서 활성/비활성 컴포넌트 찾기
GetComponentsInChildren() 를 이용하여 부모에 속한 모든하위 오브젝트들에 있는 T 컴포넌트를 찾아올수 있다. 그런데 여기서 비활성화 되어있는 오브젝트는 건너뛰는 것이 디폴트 설정 되어있다. GetComponentsInChildren(bool disenableObjFind = false) 처럼 되어 있는듯... 그래서... 하위오브젝트중 꺼져있는 것도 포함하여 모두 검색하려면 빈 괄호 안에 true를 넣어주면 된다. GetComponentsInChildren(true); 이 옵션은 유니티 FInd류의 함수들 은 공통사항인것 같다. =================15.09.07 추가==================== 이름으로 비활성 게임오브젝트를 찾는 하드파인드.. static publ..
2015.07.10 -
Audio Clip 이펙트음 설정 관련 주의사항
사운드로 사용할 음악파일의 로드타입은 기본적으로 Decompress on load 를 사용하도록 하자. Decompress on load 는 씬전환시 바로 씬의 포함된 해당 음악파일을 압축풀기 후 메모리 저장까지 진행한다. 이 설정을 해두어야 사운드에 바로 적용할 수 있다. 파일을 프로젝트에 등록시에는 compressed in memory 타입으로 설정되어 있는데 이는 사운드 사용시에 압축풀기 후 사용하도록 하는 설정이다. 바로 사운드를 플레이해주어야하는데 압축해제에 시간을 들여서 적용되지 않는 경우가 생길 수 있다. 때문에 Decompress on load 설정으로 미리 해제해두도록 하고, 이 설정으로 인해 메모리가 부하가 걸리거나 음악파일의 용량이 큰경우 에만 예외적으로 처리하도록 한다.
2015.07.06 -
Unity에서 Transform을 이용하여 LocalPosition <-> Global position 벡터 크기를 변경하는 팁.
유니티 작업을 할때 이미 오브젝트의 트렌스폼에서 로컬 글로벌 포지션을 각각 따로 저장해두고 있기때문에 읽어올 때는 무리가 없지만, 로컬과 글로벌 좌표를 혼용하여 사용할때 임의의 벡터값만큼의 이동이나 스케일 변환등을 시도하려하면의도치 않은 변화가 일어날 때가 있다. 로컬 좌표의 vector3( 0f, 30f, 0f) 만큼의 이동을 하려고 할때 글로벌 좌표의 포지션을 이용하고 있으면 계산을 할때 글로벌좌표로 변환해 주어야 한다. 1. 프로그램 전반에서 사용하는 소스에서 transform을 하나 임의로 만들어 둔다. transform tempT; 2. transform 에 local이나 global 벡터값을 하나 대입한 뒤, 변환하고자 하는 값을 읽어다 쓰면 유니티 프로그램상에서 값을 저장할때 자동으로 변환된..
2015.06.04 -
UITexture의 모양 변형하기 ( 둥근 라운드형 )
요즘엔 어플에서 페이스북이나 다른 URL 을 통해 사진정보를 받아와서 보여주는 경우가 허다하다.그럴 때 사진정보는 대부분 NGUI의 UITexture를 이용하여 뿌려주게 되는데,이 때 사진의 기본 모양은 반듯한 사각형이다. 이 모양을 다른 모양으로 바꿔보고 싶은 경우가 생길 것이다. (때로는 받아오지 않은 이미지라도)이번에는 모서리를 둥근 모양으로 바꿔보자.이를 응용하면 어떤 모양이든 변경할 수 있을 것이라는 것을 예측할 수 있다. 일단 프로젝트에 NGUI와 다음 파일을 준비해둔다. 1. 압축파일 안에 AlphaMask 쉐이더에 Mask Tex 에 MaskTexture를 넣어준다. 2. 압축파일 안에 materialAlphaMask 의 shader 설정은 Sprites -> AlphaMask로 설정해준다..
2015.01.30