반응형

전체 글 24

신의탑 : 새로운 세계 육성 가이드 [ #육성법, #가이드, #등급표, #리세 ]

23.07.26 이번에 웹툰으로 큰 인기를 얻으며 세계적으로 많은 팬을 보유하고 있는 신의탑이 새롭게 모바일 게임으로 넷마블에서 출시하게 됐습니다. 12세 이상 이용가로서 Android, IOS 플랫폼으로 나왔으며 최소사양은 Android 버전 6.0 이상, IOS 12.2 버전 이상으로 개발되었습니다. 장르는 수집형 RPG 형식으로 기존에 웹툰에 나오는 캐릭터를 수집하여 최적의 조합을 꾸리고 모험과 콘텐츠를 진행하는 방식입니다. 우선 개인적인 입장으로 PVP를 제외하고 모험과 스토리 컨텐츠를 진행하면서 캐릭터 등급표를 말씀드리겠습니다. 현재 저는 처음 리세를 통해서 에반하나를 뽑고 시작해서 9-10까지 콘텐츠를 밀었습니다. 정말 극악의 확률로 SSR+가 나오고있지만 SSR 캐릭터도 활용하면서 진행했습니..

GAME 2023.07.30

Open API Mediasoup, Coturn In Unity 개념 완벽 이해 !!

Mediasoup 이란 ? WebRTC 기반의 미디어 서버 솔루션으로 애플리케이션에서 실시간 통신을 지원하기 위해 설계되었습니다. WebRTC 기능인 비디오, 오디오, 데이터 스트리밍을 처리 하며, 피어 간 연결을 중재하는 데 사용됩니다. 코드는 Node.js 기반으로 구현되어있으며, 클라이언트와 서버 사이에서 미디어를 처리하여 전송하기 위한 목적으로 쓰입니다. 특징 및 장점 - 멀티코어 CPU와 멀티 서버 환경에서 확정성을 제공하도록 설계가 되어있습니다. - 미디어 처리 전송 최적화가 잘되어있어 대역폭을 절약할 수 있으며 서버와 클라이언트 성능을 향상합니다. - SFU 모델을 기반으로 피어 간의 미디어 흐름을 중재하며, 멀티캐스트 기능을 사용하여 대역폭 사용량을 최소화합니다. - WebRTC 데이터 채..

Unity/Server 2023.07.26

What is WebRTC Server In Unity (Signaling, STUN, TURN) 완벽 정리 !

WebRTC란? WebRTC(Web Real-Time Communication)은 웹 브라우저와 SW 간에 실시간 통신을 가능하게 해주는 기술입니다. WebRTC를 사용해서 다른 플레이어와 비디오, 오디오, 데이터 등을 공유하며 실시간 멀티플레이 게임, 비디오 채팅, 화상 회의 등 다양한 응용 프로그램을 개발할 수 있습니다. WebRTC의 기본 구성 요소 1. Signaling Server : Signaling Server는 피어 간 연결을 하기 위해 신호 전달 서버를 사용합니다. 이 서버는 클라이언트 간의 연결 및 정보를 교환하기 위한 중개 역할을 한다고 보시면 될꺼같습니다. 즉 애플리케이션에서 사용자들끼리 신호를 발견하고 연결할 수 있도록 도와주는 서버입니다. WebSocket을 통해 신호를 전송하고..

Unity/Server 2023.07.24

2) 유니티 신입 개발자 면접 질문 [ 가비지컬렉터, 최적화, C#, C++, 디자인패턴 ]

1. 가비지 컬렉터에 대해 설명해 주세요. 가비지 컬렉터란? 동적으로 할당된 메모리 중에서 더 이상 사용하지 않는 개체를 자동으로 탐지하고 해제하는 메모리 기법이다. 이는 메모리 누수와 같은 문제점을 방지하여 프로그램의 안정성과 성능을 향상하는 데 사용한다. C#은 가비지 컬렉터를 사용하여 자동으로 메모리를 관리합니다. 가비지 컬렉터는 동적으로 할당된 객체의 메모리를 추적하고, 필요하지 않은 개체를 검출하여 자동으로 해제합니다. 이를 통해 개발자가 따로 메모리 할당, 해제를 하는 번거로움을 줄여줍니다. C++의 가비지 컬렉터는 C#과 달리 기본적으로 제공하지 않는다. C++은 개발자가 개체의 메모리 할당과 해제를 수동으로 관리해야 하는 언어로써 메모리 누수나 메모리 포인터 관리에 신경 써야 합니다. 2...

면접질문 2023.07.23

1) 유니티 신입 개발자 면접 질문 [ 객체지향프로그래밍(C#), 쓰레드/프로세스 차이, 인터페이스/추상클래스, TCP/UDP, 박싱/언박싱 ]

1. 객체지향 프로그래밍에 대해 설명해 주세요. 객체 지향 프로그래밍(OOP)는 객체와 클래스 중심으로 코드를 구성합니다. 추상화, 캡슐화, 상속성, 다형성 개념을 통해 객체 지향 프로그래밍에서 유연하고 확장성을 높일 수 있는 코드를 작성할 수 있습니다. 1.1. 추상화/캡슐화/상속성/다형성 추상화 : 복잡한 개체나 단위를 간결하고 명확하게 표현하기 위해 중요한 특징이나 기능을 간추려 내는 과정을 말합니다. 즉 객체들의 공통적은 특성이나 기능을 강조하며 이를 통해서 세부 기능을 숨겨 표현하며 프로그램을 이해하기 쉽게 만들어주며 관리하기 편하게 만들어준다. 캡슐화 : 데이터를 처리하는 메서드를 하나로 묶는 작업을 말한다. 또한 외부로부터의 데이터를 보호하는 작업이라 볼 수 있으며, 접근을 제한함으로써 오류..

면접질문 2023.07.17

유니티를 사용하며 Anti-Aliasing 사용 경험? #개념 완벽 정리 #HDRP

안티앨리어싱이란? Unity 툴에서 제공하는 기술로써 이미지와 렌더링에서 계단모양으로 발생되는 앨리어싱을 줄여주는 그래픽 기술입니다. 이러한 앨리어싱은 디스플레이의 제한된 해상도와 디지털 이미지의 이산 특성으로 인해 발생되는 문제로 안티앨리어싱 기술을 접목해서 가장자리를 매끄럽게 함으로써 시각적으로 품질을 향상하고 장면과 분위기를 보다 사실적이고 세련되게 보이게 만듭니다. 또한 이 기술은 CPU 성능에는 영향이 없으며 GPU와 메모리를 사용하여 작업이 진행됩니다. 계단 현상이란? 앨리어싱 현상으로 주로 3D그래픽에서 발생하는 현상입니다. 3D모델이나 텍스쳐를 렌더링 할 때 발생하는 픽셀화 또는 가장자리 모서리 경계선의 균등하지 않은 픽셀화를 의미합니다. 즉 시각적으로 부드럽지 않은 경계가 생기며 실제 물..

Unity/VR 2023.07.10

Unity VR(가상현실)에서 물체를 던지고 원위치로 돌리기 #SteamVR

Unity 툴을 이용해 VR 콘텐츠를 구현하는 데 있어서 3D 객체를 줍고 던지고 하는 행위는 빈번하게 나타나고 있습니다. 하지만 그런 행위 때문에 사용자에게 필요한 객체를 잃어버리게 되거나 위치를 잊게된다면 개발자나 사용자한테 혼란을 심어줄 수 있습니다. SteamVR Plugin에서 제공되는 메소드를 사용해 손쉽게 객체를 아무리 던지고 물리적 힘을 가해도 원래 위치로 돌아오는 기능을 손쉽게 구현해 보겠습니다. 필요 에셋 SteamVR Plugin 오브젝트 준비 1. Collider, Rigidbody 컴포넌트 추가 물체를 원위치로 돌아가는 스크립트를 적용시키기위해서는 외부의 힘을 받을지 여부를 결정하기 위해 IsKinematic을 접근해야 합니다. 2. SteamVR에서 제공하는 Interactabl..

Unity/VR 2023.07.05

STEAM VR LinearDrive.cs 완벽 이해

Unity 3D에서 SteamVR을 사용하여 가상현실 콘텐츠를 구현하기 위해서는 SteamVR에 제공되는 플러그인을 활용하여 가상 오브젝트를 제어할 수 있는 콘텐츠를 구현할 수 있습니다. 준비 AssetsStore - SteamVR Plugin LinearDrive.cs 사용자의 손(컨트롤러)의 선형 이동을 구현시켜 주는 클래스. 물체를 잡고 자연스러운 위치 이동(움직임)을 구현할 수 있다. 역할 1. 사용자의 손(컨트롤러) 움직임에 따라 물체가 일관된 속도로 따라 움직이게 구현된다. 이를 통해 현실과 유사한 객체를 드는 행위를 구현할 수 있다. 2. 사용자의 입력값(Trigger Button)을 받아 여부를 판단하고 상호작용 기능이 구현된다. Inspector ) StartPosition, EndPos..

Unity/VR 2023.07.02

STEAM VR Throwable.cs 완벽 이해

Unity 3D에서 SteamVR을 사용하여 가상현실 콘텐츠를 구현하기 위해서는 SteamVR에 제공되는 플러그인을 활용하여 가상 오브젝트를 제어할 수 있는 콘텐츠를 구현할 수 있습니다. 준비 AssetsStore - SteamVR Plugin Throwable.cs - Steam VR Throwable.cs는 가상환경에서 던질 수 있는 객체를 구현할 때 사용됩니다. 역할 : 1. 컨트롤러 입력 처리 : 사용자의 컨트롤러 입력을 감지하고 물리 로직을 적용시켜 던지거나 잡는 동작을 활성화 할 수 있습니다. 2. 객체 움직임 제어 : 상호작용 가능한 객체를 던지기 시작하면 이 스크립트는 객체의 움직임을 제어합니다. 또한 컨트롤러의 동작의 속도, 방향 및 힘을 계산하여 객체를 움직입니다. 3. 충돌 감지 : ..

Unity/VR 2023.07.02

STEAM VR Interactable.cs 완벽 이해

Unity 3D에서 SteamVR을 사용하여 가상현실 콘텐츠를 구현하기 위해서는 SteamVR에 제공되는 플러그인을 활용하여 가상 오브젝트를 제어할 수 있는 콘텐츠를 구현할 수 있습니다. 준비 AssetsStore - SteamVR Plugin Interactable.cs - Steam VR Interactable.cs는 상호작용가능한 객체를 손에 식별합니다. 역할 : 1. 컨트롤러 입력감지 : 사용자의 컨트롤러 Trigger(Bool), Grib(Bool), Teleport(Vector2) .. 입력값을 받을 수 있습니다. 2. 상호 작용 가능한 오브젝트 식별 : 상호작용할 오브젝트에 스크립트를 추가 하여 상호작용 가능한 오브젝트인지를 식별하고 입력에 응답할 수 있다. 3. 상호 작용 이벤트 처리 : ..

Unity/VR 2023.07.02
반응형