All (86)
-
2018.08.14 QueryPerformanceFrequency / QueryPerformanceCounter 사용 방법
//#include #include ( 초 단위 )//clock_t before;//doubleresult; //before = clock();// 어떤 프로세스가 시작한지 얼마나 지났는지 알려주는 것 //for(int i=0; iSetting(ALT+F7) 메뉴의 LINK 텝에서 Object/library modules: 에 추가를 해주어야 합니다..*/ /*DWORDdwStartTime = timeGetTime(); for(int i=0; i 자기 시스템이 최대 어느 정도까지의 timer resolution을 지원하는지를 판별하는데 사용됩니다. // QueryPerformanceCounter()=> 현재의 카운터를 알아내는 데에 사용됩니다.// >>>예를 들어,//앞의 함수를 콜한 후, 넘겨준 파라미..
-
2018.07.13 [NGUI/펌] 해상도에 따른 이미지 사이즈 맞추기
NGUI 새로운 버젼.. 해상도가 안맞아서 해상도에 맞게 늘릴려고 만든. 코드. UIRoot 에서 기준을 1280 X 720 할때. Inspector Window 에서 설정.Scaling Style - Constrained On MobilesContent Width - 1280 Fit Check Content Height - 720 Fit Check UIRoot 스크립트 에서 변경. void Update () 에서. mTrans.localScale = new Vector3(size, size, size); < - 이코드를 float x_value = (screen.x / 1280f);float temp_value = (720f * x_value);float y_value = screen.y / temp_..
-
2018.03.21 C++ for_each 함수
C++ / for_each 함수 제공하는 반복자 사이의 모든 요소를 각각 방문하여 작업을 처리하는 함수.즉, for_each 함수의 3번째 인자로 전달받은 함수나, 객체의 오버로딩 된 ( )연산자(연산자오버로딩)에 컨테이너 요소 값을 전달하는 것을 의미 ex) ⓛ class CMyClass{public: // (당연히) 퍼블릭으로 해주어야합니다.void operator( ) ( CTestClass& test ){delete test;test = NULL;}} vector vec; // 사이 코드는 초기화 및 값이 들어가있다고 가정합니다.... for_each( vec.begin( ), vec.end( ), CMyClass( ) ); /// vec 변수에 들어가있는 begin부터 end 앞까지의 CTest..
-
2018.03.19 솔루션 외부 파일 만들어서 프로젝트에서 사용하기
대충 이런 느낌,,,, 볼더체는 프로젝트 프로젝트 외부에 공용으로 사용되는 헤더파일을 만들고 싶을 때 폴더 만들어서 사용하고싶으면... 1. 솔루션, 폴더(.sln 있는곳)에 같은 이름의 폴더 생성 (대강 이런 느낌으로) 2. 폴더 내부에 txt 확장자로 원하는 헤더파일 이름으로 생성 3. txt 확장자를 h 로 변경 >경고뜨는데 그냥 무시하고 확인(헤더파일이생성됨) 4. 폴더에서 비주얼 솔루션 아래에 있는 폴더로 만든 헤더 파일을 드래그 5. 만든 헤더 파일을 #include 해서 추가해서 사용 cf. 헤더파일 내부에서 d3d vector를 쓸거면 stdafx.h 에 있는 #include 아래에 추가해야함. cf. 다이렉트 쓰는 프로젝트 만들면 가장 먼저 해야할 일이 1) d3d 라이브러리 추가(inc..
-
2018.02.28 wsprintf 정리
원형 int wsprintf(LPTSTR lpOut, LPCSTR lpFmt, ... ); 인수 1. lpOut : 완성된 서식이 해당 변수에 담긴다. 최대 길이 1024 바이트. 2. lpFmt : 서식 문자열, 일반 문자열 사이에 %로 시작되는 서식 포함 가능 3. ... : 서식 문자열 내의 서식과 대응되는 변수. 서식의 개수만큼 변수를 제공해야함. ▶ lpFmt, ... 부분은 printf 함수와 동일하며, 해당 완성된 문자열이 lpOut 변수에 담기게 된다 리턴 성공할 경우, 버퍼로 복사된 문자 개수를 리턴해준다. 널 종료 문자는 개수에서 제외됨. 실패할 경우, 예상된 출력보다 더 작은 문자수가 리턴됨. 이 경우 GetLastError 함수로 실패 원인 파악 가능. 예제 ) TCHAR test[..
-
2018.02.23 [펌] D3DXVec3TransformNormal 과 D3DXVec3TransformCoord 차이
D3DXVec3TransformNormal 과 D3DXVec3TransformCoord 의 차이에 대해서 간단히 말씀드리도록 하겠습니다. 단순하게 말하자면 D3DXVec3TransformNormal 은 벡터를 변환하는 것이고 D3DXVec3TransformCoord 는 위치를 변환하는 것입니다. 벡터와 행렬을 곱하기 위해서는 행과 열이 같은 차수여야 한다는 것을 알고 계실 것입니다. 예를 들어서 [x, y, z] 라는 3차원 벡터가 존재하는데 D3D 에서는 4x4 행렬을 곱하게 됩니다. 이러한 벡터를 행렬과 연산을 할 때는 차수를 맞춰줘야지 곱할 수 있게 됩니다. 즉 3차 벡터를 마치 1x4 행렬 혹은 4x1 행렬인 것처럼 만들어 주어야 4x4 행렬과 곱하는 것이 가능하다는 것이죠. D3DXVec3Tra..
-
2018.01.10 [C++] 중첩 클래스 사용 이유
중첩 클래스는 class 내부에 class를 선언하는 것이다 보통, 외부 class에 내부 class를 선언하는 경우에 / 내부 class를 private 으로 정의한다. 왜냐하면, 특정 클래스 안에서만 사용하는, 또다른 클래스 자료형이 필요할 경우에 이러한 방식을 사용하기 때문이다. https://m.blog.naver.com/PostView.nhn?blogId=kks227&logNo=220179773371&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F
-
2018.01.10 문자열 코딩 - [아스키코드, 멀티바이트, 유니코드]
VS 프로젝트 속성 -> 구성속성을 보면문자 집합으로 2가지를 사용할 수 있다.1. 멀티바이트 문자 집합2. 유니코드 문자 집합 아스키 코드(SBCS) - 모든 문자 하나가 1byte를 차지하며 영어를 표현한다. 하지만 아스키 문자 코드 만으로는 한글이나 일어 등의 다른 문자를 표시할 수 없다. 멀티바이트(MBCS) - 1. 아스키 문자 코드에다가 다른문자(2byte)들을 포함한 문자 집합이다.어떤 문자는 1byte고, 어떤 문자는 2byte이다.정확히는 모르겠지만, 한 문자가 2byte를 넘는 문자도 존재할 것이다. 2. 멀티바이트 문자 집합은 특정 문자 집합마다의 코드페이지가 존재한다.예를 들어, 같은 코드 번호 일지라도 한글 코드 페이지로 해석하면 한글이 나오지만,일어 코드 페이지로 해석하면 일어가..
-
2017.12.28 [C++] variadic template
variadic template 은... 템플릿의 인자를 가변적으로 받을 수 있도록 구현하는 방식이다 참고)variable argument (다양한 인수의 표현) 이것의 심볼로는 ... 을 사용합니다. variadic template을 함수 템플릿 / 클래스 템플릿 2가지로 나누어서 간략히 설명합니다. 12345678910111213 template // template parameter packvoid Function( const Arg1& arg1, const Args&... args ) // function parameter pack{ Test( arg1 ); Function( args... );} void main(){ Function( 1, "ezreal very handsome", 1.5f )..
-
2017.12.27 [C++] 템플릿 이것저것(정리중...)
템플릿 메타 프로그래밍 일반 함수를 써서 재귀호출을 해야하는 문제를, 템플릿 클래스를 이용하면 똑같이 구현할 수 있다. ▶ 템플릿의 원래 기능이 아니라, 템플릿을 이용해서 문제를 푸는 방법 cf. 재귀 호출 방식으로 템플릿을 계속 생성하는 것은, 잘 알려진 대표 템플릿 메타 프로그래밍의 예 템플릿 메서드 패턴 부모 클래스에서 virtual이 아닌 함수 내부에서, 자식의 virtual 함수를 호출한다 자식의 virtual 함수를 호출 : 객체 생성 타입에 따라 적절한 오버라이딩 호출 템플릿 트릭 템플릿 트릭 중 하나가 템플릿 메소드 패턴을 사용하면 virtual 함수를 런타임 때 테이블로 접근해서 호출하는데 이러한 테이블을 접근하는 시간을 단축하기 위해 해결하는 static polymorphism 방법임 ..