전체 글 41

[Unity] 3인칭 카메라 이동 문제(?) 해결하기

시네머신을 이용해서 3인칭 카메라를 구현하려고 했다. 그런데, 앞뒤로는 잘 작동하는 듯 하였으나... 좌우로 이동하면 카메라가 이상하게 움직인다. 이상하게 움직인다가 아니다. 안 움직인다. 심지어 캐릭터는 좌우로 이동하지도 않고 공전 궤도 돌듯 움직인다. 유니티 Starter Assets Third Person Controller에 있는 것처럼 작동을 원했기에 이것저것 만져보고.. 코드를 고쳐보기도 하고.... 2시간을 썼으나.. 제대로 작동하지 않았고 다음 글(https://ansohxxn.github.io/unity%20lesson%201/chapter11-3/)로부터 정답을 얻을 수 있었다. Cinemachine FreeLook의 Orbits의 Binding Mode가 Simple Follow Wi..

Unity 2023.06.22

[Asp.net core] Firestore 저장할 때 자료형 주의할 거

Firestore에 자료를 저장하려면 FirestoreDb db = FirestoreDb.Create(Project_Id); DocumentReference docRef = db.Collection(Collection_Name).Document(Document_Name); //저장할 때 await docRef.SetAsync(data); //가져올 때 DocumentSnapshot snapshot = await docRef.GetSnapshotAsync(); Dictionary data = snapshot.ToDictionary(); 위와 같이 간단하다. 그런데, 파이어스토어는 number, boolean, string, map, array... 이런 거 밖에 저장할 수 없다. List형은 array로 ..

C#/ASP.NET Core 2023.05.07

[Asp.net core] View에서 Controller로 데이터 전달 (전달할 것이 List일 때)

뷰에서 컨트롤러에 값을 전달해야 할 때가 있다. 무언가를 입력받고 이를 처리해야 할 때. 이는 간단하다. 아이디 비밀번호 로그인 이렇게 해주면 된다. form태그에 전달할 곳(나의 경우는 asp-action) 방법(method)을 적어주면 된다. 그러면 input의 값을 폼이 전달한다. 이때 전달을 아래와 같이 보내고 값을 얘가 잘 읽기 위해서는 input의 Name값과 매개변수의 이름이 일치해야 한다. [HttpPost] public async Task Login(string Email, string Password) { ... } [HttpPost]는 attribute인데, 안 붙여도 되는지는 모르겠다. 나는 그냥 다 붙였다. 추가: input이 disabled 되어 있다면 그 input으로부터는 값..

C#/ASP.NET Core 2023.05.07

[Asp.net core] Firebase Storage에 사진 업로드&다운로드

사진은 안타깝게도 Firestore에 올릴 수 없습니다. (사진을 -> 바이트 배열 -> json으로 바꾸고 json 문자열을 그대로 올리면 될 것 같다는 생각을 해봤으나.. 시도는 안해봐서 모릅니다) 그래서 사진을 스토리지에 올려보기로 했습니다. 이번 역시 코드는 간단한데.. 이 코드 쓰자고 하루정도는 날린 듯...ㅠ 스토리지를 쓰기 위해 저는 일단 아래의 패키지를 설치했습니다 사진 업로드하기 input을 이용해 파일을 받았습니다. 모든 이미지 형식을 허용하기 위해 accept="image/*"를 사용했습니다. 만일 'jpg나 png만 받고 싶다' 라고 하신다면 와 같이 확장자와 콤마(,)로 필터를 추가해줄 수 있습니다. public async Task UploadImage(IFormFile file)..

C#/ASP.NET Core 2023.05.07

[Asp.net core] Firebase link 생성하고 이메일로 전송

비밀번호를 잊어버리거나 비밀번호를 잊어버리면 바꿔줘야 한다. 내가 만들고 있던 거에는 Firebase로 로그인을 했기 때문에 Firebase의 비밀번호 변경 이메일을 전송하려고 한다. firebase문서에서는 다음과 같이 안내하고 있다. 그런데 흠.. 아직도 actionCodeSettings가 뭔지는 잘 모르겠다. 이메일 보내는 거는 그냥 이전 글에서 쓴 방법대로 그대로 가져왔다. 링크 생성은 위의 사진대로 GeneratePasswordResetLinkAsync 메서드를 사용하면 된다. (await 안 써주면 링크가 이상한 거로 만들어진다) var link = await FirebaseAuth.DefaultInstance.GeneratePasswordResetLinkAsync(email); MailMes..

C#/ASP.NET Core 2023.05.06

[Asp.net core] 이메일 전송 구현했던거

내가 계획한 웹사이트는 로그인 시에는 이메일이 유효한지 확인을 해야할 필요가 있다. 그래서 이메일을 보냈을 때, 이메일 본문의 링크를 클릭할 시 인증이 되는 기능을 만들고 싶었다. 다행히도 Firebase에는 GenerateEmailVerificationLinkAsync 메서드가 있었고, 슬프게도, 한두시간 이리저리 만져본 결과, 내 프로젝트에는 적용할 수 없다는 판정을 받았다. 왜냐하면 내 프로젝트는 계정을 두 개를 사용해야 했기 때문이다. 로그인용으로 하나, 재학생 인증용으로 학교 이메일(얘가 인증 보낼 메일 주소다) 하나를 사용해야 했다. 야속하게도(?) Firebase를 통해 전송하려면 보낼 대상의 이메일이 User로서 등록되어 있어야 하기에 그 외의 주소로는 보낼 수 없었다. 그러니까 재학생을 ..

C#/ASP.NET Core 2023.05.06

[Asp.net core] Firebase 인증 구현기

이 글을 시작으로 얼마나 작성해볼지는 모르겠지만, asp.net core mvc로 웹페이지 개발 중 겪었던 애로사항과 해결과정을 작성해볼 것이다. 참고로 이 글을 작성하고 있는 와중에도 개발중이라.. 자주 쓸 수 있으면 좋겠다. 환경 .Net Core 6.0 우선 인증은, 인터넷을 뒤지며 찾아보면 방법이 많긴 한데 따라하려면 안 되는 경우였다. FirebaseAuthProvider였나? 이 클래스가 없다고 자꾸 에러를 내뱉는데 유튜브에서는 잘만 사용하더라. (사실 이때 화가 많이 남. 난 왜 안대ㅐㅐㅐㅐ) Nuget도 똑같은 걸 받았는데 안돼서 Firebase 공식 문서에 있는 FirebaseAdmin 패키지를 사용하기로 결정했다. 일단은 내가 asp.net core로 개발하려는게 잘못이 아닐까 생각이 ..

C#/ASP.NET Core 2023.05.05

[Bootstrap] .order 사용기

asp를 이용해 웹사이트를 만들어보던 도중 기본으로 제공하는 화면을 조금 수정하여 아래와 같이 만들었다. 아직 줄이는 걸 생각을 안 해도 되는지는 모르겠지만, 화면을 줄여보니 좌측과 같이 줄었으며, 토글버튼을 누르면 아래에 페이지가 열린다. 그런데 나는 검색창은 로고 옆에 남겨두고 싶었다. Inhu 지도 테마 Search 위와 같이 만든다면, 검색창이 잘 보이긴 하지만... 아래 사진과 같이 순서가 엉망이 된다. 이를 어떻게 해야할지 인터넷을 뒤지다가 나와 비슷한 문제를 겪고 있는 글을 발견했고, '이렇게 해보세요' 라고 올린 코드를 비교해보니, 비슷하지만 order라는 것을 발견했다. 공식문서에서는 .order을 순서를 맞춰주는 거라고 한다. 만일 First item Second item Third i..

기타/Bootstrap 2023.04.15

[WinUI3] 체스 게임 만들기(2) : 말 선택하기

체스 말을 설정하고 선택 가능한지, 선택하는 것까지 만들 것입니다. 말이 가질 공통적인 내용을 담은 클래스를 상속시킬 계획이기에, Piece를 하나 만들었습니다. public class Piece { public Side Side { get; set; } public PieceType Type { get; set; } } //체스에 올려질 말 6종류를 모두 이렇게 만들어 놓는다 public class King : Piece { public King(Side side, PieceType type) { this.Side = side; this.Type = type; } } enum타입을 만들어 말의 정보를 담을 수 있게 하였습니다. public enum PieceType { King, Queen, Bisho..

C#/WinUI3 2023.02.10

[WinUI3] 체스 게임 만들기(1)

간단하진 않겠지만, 체스 게임을 한 번 만들어보기로 했습니다. 자꾸 말투가 높임말에서 왔다갔다 한 것 같다면 기분 탓입니다. (분명 기분 탓일 겁니다!) 글을 시작하기 앞서, 이 글은 체스 AI, 혹은 네트워크에 대해 다루지 않을 것입니다. 그냥 단순히 혼자서 흑백 다 움직이는 그런 프로그램을 짤겁니다. 뭐, 본론으로 돌아와서... 판 만들고 체스말 놓는데 2시간이 걸렸다면 믿으시겠나요 ㅎ.. 우선 우리가 흔히 아는 8x8의 격자를 만들어봅시다. xaml로 처리할 수도 있지만, 64개를 쌩으로 만들기 싫었기 때문에 스크립트로 작성하고자 했습니다. private void SetBoard() { for(int i = 0; i < 8; i++) { RowDefinition row = new RowDefinit..

C#/WinUI3 2023.02.06