본문 바로가기

unity10

기본 예제 실행하기 오픈-소스 멀티플레이 프레임워크 Colyseus는 오픈-소스 게임 개발 전문 멀티플레이어 프레임워크다. (무료라는 뜻이다. 지금까지 그래와꼬 아페로도 계속) Photon이나 다른 상용 멀티플레이 프레임워크에 비하면야 인지도는 낮지만 무려 6년 동안이나 발전되어왔다. 그래서인지 C++, C#, Javascript를 비롯해서 꽤 많은 언어를 지원하고 동시에 해당 언어들을 사용하는 게임 엔진들도 다수 지원한다. (우리나라에서는 마이너한 Hex엔진, Defold 엔진까지도 지원한다.) 최근에는 LUCID SIGHT라는 게임 개발사가 유지보수에 참여하면서 다른 오픈-소스 멀티플레이 프레임워크에 비해서 주기적인 업데이트가 가능해져서 전망이 밝다. ▼ LUCID SIGHT는 다양한 게임을 만들면서 노하우를 가지고 있.. 2021. 2. 26.
Command Pattern Command Pattern은 게임에서 입력처리에 많이 사용된다. 실제로 사용해보면 여러가지 편리한 점이 많은데 가장 멋진 점을 뽑으라면 플레이어가 옵션에서 임의로 입력키를 바꿀 수 있는 기능을 구현할 수 있다! 아주 간단한 예제를 통해서 Command Pattern을 정리한다. 마우스 왼쪽 클릭을 입력하면 이동 명령을 Do 하면서 Stack에 쌓는다. 반대로 마우스 오른쪽 클릭을 입력하면 Stack을 거슬러 올라가면서 Un Do한다. ▼ 유니티 예제 ▼ 개념 Command Pattern의 개념은 그렇게 어렵지 않다. 단순하게 접근하면 명령어 클래스를 하나 만들고 그걸 변수로서 사용하는 것 뿐이다. 구현 로직은 아래와 같다. 1. ICommand라는 인터페이스를 만든다. public interface I.. 2021. 2. 25.
[UGUI] Layout Group ▼ 실제 유니티 작동 화면 주로 상점에서 사용될 기능처럼 생각되서 예시 장면 역시 상점의 형태로 만들었다. 콘텐츠를 정렬할 콘테이너를 하나 만들고 Horizontal Layout Group과 Vertical Layout Group 두 개 중 원하는 방향에 맞춰서 컴포넌트를 추가해주면 된다. 사용법은 간단하지만 그만큼 비싼 기능이기 때문에 실제로 인 게임 상에서 이 기능을 제대로 쓰려면 직접 구현하는 것이 좋다고 한다. 자세한 내용은 아래의 유니티 엔진 UI 최적화 문서에서 확인 할 수 있다. unity3d.com/kr/how-to/unity-ui-optimization-tips?fbclid=IwAR3rmtAobsIA_gaxSUSbDXgFrPy92NUDckNpmeYgC65K_cJYQejSaVuKP8I So.. 2021. 2. 25.
[THEORY] IL2CPP 유니티 엔진 모듈에 보면 윈도우와 리눅스 빌드에 IL2CPP라고 따로 하나씩 더 존재한다. 궁금한 건 못 넘어가기 때문에 간단히 알아보고 정리해둔다. 결론부터 말해서 좀 더 보안성이 강화되서 해킹 이슈를 비교적 줄일 수 있다는 장점을 가지고 있다. IL2CPP를 사용한다고 해도 해킹에서 완전히 자유로워 지는게 아니기 때문에 코드 상에서도 방지 코드 및 복호화를 해줘야 한다. IL(Intermediate Language) IL2CPP를 이해하기 위해서는 당연히 IL이 뭔지 부터 알아야 한다. IL은 Intermediate Language로 한국어로 번역하면 중급 언어로 번역된다. 이름에서도 알 수 있듯이 컴퓨터에 가까운 저급 언어와 사람에게 가까운 고급 언어 사이에 있는 언어로 JIT Compiler를 통.. 2021. 2. 25.