Programing
-
메쉬 관련 ID3DXBufferPrograming/DirectX 2008. 5. 23. 12:24
COM객체인 ID3DXBuffer 인터페이스는 D3DX가 연속적인 메모리 블록에 데이터를 저장하기 위해 이용하는 범용 데이터 구조체로, 다음과 같은 두개의 메서드를 가진다. GetBufferPointer 버퍼내의 데이터에 대한 포인터를 얻어온다. GetBufferSize 버퍼내의 데이터의 합계 바이트수 사이즈를 얻어온다. 이 ID3DXBuffer에는 정점, 인접성, 메트리얼에 관한 정보를 저장한다. ID3DXBuffer 인터페이스를 얻어오려면,D3DXCreateBuffer 함수를 호출한다. 또한 메모리 누출을 막기 위해 반드시 이용이 끝난 뒤에는 객체를 풀어주어야 한다.(Release) D3DXCreateBuffer HRESULT D3DXCreateBuffer( DWORD NumBytes, LPD3DXB..
-
SqlDataReader 객체 사용하기Programing/Web 2008. 5. 20. 17:23
SqlDataReader 클래스는 SqlCommand를 이용하여 SQL쿼리나 저장 프로시저를 실행한 결과를 받아오는 읽기 및 전진 전용 스트림 클래스이다. SqlDataReader rd = cmd.ExecuteReader(); 위의 예제와 같이 SqlDataReader 클래스는 SqlCommand의 ExecuteReader 메서드를 통해 값을 전달 받는다. 이는 DataSet 보다 빠른 속도를 제공해준다. 수많은 종류가 있긴 하지만 몇가지 중요한 속성 및 메서드를 소개하자면 1. 속성 1) Connection : 연결된 SqlConnection를 가져옵니다. 2) Depth : 현재 행의 중첩 수준을 나타내는 값을 가져옵니다. 3) FieldCount : 현재 행으 열수를 가져옵니다. 2. 메서드 1) ..
-
ID3DXFont 사용하여 문자 출력하기Programing/DirectX 2008. 5. 19. 16:20
다이렉트 디바이스에 문자 출력시키는 순서를 알아보자. 1. 먼저 텍스트를 그리는데 사용할수 있는 인터페이스를 만들어 보자. ID3DXFont* myfont1 = NULL; ID3DXFont는 CDI를 이용하여 약간의 성능저하는 있지만 복잡한 글꼴이나 포맷팅이 가능하다. 2. 인터페이스를 사용하여 폰트를 만들어야 한다. D3DXCreateFont() 함수는 장치와 폰트용의 폰트 개체를 만들어준다. HRESULT D3DXCreateFont( LPDIRECT3DDEVICE9 pDevice, INT Height, UINT Width, UINT Weight, UINT MipLevels, BOOL Italic, DWORD CharSet, DWORD OutputPrecision, DWORD Quality, DWORD..
-
pitch, yaw, roll 에 관해서Programing/DirectX 2008. 5. 17. 18:34
////////////////////////////////////////////////////////////////////////// // 우향 벡터기준으로 회전(피치) ////////////////////////////////////////////////////////////////////////// pitch(float angle) { D3DMATRIX T; D3DXMatrixRotationAxis(&T, &_right, angle); // _right를 기준으로 _up과 _look을 회전한다. D3DXVec3TransformCoord(&_up, &_up, &T); D3DXVec3TransformCoord(&_look, &_look, &T); } //////////////////////////////..
-
다이렉트3D 카메라에 응용되는 벡터 함수Programing/DirectX 2008. 5. 17. 16:36
1. D3DXVec3Normalize 함수 D3DXVECTOR3 *WINAPI D3DXVec3Normalize( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV ); 첫번째 인자는 결과값, 두번째 인자는 정규화하려는 벡터이다. 벡터의 정규화는 벡터의 크기를 1로 만들어 단위 벡터가 되도록 하는 것이다. 벡터의 각 성분을 벡터의 크기로 나누면 정규화가 된다. 이 D3DXVec3Normalize 를 통해 벡터를 정규화할 수 있다. 2. D3DXVec3Cross 함수 D3DXVECTOR3 *D3DXVec3Cross( D3DXVECTOR3 *pOut, CONST D3DXVECTOR3 *pV1, CONST D3DXVECTOR3 *pV2 );첫번째 인자는 결과값, 두번째 인자는 왼쪽 피연산..
-
FileUpload 컨트롤Programing/Web 2008. 5. 14. 17:30
FileUpload은 웹 2.0에서 새로 생긴 컨트롤이다. 주요 속성은 다음과 같다. FileName : 업로드할 클라이언트의 파일 이름을 가져옵니다.(파일 경로를 제외한 순수 파일이름) PostedFile : 첨부된 파일 개체를 가져옵니다. HasFile : 업로드할 파일이 있는지의 여부를 나타내는 값을 가져옵니다. 중요 메서드는 SaveAs()가 있는데 본격적으로 저장을 하는 놈입니다. 인수로는 저장할 위치를 받습니다. 이 컨트롤이 생기므로써 기존에 귀찮은 작업들이 많이 없어졌습니다.
-
Server.MapPathPrograming/Web 2008. 5. 14. 17:07
Server.MapPath 알아보기 MapPath : 물리적 경로를 리턴한다 - 파일을 다룰 때(저장,삭제등)에 서버의 물리적 주소(절대주소)를 쓰게 된다 하지만 서버의 주소는 항상 환경에 따라 변할 수 있다 그때마다 일일이 주소를 바꾸어 준다는 것은 피곤하다 따라서 이 메소드를 사용하면 홈 또는 가상디렉토리 이전의 물리적 주소는 자동으로 리턴해 주기 때문에 환경이 바뀌더라도 수정없이 사용할 수가 있다 이 메소드를 사용하면 홈 또는 가상디렉토리 이후의 상대주소만 유지하면 된다 * 가장 쓰임새가 많은 것은 홈디렉토리 경로 또는 가상디렉토리 경로이다 server.mappath(".") server.mappath("..") server.mappath("/") server.mappath("\") server.m..