반응형

Unity 156

이벤트 체인 구성한 뒤 Log를 통해 이벤트에 리스너들이 등록이 된 걸 GetInvocationList 메서드로 확인한 후 실제 이벤트를 발생시켰는데 리스너가 하나도 없는 걸로 인식이 될 때

이벤트 체인 구성한 뒤 Log를 통해 이벤트에 리스너들이 등록이 된 걸 GetInvocationList 메서드로 확인한 후 실제 이벤트를 발생시켰는데 리스너가 하나도 없는 걸로 인식이 될 때  이건 뭔 이상한 버그인가 라고 생각이 들었는데 알고보니 계층구조 내에 두 군데 게임오브젝트에 동일한 해당 스크립트 컴포넌트가 부착되어 있었는데, 하나는 사용을 하지 않을 예정이어서 게임오브젝트를 비활성화를 해놨는데, 게임오브젝트가 비활성화 되어있음에도 불구하고, 두 스크립트가 모두 실행이 되어서 실제 사용하는 스크립트에서는 이벤트 초기화가 정상적으로 되었음에도 불구하고, 비활성화 되어있던 게임오브젝트에 있는 스크립트가 OnEnable 메서드가 호출이 되지 않아서 초기화가 되지 않은 상태에서 이 엉뚱한 이벤트가 트리..

Unity 2024.03.24

유니티 Color() 변화가 없을 때

유니티 Color() 변화가 없을 때유니티 에디터상에 Color Picker를 보면 RGBA 가 0~255 범위로 되어있어서 같은 유니티 식구(?) 이니까 RGBA순으로  new Color(0~255, 0~255, 0~255, 0~255) 이런식으로 사용할 것 같지만  어셈블리 UnityEngine.CoreModulenamespace UnityEngine;  RGBA의 범위가 각각 0~1f이기 때문에 255로 나눠서 사용하면 된다.      두더지게임: 리마스터 무료 게임쿠폰두더지게임: 리마스터 무료 게임쿠폰 "여러분 공짜 쿠폰입니두더지!!" 구글플레이스토어에서만 됩니두더지! 애플 앱스토어는 정책상 안됩니두더지! 10만골드 2024 20만골드 새해복 30만골드 가족 4ssscool.tistory.com ..

Unity 2024.03.20

ZenjectException: Unable to resolve 'HPManager' while building object with type 'DataManager'. Object graph:DataManager

ZenjectException: Unable to resolve ' bla ' while building object with type ' blabla '. Object graph: blabla  ZenjectException   이 예외가 뜨는 이유는 GameInstall에 HPManager를 바인딩 하지 않았기 때문이다. 발생 상황을 시뮬레이션 해보자면 이렇다. AManager를 GameInstall 스크립트 안에서 바인딩한 후  ProjectContext 또는 기타 Context에 Mono Installers에 등록을 한다. 원하는 대로 잘 동작한다. 그리고 나서 BManager를 GameInstall 에서 바인딩하는걸 깜빡한 후, 기타 다른 사용 스크립트에서 Inject 후 사용한다. 그러면 저런..

Unity 2024.03.20

유니티 부모 오브젝트, 자식 오브젝트 레이어 셋팅과 Rigidbody 2D 유뮤에 따른 상호작용

유니티 부모 오브젝트, 자식 오브젝트 레이어 셋팅과 Rigidbody 2D 유무에 따른 상호작용  부모 오브젝트의 레이어는 parent자식 오브젝트의 레이어는 child벽 오브젝트의 레이어는 wall으로 셋팅해놓고 부모 오브젝트에는 Box Collider 2D, Rigidbody 2D 둘 다 있고자식 오브젝트에는 Box Collider 2D만 있고벽 오브젝트에는 Box Collider 2D, Rigidbody 2D 둘 다 있는 상황에서 Project Settings > Physics 2D > Layer Collision Matrix 셋팅을 child 레이어와, wall 레이어를 서로 감지하게 체크를 한 상태에서는 벽 오브젝트가 parent 레이어인 부모 오브젝트는 감지를 하지 않지만, child 레이어인..

Unity 2024.03.14

유니티 Rigidbody2D Collision Detection 옵션: 총알처럼 빨리 움직이는 물체 충돌 감지를 위한 셋팅

유니티 Rigidbody2D Collision Detection 옵션: 총알처럼 빨리 움직이는 물체 충돌 감지를 위한 셋팅  유니티에서 Rigidbody2D 컴포넌트를 사용할 때 Collision Detection 옵션은 두 가지 주요 모드를 제공합니다. Discrete 와 Continuous 이 옵션은 Rigidbody가 다른 오브젝트와 충돌을 감지하는 방식을 결정합니다. 2D 게임 개발 시 충돌 처리 방식을 올바르게 선택하는 것은 게임의 물리적 상호작용을 정확하고 신뢰할 수 있게 만드는 데 중요합니다.   Discrete Collision Detection- 정의: Discrete 충돌 감지는 가장 기본적이고 성능이 가장 좋은 충돌 감지 방식입니다. 이 모드에서는 매 프레임마다 오브젝트의 위치를 체크..

Unity 2024.03.14

MenuItem과 CreateAssetMenu를 사용하여 유니티 에디터 확장하기(Extending the Unity Editor using MenuItem and CreateAssetMenu)

