Main Content

로우 레벨 그래픽스 문제 해결

시스템에서 그래픽스를 생성할 때 MATLAB®에서 로우 레벨 문제가 발생할 수 있습니다. 예를 들어, 막대 차트에 막대 모서리가 보이지 않거나, 줄기 플롯에 줄기가 보이지 않거나, 그래픽스 하드웨어에 메모리가 부족할 수도 있습니다. 2차원 또는 3차원 차트를 만들거나, Scope가 포함된 Simulink® 모델을 사용하거나, MathWorks® 툴박스의 UI를 사용하다 이러한 문제가 생길 수 있습니다. 이러한 문제의 원인은 종종 구형 그래픽스 하드웨어나 오래된 그래픽스 드라이버에 있습니다. 해결하려면 여기에 설명된 조치를 취해 보십시오.

그래픽스 하드웨어 드라이버 업그레이드

그래픽스 하드웨어 공급업체는 하드웨어 성능을 향상시키는 업데이트된 그래픽스 드라이버를 자주 제공합니다. 그래픽스 하드웨어가 MATLAB에서 제대로 작동하도록 그래픽스 드라이버를 최신 버전으로 업그레이드하십시오.

  • Windows® 시스템에서는 Lenovo®, HP®, Dell® 등의 제조업체 웹 사이트에서 드라이버 업데이트가 있는지 확인하십시오. 제공되는 업데이트가 없으면 AMD, NVIDIA, Intel 등의 그래픽스 하드웨어 공급업체 웹 사이트를 확인하십시오.

  • Linux® 시스템에서는 오픈 소스 대체 드라이버 대신 전용 공급업체 드라이버를 사용하십시오.

  • Macintosh 시스템에서는 그래픽스 드라이버가 운영 체제에 포함되어 있습니다. 제공되는 최신 업데이트를 사용하십시오.

OpenGL® 2.1 이상의 하드웨어 가속 구현을 지원하는 그래픽스 하드웨어를 사용하십시오. 2006년 이후 출시된 대부분의 그래픽스 하드웨어는 OpenGL 2.1 이상을 지원합니다. 이전 버전의 OpenGL을 사용할 경우에도 대부분의 그래픽스 기능은 동작하지만, 일부 고급 그래픽스 기능은 사용할 수 없습니다. 최상의 성능을 구현하려면 OpenGL 4.0 이상을 사용하는 것이 좋습니다. 그래픽스 하드웨어 확인에 대한 자세한 내용은 rendererinfo를 참조하십시오.

사용자 시스템에 맞는 렌더러 구현 선택하기

MATLAB은 그래픽스 렌더러의 하드웨어 가속 구현, 기본 하드웨어 가속 구현 또는 소프트웨어 구현을 사용하여 그래픽스를 표시합니다. 기본적으로 그래픽스 하드웨어가 하드웨어 가속 구현을 지원하는 경우 MATLAB은 이를 사용하려고 시도합니다. 소프트웨어 구현이나 기본 하드웨어 가속 구현으로 전환하여 여러 그래픽스 문제를 해결할 수 있습니다. 이런 대안적인 구현 방식은 고급 그래픽스 기능을 지원하지 않습니다.

경우에 따라 MATLAB은 자동으로 소프트웨어 구현으로 전환합니다. 예를 들어, 다음과 같은 경우에 해당합니다.

  • 필요한 그래픽스 하드웨어가 시스템에 없는 경우.

  • 알려진 문제가 있는 그래픽스 드라이버, 이전 그래픽스 드라이버, 그래픽스 가상화 중 하나를 사용하고 있는 경우. 그래픽스 드라이버를 제공되는 최신 버전으로 업데이트하십시오.

  • 그래픽스 문제로 인해 이전 MATLAB 세션이 예기치 않게 종료된 경우. 이전 세션이 소프트웨어 OpenGL을 사용했는데 예기치 않게 종료된 경우 후속 세션에서는 기능이 더 적고 보다 안정적인 소프트웨어 OpenGL 버전을 사용합니다.

Windows 시스템에서 원격 데스크탑을 사용할 때 하드웨어 가속 그래픽스의 가용 여부는 경우에 따라 달라집니다. 하드웨어 가속 그래픽스가 지원되지 않을 때 이를 사용하려고 하면 MATLAB이 경고 메시지를 반환하고 소프트웨어 OpenGL을 대신 사용합니다. 그래픽스 드라이버를 최신 버전으로 업데이트하여 하드웨어 가속 그래픽스를 지원하는 방법도 사용할 수 있습니다.

