[졸업작품, Unity]Assembly definition를 사용하는 방법
·
Unity
유니티를 하면 한번쯤 접해본 Assembly definition을 이번 프로젝트를 하면서 사용하게 되어서 다루어 볼려고 한다.자세한 내용은 공식 문서를 참고하자!https://docs.unity3d.com/kr/2019.4/Manual/ScriptCompilationAssemblyDefinitionFiles.html 어셈블리 정의 - Unity 매뉴얼프로젝트의 스크립트를 어셈블리에 정리하기 위해 어셈블리 정의를 만들 수 있습니다. 폴더에 어셈블리 정의 에셋을 만들면 Unity는 폴더의 모든 스크립트를 이용하여 별도의 관리되는 어셈블리docs.unity3d.com  이거 뭐임?정확히는 Assembly Definition이란 용어는 그 기능에 대한 명칭이고, 사실은 파일을 Assembly Definition..
[졸업작품, Unity]아이템 시스템 수정
·
Unity
저번에 만들었던 아이템 시스템에 개편이 필요해 보여서 수정을 했다. 수정 내용은 다음과 같다. #region itemValue [Header("Effect Value")] [BoxGroup(GroupName = "EffectValue")] public float healCount; [BoxGroup(GroupName = "EffectValue")] public float damageCount; [BoxGroup(GroupName = "EffectValue")] public float defenceDecrease; [BoxGroup(GroupName = "EffectValue")] ..
[졸업작품, Unity] 결과창 제작
·
Unity
오늘은 전투가 끝났을 때 보상을 받고 어떤 보상을 받았는지 확인 하는 결과창을 만들었다. 결과물은 다음과 같다. (아직 폴리싱을 안해서 안 예쁨)  HOW TO? (구현방법)구현 방법을 설명하자면. 먼저 UI틀을 만들어준다. 사실 변경되는 내용들을 결과 창의 아이템들이다.방법은 두가지가 있는데 미리 칸을 지정해두고 그 칸의 Image의 Sprite와 Text를 바꾸는 방식 직접 동적으로 Image와 Text를 생성하는 방법이다.필자는 2번째 방법을 선택하였다.  CODE (코드 쪽 구현 방법)결과물과 같지는 않아도 비슷한 형식의 UI를 만든다.이렇게 생긴 UI다여튼 만들었다면 Horizontal Layout Group과 Vertical LayOut Group를 활용하여라인을 Vertical로 그리고 라인..
[졸업 작품, Unity]Item System 제작
·
Unity
번 졸업 작품에서 아이템을 제작하게 되었다.아이템은 숨겨진 공간이나 상자을 통해서 획득할 수 있고 인벤토리에서 플레이어가 직접 사용하는 방식이 아닌 획득과 동시에 버프나 디버프 적용되는 방식이다. (약간 버프 장판 같은 느낌??) 기본적인 구조를 짜면서 얘기하겠다. using LJS.Item.Effect;using Sirenix.OdinInspector;using System;using System.Collections.Generic;using UnityEngine;namespace LJS.Item{ [Flags] public enum ItemType { None = 0, Healing = 1 effectList; public virt..
[엔진 프로젝트]Enemy Walking Around with BT
·
Unity
적 구조를 짜둔 BT를 설명하기 앞서 에셋은 Behavior Desginer를 사용했음을 알린다.https://assetstore.unity.com/packages/tools/visual-scripting/behavior-designer-behavior-trees-for-everyone-15277?srsltid=AfmBOopXb1yjcJMAv-zIJkzmU6y0K4EhlQYt1UPaeKHLiPW0htoa63Fb Behavior Designer - Behavior Trees for Everyone | 비주얼 스크립팅 | Unity Asset StoreGet the Behavior Designer - Behavior Trees for Everyone package from Opsive and speed up..
[엔진 프로젝트]Enemy Walking Around with BT
·
Unity
이번에 학교에서 엔진 플젝을 시작하게 되었는데 그쪽에서 적을 만드는 역활을 맡아 적의 구조를 짜보았다. 앞으로도 리펙토링 해볼 것임참고로 Behavior Desginer 에셋을 사용했음을 알린다.https://assetstore.unity.com/packages/tools/visual-scripting/behavior-designer-behavior-trees-for-everyone-15277?srsltid=AfmBOopXb1yjcJMAv-zIJkzmU6y0K4EhlQYt1UPaeKHLiPW0htoa63Fb 여튼 오늘은 플레이어 주변을 도는 Walking Around Script를 어떻게 만들었는지 소개하겠다.레퍼런스를 세키로에서 따와서 대충 어떤 느낌인지 보여주겠다.뭐 잘 안보이긴 하는데 플레이를 두고..
[Unity] (2024_10_15) 2D 플랫 포머 게임 개발일지(Pooling)
·
Unity
저번에 말했던 맞을 때 생길 이펙트를 넣을 예정인데.... 중요한 점이 있다. Effect 같은 자주 생성되고 자주 쓰이는 객체를 계속 Instantiate로 생성해주는 게 맞을까? 유니티에도 자세히 다루는 내용인데. 생성과 삭제는 큰 메모리를 소비한다는 내용이다. 이게 왜 그렇냐 하면 유니티는 Object들에 많은 Component들과 정보들이 있다 이 객체를 메모리에 할당하고 실제 비주얼로 만들어주는 작업은 굉장히 많은 메모리 낭비가 있다는 것을 알 수 있다. 삭제도 똑같은 이유이다. 따라서 생성을 달리 해줄 필요가 있는데 이때 등장하는 개념이 Pooling이다.풀링이 뭐냐? 객체를 미리 만들어둬서 필요할 때 꺼내쓰고 삭제 대신 반납을 하는 알고리즘을 말한다. 이렇게 하면?? 굳이 생성, 삭제를 할 ..
[Editor] 적 생성 Editor Window 코드 부분 제작
·
Editor
깃헙 링크 : https://github.com/ljs1206/TestProject GitHub - ljs1206/TestProject: this Repository organized what I studiedthis Repository organized what I studied. Contribute to ljs1206/TestProject development by creating an account on GitHub.github.com 이 글 부터는 에디터를 만들때 썼던 코드들에 대해서 다루어 볼 것이다. 아직 미완성이여서 좀 부족한 부분이 있는점 양해 부탁한다. Window Open가장 먼저 기본적인 세팅을 해볼거다.[MenuItem("Editor/Prefab/MakePrefabWindow")] ..
[Editor] 적 생성 Editor Window 제작 과정 part.2
·
Editor
저번에 했던 내용을 이어서 하기전에 전 파트에 자료들과 참고한 부분들을 다 올려두었으니 참고하면 좋을 것 같다. PrefabCreater 가장 먼저 ViusalElemet 하나를 만들어서 이름을 MakePrefab으로 정한다. (사실 아무 이름이나 상관없긴함 분류만 된다면) flex의 shrink과 Grow는 1로 하고 Dir을 column으로 한다. 전에도 설명했듯 아래 방향으로 정렬 시키기 위해서이다.그리고 위쪽 텍스트는 Toolbar 추가해서 label 넣어준거라서 딱히 설명은 안하겠다.그다음 아래쪽 남는 공간인데 이쪽은 나중에 코드로 EnumField에 따라서 보이는 게 다르게 할 예정이다.일단 비주얼 부터 만들자면 VisualElement 만들어서 자식을 해주고 그 아래에 EnumField 넣어..
[Editor] 적 생성 Editor Window 제작 과정 part.1
·
Editor
깃헙 링크 : https://github.com/ljs1206/TestProject GitHub - ljs1206/TestProject: this Repository organized what I studiedthis Repository organized what I studied. Contribute to ljs1206/TestProject development by creating an account on GitHub.github.com문득 개발 하다 보니까 적을 만들때 계속 수동으로 만드는게 불편하기도 해서 그 과정을 모듈화 해서 Eidtor로 만들면 편할 거 같다는 생각이 들어서 모듈화를 하는 과정을 담은 블로그를 쓰게 되었다. 어느정도 만든 게 어떤 식으로 만들었지 설명을 하면서 다음 글 부턴 ..