내일배움 썸네일형 리스트형 TIL(Today I Learned) - 31 1. EquipText 오류 수정 방법발생 문제: EquipText를 켜고 끌 때 메서드 호출 방식에 오류가 발생.해결 방법: gameObject.SetActive() 메서드를 사용하여 텍스트 오브젝트를 활성화하거나 비활성화함으로써 문제를 해결.기존의 잘못된 메서드 사용을 SetActive(equipped)로 변경하여 문제를 해결.2. Outline 활성화 코드 설명Outline 사용 목적: 장비를 선택하거나 장착할 때 시각적으로 강조 효과를 주기 위함.구현 방법:선택된 장비만 Outline이 켜지도록 하여, 다른 장비의 Outline은 비활성화됨.코드에서 Outline.enabled를 장비 선택 여부에 따라 동적으로 설정함.특히, 초기 장비 선택이 없을 때 모든 Outline이 켜져 있는 문제를 해결... 더보기 TIL(Today I Learned) - 30 오늘은 인벤토리와 퀵슬롯 시스템의 초기화 문제를 해결하는 데 집중했다. 특히, 인벤토리 슬롯과 퀵슬롯의 초기 수량이 아이템을 먹기 전까지 남아있는 문제를 해결하고자, UIInventory 스크립트의 Start() 메서드에서 각 슬롯의 아이템 수량을 명시적으로 0으로 설정하고, Clear() 메서드를 호출하여 UI에도 반영되도록 수정했다.이 과정에서 다음과 같은 점을 배웠다:슬롯 초기화 중요성: 슬롯에 초기 아이템 수량이나 상태가 남아 있는 경우, 게임의 UX에 혼란을 줄 수 있음을 깨달았다. 이를 방지하기 위해 명시적으로 초기화가 필요하다.UI 반영: 슬롯의 수량을 0으로 설정한 후 Clear() 메서드를 호출하여 UI에 그 상태를 반영해야 한다는 것을 배웠다. 단순히 변수 값을 변경하는 것만으로는 충분.. 더보기 TIL(Today I Learned) - 28 오늘은 인터넷 강의를 들으면서 학습을 하였는데, 깜짝 놀란 패키지가 있어 쓰고자 한다. 바로 AI 네비게이션이라는 패키지다. 일단 간단히 요약하자면, NPC가 이동해야할곳 이동하지말아야할곳은 물론 장애물까지 다 판단해서 알아서 이동을 하는 기능이다. 예전에는 이런 기능이 없어 직접 알고리즘으로 구현했다고 했는데 상상하기도 싫다. 코드를 보면서 큰 틀은 AI 네비게이션이 알려주면서, 세세한 지시는 코드로 작성하여 마무리 하는 느낌이다. 아래는 AI 네비게이션의 주요 기능이다. Navigation Mesh (네비게이션 매쉬)3D 공간을 그리드로 나누어 이동 가능한 지역과 장애물이 있는 지역을 구분하는 매쉬입니다.캐릭터가 이동할 수 있는 영역과 이동할 수 없는 영역을 정의하고, 이를 기반으로 경로를 계산합니다.. 더보기 TIL(Today I Learned) - 27 이번에 강의를 들으면서 2가지가 인상깊었다. HP를 줄이는 UI를 지금까지는 이미지 스케일을 줄이는 방식을 사용하였는데 이제는 이미지의 Fill Amount를 줄였다 늘렸다 하는 방식으로 코딩을 바꿨다. 이로인해 뭔가 진짜 코딩다운 코딩을 하는것처럼 느꼈다. 오히려 코드도 더욱 간편해졌고, 더욱 자연스러워져 앞으로도 이 방식을 애용할거 같다. 또 하나는 UI 이미지를 미리 생성해놓고 자식을 생성했을때 내가 원하는 정렬방식으로 정렬이 되는 기능이 있다는것에 충격을 받았다. 수직정렬, 수평정렬, 수직수평정렬 등 많은 정렬이 있었으며 이걸 진작에 알았으면 좋았을걸하는 마음이 든다. 이런식으로 수직으로 정렬을 맞추면 자식으로 생성을 했을때 아래와 같이 알아서 정렬이 된다. 물론 오브젝트 사이사이 별 간격도 따로.. 더보기 TIL(Today I Learned) - 26 오늘 드디어 팀과제를 발표하였다. 많은 조들의 발표를 보면서 코딩에는 정답이 없다는걸 느꼈다. 실시간으로 튜터님들이 피드백을 하면서 느낀점은 저번에도 배운것이지만 정적으로 할당하는것보다 동적으로 할당하는게 훨씬 좋다는것이다. 물론 정적으로 할당하는게 더 좋을때도 있지만, 대부분의 상황에서는 동적이 더 좋다는 점이다. 이로 인해 나도 앞으로 코딩을 할때 처음부터 구상을 동적으로 할당할 수 있게 코드를 짜봐야겠다. 더보기 TIL(Today I Learned) - 24 파티클 시스템을 배웠다. 파티클 시스템을 아예 처음 써봐서 아무것도 모르겠어서, 블로그를 보면서 공부하였다. 생각보다 다양한 기능이 있어서 놀라웠다. 예를 들면 이펙트의 크기, 입자 사이 간격, 재질, 시작시간, 지속시간, 씬 시작시 켜지기 등 정말 놀라웠다. 이펙트를 활용하면 더욱 이뻐질꺼같은데 아직 거기까진 안되는거 같다 ㅠㅠ 더보기 TIL(Today I Learned) - 23 오늘은 팀과제를 하는 도중 플레이어 쪽을 건드는 작업을 하였다. 처음에는 배열로 처리하지 않고 긴 코드를 나열하여 코드의 가독성이 떨어져 팀원분이 배열로 처리하는게 좋다고 하셔서 조언을 듣고 플레이어 사망처리 부분을 플레이어 1 플레이어 2를 배열로 구분지어 인덱스를 불러와서 정리하는법으로 바꾸었더니 가독성이 좋아졌다. 앞으로도 팀원말 잘 듣고 열심히 해야겠다. 더보기 TIL(Today I Learned) - 21 TopDownMovement가 TopDownController를 상속받지 않는 이유 각각의 클래스가 서로 다른 목적을 가지고 있기때문에 독립적으로 MonoBehaviour를 상속받는게 맞다. 상속의 경우는 모든 기능을 물려받아서 쓰기 위함인데, 이 두개는 본질적으로 다른 역할을 수행하기 때문에 MonoBehaviour를 상속받아야된다. 파일 옮길때 주의할 점 유니티 에디터를 사용해서 게임을 만들때 파일이나 폴더 생성은 유니티 에디터 안에서 하는게 좋다. 외부 파일 ( EX : 비쥬얼 스튜디오 ) 에서 옮길 경우에는 메타파일이 깨져 오류가 발생할 수 있다. 만약 오류가 발생했을때에는 해당 스크립트를 삭제 후 다시 Reimport 해서 다시 추가하면 해결된다. **스크립터블 오브젝트(Scriptable .. 더보기 이전 1 2 3 4 5 6 다음