본문 바로가기

전체 글

유니티 라이팅 시스템 라이팅의 기본 개념라이팅이란 광원에서 반사된 빛이 물체에 반사되어 이것을 눈(카메라)에 보는것입니다. Direct Lighting그럼 어떻게 유니티나 언리얼에서는 사물이 이런식으로 사물이 빛에 영향을 받는지, 깊게 궁금하신 분들을 위해서 간단하게 설명 드리자면 모델링된 오브젝트는 모두 노멀 버택스를 가지고있습니다.재미있는 사실은 이는 다이렉트X를 배워야 알수있는 3D 엔진의 구성 단계입니다. 이전에 내적을 글로 쓴적이 있는데 이 수학의 내적이 여기서 사용됩니다.오브젝트의 수많은 노멀 버텍스는 광원과 내적으로 연산을 하게됩니다.두 백터사이들의 접전이 내적시에 0(두 벡터가 마주본다)이면 최대 밝기반대면(두 벡터가 방향이 같다) 1 가장 어두움으로 표현하며 이를 기존 텍스쳐의 색과 연산하여 오브젝트는 빛에 .. 더보기
프로그램과 프로세스란 글을 쓰게된 이유회사가 아닌 팀 프로젝트를 진행중에 기획 팀원분이 JSON이나 CSV ,TSV를 모르는경우가 있어서 내가 직접 설명을 해야하는 경우가 발생했다. 하지만 나도 매번 써왔던 csv, tsv json을 설명하려 하니 어디서부터 어디까지를 설명해야할지 분간할 수 없었다.그래서 다시 한번 기초를 다지고자 유니티를 사용하며 반드시 알아야하는 개념들을 글로 정리해보려한다.  🧠 프로그램과 프로세스 우리가 흔히 말하는 프로그램이란 컴퓨터에서 실행되는 명령어 모음이 들어 있는 데이터 덩어리를 의미합니다.크게 코드(code)와 데이터(data)로 구성되어 있습니다. 프로그램 자체로는 아무런 의미가 없습니다.  우리가 그것을 더블클릭하여 실행시키기 전까지는프로그램을 실행시키면 프로그램 안에 들어 있는 명령.. 더보기
Intentional Descent 1-1 유니티 Mirror 사용법 Mirror 라이브러리로 구현한 멀티플레이 기능 정리Unity에서 Mirror 라이브러리를 사용하여 간단한 멀티플레이 시스템을 구현했습니다. 이번 프로젝트에서는 다음과 같은 기능들을 만들었습니다. git url 👇https://github.com/kimdalho/IntentionalDescent작업 시연 영상아래 영상에서 구현한 기능들을 확인하실 수 있습니다.  NetwrokManagerMirror를 사용하여 멀티 플레잉 게임을 만들기 위한 핵심 제어 구성요소를 가지고있는 클래스 입니다.  네트워크 관리자는 멀티플레이어 게임의 네트워킹 측면을 관리하기 위한 구성 요소입니다. 많은 유용한 기능을 한곳에 모아서 멀티플레이어 게임을 만들고, 실행하고, 디버깅하는 것을 가능한 한 간단하게 만듭니다. 네트워크 .. 더보기
게임기획서 프로젝트 명 : Intentional Descent 🎮 게임 개발 기획: Intentional Descent🌌 프로젝트 개요외계 행성에서 펼쳐지는 협력과 배신의 서바이벌 심리 게임!Unity로 구현될 "Intentional Descent"는 플레이어들 간의 불신과 공포를 중심으로 한 생존 멀티플레이 게임입니다.🎯 게임 컨셉"내 옆에 있는 팀원이 진짜 믿을 수 있는 사람일까?"이 게임의 핵심은 신뢰와 의심 사이에서의 긴장감입니다.플레이어는 자원을 모아 우주선을 수리하고 탈출해야 하지만, 그들 중 일부는 배신자입니다.배신자는 유전자 변이 물약으로 괴물이 되어 플레이어들을 공격할 수 있습니다.팀워크, 생존, 그리고 심리적 두뇌 싸움이 이 게임의 핵심 재미를 만듭니다.🎯 핵심 재미 요소1. 심리 공포와 불신옆에 있는 팀원이 아군인지, 배신자인지 모르는 상.. 더보기
UE5 포트폴리오 1-1 전투스킬구현 플레이어 스킬 게임어빌리티 스시템 활용지난 GAS를 정리한 글을 바탕으로 제 포트폴리오에서 스킬을 구현한 방법을 보여드리겠습니다. 글을 통해 알수있는것들게임어빌리티의 사용법자신의 스킬연출을 구성한 몽타주 만들기게임어빌리티시스템 스킬구현플레이어가 A,S,D,F, Q,W,E,R 스킬들을 누르면 해당 스킬의 위젯의 쿨타임이 실행되고 해당 스킬 시전 mp를 차감합니다.현제 영상은 테스트를 위해 mp는 0이하에서도 사용이 가능하게끔 구현했습니다.GAS로 구현된 스킬   구현 로직 설명플레이어의 스킬은 앞서 말한것처럼 언리얼에서 지원하는 GameAbilitySystem을 적극 활용하여 구현했습니다.보고계신 글에서 스킬의 구현을 처음부터 끝까지 설명하기에는 어려움이 있기에 전투스킬구현2까지 확인해주시기 바랍니다.  .. 더보기
UE Fade 기능 만들기 Fade란 fade (【동사】바래지다, 점점 희미해지다, 사라지다, 바래다 ) 뜻, 용법, 그리고 예문 | Engoo Words. 게임뿐만 아니라 영화 애니메이션에서도 사용되는 시각연출을 의미한다 언리얼에서 기능을 구현하기위해 검색을 해봤지만 쉬운 기능임에도 생각보다 순수 코드로 완성된 참고자료가 없어 직접 C++ ,Blueprint로 페이드 기능을 만드는 방법에 대해 글을 써보려한다. 기능 로직 설명 주어진 입력값은 지속시간 위젯의 이미지 오퍼시티 시작값,도착값이 주어진다 함수가 실행되면 지속 시작동안 이미지의 오퍼시티를 시작값에서에서 도착값까지 도달하게 하면 페이드가 완성된다. 지속시간(duration) 지속시간은 페이드가 시작값에서 도착값까지 도달하는데 걸리는 시간을 말한다 예시로 시간의 기준을 초.. 더보기
UE C++ 매쉬 만들기 매쉬 설정 static ConstructorHelpers::FObjectFinder CharacterMeshRef(TEXT("/Script/Engine.SkeletalMesh'/Game/DownloadAssets/Primitive_Characters_Pack/Mesh/Primitive_01/Mesh_UE4/Full/SK_Primitive_Charater_01_01.SK_Primitive_Charater_01_01'")); if (CharacterMeshRef.Object) { GetMesh()->SetSkeletalMesh(CharacterMeshRef.Object); } 콜라이더 설정 GetCapsuleComponent()->InitCapsuleSize(42.f, 96.0f); //GetCapsuleC.. 더보기
와인리뷰 "산타헬레나 까베르네 소비뇽(SANTA HELENA)" 리뷰를 읽기전에 이 글은 제 개인적인 주관이자 언젠가 다시 이 와인이 생각나는 일이 생기면 찾아보는 경우를 위해 쓴 글입니다. 금액 금액은 매우저렴한 편이었다 편의점에서 2병에 13000원에 살수있었기에 디아블로를 살지 고민하다가 처음보는 산타헬나 까베르네 소비뇽을 사보기로 결정했다. 맛 맛은 매우 드라이한 편이고 이외의 약간의 신맛이 섞여있다. 가격도 저렴하며 어떠한 음식이랑 같이 먹기에 음식맛을 해칠 염려가 없어 처음에는 매운 음식과 같이 먹었는데도 기분좋게 즐겼고 나중에는 소고기랑 같이 페어링 하면서 마셨을때도 고기맛에 집중하면서 입안을 타닌감으로 소고기의 기름진 맛을 빠르게 씻어낼 수 있어 마음에 들었다. 향 향은 알콜향,체리향, 레드와인에서만 맡을 수 있는 콤콤한 빵같은 향이 섞여서 난다 다른 .. 더보기