MenuItem과 CreateAssetMenu를 사용하여 유니티 에디터 확장하기(Extending the Unity Editor using MenuItem and CreateAssetMenu) 유니티에서 제공하는 강력한 기능 중 하나는 에디터를 사용자의 요구에 맞게 확장할 수 있다는 점입니다. 이번 포스팅에서는 MenuItem 어트리뷰트와 CreateAssetMenu 어트리뷰트를 사용하여 유니티 에디터를 확장하는 방법을 알아보겠습니다. MenuItem을 사용해 에디터 메뉴 항목 추가하기MenuItem어트리뷰트를 사용하면 유니티 에디터의 메뉴 바에 새로운 항목을 추가할 수 있습니다. 이를 통해 개발자는 자주 사용하는 작업을 메뉴로 쉽게 접근할 수 있게 만들 수 있습니다.예를 들어, Google Sheets..

Unity 2024.03.11

유니티 리지드바디 끼리 충돌시 떨리는 현상(Trembling phenomenon when Unity rigidbodies collide)

유니티 리지드바디 끼리 충돌 시 떨림 현상(Trmbling phenomenon when Unity rigidbodies collide)     Rigidbody2D 컴포넌트가 부착되어 있는 플레이어 캐릭터와 Rigidbody2D 컴포넌트가 부착되어 있는 벽이랑 부딪힐 때 (벽쪽으로 플레이어를 계속 밀어부칠때) 계속 떨림현상이 발생할 때  결론부터 말씀드리자면, 해당 옵션을 None 또는 Interpolate로 변경하면 됩니다. Unity의 Rigidbody2D 컴포넌트는 2D 물리 시뮬레이션을 위한 다양한 옵션을 제공합니다. Interpolate 옵션은 Rigidbody2D가 활동하는 오브젝트의 움직임을 어떻게 처리할지 결정합니다. 이 옵션은 특히 오브젝트의 움직임이 끊기지 않고 부드럽게 보이도록 하기 ..

Unity 2024.03.11

유니티 메카님 애니메이션 이벤트 안 먹힐때(Unity Mecanim animation event not working)

유니티 메카님 애니메이션 이벤트 함수 호출 안 될때(Unity Mecanim animation event not working)     스파인2D에서 이벤트를 걸 때 맨 처음 프레임과 맨 끝 프레임에다가 이벤트를 걸었는데, 이게 유니티 메카님 애니메이션 트랜지션에 블렌딩을 .1f 초 정도 걸었는데 이 때 이벤트가 씹히는 것 같다.(뇌피셜) 그래서 몇프레임정도 앞뒤로 이동을 하니 정상동작을 한다.  희미한 기억으론 예전에는 이벤트에서 함수를 드롭다운으로 선택을 했던 것 같은데 이런식으로 파라미터를 넣을 수 있다. 바뀐건지, 둘 다 가능한 건지 헷갈린다. Function 에는 해당 애니메이션 컴포넌트가 부착된 게임오브젝트에 있는 스크립트 안의 함수중 public 함수중에 이름이 일치하는 함수를 호출한다. 만..

Unity 2024.03.07

유니티 게임 깃 협업 개발 시 .editorconfig 설정을 통해 다양한 플랫폼, IDE의 에디터 설정을 통합하기(When developing Unity game collaboration, integrate editor settings from various platforms and IDEs through .editorconfig ..

유니티 게임 깃 협업 개발 시 .editorconfig 설정을 통해 다양한 플랫폼, IDE의 에디터 설정을 통합하기(When developing Unity game collaboration, integrate editor settings from various platforms and IDEs through .editorconfig settings.)   가장 흔히 겪는 예로는 둘이서 협업을 한다고 했을 때, 한명은 PC, 한명은 Mac에서 개발을 한다면 굳이 플랫폼이 다르지 않더라도 IDE의 charset이 다르게 설정이 되어있다면 한글 주석이 깨지는 현상이다. 뷁쉛 이런식으로? 이런 저런 여러 현상을 겪지 않고 에디터 설정을 통합하기 위해 Unity 프로젝트의 Assets 폴더 안에 .editorco..

Unity 2024.03.07

유니티 애니메이터 레이어 추가에 관하여(About adding Unity Animator layers)

유니티 애니메이터 레이어 추가에 관하여(About adding Unity Animator layers)     유니티에서 메카님 애니메이션을 구현할 때.깔끔하게 하나의 레이어로 구성이 된다면 가장 좋겠지만, 두 개 이상의 레이어를 써야할 때 그나마 심플한 구성이면 크게 별 일이 없겠지만, 복잡한 구성일 때 자주 겪는 현상인데, 레이어 Weight를 동적으로 조절해야 할 때가 있다. 작업을 하다가 한 번 꼬이기 시작하면 엄청나게 꼬이게 되는 일이 종종 발생한다. 이럴 때 약간의 팁을 말하자면, 레이어를 추가하면 기본적으로 추가된 인덱스의 레이어의 Weight가 0으로 시작이 되는데, 필자의 경험으로는 어지간하게 복잡한 구성이 아니라면 둘다 Weight를 1로 바꿔놓고 시작하는 게 가장 편리한 방법 같다. ..

Unity 2024.03.05
반응형