#TITLE 환영합니다
'''END 개발자 페이지에 오신것을 환영합니다'''

[END]는 오픈소스 멀티플랫폼 게임엔진입니다. 대부분 C++로 짜여져 있고 Ruby등의 스크립트 언어를 활용하며, Cygwin(>=1.7)과 GCC(>=4.3), Visual Studio 2008 등에서 개발이 가능합니다.

!OpenGL과 !D3D를 이용하여 3D Graphics를 지원하며 [http://audiere.sourceforge.net/ Audiere]를 사용하여 Sound를 지원합니다. 뿐만 아니라, [http://bulletphysics.org/ Bullet] 물리엔진을 이용한 물리 시뮬레이션도 지원합니다.
=== 시작하기 ===
'''다운로드'''
----
[END]는 M08에서 커다란 변화가 있었으며 M06 이전과는 호환성을 가지지 않습니다. 현재 M08버전을 기반으로한 릴리즈가 없기 때문에 [END] 프로젝트를 얻기 위해서는 svn 레포지토리에서 체크아웃 해야합니다.
 * 익명으로 체크아웃하기
{{{
svn checkout --username anonsvn http://kldp.net/svn/end
(The password is 'anonsvn')
}}}
 * 프로젝트 개발자
{{{
svn checkout --username developername http://kldp.net/svn/end
}}}

[END] svn 레포지토리에는 써드파티 라이브러리도 같이 포함되어 있기 때문에 1GB에 가까운 디스크를 차지합니다. 만일 현재 개발중인 소스에만 관심이 있다면 {{{http://kldp.net/svn/end/trunk}}} 에서 체크아웃 받으시기 바랍니다. (이 경우 윈도우 계열 운영체제의 Cygwin이나 Visual Studio 개발환경에서는 써드파티 라이브러리가 없기 때문에 EigenTool 등을 빌드 할 수 없습니다. 리눅스에서는 각 배포판별 패키지 시스템을 이용해 써드파티 라이브러리를 설치함으로써 빌드가 가능합니다.)

자세한 내용은 [http://kldp.net/projects/end/src END 프로젝트 코드]에서 살펴볼 수 있습니다.

'''빌드하기'''
----
[END] 프로젝트의 소스가 준비되었다면, 빌드를 하실수 있습니다. Visual Studio 2008 사용자는 [END] 프로젝트 루트 디렉토리에서 end.sln 파일을 열어 빌드하시면 됩니다.
 * [END] 프로젝트 루트 디렉토리
{{{
docs/
end_builder/
end_graphics/
end_gui/
end_physics/
end_script/
end_sound/
end_system/
end_test/
end_tools/
end_ui/
runtime/
LICENSE
Rakefile
end.sln
end_tools.sln
}}}

Cygwin이나 리눅스 사용자는 [rake]를 이용해서 빌드 및 테스트를 하실 수 있습니다. [rake]에 등록되어 있는 테스크들을 확인 하기 위해서는 'rake -T'를 루트 디렉토리에서 입력하시면 됩니다.
 * [END] 프로젝트 루트 디렉토리에서 'rake -T'를 입력한 경우
{{{
$ rake -T
rake build_eigen_tool[builder,debug_sym]      # Build eigen_tool
rake build_graphics[builder,debug_sym]        # Build graphics
rake build_gui[builder,debug_sym]             # Build gui
rake build_physics[builder,debug_sym]         # Build physics
rake build_sound[builder,debug_sym]           # Build sound
rake build_system[builder,debug_sym]          # Build system
rake build_test                               # Build test projects
rake build_test_nonsystem[builder,debug_sym]  # Build test_nonsystem
rake build_test_system[builder,debug_sym]     # Build test_system
rake clean                                    # Remove any temporary products.
rake clobber                                  # Remove any generated file.
rake default                                  # Default task : execute last task using rake_cache
rake help[contents]                           # Help information(all, rev, list or desc as contents)
rake run_eigen_tool[builder,debug_sym]        # Run eigen_tool
rake run_test_nonsystem[builder,debug_sym]    # Run test_nonsystem
rake run_test_system[builder,debug_sym]       # Run test_system
}}}

{{{'rake run_test_system[gcc,debug]'}}}를 입력함으로써 end_system을 빌드하고 test_system을 실행해볼 수 있습니다. 자세한 내용은 [:rake Build System Overview]와 [:TestArchitecture Test Architecture]를 참고하세요.
=== Design docs ===
 * [:SoftwareArchitecture Software Architecture]
 * [:TestArchitecture Test Architecture]
 * [:rake Build System Overview]
 * [:assets Assets Overview]
=== Other links ===
 * [:NewsArchives News Archives]
 * [:프로젝트_참여하기 프로젝트 참여하기]
 * [http://kldp.net/projects/end/milestone END 프로젝트 진행중인 마일스톤]
 * [http://kldp.net/projects/end/forum END 프로젝트 게시판]
 * [http://kldp.net/projects/end/bugs END 프로젝트 버그/이슈 트래킹]
 * [https://www.ohloh.net/p/end/analyses/latest END 프로젝트 코드 현황 (from ohloh.net)]
=== 구현이슈 자료 정리 ===
 * [:SIMD SIMD Math Library ] 
 * [:Component Component System]
