목록분류 전체보기 (116)
Game Tech Blog
[ Boxing ] - Boxing 은 값 -> Object 로 값을 변경하는 것을 의미한다. 쉽게말해 값이라는 데이터를 오브젝트라는 상자에 넣는 것으로 비유될 수 있다. - Boxing은 기본적으로 암시적 캐스팅을 지원한다. (명시적 캐스팅도 지원한다.) [ Unboxing ] - Unboxing 은 Object -> 값으로 변경하는 작업을 의미한다. 이것또한, 상자라는 주소성 데이터 안에 있는 값을 꺼내는 것으로 비유될 수 있다. 먼저, 이들을 이해하기 위해서는 Data Type 저장 방식을 알아야하는데, 값 타입과 참조 타입이 있다. 값 타입은 스택에 저장되며, 종류는 정수, 실수, 문자열, 구조체 등 정해진 크기를 가진 내장형 변수들과 열거형, Object 들이 있다. 참조 타입은 힙에 저장되며,..
- Trouble Case -> 담당하고 있는 채팅 UI 에서 문제가 발생했다. -> 메모리 이득 때문에 SuperScroll 을 사용하고 있는데, Slot의 크기에 따른 정렬이 원활히 되지 않는다는 점이다. 말풍선 제작에 참고한 블로그 https://euliciel.tistory.com/3 [Unity] UGUI로 말풍선 만들기 1. 말풍선 이미지 준비 말풍선을 만들기 위해 준비한 이미지를 Sprite Editor로 수정해 주어야 한다. 초록 라인으로 말풍선이 커졌을 때 늘어날 부분을 잡아준다. 안드로이드의 나인패치와 같은 원 euliciel.tistory.com 많은 사람들이 말풍선 제작할 때, 참고하는 블로그다. 좋은 자료이긴하지만, Superscroll 을 쓸때, 여러가지 제한점이 존재하는것 같다..
... 썼던거 날려먹었다.. 짧게 다시 써야지.. [ 찾아본 이유? ] - 프로젝트 진행중에 Enum 에 대한 타입비교가 필요했는데, 주어진 데이터가 String , Enum 데이터 하나씩이어서 비교할 수 있는 방법을 찾아보다가 알게됌.. [ 결론 ] 선언한 열거자에 .ToString() 함수가 있으니 그것을 쓰시라 [ 사용 방법 ] 사용 방법은 간단하다. public Enum EnumTest { None, TypeA, TypeB, TypeC, End } Public bool StringMatch(EnumTest tEnum, String StrMatch) { if(tEnum == StrMatch) return true; return false; } public void Main() { String Str..
스마트 포인터(Smart Pointer)란? - 대표적인 Unmanaged 언어인 C++은 메모리에 대해 직접 관리해 할당에 대한 누수를 처리해주어야 한다. 할당한 메모리를 Release 시켜주지 않을 경우, Memory Leak 이 쌓이게 되며 램에 한공간에 축적되어 시스템 저하를 발생시킨다. 쉽게말해, 프로그램의 안전성을 보장하기 위해 스마트 포인터를 사용하며, 포인터 처럼 동작하는 클래스 템플릿으로, 사용이 끝난 메모리를 자동으로 해제해준다. 동작 원리 - 기본 포인터가 실제 메모리를 가리키도록 초기화, 이후 스마트포인터에 대입하여 사용. 충분한 사용 후 소멸시 delete 키워드를 사용해 메모리 해제, new 키워드가 반환하는 주소를 스마트 포인터에 대입 시 메모리를 해제할 필요가 없어진다. 사용..
이 두 데이터의 형식은 아래의 참고문헌들을 참고하여, 작성한다. 다만, 내가 가진 CS 지식의 깊이로 인해 잘못된 해석이 있을 수 있다. * 일단 왜 찾아보았는가? - 현재 진행하고 있는 프로젝트에서 Data Parsing을 xml 파일로 하고 있고, 파싱을 기준으로 보면 JSON 이나 Binary 로 관리되는 BSON 이 강력하다는 이야기를 들은 기억이있어, ToyProject 의 Data Loading Time을 줄일 수 있는가에 대한 의문이 들어 찾아보게 되었다. [ 총평 ] - 참고문헌을 보고 총평을 먼저 제시하자면, 일단 둘은 크게 비슷한 영역이 있겠지만 완전히 동등한 입장은 아닌것 같다. 자료를 보면 많은 개발자가 XML 이 JSON을 대체했어! JSON은 뛰어나! 라고 이야기하나보다. (번역..
보호되어 있는 글입니다.
c# 프로젝트 기반 데이터 Parse 방법 - xml 데이터 준비 - 데이터 파싱 방법 xml 데이터 준비는 복잡하지않게 노드, 속성있는것으로만 구성 - 파싱 데이터 ( 파일명 : test.xml ) Element_One Element_Two - 소스 코드 using System; using System.Xml; namespace sdfsdf // 프로젝트 명, { class Program { static void Main(string[] args) { XmlDocument xDoc = new XmlDocument(); //xml Doc 생성 try { xDoc.Load("Data/test.xml"); } catch (XmlException) { Console.WriteLine("XmlLoad Fail"..
Unity VSCode에서 오류가 날 때: CS0246 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요. (tistory.com) Unity VSCode에서 오류가 날 때: CS0246 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 이번 글은 아래의 Unity Answer에 있는 답변글을 참조하였습니다. VS Code does not find some classes. cs0246/cs0103 - Unity Answers VS Code does not find some classes. cs0246/cs0103 - Unity Answers answ.. dev-nicitis.tistory.com 유니티 - 스크립트 에디터에서 코드..