전체 글

게임/웹 개발 외 다양한 주제를 다루는 블로그.
instanceof 연산자 - 캐스팅 가능여부를 확인 Ex ) if(Obj1 instanceof 권총) 발사하다(권총); else 발사하다(미사일); . . .. 열거 타입 enum Alphabet {a,b,c,d....} - C언어 방식과 동일 - Alphabet se = Alphabet.a; :: se 에 a 가 들어감. se에는 하나의 Alphabet 자료가 들어감. values 메소드 / valueOf 메소드 - values :: 열거 타입에 대해 해당 메소드를 호출하면 열서 상수들 모두가 배열에 담겨져서 리턴 됨. Ex) enum Day { MONDAY, TUESDAY. . . . . SUNDAY } Day.values(); => MONDAY, TUESDAY. . . . . SUNDAY - va..
포트로얄3 한글패치 파일을 설치했는데 영문으로 그대로 나온다면 다음과 같이 해주세요. 일단, 포트로얄을 1회이상 실행하셔야 다음 경로에 파일들이 생겨납니다. 그리고 한글패치를 하신다음.. C:\Users\Administrator\AppData\Roaming\Kalypso Media\Port Royale 3 해당 경로 안에 있는 options.cfg 파일을 워드패드로 여신다음, Language 부분을 ruru로 고칩니다. [Language] Language = ruru 다음과 같이 수정한 다음 저장 후, 창을 닫습니다. 그리고 게임을 다시 실행시켜보세요~~~!!
================================================================================================ ※ 그동안은 EYMS(http://cafe.naver.com/guidegame) 에서만 한글패치파일 배포를 했지만 앞으론 티스토리 블로그와 동시에 배포하겠습니다. 재업로드 될때마다 제목 릴리즈 변경되며, 패치로그 기록해두겠습니다. ※ 한글패치 파일 배포 시 출처는 반드시 밝혀주세요. ================================================================================================ 게임명 : 포트로얄 3 (Port Royale 3 :: Pirates & Merc..
직선 간 충돌검사시 확인해야할 사항. 1. 두 직선의 기울기 일치 여부. - 두 직선의 기울기가 같으면 평행하거나, 일치하는 경우를 뜻함. - y절편 값을 확인해서 y절편 값도 같으면, 두 직선이 일치하는 경우. y절편 값이 다르다면 평행한 경우를 뜻함. 2. 기울기가 일치하지 않는 경우, 언젠간 한점에서 만나게 되어있음. ( 하나의 해를 가짐) - y절편 값을 구한다음 선형결합법 , 치환법 을 이용하여 두 직선의 교점을 구함. 선형결합법 : 두방정식의 x 또는 y의 계수 값을 일치시켜 계산하는 방식 Ex) 3x + 5y = 9 x + 3y = 4 => 3x + 5y = 9 3x + 9y = 12 // 3을 곱해줌 => 두 방정식을 빼줌. -4y = -3 => y = 3/4 => y 값을 x + 3y =..
포트로얄3 도시 :: 번역 리스트 ======================================== Corpus Christi 코퍼스 크리스티 New Orleans 뉴올리언스 Biloxi 빌럭시 Pensacola 펜사콜라 Port St.Joe 포트 세인트 조 Tampa 탬파 Charleston 찰스턴 Fort Caroline 포트 캐롤라인 St. Augustine 세인트 오거스틴 Grand Bahama 그랜드 바하마 Nassau 나소 Andross 안드로스 Eleuthera 엘류세라 Cat Island 켓 아일랜드 Charles Towne 찰스 타운 Gibara 히바라 Turk islands 그랜드 터크 Trinidad 트리니다드 Tortuga 토르투가 Isabella 이사벨라 Santiago 산..
ㅇ 기본 구조 DWORD WINAPI ProcessClient(LPVOID arg) { // 전달된 소켓 ③ SOCKET client_sock = (SOCKET)arg; // 클라이언트 정보 얻기 ④ addrlen = sizeof(clientaddr); getpeername(client_sock, (SOCKADDR *)&clientaddr, &addrlen); // 클라이언트와 데이터 통신 ⑤ while(1){ ... } closesocket(client_sock); return 0; } * getpeername() :: 연결되어있는 상대방의 주소정보를 얻어 옴. - 받은 소켓정보를 바탕으로 생성해둔 구조체를 채워넣음.
ㅇ 스레드의 종료 - 스레드 함수가 리턴되는 경우 - 스레드 함수 내에서 ExitThread() 함수가 호출되는 경우 - TerminateThread(HANDLE ThreadHandle) 함수가 호출 되는 경우 ( 외부에서 스레드 핸들을 호출시켜 종료시킬수 있음) - 주 스레드가 종료 되는 경우 * 스레드 종료함수 void ExitThread ( DWORD dwExitCode); // 종료 코드 BOOL TerminateThread ( HANDLE hThread, DWORD dwExitCode); ( 종료할 스레드를 가리키는 핸들,종료 코드 ) • ㅇ 스레드 조작 용어 - 스레드 스케줄링(thread scheduling) 윈도우가 각 스레드에게 CPU 시간을 적절히 분배하기 위한 정책 - 우선순위 클래스..
인터페이스 - 클래스 안의 모든 메소드가 추상 메소드인 클래스. class A{ ... } class Asub implements A { ... } implements : 인터페이스를 상속받을 때 extends ::클래스를 상속받을 때 클래스 - 클래스 상속 -> 클래스의 확장(Extends) 인터페이스 - 인터페이스 상속 - > 인터페이스의 확장(Extends) 클래스 - 인터페이스 상속 -> 구현(implements). ㅇ인터페이스는 여러개의 상속이 가능함.
ㅇ용어의 정리 - 프로세스 (Process) : 메모리를 비롯한 각종 리소스를 담고 있는 정적인 개념. - 스레드 (Thead) : 실제 CPU 시간을 할당받아 수행되는 실행단위. 동적인 개념. 프로그램 실행시 생성됨. * 프로그램은 프로세스로 생성되는데, 멀티스레드로 구현한다고해서 프로세스를 여러개 생성해서 만드는것이 아님. 프로세스는 프로그램 한개당 하나 뿐!! (정적인개념이라고 설명한 이유) 스레드를 다중으로 만들어서 여러 작업을 처리하도록 구현 함. (동적인 개념.) - 주 스레드(Main Thread) : Winmain() / main() 함수에서 시작되는 스레드. * 회사에서 사장과 사원들이 있고, 사장이 없으면 회사가 망하는것처럼, 주 스레드 아래 하위 스레드들이 작업중에 주 스레드가 멈춰버..
D3DLIGHT9 dir; ::ZeroMemory(&dir, sizeof(dir)); dir.Type = D3DLIGHT_DIRECTIONAL; // 조명 종류 dir.Diffuse = d3d::WHITE; // 난반사광 색상 dir.Specular = d3d::WHITE * 0.3f; // 정반사광 색상 dir.Ambient = d3d::WHITE * 0.6f; // 환경광 색상 dir.Direction = D3DXVECTOR3(0.0f, 0.0f, -5.0f); // x축 방향에서 빛이 비춰짐. D3DXVECTOR3 pos(0.0f, 0.0f, -10.0f); // 원점 to 벡터좌표 X -> 벡터좌표 -> 원점 :: 화살표 방향을 기준 D3DXCOLOR c1 = d3d::WHITE; D3DLIGHT..
모듈리스형 대화상자 - 대화상자 작업이 끝나지 않으면 프로시저가 넘어가지 않음. 대화상자 이외의 작업 불가 모듈형 대화상자 - 대화상자를 열어두고 다른 윈도우 창에서 작업 가능 HINSTANCE - 인스턴스 핸들 :: 멀티테스킹 중 많은 윈도우를 구분하기 위한 식별번호 DialogBox(인스턴스 핸들, 리소스 주소, 윈도우 핸들 (윈도우 종속관계확인), AboutDlgProc ); ㅇ해당 다이얼로그에서 일어나는 메시지 처리해주는 함수 :: AboutDlgProc COMMAND 메시지. ( 나 눌렸다...) CALLBACK :: 콜백함수 - O.S가 호출해주는 함수 WM_INITDIALOG :: 다이얼로그 생성시 호출 == WM_CREATE :: 윈도우 생성시 호출 다이얼로그 종료 함수. EndDialog..
조명 환경광(Ambient Light) : 난반사광(Diffuse Light) : 정반사광(Specular Light) : 재질( = 머트리얼) 지정 D3DMATERIAL9 { Diffuse - 표면이 반사하는 난반사광 Ambient - 표면이 반사하는 환경광 Specular - 표면이 반사하는 정반사광 Emissive - 자체 발광 Power - 발광 정도 } 광원 - 점 광원(Point Light) 멀리 갈수록 어두워지며, 멀리갈수록 그림자가 커진다. - 방향성 광원(Directional Light) = 태양광과 비슷. 빛의 밝기는 똑같음. 각도의 영향 - 스포트 광원(Spot Light) 특정 영역에만 비춤.(스포트라이트, 손전등과 유사) 가운데 지점은 밝고 주변으로 갈수록 어두워짐. D3DLIGH..
Damien.Lee
Lee's Lab