전체 글(52)
-
unity ToolKit 와 UI Builder 이용해서 커스텀에디터만들기(응용편 rpg 아이템에디터)-3
이번에는 아이템 에디터를 만들어봅시다 UI Builder로 UI들을 꾸며봅시다 https://docs.unity3d.com/kr/2021.3/Manual/UIE-HowTo-CreateEditorWindow.html 아이콘 에셋은 무료 에셋 사용했습니다 https://assetstore.unity.com/packages/2d/gui/icons/rpg-inventory-icons-56687 이번엔 저장할 데이터는 스크립터블 오브젝트로 하겠습니다. 스크립트 하나를 만들어봅시다 using System; using UnityEngine; public enum ItemType { Weapon, Armor, Portion, Food, } [CreateAssetMenu(fileName = "ItemInfo", menu..
2022.07.21 -
unity ToolKit 와 UI Builder 이용해서 커스텀에디터만들기(응용편 소코반 맵 에디터만들기)-2
이번에는 응용해서 맵 레벨 에디터를 만들어봅시다 저는 소코반(창고지기)이라는 게임의 맵 에디터를 만들겠습니다. 맵 저장은 엑셀 , json , 스크립터블 오브젝트 등등 여러 방법이 있는데 이번에는 엑셀 csv 형식으로 저장하겠습니다. UI Builder로 UI들을 만들어봅시다 원하시는 스타일로 만들어주세요 버튼들을 보면 새로 만들기 불러오기 저장하기 버튼이 있고 밑에 타일을 선택하는 버튼이 있습니다 타일에 맞춰서 csv로 저장을 하게 하고 불러오면 끝납니다 저는 선택한 타일에 따라서 왼쪽부터 0번에서 6번이고요 0번은 아무것도 없는 타일 1번은 벽 2번은 바구니 3번은 상자 4번은 플레이어 5번은 바구니 위에 상자 6번은 바구니 위 플레이어 로 설정했습니다. public Texture2D[] icon =..
2022.07.21 -
unity ToolKit 와 UI Builder 이용해서 커스텀에디터만들기-1
커스텀 에디터를 만들려고 여러 자료를 찾다가 Toolkit UIBuilder이라는 걸 찾았습니다. 원래는 스크립트상으로 UI를 그렸지만 UiBuilder 라는걸 이용하면 UGUI처럼 UI를 그릴 수 있습니다. 참고했던 유튜브는 https://www.youtube.com/watch?v=olcf8LWQDoI UI ToolKit이란 기존 UI 시스템을 개선하고 편의성을 더한 새로운 UI시스템이고 현재 기준으로 프로젝트를 새로 만들면 포함되어있습니다. UIElements에서 UI Toolkit으로 이름 변경했습니다. 런타임에서도 좋다는데 아직까지는 UGUI도 괜찮은 거 같아서 커스텀 에디터를 만드는 거는 UIToolKit를 이용하면 좋을 거 같습니다. web 개발에 비슷하게 설계가 되어있고 UI ToolKit에..
2022.07.20 -
Unity로 node.js WebSocket 통신하기 -1
참고자료 https://medium.com/unity-nodejs/websocket-client-server-unity-nodejs-e33604c6a006 WebSocket이란 두 프로그램 간의 메시지를 교환하기 위한 통신 방법 중 하나이다 준비물 node.js WebSocketSharp WebSocketSharp는 https://github.com/GlitchEnzo/NuGetForUnity 에서 다운로드하고 websocketsharp-netstandard 검색해서 설치하시거나 제가 올린 파일 받아서 넣으시면 됩니다. 편하신 대로 node.js 는 https://nodejs.org/en/ 에서 LTS 설치하시고 저는 비주얼 스튜디오 코드를 사용했습니다. 폴더 하나 만들어서 통합 터미널 열고 npm i ..
2022.07.19 -
Mathf 함수 전부 알기
버전은 2022.2 기준입니다. https://docs.unity3d.com/2022.2/Documentation/ScriptReference/Mathf.html Mathf.Deg2Rad // public static float Deg2Rad; 더보기 (PI * 2) / 360, PI/180. 를 의미합니다. 보통 디그리(60분법)에다가 곱해서 라디안(효도법)을 구할 때 씁니다. Mathf.Epsilon // public static float Epsilon; 더보기 작은 부동 소수점 값을 가져옵니다. 즉 0에 가까운 소수점을 반환합니다. 1.0f == (10.f/10.f) 이 값은 늘 true로 반환하지 않습니다. 두 값을 확인할 때는 Mathf.Epsilon를 활용해서 구할 수 있습니다. bool i..
2022.07.17 -
랜덤 원형안에 오브젝트 생성시키기
원형안에 랜덤으로 생성시키는 함수를 소개합니다. https://docs.unity3d.com/kr/530/ScriptReference/Random-insideUnitSphere.html Vector3 insideUnitSphere 반경이 1인 구 내부의 임의의 점을 반환합니다 정해진 Vector 기준으로 insideUnitSphere*반경을 곱하면 랜덤 원형안에 오브젝트가 생성됩니다. 기즈모로 그려서 테스트를 했습니다. private void OnDrawGizmosSelected() { Handles.DrawWireArc(transform.position, Vector3.up, Vector3.forward, 360, 5); //3d공간에 circular 그리기 } 예제를 보면 public GameObje..
2022.07.17