C++ STL sort 와 stable_sort 함수 설명 및 예제 코드. 안녕하세요. 이번 글에서는 C++의 표준 라이브러리에서 가장 많이 사용되는 함수 중 하나인 "sort"에 대한 내용을 간단한 설명과 예시 코드를 이용해 작성해보려고 합니다. C++ 알고리즘: sort - 배열. C++ 알고리즘: sort - 벡터. C++ 알고리즘: stable_sort C++ 알고리즘: sort - 배열. c++에서 "sort" 함수는 표준 라이브러리의 정렬 알고리즘 중 하나로, 퀵 소트를 기반으로 하고 있습니다. [프로그래밍/알고리즘] - 정렬 알고리즘 - 퀵 정렬 [Quick Sort] 정렬 알고리즘 - 퀵 정렬 [Quick Sort] 정렬 알고리즘 - 퀵 정렬 [Quick sort] 오늘은 정렬 알고리즘 중..
Dev C++에서 C++ 11, C++ 14 사용하기. 안녕하세요. 오늘은 Dev c++에서 C++ 14까지 사용가능 하도록 설정해 보겠습니다. 현재 제가 말하는 Dev C++은 글 제일 하단에 제가 작성한 Dev C++글을 들어가시면 설치하실 수 있습니다. C++ 11이상으로 설정하는 이유. C++ 17 이상이 있지만 11/14로 설정하는 이유. Dev C++ 11/ Dev C++ 14 설정하기. C++ 11 이상으로 설정하는 이유. C++ 11 이상으로 설정하는 이유는 C++ 11 이상에서 추가된 기능을 사용할 수 있게 하기 위해서입니다. 예를 들어, auto 키워드를 사용할 수 있다는 점이 그러한 기능 중 하나입니다. auto를 사용하면 변수의 타입을 자동으로 추론해 줄 수 있으므로 코드 작성이 간..
C++ 입출력 속도 더 빠르게. 안녕하세요. 오늘은 C++ 입출력 속도를 더 빠르게 하는 방법 중 하나입니다. 코드. 간단한 설명. 주의사항. 코드 ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); 간단한 설명. ios::sync_with_stdio(false); 는 C++의 입출력 스트림과 C표준 입출력 스트림의 동기화를 해제하는 코드. 동기화를 해제함으로써 C++의 입출력 스트림이 더 빠르게 동작하게 됩니다. cin.tie(0); cout.tie(0); 는 언제까지 동기화할 것인지를 설정하는 코드. tie함수는 입력 스트림과 출력 스트림을 묶어서 동기화하는 기능을 제공합니다. '0'을 인자로 넣어 동기화를 해제하여, 입력과 출력 스트림이 별도로 동작하게 ..
C++ split() 구현. 안녕하세요. 오늘은 c++에서 split()을 지원하지 않기 때문에 split에 대해 찾아봤습니다. split() 코드. 실행 결과. Split() 코드. 코드는 아래와 같습니다. 1. code. #include using namespace std; vector split(string input,string delim){ vector result; long long pos; while((pos=input.find(delim))!=string::npos){ result.push_back(input.substr(0,pos)); input.erase(0,pos+delim.length()); } result.push_back(input); return result; } int mai..
Unity OnTrigger를 이용해 충돌체크 안녕하세요. 오늘은 유니티에서 OnTrigger를 이용해 충돌체크를 해보겠습니다. 오브젝트 구성. 결과확인. 오브젝트 구성. OnTrigger = 두 오브젝트가 물리 연산을 하지 않고 충돌하려 할때 사용됩니다. OnTriggerEnter = 오브젝트가 처음 충돌하는 순간에 호출. OnTriggerStay = 오브젝트가 충돌하고 있는동안 매 프레임마다 호출. OnTriggerExit = 오브젝트가 충돌에서 벗어났을 때 호출. *조건. # 두 오브젝트가 모두 Collider를 가지고 있어야 함. # 두 오브젝트 중 하나의 오브젝트가 RigidBody구성요소를 가지고 있어야 함. # 두 오브젝트 중 하나가 Collider의 Trigger가 활성화 되어있어야 함. ..
Unity Image를 이용해 HP 만들기. 안녕하세요. 이번에는 Image를 이용해 HP를 만드는 방법입니다. HP나 스킬의 쿨타임 등을 표시할때 유용합니다. 이 글은 이전에 작성한 Slider를 이용한 방법과 비슷하고 다른점이라면 이미지를 이용한 것입니다. UI구성. 실행결과. *이전글은 이 글의 하단을 보면 확인할 수 있습니다. UI구성. 이전글과 거의 동일한 글이므로 Image부분만 간단하게 작성하겠습니다. 캔버스에 아래 사진처럼 생긴 UI Image를 생성해주었습니다. Image-> Source Image를 선택하고 Image Type을 Filled로 선택합니다. HP처럼 보이기 위해 Fill Method는 Horizontal로 선택하고 빨간색을 선택합니다. 아래 화살표를 표시해놓은 것처럼 보입..
유니티 슬라이더를 이용해 HP UI구현. 안녕하세요. 오늘은 유니티에서 슬라이더 UI오브젝트를 이용해 간단한 HP를 만들어보겠습니다. UI구성. 실행결과. UI구현. 캔버스를 만들고 슬라이더 UI를 추가해주겠습니다. 아래 사진에 있는 슬라이더 UI는 SimplePixelUI를 이용했습니다. 여기서 Handle Slider Area는 Hp UI에 필요없기 때문에 제거합니다. (그냥 손잡이입니다.) 배경색(Background Color)을 선택합니다. 저는 그냥 기본으로 되어있는 흰색으로 선택했습니다. 채워졌을때(Fill Color)의 색상을 선택합니다. 제목에 HP UI라고 작성했으니 빨간색으로 선택해주겠습니다. 원래 간단한 것이기 때문에 코드는 그냥 짧게 작성했습니다. 그냥 어떤 변수(0-1까지의 범위를..
유니티 DontDestroyOnLoad 오브젝트 유지하기. 안녕하세요. 오늘은 씬이 바뀌어도 오브젝트가 파괴되지 않도록 해주는 DontDestroyOnLoad를 사용해보겠습니다. 유니티에서 DontDestroyOnLoad 적용 오브젝트 생성. 유니티에서 확인해보기. 유니티에서 DontDestroyOnLoad 적용 오브젝트 생성. 먼저 Scene이 바뀌어도 오브젝트가 존재하는 것을 확인하기 위해 씬을 두개 만들어줍니다. 두개의 씬중에 1번 씬에 Cube sprite를 두개 만들어주겠습니다. 이제 씬을 바꾸는 함수를 작성하겠습니다. 이 함수를 사용해 씬을 불러오면 아직 아무것도 하지 않았기 때문에 아직은 오브젝트가 삭제됩니다. using UnityEngine.SceneManagement; /// /// 씬 ..
Unity 게임종료 버튼 만들기. 안녕하세요. 오늘은 유니티에서 게임종료 버튼을 구현해보겠습니다. 코드는 한줄로 아주 간단하게 구현할 수 있습니다. 게임종료 버튼 만들기. 게임 종료 코드. 게임종료 버튼 만들기. 저는 itch.io에서 가져온 Simple pixel UI Resouce를 이용해 아래와 같은 메뉴 버튼을 구성했습니다. 게임 종료 코드. 게임종료 코드는 한줄로 가능합니다. public void GameExit(){ Application.Quit(); } 하지만 이 코드는 빌드해서 응용프로그램으로 실행하거나, 모바일에서 실행하면 잘 작동하지만 우리가 테스트할때(유니티 에디터에서)는 작동하지 않을것입니다. 그래서 전처리기 지시어를 이용해 unity Editor상에서는 다른 코드가 실행되도록 바꿔..
유니티 라이트 맵 베이크 -2 안녕하세요. 오늘은 유니티에서 라이트맵 베이크를 해보려고 합니다. Bake(베이크)= 미리 연산되어 저장된 라이트로 런타임에서 동적으로 움직이는 물체에는 적용할 수 없음. 유니티 라이트와 그림자(이전글). 라이트맵 Bake를 사용하는 이유. 라이트맵 Bake. 유니티 라이트와 그림자(이전글). 라이트와 그림자에 대해 간단하게 만져본 글은 아래를 보시면 됩니다. [프로그래밍/유니티] - 유니티 라이트 그림자 -1 유니티 라이트 그림자 -1 유니티 라이트 그림자 안녕하세요. 오늘은 유니티 유니티에서 기본적으로 제공해주는 라이트와 그림자에 대한 내용입니다. 내용은 그냥 제가 필요해서 이것저것 오브젝트랑 라이트 만져본 것 intunknown.tistory.com 라이트맵 Bake를..
유니티 라이트 그림자 안녕하세요. 오늘은 유니티 유니티에서 기본적으로 제공해주는 라이트와 그림자에 대한 내용입니다. 내용은 그냥 제가 필요해서 이것저것 오브젝트랑 라이트 만져본 것을 적을 생각입니다. 이번 글에서는 거의 realtime조명들을 중심으로 사용하여 간단한 기능들을 사용하고 작성할 예정입니다. 라이트 오브젝트의 종류. light culling mask. 오브젝트의 mesh renderer. 라이트 오브젝트의 종류. 1. Directional Light. 범위와 위치에 상관없이 일정한 빛. 각도를 가지고 있어서 각도조절을 통해 그림자를 다르게 할 수 있음. 2. Point Light. 빛이 중심을 기준으로 주변으로 일정 범위만큼 퍼져나가는 조명. 3. Spot Light. 손전등으로 써먹을 수 ..
우분투 리눅스 노트북 덮개. 안녕하세요. 오늘은 리눅스 노트북에서 덮개를 덮어도 전원이 꺼지거나 절전모드가 되지 않도록 설정해보겠습니다. 방법. 방법. 방법은 간단합니다. 터미널에 아래 명령어를 입력합니다. sudo vi /etc/systemd/logind.conf vi에디터가 마음에 들지 않는다면 다른 에디터를 이용해서 들어가도 됩니다. 비밀번호 입력하고 들어가면 아래같은 문자들이 보일겁니다. 이중에서 #HandleLidSwitch=suspend 를 찾아주세요. # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Less..