본문 바로가기
반응형

전체 글437

Unity 6 Challenge 참여 후기 – 노마드 코더 튜토리얼로 나만의 게임 만들기 Unity 6 Challenge 참여 후기 – 노마드 코더 튜토리얼로 나만의 게임 만들기안녕하세요! 이번 포스트에서는 Unity 6 Challenge에 참여한 후기를 공유해보려고 합니다. 이 챌린지는 Unity Korea와 노마드 코더가 함께 준비한 이벤트로, 초보자도 쉽게 게임을 만들 수 있도록 다양한 리소스와 가이드를 제공해 주었습니다.🎯 Unity 6 Challenge란?Unity 6 Challenge는 Unity 6 버전의 기능을 체험하고 누구나 게임을 만들어 볼 수 있도록 유도하는 프로그램입니다. 특히 노마드 코더의 튜토리얼을 활용하면 Unity에 대한 경험이 부족해도 손쉽게 게임을 제작할 수 있었어요.기간: 2024년 12월 15일 ~ 2025년 1월 30일참여 방법:Unity 6을 설치하고.. 2024. 12. 18.
CentOS 7에서 systemd로 게임 서버 관리하기 CentOS 7에서 systemd로 게임 서버 관리하기CentOS 7 환경에서 게임 서버를 안정적으로 관리하기 위해 systemd를 활용하는 방법을 정리했습니다. 이 글에서는 서비스 파일을 작성하고, 서버를 실행 및 관리하는 과정을 설명합니다. 또한, 서버의 오류 로그만 출력하는 방법과 프로그램 수정 후 반영하는 절차도 포함했습니다.1. 게임 서버 서비스 파일 생성systemd는 Linux에서 서비스 관리에 널리 사용됩니다. 게임 서버 프로그램(program.dll)을 서비스로 등록하면 부팅 시 자동으로 시작되며, 오류가 발생해도 자동 재시작이 가능합니다.서비스 파일 작성서비스 파일 생성아래 명령어로 서비스 파일을 생성합니다:sudo vi /etc/systemd/system/game_server.serv.. 2024. 11. 29.
Unity IAP JNI 에러 해결 사례 Unity IAP JNI 에러 해결 사례Unity를 사용해 인앱 결제를 개발하면서 다양한 상황에서 문제가 발생할 수 있습니다. 특히 Android 환경에서 Unity IAP를 활용하는 과정 중 JNI: Init'd AndroidJavaObject with null ptr! 에러를 만나게 되면 문제를 파악하고 해결하는 데 시간이 걸릴 수 있습니다. 이번 포스트에서는 제가 겪었던 문제와 이를 해결한 사례를 공유하고자 합니다.문제 상황: Unity IAP에서 발생한 JNI 에러Unity IAP를 사용해 결제를 처리하던 중, android logcat에서 아래와 같은 JNI 관련 에러를 확인했습니다.Error Unity Exception: JNI: Init'd AndroidJavaObject with null .. 2024. 11. 28.
MySQL Timeout Error: The client was disconnected by the server because of inactivity MySQL Timeout Error: The client was disconnected by the server because of inactivityMySQL을 사용할 때 다음과 같은 에러를 본 적이 있을 것입니다:The client was disconnected by the server because of inactivity. See wait_timeout and interactive_timeout for configuring this behavior.이 에러는 클라이언트가 MySQL 서버에 연결된 후 일정 시간 동안 아무 작업도 수행하지 않을 경우 서버가 연결을 종료하면서 발생합니다. 이번 포스트에서는 이 에러의 원인, 해결 방법, 그리고 관련된 코드 최적화 방법을 소개합니다.1. 에러 원인MySQ.. 2024. 11. 25.
MySQL 프로시저에서 변수와 컬럼명이 충돌할 때 발생하는 문제 해결하기 MySQL 프로시저에서 변수와 컬럼명이 충돌할 때 발생하는 문제 해결하기1. 들어가며MySQL에서 프로시저를 작성하다 보면 테이블의 컬럼 이름과 프로시저 안에 선언된 변수 이름이 대소문자만 다른 경우, 의도치 않은 충돌 문제가 발생할 수 있습니다. 이로 인해 데이터베이스 쿼리가 예상대로 동작하지 않거나, 잘못된 데이터가 처리되는 경우가 생길 수 있습니다. 이 글에서는 이 문제의 원인과 해결 방법을 살펴봅니다. 2. 문제 상황 설명다음과 같은 MySQL 프로시저를 예로 들어보겠습니다:DELIMITER $$CREATE PROCEDURE UpdateUserCurrency(IN UserID INT, IN currency INT)BEGIN DECLARE Currency INT; SELECT Curren.. 2024. 11. 24.
SCP를 이용한 파일 및 폴더 전송 가이드 SCP를 이용한 파일 및 폴더 전송 가이드scp는 SSH를 기반으로 안전하게 파일 및 디렉토리를 복사할 수 있는 유용한 도구입니다. 이 포스트에서는 scp를 사용하여 파일과 폴더를 로컬에서 원격 서버로 전송하거나, 반대로 서버에서 로컬로 다운로드하는 방법을 단계별로 설명하겠습니다.  1. SCP란?SCP(Secure Copy Protocol)는 SSH를 통해 파일과 디렉토리를 안전하게 전송하기 위한 프로토콜입니다. scp 명령어는 보안 연결을 설정하여 파일을 복사하며, 로컬 시스템과 원격 서버 간의 파일 이동에 널리 사용됩니다. 2. SCP 명령어 기본 형식scp [옵션] [출발지 경로] [사용자명]@[서버 주소]:[목적지 경로] 구성 요소 설명 scp파일 전송 명령어옵션전송 시 추가적인 설정(예: -.. 2024. 11. 23.
리눅스 CentOS에서 파일 삭제 방법 총정리 리눅스 CentOS에서 파일 삭제 방법 총정리리눅스 CentOS에서 파일을 삭제하는 방법은 다양하며, 파일의 유형, 위치, 접근 권한, 삭제 대상의 크기에 따라 적합한 방법이 다를 수 있습니다. 아래는 파일 삭제와 관련된 다양한 상황과 해결 방법을 정리한 내용입니다.1. 기본 파일 삭제 명령어가장 기본적인 파일 삭제 명령어는 rm입니다.1.1 단일 파일 삭제rm filename filename: 삭제할 파일의 이름을 지정합니다.삭제 확인 메시지는 표시되지 않습니다.1.2 삭제 확인 메시지 표시rm -i filename삭제 전 사용자 확인을 요구합니다.rm: remove regular file 'filename'? 와 같은 메시지가 출력됩니다.1.3 여러 파일 삭제rm file1 file2 file3공백으.. 2024. 11. 23.
확률형 아이템의 설계와 구현: 게임에서의 재미와 공정성 확률형 아이템의 설계와 구현: 게임에서의 재미와 공정성 확률형 아이템은 현대 게임 디자인에서 중요한 요소 중 하나로, 플레이어들에게 기대감과 흥미를 주며 게임 내 경제와 플레이 타임을 조율하는 데 사용됩니다. 이 글에서는 확률형 아이템의 설계와 구현, 그리고 이를 둘러싼 공정성과 재미의 균형을 어떻게 잡을 수 있는지 구체적으로 살펴보겠습니다.1. 확률형 아이템이란?확률형 아이템이란 플레이어가 특정 아이템이나 보상을 얻기 위해 랜덤 확률에 의존하는 시스템입니다. 일반적으로 가챠(Gacha) 시스템, 상자(Loot Box), 또는 랜덤 박스라고도 불립니다.주요 특징은 다음과 같습니다:랜덤성: 플레이어가 어떤 아이템을 받을지 예측할 수 없음.희소성: 일부 아이템은 낮은 확률로 설정되어 높은 가치와 희소성을 가.. 2024. 11. 23.
유니티 팝업 닫기 완벽 가이드 : 외부 클릭으로 팝업 닫는 기능 구현하기! 유니티 팝업 닫기 완벽 가이드 : 외부 클릭으로 팝업 닫는 기능 구현하기! 게임이나 앱을 개발할 때, 팝업 창을 띄우고 사용자 경험을 향상시키기 위해 팝업 외부를 클릭하면 팝업이 닫히는 기능은 필수입니다. 이번 포스트에서는 유니티를 사용하여 이 기능을 구현하는 방법을 단계별로 설명하겠습니다. 구현 목표팝업 외부를 클릭하면 팝업이 닫히도록 구현하겠습니다.팝업: UI Canvas에 위치한 Panel외부 클릭 감지: 팝업 영역 외부 클릭 이벤트 감지 단계별 구현 방법1. 기본 UI 구성Canvas 생성Hierarchy 창에서 Canvas를 생성합니다.Canvas 아래에 팝업과 백그라운드 영역을 배치할 Panel을 추가합니다. Background Panel 추가Popup 뒤에 위치할 Background Pane.. 2024. 11. 22.
Unreal Engine 마켓플레이스의 Fab 전환: 무료 에셋 변화와 활용법 Unreal Engine 마켓플레이스의 Fab 전환 무료 에셋 변화와 활용법 Fab으로 전환된 Unreal Engine 마켓플레이스Unreal Engine의 기존 마켓플레이스는 매월 5개의 무료 에셋을 제공하며 사용자들에게 큰 사랑을 받아왔습니다. 그러나 Fab으로의 전환 이후, 무료 에셋 제공 방식과 주기가 변화했습니다. Fab은 10월 23일 출시된 이후 약 2~3주 간격으로 무료 에셋을 3종씩 제공합니다.Fab에서 제공되는 무료 콘텐츠는 퀄리티가 뛰어나며 다양한 개발 환경에서 활용할 수 있는 에셋으로 구성되어 있습니다. 현재 12월 3일까지 다운로드할 수 있는 무료 에셋은 다음과 같습니다:현재 제공 중인 Fab 무료 에셋1. Stylized Fantasy Creatures Bundle내용: 이 패키.. 2024. 11. 21.
언리얼 엔진 5.5 차세대 게임 개발을 위한 새로운 도약 언리얼 엔진 5.5 차세대 게임 개발을 위한 새로운 도약2024년 11월, 에픽게임즈는 언리얼 엔진 5.5를 공식 출시하며 게임 개발과 실시간 3D 콘텐츠 제작의 새로운 지평을 열었습니다. 이번 업데이트는 성능 최적화, 생산성 향상, 렌더링 품질 강화 등 다양한 영역에서 개발자들에게 강력한 기능을 제공합니다. 이 글에서는 주요 개선 사항과 기술적인 인사이트를 중심으로 엔진의 변화를 분석하고, 이를 활용한 게임 개발의 가능성을 탐구해 보겠습니다.1. 애니메이션 제작의 생산성 혁신개선된 시퀀서와 애니메이션 레이어언리얼 엔진 5.5는 애니메이션 작업 워크플로에서의 병목현상을 해결하기 위해 시퀀서를 대대적으로 업그레이드했습니다.향상된 필터링과 속성 접근성: 사용자는 애니메이션 속성을 더욱 직관적으로 탐색하고 조.. 2024. 11. 20.
디자인과 게임을 위한 무료 폰트 사이트 완벽 가이드 디자인과 게임을 위한 무료 폰트 사이트 완벽 가이드폰트는 단순히 글자를 쓰는 도구가 아닙니다. 디자인이나 게임 개발에서 폰트는 분위기와 메시지를 전달하는 중요한 요소입니다. 하지만 폰트를 고를 때 가장 헷갈리는 부분은 바로 라이센스와 적합성일 것입니다. 이번 글에서는 폰트의 기본 개념부터 무료 폰트를 찾을 수 있는 다양한 사이트, 그리고 라이센스를 확인해야 하는 이유까지 알아보겠습니다.폰트란 무엇일까?폰트(Font)는 특정한 스타일로 디자인된 글자 모양의 집합입니다. 텍스트의 굵기, 간격, 기울기 등에 따라 전체적인 분위기가 완전히 달라질 수 있습니다.예를 들어, 둥글고 부드러운 폰트는 친근한 느낌을 주는 반면, 각지고 날카로운 폰트는 세련되고 전문적인 인상을 줍니다. 따라서 프로젝트의 성격에 맞는 폰트.. 2024. 11. 19.
반응형