ETC/Unity

· ETC/Unity
Node 실행하기각 노드의 이름을 클릭해보면 시스템에 맞는 Agent 실행 커맨드라인이 보인다. java -jar agent.jar -url http://127.0.0.1:8080/ -secret 2ab17036e507d3d852b6d245dde21f6817ce35e4fc0582484d85124b29392edd -name "Windows-x64" -workDir "E:\Jenkins"  URL을 본인 상황에 맞게 바꿔서 터미널에 입력해주면 Connected가 뜨며 웹 UI상 빌드 실행 상태가 "대기중"으로 바뀐다. 프로젝트 설정하기새로운 아이템 - FreeStyle Project General에 "이 빌드는 매개변수가 있습니다" 클릭 후 매개변수 추가Label 선택 후 Node에서 설정한 라벨을 순차적으..
· ETC/Unity
진행중인 프로젝트는 macOS와 Windows 두가지 OS를 지원한다. 매번 빌드때마다 git push / pull 후 수동 빌드하기가 번거로워서 Jenkins로 자동 빌드 환경을 구성했다. Github를 사용하지 않고 Gitea를 사용하는 이유는.....LFS Bandwidth 무료 사용량을 초과해서.......... 이지만, Github와 Gitea의 설정 방법은 완전히 동일하다.  유니티 빌드 스크립트 작성유니티 에디터의 CLI 빌드 시 빌드 스크립트가 있어야 한다. - 유니티 스크립트 추가 : "Assets/Editor/CLIBuild.cs"에디터 폴더에 작성해야 하며, 모든 멤버는 static이어야 한다. using System.Linq;using UnityEditor;using UnityEng..
· ETC/Unity
https://jyspw.tistory.com/72 [Unity] 2D 쿼터뷰 공간 바닥에 랜덤 스폰하기개발 진행중인 프로젝트는 2D게임인데, 쿼터뷰 형식으로 되어있다. 3D공간에 물체를 배치하고 Orthographic View로 보여주는게 아니라 각각의 장소가 모두 1장의 Sprite이다. 그렇기 때문에 공간 내에blog.ysoft.kr 위 글에서 Y축을 기준으로 0~100까지 Layer Order를 줬다. 당연하게도 제대로 안된다. 아래 그림과 같이 각각의 Vector A, B, P가 있다고 가정할 때점 P에서 선분 BA로 수선의 발을 내린 후, 0~1로 Normalize된 선분 BA와 수선의 발의 접점을 찾는다. public float FindShortest(Vector2 point, Vector2..
· ETC/Unity
유니티에서 The requested operation caused a stack overflow 오류가 발생했다. 타이틀에서 메인 게임 씬으로 넘어갈 때 발생했는데, 타이틀 씬에 들어가는건 게임매니저 외엔 수정한게 없는데 똑같은게 들어간 메인 씬은 또 잘 된다..; 그래도 알 수 없으니 콘솔에 뜬 호출스택을 하나하나 찾아가며 본 결과 setter에서 다른 값을 변경해줄 때 발생한 오류였는데 public int playerStamina { get { return _playerStamina; } set { _playerStamina = value; if(_playerStamina 스태미너 0으로 설정->시간대 변경 호출->스태미너 0으로 설정... 무한 반복이 일어나 호출스택이 터져버린 것. 데이터를 새로 ..
· ETC/Unity
개발 진행중인 프로젝트는 2D게임인데, 쿼터뷰 형식으로 되어있다. 3D공간에 물체를 배치하고 Orthographic View로 보여주는게 아니라 각각의 장소가 모두 1장의 Sprite이다. 그렇기 때문에 공간 내에 물체를 랜덤하게 배치할 때 계산을 자칫 잘못하면 맵 밖으로 튀어나가거나 공중에 붕 떠있는 것처럼 보이게 된다. 위와 같은 상황을 방지하기 위해 바닥면을 기준으로 오브젝트를 배치해 주어야 하는데, 바닥면의 좌표를 구하는 방법은 축과 평행하지 않은 평면상의 좌표를 구하는 것과 같다. 먼저 바닥 위에 배치할 오브젝트 Sprite의 Pivot포인트를 Bottom으로 설정해 준다. 그 다음 위 그림과 같이 바닥면의 네 꼭짓점에 적당한 Padding을 준 위치에 네 개의 Empty Object를 생성한다..
· ETC/Unity
C# 스크립트로 스토리 진행 로직 작업을 하다가 문득 그런 생각이 들었다. Xml이나 Json에 프리팹이나 리소스와 스토리 내용을 등록해 직렬화 하고, 거기에 필요한 데이터만 런타임중에 불러와서 표시해주면 간단하지 않을까? 바로 해보자. Editor 폴더에 스크립트를 작성한다. Story Scene Editor는 스토리 내용과 리소스를 등록해줄 에디터 Story Scene List는 위 에디터에서 직렬화 후 저장한 데이터들을 한번에 볼 수 있는 창이다. [SerializeField] public Dictionary storySceneList; private SerializedObject storySceneObject; private SerializedProperty storySceneListPropert..
· ETC/Unity
SaveData가 있으면 버튼에 이벤트를 동적으로 할당하게 처리해줬다. 근데 자꾸 0~4의 범위를 벗어나 5번에다 저장한다...ㅜㅜ 검색해보니 for loop 안에서 람다함수 사용 시 발생하는 Closure 문제라고 한다... for loop 내부에서 i값을 그때그때 값 복사, 참조하면 해결 Reference: https://velog.io/@jh11240/Unity%EB%B0%98%EB%B3%B5%EB%AC%B8%EC%97%90%EC%84%9C-%EB%9E%8C%EB%8B%A4delegate%ED%95%A8%EC%88%98-%EC%82%AC%EC%9A%A9%EC%8B%9C-%EB%AC%B8%EC%A0%9C%EC%A0%90%ED%81%B4%EB%A1%9C%EC%A0%80-%EB%AC%B8%EC%A0%9C
Jade Choe
'ETC/Unity' 카테고리의 글 목록