반응형 분류 전체보기505 Unity - 물체와 닿았을 때 선택창 띄우는 법 1. 선택창 UI만들기 2. 선택창 기능 구현을 위한 스크립트 작성하기 [SerializeField] TMP_Text promptText; // 선택창에서 표시될 내용 Action onYesSelected = null; // Yes를 선택했을 때 실행할 동작 01 텍스트 및 Yes 선택시 기능 설정 public void CreatePrompt(string message, Action onYesSelected) { // onYesSelected 매개변수에 전달된 Action을 현재 객체의 OnYesSelected에 전달 this.onYesSelected = onYesSelected; // promptText에 전달된 message값을 설정 promptText.text = message; } 02 Yes o.. 2023. 7. 6. Unity - Scene전환 후 Player가 직진만 하고 좌우, 회전 이동 안하는 오류 해결 방법(Quaternion.Slerp) Scene전환 후 Player가 직진만 하고 좌우 이동 및 회전을 안하는 오류가 발생한 경우 PlayerController.cs파일에서 Quaternion.Slerp을 사용했는지 확인해보자 Quaternion.Slerp과 FixedUpdate의 관계 Player이동과 회전부분을 FixedUpdate메서드안에서 이루어지도록 코드를 작성하였다. Quaternion.Slerp는 보간을 위해 시간에 따라 값이 변경되는 함수이기 때문에 FixedUpdate의 호출 빈도와 Quaternion.Slerp가 서로 충돌하여 예기치 못하는 문제가 발생할 수 있다. 결론 그러므로 FixedUpdate함수안에서 Quaternion.Slerp를 사용할때는 주의하자 Quaternion.Slerp을 굳이 사용하지 않아도 될 경우 .. 2023. 7. 6. C# - Random 클래스( +) 반복문 안에서와 밖에서의 차이 ) Random 클래스 난수를 생성하는데 사용되는 클래스 Random 생성자 01 시드 값을 직접 지정하지 않는 경우 Random random = new Random(); 02 시드 값을 직접 지정 하는 경우 시드 값을 지정하는 경우 동일한 순서의 난수를 생성하면서 동일한 난수 시퀸스가 생성된다. Random random = new Random(33); 시드(Seed) 값 이란? 컴퓨터는 난수 생성 알고리즘을 사용하여 난수를 사용하는데 난수 생성 알고리즘을 실행하기 위해 사용(시작)되는 값이다. 만약 시드 값을 지정하지 않고 생성된 경우 시스템 시간을 기반으로 자동으로 시드값이 선택된다. 시드 값을 지정한 경우 동일한 난수 시퀀스가 생성되면서 Next()메서드를 호출하더라도 항상 동일한 순서의 난수가 반환된.. 2023. 7. 4. C# - List shuffle 시키는 법, 리스트 섞는 법 입력된 정수 리스트를 섞은 후 새로운 리스트 반환하는 메서드 만들기 public static List Shuffle(int count) { } 01 반환할 새로운 리스트 만들기 List listToReturn = new List(); 02 난수 사용을 위해 Random 객체 만들기 Random random = new Random(); 03 랜덤한 위치로 i값 insert하기 for (int i = 0; i < count; i++) { int index = random.Next(0, i + 1); listToReturn.Insert(index,i+1); } 실행 순서도 04 반환 return listToReturn; 실행 결과 List numbers = new List { 1, 2, 3, 4, 5 }; C.. 2023. 7. 4. Unity - RangeAttribute을 사용해서 범위 지정하기 RangeAttribute 변수에 대한 유효한 범위를 지정할 수 있다. [Range(1, 100)] public int percentFilled; percentFilled는 1에서 100사이의 값만 가질 수 있다. 2023. 7. 4. 네트워크 프로그래밍 - C# Non - blocking을 사용한 Server 소켓프로그래밍의 Receive Listener코드 알아보러 가기 네트워크프로그래밍 - C# 간단한 Non - blocking 사용한 Server 소켓프로그래밍 구현 blocking방식 이용한 Server코드 네트워크 프로그래밍 - C# 간단한 Server 소켓프로그래밍 구현 소켓프로그래밍 과정 알아보러가기 네트워크프로그래밍 - 소켓 프로그래밍(클라이언트 관점, 서버관점) code-piggy.tistory.com non-blocking으로 바꿀 코드 static void onAcceptHandler(Socket clientSocket) { try { // 받는다. byte[] recvBuff = new byte[1024]; int recBytes = clientSocket.Receive(recvBuff); string recvData .. 2023. 7. 3. 이전 1 ··· 51 52 53 54 55 56 57 ··· 85 다음 반응형