728x90
CSV를 이용해서 엑셀 파일을 불러오자 불러올 데이터 엑셀 파일을 저장해서 [Assets > Resources ] 폴더 안에 넣어준다. 이제 엑셀 데이터 파일을 분석해서 원하는 형태로 다시 만들어주기 위해서 다음 코드를 이용해서 파싱을 해준다. 1. CSV파일을 불러오기 1) 내부에서 파일 불러오기 using System.Collections; using System.Collections.Generic; using UnityEngine; using System; using System.Text.RegularExpressions; using System.IO; public class CSVReader : MonoBehaviour { static string SPLIT_RE = @","; static str..
이벤트(Event)란 무엇인가? Events는 이벤트를 '발생 시키는 쪽'과 이벤트에 대해 '반응하는 쪽'으로 되어 있다. 예를들어서 한개의 채널이 있을 경우 이 채널에 존재하는 구독자들이 있다고 생각했을 때, 채널 주인이 글을 올렸을 때 구독자들에게는 채널장(이벤트 게재자)이 글을 올렸다고 알림이 가는 것 처럼 알려주는 것을 이벤트라고 생각하면 된다. 이벤트 게재자(Publisher)가 글을 올렸는데 구독이 되어있어어지 게시글을 확인 할 수 있다면 구독자(Subscribers)가 없을 경우 글에 대한 반응(처리)를 할 수 없을 것이다. 그리고 게재자와 구독자가 1명이라도 있을 경우 Publisher가 글을 올렸을 때 Subscriber 에게 게재가가 글을 올렸다는 알림을 보내주는 과정(처리)를 [이벤트..
유니티에서 특정 코드를 반복적으로 실행하기 위해서 Update문에 코드를 작성하여 반복적으로 불러오기 위해서 사용한다. 코루틴도 Update와 마찬가지로 특정 코드를 반복적으로 실행하기 위해서 사용하는데 코루틴과 Update의 차이점은 Update에 작성된 코드는 매 프레임마다 계속 반복적으로 실행되어 효율적이지 않을 수 있다. 그런 경우 코루틴을 사용해서 자신이 필요한 순간에만 반복하고 필요하지 않은 경우에는 멈출 수 있는 코루틴을 효과적으로 많이 사용한다. 코루틴을 사용하기 위해서는 IEnumerator 라는 반환형을 사용해 주어야하고 마지막에는 yield return 반환 값을 작성해 주어야 합니다. * yield return을 넣어주지 않으면 코드상에 에러가 발생하는 것을 확인 할 수있습니다. *..
인스펙터 안에서 텍스트 Color값 변경하기 스크립트를 이용해서 UI Text의 색상을 변경하기 위해서는 인스펙터창 안에서 를 넣어서 다음과 같이 텍스트 색상을 변경 할 수도 있으나 해당 글은 스크립트를 사용해서 버튼을 눌렀을 때 원하는 색상으로 바꾸는 방법을 알려드리려고 합니다. 일단 새로운 스크립트를 하나 만들어서 버튼을 눌렀을 때 색상이 변해야 하기 때문에 그에 맞는 스크립트를 작성해 줍니다. Hex code를 이용해서 RGBA color값 변경하기 아래의 사이트에서 원하는 색상의 Hex code를 찾아서 newColor_code의 string에 적어주시고 버튼안에 적용해주면 됩니다. public Text btn_txt; Color newColor; string newColor_code; publi..
LineRenderer를 이용해서 선 긋기 스크립트를 짜기 전에 먼저 빈 게임 오브젝트를 하나 만들어서 빈 오브젝트 안에 LineRenderer 와 Edge Collider 컴포넌트를 넣어줍니다. 그리고 Material을 새로 하나 생성해서 Line Renderer의 Materials에 넣어주세요. 그런 다음 빈 오브젝트를 프리팹화 시켜주시면 됩니다. 스크립트 생성하기 프리팹까지 해주었으면 이 프리팹을 생성해서 클릭할때마다 Line을 그려주어서 그림을 그려주는 형식이기 때문에 스크립트를 하나 생성해서 다음 코드를 입력해주세요. //그림 그리는 함수 public void DrawLine_Start() { StopCoroutine(_DrawLine_Start()); StartCoroutine(_DrawLin..
DateTime 구조체는 날짜와 시간을 표시하기 위해서 사용합니다. DateTime을 사용하기 위해서는 [ using System; ]을 선언 해주어야 합니다 . DateTime 요소(예: 연도, 월, 일 또는 틱 수) //생성자를 사용하여 특정 날짜를 만듬 var date1 = new DateTime(2008, 5, 1, 8, 30, 52); Console.WriteLine(date1); //현재 날짜를 가져옴 xxxx년 xx월 xx일 DateTime currentDate = DateTime.Now; string currentDate_str = currentDate.ToString("yyyy-MM-dd"); DateTime.Date 속성 동일한 날짜를 갖고 시간 값이 12:00:00 자정(00:00:0..
요즘에는 구글 콘솔에서 앱을 출시하기 위해서는 apk를 뽑아서 업로드 하는 것이 아니라 .aab파일로 뽑아야지 업로드가 가능하다. abb파일을 뽑기위해서는 google-play-plugins-1.7.0.unitypackage 가 필요하다고 한다 https://github.com/google/play-unity-plugins/releases Releases · google/play-unity-plugins The Google Play Plugins for Unity provide C# APIs for accessing various Play services - google/play-unity-plugins github.com 위 사이트에 들어가면 해당 패키지를 다운받을 수 있다. 패키지를 다운받고 나면 이..
비속어 리스트(.txt)파일을 이용해 비속어 필터 만들기 새로운 유니티 프로젝트를 생성하여 다음과 같이 비속어가 들어가 있는 텍스트파일을 프로젝트 안에 넣어줍니다. 버튼을 클릭 했을 때 string path = Application.dataPath + @"\fword_list.txt"; 비속어가 들어가 있는 텍스트파일의 위치를 string path 안에 넣어주고 string[] textValue = System.IO.File.ReadAllLines(path); ReadAllLines을 사용하여 텍스트 파일의 텍스트를 String 배열안에 넣어준다. 비속어 리스트안에 있는것과 입력을 받은 텍스트를 비교해서 리스트에 해당하는 언어가 있는 경우 [사용 할 수 없음]을 표시하고 해당하는 언어가 없는 경우 [사용..
유니티로 화면 캡쳐하기 유니티 화면 간단 캡쳐 도구 패키지를 다운 받으면 다음 처럼 창이 생깁니다. 클릭하면 스크린 샷을 사용할 수있는 속성창이 나옵니다. 캡처를 원하는 카메라를 컴포넌트에 넣어주고 캡처 버튼 눌러주면 끝! 저장된 스크린샷은 Asset/ScreenShot에 저장됩니다. 출처, https://twitter.com/_Curiss/status/1428319187387121668
안드로이드 10에서 비디오 영상 재생 안되는 경우, 기종: 디클태블릿 현재 유니티 버전 : 2019.4.26 다음과 같이 작성해주면 된다하는데... 제대로 되지않고 있음 .... public VideoPlayer video; void Start() { video.url=Application.streamingAssetsPath+"/[파일이름].mp4" } 출처 : https://validming99.tistory.com/94 저는 RawImage에 비디오를 재생시키는 형식으로 사용하고있는데... url형식으로 바꿨을 경우에 비디오가 끝나는 구간을 찾지못해서 해매고 있음... 다음과 같이 비디오 플레이어를 직접 선언해주면 해결된다는데..... 작성은 해보았으나.. 원하는 구현과 의도가 달라서 사용 못해봄 [..