programing

SDL과 OpenGL이 관련된 이유

javaba 2022. 8. 14. 16:47
반응형

SDL과 OpenGL이 관련된 이유

SDL을 만지작거리다가 SDL에서는 이미지를 회전할 수 없다는 것을 알게 되었습니다.질문하는 곳마다 OpenGL을 사용하여 회전하라고 합니다.SDL은 OpenGL과는 완전히 다른 것으로 생각하고 있었습니다만, 잘못 생각하고 있는 것입니까?SDL에서 OpenGL을 사용하기 위한 튜토리얼도 발견되어 더욱 혼란스러웠습니다.SDL과 OpenGL의 관계는 정확히 무엇입니까?OpenGL이 더 강력하고 더 많은 작업을 수행할 수 있다면 OpenGL을 사용하면 어떨까요? (제가 읽은 내용을 참고).

SDL은 OpenGL 위의 레이어입니다.실제로 Windows 상에서 GDI를 디폴트로 사용하고 DirectX 백엔드도 갖추고 있습니다.OpenGL(ahem, Linux)을 기본적으로 사용하는 플랫폼에서는 OpenGL을 사용하여 SDL의 제한을 회피할 수 있다고 하는 사람도 있을 것입니다.이는 높은 수준의 추상화에서는 SDL의 기능이 공개되지 않기 때문입니다.단, 코드가 Windows(또는 적어도 GDI 백엔드를 사용하는 Windows)로 "적게" 이식됩니다.

또한 SDL은 그래픽 외에도 오디오, 입력 등 OpenGL에는 없는 많은 작업을 수행합니다.

SDL은 일부 플랫폼에서 하드웨어 렌더링을 필요로 하는 콘텐츠의 하드웨어 렌더러로서 OpenGL을 사용합니다.이러한 플랫폼을 사용하는 경우 OpenGL은 SDL을 추상화한 기본 API입니다.

그래픽스 회전 예에 대해서: SDL 자체(CPU)보다 OpenGL(하드웨어 고속화)을 사용하는 것이 좋습니다.이는 일반적으로 구성 부하가 높기 때문입니다(특히 모든 프레임을 회전하는 비트맵이 많고 효과를 부드럽게 하고 싶은 경우).

단, 비트맵의 회전과 스케일링을 담당하는 모듈 SDL_rotozoom을 탑재한 SDL_gfx 패키지를 사용할 수 있는 것은 (이유를 제외하고) 없습니다.

츠미야SDL sd sd ★오디오, 입력 및 기타 모든 기능을 처리할 수 있을 뿐만 아니라, 사용자가 직접 구현해야 하는 많은 기능에 액세스할 수 있기 때문에 그래픽을 보다 쉽게 사용할 수 있습니다.
SDL OpenGL sd sd sd sd 。어플리케이션 내에서도 OpenGL에 액세스 할 수 있기 때문에 풀파워를 사용할 수 있습니다.
간단하게 덧붙이자면, 이런 종류의 API는 처음인 것 같기 때문에 SDL과 비슷한 API(2D 그래픽용)를 원하신다면 SFML을 보시라고 권해드릴 수 있습니다.C가 아닌 C++를 기반으로 하고 있습니다.또한 OpenGL을 기반으로 합니다. : )

SDL은 입력, 창 생성, 이미지 로딩 및 OpenGL에서 처리할 수 없는 기타 여러 기능을 처리합니다.

SDL은 오디오, 키보드, 마우스, 조이스틱 등에 대한 낮은 수준의 액세스를 제공하도록 설계된 크로스 플랫폼 멀티미디어 라이브러리입니다.OpenGL을 통해 3D 하드웨어도 지원합니다.

OpenGL은 2D3D 컴퓨터 그래픽스를 생성하는 애플리케이션을 쓰기 위한 크로스 언어 크로스 플랫폼 API를 정의하는 표준 사양입니다.인터페이스는 250개 이상의 다른 함수 호출로 구성되며, 단순 원시에서 복잡한 3차원 장면을 그리는 데 사용할 수 있습니다.OpenGL은 1992년 SGI(Silicon Graphics Inc.)에 의해 개발되었으며 CAD, 가상 현실, 과학 시각화, 정보 시각화 및 비행 시뮬레이션에서 널리 사용됩니다.Microsoft Windows 플랫폼에서 Direct3D와 경쟁하는 비디오 게임에도 사용됩니다(OpenGL vs. Direct3D 참조).

언급URL : https://stackoverflow.com/questions/5769031/why-are-sdl-and-opengl-related

반응형