Godot Engine 웹 사이트 소스 코드에 오신 것을 환영합니다. 이것은 Jekyll을 사용하여 오프라인으로 생성 된 정적 웹 사이트입니다.
기부금은 항상 환영합니다! Godot의 웹 사이트는 Godot 엔진과 마찬가지로 오픈 소스입니다.
그러나 웹 사이트에 기여할 때는 Godot 조직과 공동체의 공개 얼굴 역할을한다는 점을 명심해야합니다. 따라서 상당한 변화에 대해 미리 논의해야합니다. 엔진 기능과 마찬가지로 공식적인 Godot 개선 제안을 열 필요는 없지만이 저장소에 문제를 시작하거나 Godot 기고자 채팅에 대한 토론에 참여하는 것이 좋습니다.
새로운 기능을 수행 할 때이 웹 사이트는 상록 브라우저 만 지원합니다.
인터넷 익스플로러는 지원되지 않습니다.
로컬로 웹 사이트를 구축하려면 다음을 수행하십시오.
rbenv 사용하여 특정 버전의 Ruby가 있어야합니다.sudo apt install rubenvrbenv 설치하십시오.bashrc (또는 .bash_profile )에 추가하려면 echo 'eval "$(rbenv init -)"' >> ~/.bashrc 실행하십시오.rbenv 설정 :rbenv install 3.1.2rbenv global 3.1.2minify 사용할 수 있는지 확인하십시오.bundle install .bundle exec jekyll build .--config _config.yml,_config.development.yml 사용하여 빌드와 함께 개발 구성을 사용하십시오. 간단하게하기 위해이 두 명령은이 저장소에서 build.sh 스크립트로도 사용할 수 있습니다.
또는 Jekyll의 공식 Docker 컨테이너를 사용할 수도 있습니다. 이 컨테이너는 빌드를 수행하도록 한 번 실행되도록 설계되었으므로 Docker 설정에 빌드를 작성하고 영구적으로 저장할 필요가 없습니다. Linux에있는 경우 다음 명령을 실행하십시오.
docker run --rm --volume= " $PWD :/srv/jekyll " -it jekyll/jekyll:stable ./build.sh Windows에서 ( CMD.exe 에서) :
docker run --rm --volume= " %CD%:/srv/jekyll " -it jekyll/jekyll:stable ./build.sh건물은 마무리하는 데 몇 분이 걸릴 수 있습니다.
이것은 정적 웹 사이트이므로 원하는 서버 스택을 사용하여 로컬로 제공 할 수 있습니다.
bundle 사용하여 페이지를 작성할 때 즉시 페이지를 제공 할 수 있습니다. 이렇게하려면 최종 빌드 단계를 bundle exec jekyll serve 로 바꾸십시오. Docker를 사용할 때는 docker run 명령 -p 4000:4000 에 새로운 인수를 추가하고 Shell 스크립트를 build-and-serve.sh 로 변경해야합니다.
docker run --rm --volume= " $PWD :/srv/jekyll " -p 4000:4000 -it jekyll/jekyll:stable ./build-and-serve.sh또는
docker run --rm --volume= " %CD%:/srv/jekyll " -p 4000:4000 -it jekyll/jekyll:stable ./build-and-serve.shpython -m http.server 4000 -d ./_site 실행하십시오. 이 중 하나 중 하나를 따른 후 사이트는 http://localhost:4000 에서 사용할 수 있습니다.
이 프로젝트는 master 브랜치가 새로운 커밋을받을 때마다 GitHub 작업에 의해 자동으로 구축됩니다. master 브랜치 자체는 소스 파일 만 포함하므로 배포해서는 안됩니다. 웹 사이트의 구축 된 버전은 대신 published 지점으로 제공됩니다.
이것은 지역 개발과 관련이 없습니다. 로컬로 웹 사이트를 제자리에 구축 한 다음 _site 폴더를 제공합니다. 위의 자세한 지침을 참조하십시오.
다음 폴더에는 블로그, 쇼케이스 및 다운로드 페이지와 같이 웹 사이트의보다 역동적 인 부분을 생성하는 데 사용되는 데이터 파일이 포함되어 있습니다. 이 페이지는 Markdown으로 작성되었으며 발전기에서 사용하는 메타 데이터 헤더가 포함되어 있습니다. Markdown 파일은 포함 폴더와 동일한 이름의 Jekyll 컬렉션을 형성합니다. 새 Markdown 문서를 만들려면 기존 문서를 복사 한 다음 컨텐츠를 변경하여 시작할 수 있습니다.
collections/_article 에는 블로그에 대한 기사가 포함되어 있습니다. 각 기사는 파일 상단에 메타 데이터 헤더가있는 Markdown으로 작성됩니다. 웹 사이트 전체에 기사를 올바르게 표시하려면 다음 메타 데이터 필드가 필요합니다. title , excerpt , categories , author , image 및 date . 파일 이름은 생성 된 URL에서 슬러그 역할을합니다.
collections/_download 에는 플랫폼 당 Godot 빌드에 대한 다운로드 지침이 포함되어 있습니다. 각 문서는 파일 상단에 메타 데이터 헤더가있는 Markdown으로 작성됩니다. 다운로드 링크는 메타 데이터의 downloads 필드에서 생성됩니다. 새 플랫폼을 추가 할 때는 /_layouts/download.html 템플릿에서 새 탭을 작성하십시오.
collections/_showcase 에는 쇼케이스 항목이 포함되어 있습니다. 각 기사는 파일 상단에 메타 데이터 헤더가있는 Markdown으로 작성됩니다. Showcase 항목은 featured_in_home 필드를 true 로 설정하여 홈페이지에서 제공 할 수 있습니다. 사용 된 이미지는 image 필드의 이미지입니다.
일부 정보는 YAML 파일에 저장되어 있으며 여러 메타 속성에 대한 파일 기반 데이터베이스 역할을합니다.
_data 웹 사이트의 다양한 메타 데이터 파일을 포함합니다.authors.yml 블로그 기사에 사용 된 저자 목록이 포함되어 있습니다.categories.yml 블로그 기사에 대한 카테고리 목록을 포함합니다.communities.yml 에는 /community/user-groups 페이지의 사용자 커뮤니티 목록이 포함되어 있습니다.다음 폴더에는 거의 모든 웹 사이트 페이지의 진입 점과 공유 템플릿 및 자산이 포함되어 있습니다. Jekyll에 사용되는 템플릿 언어는 액체입니다.
_i18n 에는 웹 사이트의 번역이 포함되어 있습니다. 기본 언어는 영어입니다. 블로그와 쇼케이스는 영어로 표시되면 정적 정보 만 번역됩니다. 현재 장애가 있고 진행중인 작업.
_includes 에는 대부분의 페이지에서 사용하는 탐색 및 바닥 글 요소가 포함되어 있습니다. 여러 페이지에서 재사용 할 요소를 만들려면 여기에 새 포함 파일을 만들 수 있습니다.
_layouts 에는 페이지의 래핑 내용이 포함되어 있습니다. 각 레이아웃은 헤드 및 메타 태그를 포함하여 페이지의 주요 구조를 포함하는 _layouts/default.html 에서 상속됩니다. 다른 레이아웃은 블로그, 다운로드 및 쇼케이스 페이지와 같은 특정 페이지에 사용됩니다.
assets 에는 웹 사이트의 정적 자산이 포함되어 있습니다. 여기에는 테마 및 레이아웃에 사용되는 CSS, JS 및 이미지가 포함됩니다. 기사 및 기타 페이지에 사용되는 미디어 컨텐츠의 경우 storage 폴더를 확인하십시오. 일부 파일은 쓸모없고 사용되지 않을 수 있습니다.
pages 에는 웹 사이트의 대부분의 페이지가 포함되어 있습니다. 각 페이지의 최종 URL은 permalink 필드를 사용하여 메타 데이터 헤더에 지정되어 있습니다. 일반적으로 pages 내부의 파일 경로에 매핑되어야합니다. 동적 컨텐츠 페이지는 Markdown 컬렉션 및 레이아웃을 사용하여 생성됩니다.
storage 에는 블로그, 쇼케이스, 이벤트와 같은 동적 콘텐츠 페이지에 사용하기 위해 업로드 된 미디어 및 기타 파일이 포함되어 있습니다. 일부 파일은 쓸모없고 사용되지 않을 수 있습니다. 이 프로젝트는 Gemfile 및 _config.yml 에있는 빌드 지침과 함께 Jekyll과 함께 구축됩니다. 로컬로 구축 할 때 일부 구성 옵션이 달라야 할 수도 있습니다. 이를 정의하려면 _config.development.yml 사용됩니다.
웹 사이트의 모든 다운로드 정보는 데이터 중심입니다. 즉, 현재 안정적인 버전 또는 진행중인 버전 미리보기에 대한 정보를 변경하려면 페이지를 직접 수정할 필요가 없습니다. 대신 데이터 파일을 업데이트해야합니다.
모든 공식 버전을 추적하기위한 기본 파일은 data/_versions.yml 입니다. 프리 릴리스를 포함하여 각 공식 릴리스 당 정확히 하나의 레코드가 포함되어 있습니다. 이 파일은 다운로드 할 수있는 새로운 공식 빌드가있을 때마다 업데이트되어야합니다.
새 버전을 만들려면 다음 블록을 파일에 추가하십시오.
- name: "4.0.1"
flavor: "stable"
release_date: "20 March 2023"
release_notes: "/article/maintenance-release-godot-4-0-1/"
더 높은 버전 번호가 상단에 가까워지면서 항목을 올바르게 주문해야합니다. flavor 필드를 사용하여 릴리스를 안정적으로 또는 사전 릴리스 빌드 중 하나로 표시하십시오. 가능한 경우 항상 릴리스 날짜와 릴리스 노트 링크를 작성하십시오.
기존 버전의 새 빌드가 게시되면 해당 블록을 업데이트하여 향미 및 릴리스 정보를 변경하십시오. 릴리스 노트를 게시 할 때이 정보를 업데이트하십시오.
웹 사이트 전반에 걸쳐 안정적인 릴리스에는 featured 필드와 해당 주요 버전 번호가 표시되어야합니다. 한 레코드 만 버전 당 등장하는 것으로 표시되어야하므로 현재 마크의 소지자에서 제거하는 것을 잊지 마십시오.
- name: "4.0.3"
flavor: "stable"
release_date: "19 May 2023"
release_notes: "/article/maintenance-release-godot-4-0-3/"
featured: "4"
다운로드 페이지 및 링크 _data/download_configs.yml 대한 데이터를 제공하는 두 _data/download_platforms.yml 추가 파일이 있습니다. 이 파일은 일반적으로 변경이 필요하지 않으며 정적 참조 테이블로 사용됩니다. 그들은 모든 다운로드 가능한 빌드에 대한 설명, 태그 및 파일 이름 슬러그를 정의하고 일부 페이지에서 다운로드하기위한 주문을 정의합니다.
미러리스트가 새 호스트를 지원 해야하는 경우 몇 곳에 추가해야합니다. 데이터 측면의 경우 _data/mirrorlist_configs.yml 업데이트하고 메이저 마이너 버전 코드에 대한 다른 레코드를 추가해야합니다.
- name: "4.1"
stable: [ "github", "tuxfamily" ]
preview: [ "github_builds", "tuxfamily" ]
stable 키는 해당 버전의 안정적인 릴리스에 사용할 수있는 호스트를 말하고 preview 키는 모든 사전 릴리스 및 DEV 스냅 샷을 나타내며, 일반적으로 모든 특성을 공유합니다. 미래에 더 미세한 제어가 필요하다면 일부 재정의 시스템을 구현해야합니다.
논리 측면의 경우 새 호스트는 _plugins/make_download.rb 스크립트에서 지원해야합니다. 해당 파일의 다른 호스트가 처리되는 방법을 참조하고 필요한 조정을 수행하십시오. 최종 파일 이름은 모든 호스트에서 표준이라고 가정하므로 _data/download_configs.yml 이 존중됩니다.