분류 전체보기 115

[Firestore] Cloud Firestore Test Mode <-> Production Mode 변경

Firestore 보안규칙을 수정하면 됩니다. * Production Mode rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if false; } } } * Test Mode rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if request.time < timestamp.date(2022, 3, 1); } } } 위의 테스트 모드에서 date..

Android Firebase Login 구현 순서. _ 개인 기록

1. Firebase에 앱 연결. Android Project에 Firebase를 추가하는 단계. 1. Friebase 콘솔에서 Firebase 프로젝트 만들기 2. 생성한 프로젝트에 Android 아이콘을 클릭해서 앱 등록하기. !패키지명은 실제로 앱에서 사용중인 패키지명을 입력해야 한다. 나머지 정보. 앱 닉네임 같은 경우에는 편의상 지정하는 내부용 식별자로 Firebase Console에서 본인만 볼 수 있다. 3. Firebase 구성 파일 추가하기 1. 앱에 Firebase Android 구성 파일을 추가. google-services.json을 다운로드하여 앱에 모듈 디렉터리로 이동시킨다. 2. 추가한 json파일을 사용할 구 있도록 build.gradle파일을 수정한다. 프로젝트수준, 모듈(..

[정보] Unity 2D RayCast와 tag를 사용해서 화면에 터치된것들 구분하기! _ ex) UI에 가려진 부분은 터치에 반응하지 않도록 만들기.

제가 사용한 코드 입니다. 아직 많이 모자라서 이렇게 블로그에 올리긴 부끄럽지만.... 저도 항상 인터넷에서 도움을 많이 받는 입장에서 저도 선순환에 참여하고자 제 글이 조금이나마 도움이 되길 바라며 용기내봅니다. 더 좋은 방법을 알게되면 새롭게 포스팅 하겠습니다 :) 아래처럼 인자로 터치 포지션을 넣어서 사용해주시면 됩니다. //터치된것이 UI이면 True 리턴. private bool Check_if_it_is_UI(Touch touch) { var pointer_event_data = new PointerEventData(null); pointer_event_data.position = touch.position; List raycast_results_list = new List(); //여기에 히..

[Unity C#] String to int, Char to int

String을 int형으로 바꾸는 방법은 간단하다. int.Parse(string s) 를 사용해주면 끝!! 하지만 아래와 같은 char 형을 int형으로 바꿔주려고 캐스팅을 하게되면 char a = '3' print( (int)a ) 의도와는 다르게 결과값으로 3 대신 51이란 숫자를 보게될것이다. 이유가 뭘까? 위 그림은 아스키 코드표의 일부분을 캡쳐한 것인데, 각 문자를 int형으로 바꾸게 되면 왼편의 파란 원에 있는 숫자들로 바뀌어 출력되게 된다. 기본적으론 그 중에서도 가장 왼쪽줄에 있는 십진수의 형식으로 출력될 것이다. 이 문제를 해결하는 방법들 중 두 가지를 소개하겠다. 1. int.Parse를 사용하는 방법. 이 방법을 사용하면 간단하지만, int.Parse는 인자로 string 형태의 값..

[정보] Unity Resources.Load 스크립트상에서 유니티 Resources 폴더에 있는 데이터 사용하기!

https://docs.unity3d.com/kr/530/ScriptReference/Resources.Load.html Unity - 스크립팅 API: Resources.Load Returns the asset at path if it can be found otherwise returns null. Only objects of type will be returned if this parameter is supplied. /path/는 프로젝트의 애셋 Assets 폴더에 내에 Resources 폴더의 상대경로로, 확장자는 생략되 docs.unity3d.com https://docs.unity3d.com/ScriptReference/Resources.Load.html Unity - Scripting AP..

[정보] Unity Toggle 스크립트에서 listener 추가하는 방법. Toggle.onValueChanged.AddListener

위 내용처럼 delegate를 사용해 메서드를 전달해주면 됩니다. onValueChanged.AddListener(delegate{ '실행할 메서드' }) https://docs.unity3d.com/2019.1/Documentation/ScriptReference/UI.Toggle-onValueChanged.html Unity - Scripting API: UI.Toggle.onValueChanged You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see..

[C++] Heap 메모리 사용법 : new, delete

C++ 에서는 new와 delete 키워드를 통해 힙 메모리에 메모리를 할당하고 해제할 수 있다. (C에서처럼 그대로 malloc과 free를 사용할수도 있다) - new를 사용해 Heap 메모리에 공간을 할당하고 delete를 사용해 해제하기 1. 메모리 공간 할당 방법 : T* pointer = new T; 위 이미지에서는 int형을 사용했다. 2. 만든 공간에 값을 집어넣는 방법 : *pointer = 값; 3. 공간을 해제하는 방법 : delete pointer; ( * new로 Heap에 할당한 공간만 delete로 해제가 가능하다! ) * 만약에 new를 사용해 배열을 만들고 싶다면? int *array = new int[size]; * new를 사용해 만든 배열을 delete 하고 싶다면? ..

Client/C++ 2021.12.09

[TCP/IP stack] stack_5. 응용 계층 : DHCP, DNS, NAT

여러 응용 프로그램들이 이 계층에 속한다. 물론 우리가 만드는 응용프로그램도 이 계층에 속한다. 응용 계층엔 종단간 통신에 꼭 필요한 여러 프로토콜들이 존재하는데, - DHCP 1. dynamic host configuration protocol 의 약자로 사설 서브넷 망에 연결되는 호스트들의 IP주소를 자동으로 할당해주는데 쓰이는 프로토콜이다. 2. 기법의 핵심은 브로드캐스팅을 적극 활용한다는것과 DHCP 프로토콜의 DHCPOFFER, DHCPREQUEST, DHCPPACK 패킷을 활용해 호스트와 서버가 서로를 특정하고 주소를 할당해주는 것이다. - DNS 1. domain name system의 약자로 우리가 74.125.224.112 대신 www.google.com 이라고 입력해도 구글에 접속할 수..

네트워크 2021.12.06

[TCP/IP stack] stack_4. 전송 계층 : Port, UDP, TCP

네트워크 계층까지가 네트워크상의 특정 기기까지 어떻게 찾아가느냐의 문제였다면 전송 계층은 호스트상에 구동중인 프로세스들 중 특정 프로세스를 찾아가는 방법의 구현을 담당한다. 이때 사용되는 핵심 개념이 '포트'이고 많이 들어봤을 UDP와 TCP가 바로 전송 계층의 핵심 프로토콜이다. - Port 1. 포트는 16비트의 부호 없는 숫자로서 특정 호스트의 통신 종단점을 나타낸다. ( 프로세스를 특정하는데 쓰인다는 뜻이다 ) 2. 이론상 프로세스는 어떤 포트든 자신과 바인딩하여 사용할 수 있다. 3. 하지만 다른 두 프로세스가 같은 포트에 바인딩하게되는경우 해당 포트를 찾아온 데이터를 어느 프로세스에 전달해야하는지 난해해지는 문제가 발생하기 때문에 대부분의 운영체제에서는 같은 포트에 바인딩하려 할 때 특별한 플..

네트워크 2021.12.06