728x90

프로그래밍 67

[Unity] Play Mode 시작 시 씬 고정하기

Unity Editor로 특정 씬을 작업하다가 플레이 모드를 시작할 때, 특정 씬부터 실행되도록 고정하고 싶을 때가 있습니다. 이럴 때 아래 스크립트 코드를 활용해서 시작 씬을 고정할 수 있습니다. #if UNITY_EDITOR using UnityEditor; using UnityEditor.SceneManagement; [InitializeOnLoadAttribute] public static class DefaultSceneLoader { static DefaultSceneLoader(){ EditorApplication.playModeStateChanged += LoadDefaultScene; } static void LoadDefaultScene(PlayModeStateChange state){..

Unity 게임 개발을 위한 Visual Studio 2022 Community 설치

개인 프로젝트용으로 Unity 2019 LTS 버전을 사용하고 있었는데, 회사에서도 최신 버전을 사용하고 있어서 개인 프로젝트 환경의 Unity 도 2020 LTS 버전으로 업데이트했습니다. 그러면서 Visual Studio 도 2022 버전으로 최신 버전을 설치해 봤습니다. 설치 기록을 남겨봅니다. ​ 아래 Microsoft 공식 사이트에서 Visual Studio 2022 설치 도구를 다운로드할 수 있습니다. https://visualstudio.microsoft.com/ko/vs/unity-tools/ Unity 게임 개발 도구 | Visual Studio 가장 강력한 Unity 개발 환경을 원하세요? Visual Studio Unity 도구를 사용하여 만들고, 디버깅하며 생산성을 향상시킵니다. 오..

[C#] Null 조건부 연산자 ?. (null conditional operators)

Null 조건부 연산자. 물음표와 마침표를 연결해 사용합니다. 영어로는 Null conditional operators. Something?.Member 이렇게 사용하는데, null 조건부 연산자는 피연산자가 null이 아닌 것으로 평가되었을 때만 멤버를 엑세스 합니다. null 조건부 요소 연산자는 아래처럼 씁니다. 마찬가지로 피연산자가 null이 아닌 것으로 평가되었을 때 요소를 엑세스 합니다. ?[] 조건부 멤버나 요소 액세스 작업의 한 체인의 작업에서 null을 반환하면 나머지 체인은 실행되지 않습니다. // null 조건부 연산자 예시 A?.B.C(); A?.B?.Do(C); A?.B?[C]; // null 조건부 연산자를 사용하지 않았을 경우 if (null != A) A.B.C(); if (..

유니티 엔진 2021.1 버전 매뉴얼에 새로 추가된 것 (게임 개발 퀵스타트 가이드)

Unity Engine 공식 도큐먼트를 둘러보다가 2021.1 버전 문서의 New in Unity 2021.1 페이지를 봤습니다. 어떤 것들이 추가됐는지를 보여주는 문서로, 2021.1 버전 문서에만 존재하는 페이지입니다. 다른 버전 문서에는 해당 버전의 새로운 내용들이 있으니까요. New in UInity 2021.1 문서에서 눈길이 가는 항목이 있었습니다. New documentation 항목 아래에 있는 두 개 항목. - 2D Game development quickstart guide (2D 게임 개발 빠른시작 가이드) - 3D Game development quickstart guide (3D 게임 개발 빠른시작 가이드) 이 두 개 항목입니다. 2D game development quicksta..

[책리뷰] 읽기 좋은 코드가 좋은 코드다 (1부, 2부 리뷰)

최근에 다시 읽어본 책. 책 제목이 명확합니다, “읽기 좋은 코드가 좋은 코드다” 크게 공감합니다. 프로그래머라면 대부분 공감할 것입니다. 좋은 코드가 왜 좋고, 나쁜 코드가 왜 나쁜지 정리한 책. 좋은 코드를 짜고싶은 분들께 추천합니다. 저자와 역자의 이력이 상당합니다. 프로그래밍의 베테랑들. 책의 신뢰를 더해줍니다, 나쁜 코드의 예를 분석하고, 그러한 코드가 왜 나쁜지, 그리고 어떻게 개선할 수 있을지 연구한 결과가 바로 이 책이라고 합니다. 이름짓기와 주석, 포맷팅, 논리, 루프 제어, 복잡성 관리, 코드 블록 정리 등등. 결과적으론 재밌고 유익하게 읽었습니다. 보통은 형상관리 툴을 쓸 테지만, 누가 이렇게 짰지? 나구나? 싶은 상황은 생각보자 자주 직면하게 됩니다. 코드는 이해하기 쉬워야 한다, ..

A Tour of C++ : 11장 컨테이너

. 11. 컨테이너 11.1 소개 컨테이너(container) = 객체를 저장하는 것이 주 목적인 클래스 ​ 11.2 vector 요소들은 메모리에 연속적으로 저장. 구현 구성 요소들. 첫 요소, 마지막 요소 다음, 할당된 공간의 마지막의 다음을 가리키는 포인터 (elem, space, last) ​ 요소 타입 값들로 초기화 vector phone_book = { {“David Hume”, 123456}, {“Karl Popper”, 234567}, {“Bertrand Arthur William Russell”, 345678} } ​ Entry 클래스에 number; return 0; } 컴파일러는 적은 구간 for 루프를 이런 식으로 구현. 반복자 p 의 요소 참조는 *p. ++p 는 다음요소. p->..

