우분투 스크린 세이버를 어떻게 만들고 배포 할 수 있습니까? 없으며 OpenGL 코딩에

프로그래밍 언어 환경 설정이 없으며 OpenGL 코딩에 대해 잘 알고 있습니다. OpenFrameworks 또는 Processing과 같은 것을 기본으로 사용할 수 있다면 이상적입니다.



답변

리눅스의 화면 보호기는 두 가지 주요 부분으로 구성된 매우 간단한 것입니다.

  1. 이미지를 렌더링하는 그래픽 응용 프로그램입니다.
  2. .desktop해당 응용 프로그램을 가리키는 파일.

나는 당신이 달성하고자하는 최종 결과를 확신하지 못하므로 반대로 시작하겠습니다. .desktop기존 화면 보호기 의 파일은에 /usr/share/applications/screensavers/있습니다. ubuntu_theme.desktop목표로하는 것의 예는 다음과 같습니다 .

[Desktop Entry]
Name=Floating Ubuntu
Comment=Ubuntu logo floating around the screen
Exec=floaters /usr/share/pixmaps/ubuntu-screensaver.svg
TryExec=floaters
StartupNotify=false
Terminal=false
Type=Application
Categories=GNOME;Screensaver
OnlyShowIn=GNOME

다른 이미지를 띄우고 싶다면 런처를 복제하고 /usr/share/pixmaps/ubuntu-screensaver.svg자신의 이미지로 바꿀 수 있습니다 (스케일이 훨씬 좋을수록 SVG를 사용하십시오).

완전히 사용자 정의 화면 보호기를 위해 자신의 바이너리를 작성하려면 여기에서 시작해야합니다. http://www.dis.uniroma1.it/~liberato/screensaver/

매우 간단한 X 그래픽을 사용하여 매우 간단한 작업을 수행합니다. OpenGL로 포주 할 수 있지만 기본 사항을 먼저 정리하는 것이 중요합니다.

완료되면 패키징은 전체 문제 세트이지만 매우 간단한 패키지의 경우 다음과 같이 패키지를 신속하게 실행할 수 있습니다. https://help.ubuntu.com/community/PythonRecipes/DebianPackage

그러나 이것을 많은 사람들에게 배포하는 것이 진지하다면 PPA (개인 저장소)로 시작하고 싶을 것입니다. LaunchPad의 도움말 시스템 에서 PPA, 빌드 소스 패키지, 빌드 프로세스 등에 대해 읽을 수 있습니다 .