기타 (17) 썸네일형 리스트형 [GPU] NVIDIA 드라이버 & CUDA Toolkit 설치하기 / 2023.06.15 GPU를 사용하기 위해서 필요한 것들을 설치해보자! Step 1. NVIDIA 드라이버 설치 1-1. 설치가능한 드라이버 버전 확인 ubuntu-drivers devices 1-2. 드라이버 설치 (470 선택) sudo apt install nvidia-driver-470 1-3. 재부팅 sudo reboot 1-4. 설치한 드라이버 정보 확인 nvidia-smi Step 2. CUDA Toolkit 설치하기 2-1. CUDA Toolkit 선택 https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=runfile_local.. 자바 환경변수 설정 (Windows) / 2023.06.02 자바 환경변수 설정을 해보자!!!! 1. 내 PC의 속성 클릭 2. 고급 시스템 설정 클릭 3. 고급 탭에서 환경 변수 클릭 4. 시스템 변수 편집 클릭 5. 변수 이름에 JAVA_HOME입력, 변수 값에 jdk path 입력 후 확인 클릭 6. 시스템 변수에서 변수 Path 더블클릭 7. 새로 만들기 클릭하고 %JAVA_HOME%\bin\ 입력 8. 명령 프롬프트창에서 javac, javac -version 입력 -> 아래와 같이 나오면 설정 완료 [OpenGL] 평행 투상과 원근 투상 / 2022.10.24 1. 평행 투상 - 시점이 물체로부터 무한대의 거리에 있다고 간주하여 투상선을 나란히 가져가는 방법. - 원래 물체의 평행선은 투상 후에도 평행 - 시점으로 부터의 거리와 무관하게 같은 길이의 물체는 같은 길이로 투상됨 - 평행 투상은 정사 투상, 축측 투상, 경사 투상으로 나뉨 2. 원근 투상 - 시점이 물체로부터 유한한 거리에 있다고 간주 - 투상선이 시점에서 출발하여 방사선 모양으로 퍼져감 - 실제로 카메라나 사람의 눈이 물체를 포착하는 방식 - 동일한 물체라도 시점으로부터 멀면 작게 보이고, 가까우면 크게 보인다. (원근감) 3. 예제를 통해 알아보자 #include #include #include int Width, Height; void Init() { glClearColor(1.0, 1.0,.. [OpenGL] 타이머 콜백 / 2022.10.24 * 출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 한빛아카데미 일정한 시간 간격이 지나면 발생하는 이벤트가 타이머 이벤트이며, 타이머 콜백은 이 이벤트에 대응하는 콜백 함수다. void glutTimerFunc(unsigned int msecs, void(*func)(int value), int value); - unsigned int msecs : 얼마 후에 이벤트를 발생시킬 것인지, msec 단위 - void(*func)(int value) : 타이머 이벤트 발생 시에 호출되어야 할 함수명 - int value : 이벤트 발생 시에 콜백 함수에 넘겨줄 파라미터 예제를 통해 알아보자. #include #include #include #include unsigned char PALETTE[16].. [OpenGL] 아이들 콜백 / 2022.10.23 * 출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 한빛아카데미 GLUT은 매우 짧은 시간 간격으로 이벤트 루프를 돌기 때문에 어떤 경우에는 큐에 새로운 이벤트가 아직 하나도 안 들어가 있는 때도 있다. 아이들 콜백을 정의하면 이 경우에도 콜백 함수를 만들어 필요한 일을 할 수 있다. 예제를 통해서 알아보자. #include #include #include GLfloat Delta = 0.0; void MyDisplay() { glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_POLYGON); glColor3f(0.0, 0.5, 0.8); glVertex3f(-1.0 + Delta, -0.5, 0.0); glVertex3f(0.0 + Delta, -0.5, 0.0); glV.. [OpenGL] 메뉴 콜백 / 2022.10.23 * 출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 한빛아카데미 1. 콜백 함수를 사용하여 메뉴를 만드는 방법을 알아보자. #include #include #include GLboolean IsSphere = true; void MyDisplay() { glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.5, 0.0, 0.5); if (IsSphere) // IsSphere가 true라면 glutWireSphere(0.2, 15, 15); //원구를 그림 else // false라면 glutWireTorus(0.1, 0.3, 40, 20); // 원환체를 그림 glFlush(); } void MyMainMenu(int entryID) { if (entryID == 1) Is.. [OpenGL] 마우스 콜백 / 2022.10.23 * 출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 한빛아카데미 마우스 이벤트는 마우스 버튼을 누를 때 또는 마우스가 움직일 때 발생한다. 예제를 통해서 알아보자. 1. 마우스 움직임 따라 사각형 그리기 #include #include #include // 눌러진 위치의 좌표 & 현재의 마우스 위치 좌표 // 마우스 콜백 함수와 디스플레이 콜백 함수 사이의 변수 공유를 위해 전역변수로 선언 GLint TopLeftX, TopLeftY, BottomRightX, BottomRightY; void MyDisplay() { glViewport(0, 0, 300, 300); glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.5, 0.5, 0.5); glBegin(GL_POLYGO.. [OpenGL] 리셰이프 콜백 / 2022.10.23 * 출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 한빛아카데미 리셰이프 이벤트는 1. 처음 윈도우를 열 때 2. 윈도우 위치를 옮길 때 3. 윈도우 크기를 조절할 때 발생한다 아래 코드는 원래 뷰 포트의 중심과 변경된 뷰 포트의 중심을 일치시키면서도 물체 크기와 종횡비를 그대로 유지하는 방법이다. 1. 흰색 바탕에 회색 사각형을 그리는 프로그램을 통해 설명해보자 #include #include #include void MyDisplay() { glClear(GL_COLOR_BUFFER_BIT); // 컬러 버퍼에 초기화 색을 가함 glColor3f(0.5, 0.5, 0.5); //회색 glBegin(GL_POLYGON); //사각형 glVertex3f(-0.5, -0.5, 0.0); glVert.. 이전 1 2 3 다음