A Tour of C++ : 10장 입력과 출력

. 10. 입력과 출력 10.1 소개 입출력 스트림 (I/O Stream) 텍스트와 수치 값에 대한 Formatted / Unformatted Buffered I/O 지원. ostream / istream 타입 있는 값(‘c’, 123, (123,45)과 바이트 시퀀스 사이를 스트림 버퍼를 통해 변환. 타입 민감성 보장, 사용자 정의 타입에 맞게 확장 가능. 이러한 스트림 이용 std::string 의 입출력과 string 버퍼를 이용한 형식화, 파일 입출력 가능. ​ 모든 입출력 스트림 클래스는 소유 자원(버퍼, 파일핸들 등)을 해제하는 소멸자를 포함. ‘자원 획득이 곧 초기화’(RAII)의 한 예. ​ 10.2 출력 에서 모든 내장 타입 출력 연산 정의. 의 오른쪽 항은 어떤 입력이 허용되고 대상이 ..

A Tour of C++ : 9장 문자열과 정규 표현식

. 9. 문자열과 정규 표현식 9.1 소개 C++ 표준 라이브러리 std::string 타입. string_view 타입을 이용하면 string, char[] 상관없이 문자열 시퀀스 조작 가능. 정규표현식 제공. ​ ​ 9.2 문자열 string 타입의 활용. s1 = s1 + ‘\n’; s2 += ‘\n’; ​ string name = “Niels Stroustrup’; ​ string s = name.substr(6,10); // s = “Stroustrup”; name.replace(0, 5, “nicholas”); // name = “nicholas Stroustrup”; name[0] = toupper(name[0]); // name = “Nicholas Stroustrup”; ​ if ( na..

[책] 코딩인터뷰 퀘스천, 내용 정리 모음

. 좋은 책이고 광범위하고 어려운 책이었습니다. 가볍게 기본기 연습삼아 읽어보자 하고 시작했는데 생각보다 내용이 깊고 넓고 어려운 내용들이 많았습니다. 기본기를 잡기에도 부족함이 없어보이는 책입니다. 그도 그럴 것이, 책 초반의 저자의 말에서 이런 구절이 나옵니다. ​ "이 책의 내용은 필요한 모든 주제를 자세하게 다루고 있다" "이 책을 읽고 전부 이해했다면 면접에 도전해도 된다고 확신한다. 이 책은 대학 공학 학사, 석사 준비하는 학생들에게도 매우 유용하다" ​ 프로그래밍 관련 학사/석사 수준의 내용들을 다루고 있다고 하니, 어려워도 이상할 게 없어보입니다. 아무튼 매우 좋은 책이고 나중에 한번은 더 읽어보고 내용을 이해해보려 노력해봐야겠다는 생각도 들게 합니다. 코딩인터뷰 퀘스천"메모" 프로그래밍 ..

A Tour of C++ : 8장 라이브러리의 개요

. 8. 라이브러리의 개요 ​ 8.1 소개 string, ostream, variant, vector, map, path, unique_ptr, thread, regex, complex 등의 표준 라이브러리 타입 간략히 설명. ​ 8.2 표준 라이브러리 구성 요소 - 메모리 할당, 실행 시간 타입 정보, C 표준 라이브러리 - 국제 문자 세트 지원, 지역화, 부분 문자열 읽기 전용 뷰 등의 문자열. (9.2) - 정규 표현식 매칭 지원. (9.4) - I/O 스트림. - vector, map 등의 컨테이너, find(), sort(), merge() 등의 알고리즘 프레임워크. (STL) - 표준 수학 함수, 복소수, 산술 연산 벡터, 난수 생성기 등의 수치 계산 지원 - thread, lock 등 동시성..

728x90
반응형