MATLAB이 사용 중인 구현을 확인하려면 rendererinfo 함수를 호출하십시오. 예를 들어, 다음 명령은 현재 좌표축에 대한 정보를 가져와서 info라는 구조체에 저장합니다.

info = rendererinfo(gca)
또한 이 구조체는 GraphicsRenderer 필드에 그래픽스 렌더러의 이름을 제공합니다. 예를 들어, MATLAB이 하드웨어 가속 OpenGL을 사용하는 경우 이 필드는 'OpenGL Hardware'를 반환합니다. 소프트웨어 OpenGL을 사용하는 경우 이 필드는 'OpenGL Software'를 반환합니다.

현재 세션에 대한 OpenGL 구현 방식 지정

현재 MATLAB 세션에 대해 OpenGL 구현을 지정하려면 다음 방법 중 하나를 사용하십시오.

  • 소프트웨어 OpenGL — matlab -softwareopengl 명령을 사용하여 MATLAB을 시스템의 명령 프롬프트에서 시작합니다. 이 명령은 Windows 및 Linux 시스템에서만 작동합니다. Macintosh 시스템은 소프트웨어 OpenGL을 지원하지 않습니다.

  • 기본 하드웨어 가속 OpenGL — MATLAB 명령 프롬프트에 opengl hardwarebasic을 입력합니다.

  • 하드웨어 가속 OpenGL — MATLAB 명령 프롬프트에 opengl hardware를 입력합니다.

이후 세션에 대한 OpenGL 구현 방식 지정

MATLAB이 지정된 OpenGL 구현 방식으로 항상 시작되도록 기본 설정을 설정하려면 다음 기법 중 하나를 사용하십시오.

  • 소프트웨어 OpenGL — MATLAB 명령 프롬프트에 opengl('save','software')를 입력합니다. 그런 다음, MATLAB을 다시 시작하십시오.

  • 기본 하드웨어 가속 OpenGL — MATLAB 명령 프롬프트에 opengl('save','hardwarebasic')을 입력합니다. 그런 다음, MATLAB을 다시 시작하십시오.

  • 하드웨어 가속 OpenGL — MATLAB 명령 프롬프트에 opengl('save','hardware')를 입력합니다. 그런 다음, MATLAB을 다시 시작하십시오.

  • 기본 설정 실행 취소 — MATLAB 명령줄에서 opengl('save','none')을 실행합니다. 그런 다음, MATLAB을 다시 시작하십시오.

메모리 부족 문제 해결하기

그래픽스 메모리가 제한적인 그래픽스 하드웨어를 사용할 경우 성능이 저하되거나 메모리 부족 문제가 발생할 수 있습니다. 다음과 같이 변경해 성능을 향상시키고 메모리 문제를 해결할 수 있습니다.

  • 더 작은 Figure 창을 사용합니다.

  • Figure의 GraphicsSmoothing 속성을 'off'로 설정하여 안티에일리어싱을 비활성화합니다.

  • 투명 효과를 사용하지 마십시오.

  • 소프트웨어 OpenGL을 사용합니다.

기술 지원 문의

여기에 설명된 조치를 취했는데도 문제를 해결할 수 없으면 MATLAB의 버그일 수도 있습니다. MathWorks 기술 지원에 문의한 후 다음 정보를 제공하십시오.

  • info = rendererinfo(gca)가 반환한 출력값.

  • 소프트웨어 OpenGL을 사용할 때 오류 없이 코드가 실행되는지 여부.

  • 다른 컴퓨터에서 오류 없이 코드가 실행되는지 여부. 코드를 테스트한 모든 컴퓨터에 대한 rendererinfo의 출력값을 제공하십시오.

  • 일부 오류 메시지에는 발생한 그래픽스 오류에 대한 세부 정보가 포함된 파일의 링크가 포함되어 있습니다. 파일의 링크가 제공된 경우에는 서비스 요청에 이 파일을 포함시키십시오.

https://www.mathworks.com/support/contact_us에서 서비스 요청을 생성하십시오.

참고 항목

|

관련 항목