본문 바로가기

반응형

유니티

(45)
Unity Asset Store Spring Sale!! 2023년 5월부터 6월 초까지!! 이번에 5월 11일부터 6월 2일까지 Unity Asset Store에서 Spring Sale을 진행한다고 한다!! 내가 추천하는 에셋들은 아래와 같다!! 1. Mesh Baker 예전에 Running 게임을 만들 때 너무 많은 Mesh 때문에 렉이 엄청 걸렸엇다. 그럴때 Mesh Baker를 사용하여 최적화를 진행해서 결국 해결하였다!! https://assetstore.unity.com/packages/tools/modeling/mesh-baker-5017?aid=1100lvV4j 2. Pro Sound Collection HTML 삽입 미리보기할 수 없는 소스 게임에서 빠질 수 없는 각종 Sound를 포함하고 있는 에셋!! 필자도 자주 즐겨 쓴다 3. 2D Platformer Tileset HTML..
Udemy 유니티 모바일 멀티플레이 TPS 슈팅게임 강의 리뷰 2022년 11월 말부터인가 강의를 듣기 시작해서 2023년 5월 16일에 드디어 강의를 완강하고 끝마쳤다. 사실 6개월 걸릴 양은 진짜 절대로 아니다. 교환학생 오면서 학교다니고 놀러도 많이 다니다 보니 ㅋㅋㅋㅋ 계속 미루고 미루다가 드디어 끝마쳤다. 내가 들은 강의는 아래와 같다 https://www.udemy.com/course/multiplayerthirdpersonshooter/ 2022년 말, 나는 Photon을 이용한 멀티게임을 만들어보고 싶었고 유데미에서 대충 뒤지다가 가격도 적당해보이고 배우고 싶었던 것들을 가르치는 위 강의를 선택해서 결제했다. 참고로 완전 영어강의이다. 강의를 다 듣고 게임을 완성해도, 게임이라기보단 그냥 모바일 멀티플레이의 기본적인 기능들을 구현해 놓은 듯한 느낌이다..
Unity affiliate 프로그램?? 어느날 갑자기 내 블로그에 비밀 댓글로 댓글이 몇개 달렸다. 다름이 아닌 현재 유니티 어필레이트 프로그램 파트너스를 모집하고 있으니 관심있으면 메일 달라는 댓글이었다. 처음엔 왜 이런 일일 방문자 2자리 겨우 되는 작은 블로그에 이런 댓글이?? 하고 의문이 들었다. 일단은 의문을 제치고 바로 이메일을 보냈고 답변을 받으며 유니티 affiliate 프로그램에 대해 자세하게 알게 되었다. 최근 어필리에이트 프로그램에 홍보를 위해서 유니티에서 따로 마케팅을 하고 있다고 한다. 또한 구글링을 해보니 최근 많은 개발 블로거들이 유니티 어필리에이트 프로그램의 파트너가 되었다고 후기를 남기고 있다. Unity affiliate Program 이란? 콘텐츠 제작자, 블로거, 소셜 미디어 사용자, 인플루언서라면 Unit..
유니티 RaiseEvent를 이용한 준비 완료 시스템 이전 글에서 포스팅한 RaiseEvent를 사용했으며 원리는 매우 비슷하다 이전 글 : https://red-tiger.tistory.com/69 유니티 Photon의 RaiseEvents를 이용한 채팅 시스템 UI에 관한 건 스킵하겠다. 각자 본인 마다 원하는 UI 배치가 있을꺼니깐. 나는 이 포스팅에선 모바일 전용이니깐 키보드로 입력하는 것이 아닌 미리 정해진 구문을 누르면 메세지를 보낼 수 있게 red-tiger.tistory.com 우선 방에 입장하거나 방을 만들었을 때 띄울 UI를 적당히 만들어준다 우선 방에 들어왔을때 중앙의 버튼의 텍스트가 본인이 마스터 클라이언트인지 아닌지에 따라 달라지게 구현한다. 마스터 클라이언트일 때 마스터 클라이언트가 아닐 때 그리고 만약 중앙에 버튼을 눌렀을때 마스..
유니티 Photon의 RaiseEvents를 이용한 채팅 시스템 UI에 관한 건 스킵하겠다. 각자 본인 마다 원하는 UI 배치가 있을꺼니깐. 나는 이 포스팅에선 모바일 전용이니깐 키보드로 입력하는 것이 아닌 미리 정해진 구문을 누르면 메세지를 보낼 수 있게 했다. RPC가 아닌 RaiseEvent 기능을 이용한 채팅 시스템 RaiseEvents에는 4가지 특징이 있다 PhotonView가 필요없다 Unreliable하게 이벤트를 보낼 수 있다 한 오브젝트에서 다른오브젝트로 보내거나 받을 수 있다 특정 플레이어에게만 보낼 수 있다 두 가지 종류의 이벤트가 있는데 Reliable한 이벤트와 Unreliable한 이벤트가 있다 Reliable : 매우 중요한 이벤트고 어떠한 경우에서라도 전달되어야 한다. 네트워크가 얼마나 바쁘든지 간에 이 이벤트는 전달되야한다 Unreli..
유니티 m_ 이 앞에 붙은 변수는 인스펙터에서 컬링한다 프로젝트를 진행하다보면 많은 변수와 많은 함수들을 작성한다. 그래서 나 또한 만들다 보면 이게 변수였는지 함수였는지 잠깐 헷갈리고 이런다. 프로그래머끼리는 변수와 함수에대한 암묵적인 룰을 만들어 사용한다고한다 뭐 변수는 맨앞글자를 소문자로, 메소드는 맨앞글자를 대문자로 등등 유니티 자체에서 만약 변수앞에 m_ 이 붙어있으면 인스펙터창에는 m_을 삭제하고 보여준다. 이를 사용해서 스크립트에서 변수앞에는 m_ 을 붙여줌으로써 변수와 메소드를 쉽게 구분 할 수 있을 것 같다. P.S 혼자 공부하다가 알게된 간단한 잡지식 출처 : https://docs.unity3d.com/kr/2021.3/Manual/VariablesAndTheInspector.html 변수와 인스펙터 - Unity 매뉴얼 본질적으로 스크립..
유니티 Tag 비교 ==, CompareTag() 어떤 걸 사용할까? 이번 포스팅은 정말 간단하다. 뭐 다양한 상황에서 Tag 비교를 자주 사용들 한다. 무언가랑 부딪혔을때 뭐 gameObject.tag=="player" 이런식으로 말이다 하지만 이러한 호출 하나하나가 가비지를 생성한다고 한다. tag를 참조하려고 할 때 문자열을 새롭게 힙에 할당하기 때문이다. 그러므로 태그를 비교해야 할 때는 gameObject.tag=="Player" 이렇게 말고 gameObject.CompareTag("Player") 이렇게 구현하자. 이렇게 함으로써 가비지 생성을 방지 할 수 있다. 출처: https://blog.unity.com/kr/games/optimize-your-mobile-game-performance-tips-on-profiling-memory-and-code-arch..
유니티 3D 멀티플레이 RPC이용법(플레이어 체력 깎기) 당연한 얘기지만 총에 맞으면 체력이 달아야 한다. 일단 위와 같이 적당히 체력바를 만들어 준다. MyPlayer.cs에 위 두 변수를 만들어 준다. playerHealth는 말그대로 플레이어의 체력이고 damage는 총알 한개의 데미지이다. 이런 변수 수치는 개발자 맘대로 하자. 같은 스크립트의 Fire()함수를 아래와 같이 수정한다 if(Physics.Raycast(rayOrigin.position,Camera.main.transform.forward,out hit,100f)) { Debug.Log(hit.transform.tag); if(hit.transform.tag=="Player"&&!hit.transform.GetComponent().IsMine)//Not hitting myself { hit..

반응형