분류 전체보기 (77) 썸네일형 리스트형 네트워크 팀 프로젝트 - 모작 https://youtu.be/VCp4IfyKoJc?si=i1Sf4ycL-dlYrjyO유니티 네트워크 팀 포트폴리오로 몬스터헌터를 모작해 봤습니다. 개발 목적이번 프로젝트에서는 몬스터헌터 스타일의 게임에서 사용할 수 있는 인벤토리 시스템, UI시스템, 집회소 시스템, 사냥 시스템 , 몬스터 시스템을 구현하는 것이 목표였습니다. 제가 이 프로젝트에서 맡은 역할은 팀장 + UI 시스템 + 인벤토리 시스템 + 멀티플레이 아이템 구현 입니다. 이렇게 첫 목표를 설정했었고, 아슬아슬하게 처음 목표로 잡은 기능은 다 만들어서 다행이였습니다. 왼쪽은 0주차 즉 프로젝트 시작전에 팀 회의로 정한 부분이고, 오른쪽은 주차 시작마다 회의후 정한 부분입니다. 이런식으로 노션에 계획을 정하고 주차가 시작될때마다 목표를 정.. 애니메이터와 네비메쉬 속성들 모델을 하이어라키에 배치하면 애니메이터가 보입니다Controller: 애니메이션 컨트롤러 넣는 곳Apply Root Motion: 애니메이션 클립에 저장된 위치 및 회전값 적용 여부Update: 애니메이션 갱신 주기Normal: 업데이트 주기 영향 받고, Time scale의 영향을 받음Animate Physics: FixedUpdate 영향을 받고, Rigidbody 상호작용할 때 사용UnscaledTime: Update 주기 영향 받고, Time scale 영향 안받음Culling ModeAlways Animate: 카메라가 비추고 있지 않아도 애니메이션 재생Cull Update: 랜더링 하지 않을 때는 정지Cull Completely: 랜더링 되지 않으면 모든거 싹 다 멈춤 애니메이션 리타게팅은 한.. 유니티에서 마우스 휠 사용법 이것이 내가 유니티에서 사용해본 방법이다.public class FollowCam : MonoBehaviour{ public Transform targetTr;//따라갈 타겟 Transform camTr;//카메라 트랜스폼 //따라갈 대상으로부터 떨어질 거리 [Range(2.0f, 20.0f)] //public float distance = 10.0f; public float distance = 3.5f; //Y축 높이 바꿀것 [Range(0f, 10.0f)] //public float height = 2.0f; public float height = 3.17f; //X축 높이 바꿀것 [Range(0f, 10.0f)] //public .. 셸 정렬(shell sort) c#으로 구현하기 셸 정렬(shell sort) 알고리즘의 개념 요약 ‘Donald L. Shell’이라는 사람이 제안한 방법으로, 삽입정렬을 보완한 알고리즘이다.삽입 정렬이 어느 정도 정렬된 배열에 대해서는 대단히 빠른 것에 착안삽입 정렬의 최대 문제점: 요소들이 삽입될 때, 이웃한 위치로만 이동즉, 만약 삽입되어야 할 위치가 현재 위치에서 상당히 멀리 떨어진 곳이라면 많은 이동을 해야만 목표한 자리로 갈 수 있다.삽입 정렬과 다르게 셸 정렬은 전체의 리스트를 한 번에 정렬하지 않는다.과정 설명먼저 정렬해야 할 리스트를 일정한 기준에 따라 분류연속적이지 않은 여러 개의 부분 리스트를 생성각 부분 리스트를 삽입 정렬을 이용하여 정렬모든 부분 리스트가 정렬되면 다시 전체 리스트를 더 적은 개수의 부분 리스트로 만든 후에 알.. [팀 포폴] 후기- 클래시로얄의 라이크 포켓몬 라이크 Card 클래스 플레이시 나올 유닛 덱 카드 정보와 이미지를 가지고 있다.아래 내부는 생성자와 프로퍼티만 가지고있고, 모든 유닛들의 카드정보는 이걸 공유하고있다.ViewController 메인 씬에서 버튼 클릭시 작동해줄 코드들을 모아둔 곳이다. 그래서 버튼들의 게임오브젝트를 public 로 오픈한뒤 하이라키창에서 연결해주고 사용했다.GetComponent 를 최대한 안쓰고 만들고 싶었기 떄문이다.그리고 생각지 못하게 덱 이미지 에다가 카드를 장착,제거 할 경우에 예외처리하는데 정보탐색이 필요하게 되버려서 하다보니 코드가 조금 늘었다.정보탐색(삭제) 예시코드깔끔하게 바꾸기엔 지금 시간이 모자라서 못했다.나중에는 해당 카드들 전체 관리 클래스가 있으니 거기서 메서드 하나 만들어줘서 탐색을 한뒤 하면 될거같.. [팀 포폴] 클래시로얄 라이크(포켓몬 로얄) -잡담 지금 팀포폴을 제작중인데, 많이 힘들다... 초반엔 초기 프로젝트 설계를 맡아서 재밌게 이것저것 섞으면서 정했고, 이제 제작을 하는중인데.. 설계를 설명했을땐 금방 끝날거같은 분위기 였으나, 막상 해보니 팀원들 전부가 유니티를 처음다뤄봐서 이것저것 기능별로 해메고있다 ㅋㅋ.. 덕분에 많이 배우기는 하는것 같은데 힘들다! 하나하나 해결할떄마다 재미는 있는데 힘들긴하다. 암튼 최초의 문제는 MonoBehaviour상속을 받으면 new를 할수없다는게 첫번쨰 문제였고,팀원이 GetComponent 해놓고 sprite를 불러와서 난리나고 아주 좌충우돌 코딩기를 겪고있다.. ㅎㅎ그래도 차근차근 해결해 나아가고 있고,지금 내 문제는 UI를 하는 과정에서 Canvas의 좌표가 그 안에있는 UI 렉트 포지션들의 좌표값에.. 유니티 오늘 배운내용 # Instantiate- 2D에선 잘 버팀 3D에선 좀 걸림- 게임에선 로딩을 사용해서 한번에 생성한뒤 재사용한다- Transform,RIgidbody- 값초기화도 연산이들어감.# Destroy- 쓰지 않는 메모리가 되어서 해제가 되어야함.- 가비지 콜렉터가 돌면서 수거해 갈거임.- 그런데 가비지 콜렉터가 언제 작동하는지 알아야 함.- 네이티브C#, .NetFramework에서의 가비지 콜렉터는 '주기적으로' 수행됨- Generation 방식- 유니티의 가비지 콜렉터 : '메모리가 부족할 때 작동'- Mark and Sweep , - 메모리 사용량이 많아지면 , 유니티는 강제로 GC를 돌림- 이떄 GC스파이크(갑자기 메모리 사용량 높아지는것) 렉이 걸림,프레임 드랍걸림둘다 덜 사용하면 가비지 콜렉터가 .. 유니티)싱글톤 패턴 디자인 패턴중에서 싱글톤 패턴이란게 있다. 이 클래스는 생성자가 여러차례 호출 되더라도 실제로 생성되는 객체는 하나이고 , 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. => 본인객체 호출될때 값이 주소에 null이 아닌경우 return this 해도 되는듯? 하다. 싱글톤(Singleton) 패턴은 특정 클래스의 인스턴스가 오직 하나만 생성되도록 보장하는 디자인 패턴이다. 이 패턴은 인스턴스가 프로그램 전체에서 동일한 자원을 공유하도록 하는 데 유용하다. 주로 설정 파일, 프린터 스풀러, 키보드 리더와 같은 리소스를 전역적으로 관리할 때 사용된다. 아래는 보편적인 위키에서 긁어온 유니티 싱글턴의 기본세팅이다.class Singleton : MonoBehaviour{ .. 이전 1 2 3 4 ··· 10 다음