Unity/Engine15 코루틴 매니저 스크립트 최적화에관한 자료를 찾아보다 코루틴의 경우 StartCoroutine에서 가비지가 생기게되고 MicroCoroutine으로 대체하는게 좋다는 글을 보게되었고 참고자료를 찾던도중 코루틴 매니저를 구성하여 사용하면 가비지생성을 많이 줄일 수 있다는 글을 보게되어 코드를 구성해보았다. 테스트는 참고자료 2번블로그와같이 업데이트문에서 프레임당 1만번씩 실행하는방식으로 실행했으며 결과는 다음과 같이나왔다. 코루틴을 사용하는이상 가비지가 안생기는건 아니지만 만족스러운 결과가 나온것같다. Reference https://rito15.github.io/posts/unity-opt-script-optimization/#%EC%B0%B8%EC%A1%B0-%EC%BA%90%EC%8B%B1%ED%95%98%EA%B8.. 2022. 2. 9. transform.rotation vs transform.localRotation Transform.rotation 게임 오브젝트의 절대적인 회전 각도를 나타낸다. Transform.localRotation 게임 오브젝트의 상대적인 회전 각도를 나타낸다. 둘 다 쿼터니언으로 오일러 각도를 변환해서 대입해야 하며 transform.roation or tranform.localRotaion = Quaternion.Euler(x, y, z) 이와 같이 대입해야 한다 부모가 따로 없는 오브젝트의 경우 rotation과 localRotaion이 같지만 자식 개체의 경우 달라지게 된다. 예를 들어 tranform.rotaion = Quaternion.Euler(0f, 0f, 0f) 이와 같이 자식 개체에 스크립트를 삽입한 후 실행하여 부모 오브젝트를 회전시키게 될 경우 결과는 어떻게 될까? 답은.. 2022. 2. 5. Field of View(시야각) 와 플레이어 충돌체크 https://www.youtube.com/watch?v=e3rnO3RiVqs&ab_channel=%EC%9E%A1%ED%85%9C 몬스터 AI에 사용하기위해 시야각을 구현하고 시야각(부채꼴)과 플레이어의 콜라이더(원)의 충돌을 감지할수있도록 구현 오브젝트 정면방향을 기준으로 시야각의 절반씩 만큼 우측과 좌측벡터사이가 넓어짐 플레이어 정면은 플레이어의 각도에따라 방향이 달라지기때문에 현재 플레이어각도를 더해서 시야각의 좌측 우측벡터를 계산 먼저 일반적인 원대원 충돌처럼 오브젝트와 타겟사이의거리가 부채꼴의 반지름+ 타겟의반지름 과 작거나 같은지 판단 그후 조건에 부합하면 3가지 경우를 체크 첫번째로 타겟과 플레이어 정면벡터 사이의 각도가 시야각의 절반보다 작거나 같은지 = 대상이 시야각(부채꼴) 호 부분 .. 2022. 1. 11. MotionTrail(잔상효과) 플레이어 잔상효과 구현용 태그가 Player인 오브젝트를 타겟으로하여 SkinMesh 태그가 붙은 SkinmeshRenderer가 존재하는 오브젝트의 메쉬를 Bake하여 잔상으로만들어 플레이어위치에 출력하도록 구현 Reference & Shader Source: https://rito15.github.io/posts/unity-toy-afterImage/ https://www.youtube.com/watch?v=bKgEW8Jy4l0&t=0s&ab_channel=jinhoLee 2021. 12. 27. 이전 1 2 3 4 다음