목록전체 글 (104)
승쨩개발공부
프로퍼티(property)는 일부 객체 지향 프로그래밍 언어에서 필드(데이터 멤버)와 메소드 간 기능의 중간인 클래스 멤버의 특수한 유형이다. 프로퍼티의 읽기와 쓰기는 일반적으로 게터(getter)와 세터(setter) 메소드 호출로 변환된다. 선언은 Get Set함수와 다를것이없지만 Set함수는 외부 인자를 받아야하고 프로퍼티는 자료형을 설정한대로 Get Set도 같은 자료형으로 받게되고 외부 값을 value로 설정해놓으면 넣은값이 들어가게된다. 사용법 아직까진 c++ 문법이 너무 익숙해서 Get,Set이 더 편하게 느껴지지만 분명 쓰기 편할태니 자주 이용해봐야겠다.
개발기간 1달 4인 팀 PortFolio C++,DX9
랜더링 기본 단위 3D 랜더링에는 기본 단위가 있는데, 정식 명칭은 Primitive Type 이다. Primitive Type 에는 (Point List), (Line List), (Line Strip), (Triangle List), (Triangle Strip), (Triangle Fan) 이렇게 6가지가 있다. Point List Point List는 정점들만 찍는 랜더링이다. 정점은 3D 공간 좌표이지만 지금은 Z값이 일정해서 깊이 차이는 없다. Line List Line List는 정점 2개 단위로 이어서 랜더링 하는 것이다. 시작점과 끝점이 존재하므로 선분을 만들게 된다. API LineTo 함수와 유사. 정점 2개가 짝을 이룬다는개 핵심. Line Strip Line Strip은 정점을 계..
프레임 버퍼 그래픽 카드 VRAM에는 Frame Buffer라는 영역이 존재한다. Frame Buffer는 전면 버퍼(Front Buffer) 후면 버퍼(Back Buffer)가 존재한다. 그래픽 카드가 없다면 DirectX가 내부적으로 생성해서 사용한다. 전면 버퍼와 후면 버퍼가 서로 계속 교환되며 화면의 출력된다 후면 버퍼는 색상 버퍼, 깊이 버퍼, 스텐실 버퍼로 분류되는데 일반적으로 깊이 스텐실 버퍼는 하나로 묶어서 사용한다. 깊이 버퍼에 24비트, 스텐실 버퍼에 8비트를 주고 합해서 32비트를 사용한다. 물론 깊이 버퍼만 사용하는 것도 가능하다. 수직 동기화 수직 동기화가 뭐냐면 그래픽 카드의 렌더링 갱신 속도를 모니터의 출력 갱신 속도에 맞춘다는 의미이다. 더블 버퍼링이 모니터의 깜빡임을 방지하..
프로그램의 실행과정 실행파일의 생성 과정 전처리기 -> 컴파일러 -> 어셈블러 -> 링커 1. 전처리기의 치환 작업 전처리기는 '#include' , '#define' 과 같이 '#'으로 시작하는 지시자의 지시에 따라서 소스코드를 적절히 변경하는 작업을 한다. 2. 컴파일러에 의한 번역 전처리기에 의해 변경된 소스코드는 여전히 C언어로 구성되어 있다. 이 소스코드는 컴파일러에 의해서 어셈블리 코드로 번역된다. 3. 어셈블러에 의한 바이너리 코드 생성 바이너리 코드는 1과 0으로만 구성되는 코드이다. 컴파일러에 의해 번역된 어셈블리 코드는 컴퓨터에 의해 실행되기 앞서서 바이너리 코드로 번역 되어야 한다. 컴퓨터는 1과 0만 이해하기 떄문이다. 이처럼 CPU가 이해할 수 있는 바이너리 코드로 바꾸어 주는 프..