Sfoglia il codice sorgente

Fixed a million links in the Korean docs.

Mikael Säker 8 anni fa
parent
commit
b1dd9e9fe6

+ 1 - 1
docs/en/manuals/gui.md

@@ -16,7 +16,7 @@ A graphical user interface in Defold is a game object component that you build a
 
 The GUI is not part of the collection’s coordinate system but is rendered independently of the game view. Because of this it is not placed in a particular location in the collection editor, nor does it have a visual representation in the collection editor. However, the GUI component have to reside in a game object that has a location in a collection. Changing that location has no effect on the GUI.
 
-::: sidenote
+::: important
 The rendering behavior can be changed in the render script but it is usually desirable to use this arrangement since the user interface is a separate visual "layer" on top of the game view and you usually want HUD items and menus on certain spots on screen.
 :::
 

+ 4 - 4
docs/ko/manuals/2dgraphics.md

@@ -59,7 +59,7 @@ Defold에서 에셋을 사용하려면 프로젝트 계층구조(project hierarc
 > 좋은 측정방법은 게임이 보여질 때 텍스쳐의 크기를 얼만큼 조절할지에 알맞는 숫자를 명시하는 것입니다. 게임월드를 절반 크기로 나타내려면 **Extrude Borders**를 2로 설정하면 됩니다. 텍스처를 절반 크기로 줄여서 사용하면, 렌더링에 밉맵(mipmap)이 사용됩니다. 이 밉맵은 원본 이미지의 넓이와 높이가 절반입니다.
 
 ## Tile Source Collision Shapes
-타일 맵(Tile Map)을 사용하여 물리 상호작용을 활성화하는 충돌 영역(Collision shape)은 자동적으로 생성될 수 있습니다. Defold는 **Collision** 속성에 명시된 이미지로부터 각 타일에 볼록한 영역(Convex shape)을 생성하기 위해 알파 채널(alpha channel)을 사용합니다. 이 속성에는 이미지와 똑같은 충돌 영역을 위해 동일한 이미지를 사용하여 충돌 영역을 생성하는 것이 대부분이겠지만, 보이는 것과 다른 충돌 영역을 원한다면 다른 이미지를 선택해도 됩니다. 충돌(collision) 이미지를 지정하면, 생성된 충돌 영역을 나타내는 각 타일의 윤곽선으로 미리보기가 업데이트 됩니다. 자세한 것은 [Physics](Physics) 문서를 참고 바랍니다.
+타일 맵(Tile Map)을 사용하여 물리 상호작용을 활성화하는 충돌 영역(Collision shape)은 자동적으로 생성될 수 있습니다. Defold는 **Collision** 속성에 명시된 이미지로부터 각 타일에 볼록한 영역(Convex shape)을 생성하기 위해 알파 채널(alpha channel)을 사용합니다. 이 속성에는 이미지와 똑같은 충돌 영역을 위해 동일한 이미지를 사용하여 충돌 영역을 생성하는 것이 대부분이겠지만, 보이는 것과 다른 충돌 영역을 원한다면 다른 이미지를 선택해도 됩니다. 충돌(collision) 이미지를 지정하면, 생성된 충돌 영역을 나타내는 각 타일의 윤곽선으로 미리보기가 업데이트 됩니다. 자세한 것은 [Physics](/manuals/physics) 문서를 참고 바랍니다.
 
 ![Collision Shapes](images/2dgraphics/2dgraphics_tilesource_collision.png)
 
@@ -108,7 +108,7 @@ go.animate("my_object#sprite", "scale.x", go.PLAYBACK_ONCE_FORWARD, 1.5, go.EASI
 기본 애니메이션은 게임 실행중에 게임 오브젝트가 생성되면 플레이 됩니다. 만약 이미지 리소스로 아틀라스를 사용중이라면 **Default Animation** 속성의 드롭다운 메뉴를 통해서 이미지들을 볼 수 있습니다. 타일 소스에 있는 이미지로부터 스프라이트를 만들고 싶다면, 1 프레임 짜리 애니메이션을 만들고 **Playback** 속성을 "None"으로 설정하면 됩니다.
 
 #### Collision Shapes
-스프라이트는 아직 타일소스에서 충돌모형(Collision Shape)을 자동생성하는 것을 지원하지 않습니다. 대신, 다른 게임 오브젝트와 마찬가지로 충돌 모형(Collision Shape)을 사용하여 충돌 오브젝트(Collision Object)를 추가할 수 있습니다. 자세한 것은 [Physics](Physics) 문서를 참고 바랍니다.
+스프라이트는 아직 타일소스에서 충돌모형(Collision Shape)을 자동생성하는 것을 지원하지 않습니다. 대신, 다른 게임 오브젝트와 마찬가지로 충돌 모형(Collision Shape)을 사용하여 충돌 오브젝트(Collision Object)를 추가할 수 있습니다. 자세한 것은 [Physics](/manuals/physics) 문서를 참고 바랍니다.
 
 #### Blend Mode
 블렌드 모드 속성은 스프라이트가 뒤쪽에 겹쳐진 그래픽과 어떻게 혼합(blend)할지 정의하는 속성입니다. 아래에 사용 가능한 블렌드 모드의 종류와 각각 어떻게 계산되는지에 대한 설명이 있습니다:
@@ -123,7 +123,7 @@ go.animate("my_object#sprite", "scale.x", go.PLAYBACK_ONCE_FORWARD, 1.5, go.EASI
 해당 스프라이트 픽셀의 컬러값을 이용하여 배경을 어둡게 함: rgb0 * rgb1
 
 #### Sprite Shading
-기본 스프라이트 쉐이딩 파일은 프로젝트의 "/builtins/material/sprite.*" 에 있습니다. 기본 쉐이딩은 표준 텍스쳐 색상 보정(regular texture lookup)을 수행하지만 텍스쳐 색상과 겹쳐지는(multiply) 색조(tint: fragment shader constant) 또한 가지게 됩니다.
+기본 스프라이트 쉐이딩 파일은 프로젝트의 "/builtins/material/sprite.\*" 에 있습니다. 기본 쉐이딩은 표준 텍스쳐 색상 보정(regular texture lookup)을 수행하지만 텍스쳐 색상과 겹쳐지는(multiply) 색조(tint: fragment shader constant) 또한 가지게 됩니다.
 
 클릭시 스프라이트를 하얗게 번쩍이는 것과 같은 효과를 주기 위해 커스텀 쉐이딩을 구현할 수 있습니다. 스프라이트에 커스텀 쉐이딩을 설정하기 위해 아래 단계를 따라해 봅시다:
 
@@ -158,7 +158,7 @@ go.animate("my_object#sprite", "scale.x", go.PLAYBACK_ONCE_FORWARD, 1.5, go.EASI
 4. 타일맵에서 아무 빈 셀이나 선택하기
 
 #### Attaching Physics
-타일맵에 물리 기능을 첨부하는 것으로 타일과 관련된 충돌을 감지하거나 물리 시뮬레이션을 할 수 있습니다. 타일맵에 물리 기능을 붙이기 위해서는 [Physics](Physics) 문서를 참고 바랍니다.
+타일맵에 물리 기능을 첨부하는 것으로 타일과 관련된 충돌을 감지하거나 물리 시뮬레이션을 할 수 있습니다. 타일맵에 물리 기능을 붙이기 위해서는 [Physics](/manuals/physics) 문서를 참고 바랍니다.
 
 ## Changing tiles from script
 게임이 실행되는 동안 동적으로 타일맵의 컨텐츠를 변경할 수도 있습니다. 이 작업을 위해서는 타일맵에 set_tile 메세지를 보내야 합니다:

+ 4 - 4
docs/ko/manuals/3dgraphics.md

@@ -11,9 +11,9 @@ Defold는 3D 에셋이나 모델을 컬렉션에 포함해서 3D 컨텐츠를 
 #### Animation Set
 애니메이션 세트 파일은 애니메이션을 읽기 위해 **.dae** 파일의 목록을 포함하고 있습니다. 또한 애니메이션 세트에 **.animationset** 파일을 추가 할 수도 있으며, 이는 여러 모델들 사이의 부분 에니메이션 세트를 공유하는 경우 편리합니다.
 
-[Model](Model) 문서는 3D 에셋을 임포트하고 모델을 만드는 방법에 대해 설명합니다.
+[Model](/manuals/model) 문서는 3D 에셋을 임포트하고 모델을 만드는 방법에 대해 설명합니다.
 
-[Animation](Animation) 문서는 3D 모델을 에니메이션 처리 하는 방법에 대해 설명합니다.
+[Animation](/manuals/animation) 문서는 3D 모델을 에니메이션 처리 하는 방법에 대해 설명합니다.
 
 ## Collada support
 Defold의 3D 지원을 위해서는 모델, 스켈레톤, 애니메이션 데이터를 Collada 라는 포멧으로 저장하고 익스포트 해야 합니다. 이 포멧은 대부분 3D 모델링 소프트웨어에서 광범위하게 지원되고 있는  포멧입니다. 그러므로 마야, 3D맥스, 블렌더, 스케치업 등의 유명한 소프트웨어로 에셋을 생성하고 Defold로 결과 파일을 불러올 수 있게 해야 합니다.
@@ -29,9 +29,9 @@ Defold의 3D 지원을 위해서는 모델, 스켈레톤, 애니메이션 데이
 
 당신의 Defold 프로젝트는 렌더 스프라이트, 타일, 파티클, GUI노드에 사용되는 몇 가지 내장 메터리얼(built-in material)을 가지고 있습니다. 3D 모델을 위한 적합한 내장 메터리얼은 없으므로 직접 제작해야 합니다. 하지만 책 모델을 위해서 미리 만들어 놓은 "textured.material" 예제가 있습니다.
 
-메터리얼이 작동되는 방법과, 질감이 입혀진 3D 모델로 작업하는 방법에 대해 자세히 알고 싶다면  [Material](Material) 문서를 참고 바랍니다.
+메터리얼이 작동되는 방법과, 질감이 입혀진 3D 모델로 작업하는 방법에 대해 자세히 알고 싶다면  [Material](manuals/material) 문서를 참고 바랍니다.
 
 ## Rendering
 모델을 게임에 적용하기 위한 마지막 작업은 프로젝트의 **Render Script**를 변경하는 것입니다. 기본 렌더 스크립트는 2D 게임을 위해 맞춰져 있으며 3D 모델에는 동작하지 않습니다. 하지만 기본 렌더 스크립트를 복사해서 Lua 코드 몇 줄을 추가해서 3D 모델이 렌더링 되게 할 수 있습니다. 샘플 프로젝트의 경우 이미 이 렌더 스크립트가 셋팅되어 있습니다.
 
-렌더 스크립트가 동작하는 방법을 자세히 알고 싶다면 [Rendering](Rendering) 문서를 참고 바랍니다.
+렌더 스크립트가 동작하는 방법을 자세히 알고 싶다면 [Rendering](manuals/rendering) 문서를 참고 바랍니다.

+ 1 - 1
docs/ko/manuals/android.md

@@ -74,7 +74,7 @@ Android 장치에서 게임을 실행하려면, dmengine 앱과 에디터가 동
 3. 에디터의 **Project > Targets** 에서 당신의 기기를 선택합니다.
 4. **Project > Build And Launch**를 선택해서 게임을 실행합니다. 게임 컨텐츠가 네트워크를 통해 장치로 스트림 되므로 게임이 시작되는데 시간이 걸릴 수 있습니다.
 
-게임이 실행되는 동안, 평소처럼 [핫 리로드](Debugging#hot-reloading)을 사용할 수 있습니다.
+게임이 실행되는 동안, 평소처럼 [핫 리로드](/manuals/debugging#hot-reloading)을 사용할 수 있습니다.
 
 ## Android 어플리케이션 번들 만들기
 에디터는 게임을 위한 standalone 어플리케이션 번들을 쉽게 만들 수 있게 해 줍니다. **Project > Bundle…​ > Android Application…​** 메뉴를 선택해 보세요.

+ 3 - 3
docs/ko/manuals/animation.md

@@ -9,14 +9,14 @@ Defold는 오브젝트 컴포넌트의 그래픽 소스로 사용할 수 있는
 #### Spine animation
 스파인 애니메이션은 2D 스켈레톤 애니메이션을 제공합니다 (http://en.wikipedia.org/wiki/Skeletal_animation 참고). 이는 컷아웃 애니메이션과는 근본적으로 다른 기술입니다.  컷아웃 애니메이션에서는 애니메이션 오브젝트의 개별 조각들(예를 들어 몸체, 눈, 입 등)이 각 프레임간 개별적으로 움직입니다. 스파인 애니메이션은 서로 연결된 뼈대 구조로 구성된 보이지 않는 가상의 골격을 만듭니다. 개별 이미지를 각 뼈대에 붙이고 이 골격(skeleton) 혹은 릭(rig)을 애니메이션 처리 할 수 있습니다. Defold는 [스파인 JSON 포멧](http://ko.esotericsoftware.com/spine-json-format)으로 애니메이션을 생성하거나 익스포트 하는 것을 지원합니다. 스켈레톤 애니메이션은 엔진이 매 프레임마다 각 뼈대의 위치를 보간(interpolate)해 주기 때문에 매우 부드럽게 움직입니다.
 
-스파인 데이터를 어떻게 임포트 하는지 자세히 보려면 [Spine](Spine) 문서를 참고 바랍니다.
+스파인 데이터를 어떻게 임포트 하는지 자세히 보려면 [Spine](/manuals/spine) 문서를 참고 바랍니다.
 
 ![](images/animation/spine_animation.png) ![](images/animation/frog_runloop.gif)
 
 #### 3D skinned animation
 3D 모델의 스켈레톤 애니메이션은 스파인 애니메이션과 비슷하지만 2D가 아니라 3D로 동작합니다. 3D 모델은 별도의 파트로 잘리지 않고 컷아웃 애니메이션 처럼 뼈대로 묶입니다. 대신 이 뼈대들은 모델의 버텍스(vertex)에 변형(deformation)을 적용할 수 있으며, 뼈대가 버텍스에 영향을 미치는 정도를 제어할 수 있습니다.
 
-3D 데이터를 애니메이션 모델로 임포트 하는 자세한 방법은 [3D graphics](3D%20graphics) 문서를 참고 바랍니다.
+3D 데이터를 애니메이션 모델로 임포트 하는 자세한 방법은 [3D graphics](/manuals/3D-graphics) 문서를 참고 바랍니다.
 
 ![](images/animation/blender_animation.png) ![](images/animation/wiggle.gif)
 
@@ -248,7 +248,7 @@ go.cancel_animation(".", "euler.z")
 
 만약 "position"과 같이 복합적인(composite) 속성의 애니메이션을 취소하면, 하위 요소들("position.x", "position.y", "position.z")의 애니메이션도 함께 취소됩니다.
 
-[Properties](Properties) 매뉴얼에 게임 오브젝트, 컴포넌트, GUI노드의 모든 속성들에 대한 설명이 있습니다.
+[Properties](/manuals/properties) 매뉴얼에 게임 오브젝트, 컴포넌트, GUI노드의 모든 속성들에 대한 설명이 있습니다.
 
 ### GUI node property animation
 대부분의 모든 GUI 노드 속성들은 애니메이션 가능합니다. 예를 들어, "color" 속성을 설정해서 투명값을 조절하여 노드를 보이지 않게 만든 후에, 색상을 하얗게(tint 컬러가 아님) 애니메이션 처리해서 페이드인 효과를 줄 수 있습니다. 

+ 5 - 5
docs/ko/manuals/application-lifecycle.md

@@ -31,7 +31,7 @@ init() 함수 이후에는 새 메세지를 보낼 수도 있고, 팩토리가 
 
 post-update 단계에는 메세지 큐를 보낼 뿐만아니라 또한 메세지가 컬렉션 프록시로 전송되는 일을 다루는 "dispatch messages" 단계를 포함하고 있다는 것을 알아두기 바랍니다. 이 단계가 수행되는 동안은 proxy를 통하여(활성화, 비활성화, 로딩, 언로딩을 위한 마킹작업 등) 하위 작업들이 업데이트 됩니다.
 
-위의 다이어그램을 살펴보면, init() 하는 동안에 [컬렉션 프록시(Collection proxy)](Collection%20proxy)를 로드하고 프록시의 모든 오브젝트들을 초기화하고 프록시의 컬렉션을 언로드하는 것이 가능하다는 것을 알 수 있습니다. 이 모든 것이 컴포넌트의 update()가 처음 호출되기 이전에 발생합니다. 즉 엔진이 모든 초기화(initialization) 단계를 빠져나가서 업데이트 반복(update loop) 단계로 진입하기 이전입니다:
+위의 다이어그램을 살펴보면, init() 하는 동안에 [컬렉션 프록시(Collection proxy)](/manuals/collection-proxy)를 로드하고 프록시의 모든 오브젝트들을 초기화하고 프록시의 컬렉션을 언로드하는 것이 가능하다는 것을 알 수 있습니다. 이 모든 것이 컴포넌트의 update()가 처음 호출되기 이전에 발생합니다. 즉 엔진이 모든 초기화(initialization) 단계를 빠져나가서 업데이트 반복(update loop) 단계로 진입하기 이전입니다:
 
 ```lua
 function init(self)
@@ -62,7 +62,7 @@ end
 ![Update loop](images/application_lifecycle/application_lifecycle_update.png)
 
 #### Input
-입력(input)은 사용 가능한 디바이스로부터 읽혀지며, [인풋 바인딩(input binding)](Input)에 대해 매핑되어 디스패치 됩니다. 입력 포커스를 획득한 게임 오브젝트는 사용자의 입력을 받아 on_input() 함수가 있는 모든 컴포넌트에게 전송합니다. 스크립트 컴포넌트와 GUI스크립트가 있는 GUI컴포넌트를 사용하는 게임 오브젝트가 입력을 받아 이들 컴포넌트의 on_input() 함수로 보냅니다.
+입력(input)은 사용 가능한 디바이스로부터 읽혀지며, [인풋 바인딩(input binding)](/manuals/input)에 대해 매핑되어 디스패치 됩니다. 입력 포커스를 획득한 게임 오브젝트는 사용자의 입력을 받아 on_input() 함수가 있는 모든 컴포넌트에게 전송합니다. 스크립트 컴포넌트와 GUI스크립트가 있는 GUI컴포넌트를 사용하는 게임 오브젝트가 입력을 받아 이들 컴포넌트의 on_input() 함수로 보냅니다.
 
 입력 포커스를 획득하고 컬렉션 프록시 컴포넌트를 포함하고 있는 게임오브젝트는 프록시 컬렉션에 있는 컴포넌트들에게 까지 입력을 전달합니다. 이 프로세스는 활성화된 컬렉션 프록시들을 따라 재귀적으로 반복되어 전달됩니다.
 
@@ -71,7 +71,7 @@ main 컬렉션의 각 게임 오브젝트 컴포넌트 순환하며 수행됩니
 
 > 게임오브젝트 컴포넌트의 update() 함수가 호출되는 순서는 정해진 것이 없으므로 게임엔진이 동일한 컬렉션에 속한 오브젝트들을 특정한 순서로 초기화 할거라고 미리 예측하여 개발하지 않는 것이 좋습니다.
 
-다음 단계에선 게시된 모든 메세지가 전달(dispatch)됩니다. 수신 컴포넌트의 on_message() 코드는 추가적인 메세지를 게시할 수 있으므로 메세지 전달자(message dispatcher)는 메세지 큐가 다 비워질 때 까지 게시된 메세지를 전달하는 작업을 지속합니다. 그러나 메세지 전달자가 수행 가능한 횟수에는 성능상 한계가 있습니다. [메세지 전달(Message passing)](Message%20passing) 문서의 "Advanced topics" 섹션을 참고 바랍니다.
+다음 단계에선 게시된 모든 메세지가 전달(dispatch)됩니다. 수신 컴포넌트의 on_message() 코드는 추가적인 메세지를 게시할 수 있으므로 메세지 전달자(message dispatcher)는 메세지 큐가 다 비워질 때 까지 게시된 메세지를 전달하는 작업을 지속합니다. 그러나 메세지 전달자가 수행 가능한 횟수에는 성능상 한계가 있습니다. [메세지 전달(Message passing)](/manuals/message-passing) 문서의 "Advanced topics" 섹션을 참고 바랍니다.
 
 충돌(collision) 오브젝트 컴포넌트의 경우엔, 물리 메세지(collisions, triggers, ray_cast 등을 처리함)가 게임오브젝트가 영향을 주는 주변 오브젝트의 스크립트에 쓰인 on_message() 함수로 전달됩니다.
 
@@ -85,12 +85,12 @@ main 컬렉션의 각 게임 오브젝트 컴포넌트 순환하며 수행됩니
 
 다음으로는 게임오브젝트를 스폰하도록 지시받은 팩토리 컴포넌트가 작업을 시작하고, 마지막으로는 삭제가 예약된 게임오브젝트들이 실제로 삭제 됩니다.
 
-업데이트 루프의 마지막 단계는 @system 메세지("exit", "reboot" 메세지, 프로파일러 토글하기, 비디오 캡쳐를 시작하거나 멈추기 등등)를 전달하는 것을 포함하고 있습니다. 다음으로 그래픽을 렌더링합니다. 그래픽이 렌더링 되는 동안, 비디오 캡쳐 작업과 비주얼 프로필러(visual profiler)의 렌더링 작업도 수행됩니다. ( [Debugging](Debugging) 문서를 참고 바랍니다.)
+업데이트 루프의 마지막 단계는 @system 메세지("exit", "reboot" 메세지, 프로파일러 토글하기, 비디오 캡쳐를 시작하거나 멈추기 등등)를 전달하는 것을 포함하고 있습니다. 다음으로 그래픽을 렌더링합니다. 그래픽이 렌더링 되는 동안, 비디오 캡쳐 작업과 비주얼 프로필러(visual profiler)의 렌더링 작업도 수행됩니다. ( [Debugging](/manuals/debugging) 문서를 참고 바랍니다.)
 
 #### Frame rate and collection time step
 초당 프레임 업데이트의 수(FPS, 즉 update-loop의 실행 수와 동일함)는 프로젝트 설정(project settings)에서 셋팅할 수 있으며 프로그래밍 방식으로 @system 소켓에 "set_update_frequency" 메세지를 보내서 셋팅할 수도 있습니다. 그리고 프록시로 "set_time_step" 메세지를 보내서 컬렉션 프록시의 시간 흐름(time step)을 개별적으로 설정하는 것도 가능합니다. 컬렉션의 시간 흐름을 변경해도 프레임 레이트에 영향을 주지는 않습니다. 대신, 물리 업데이트(physics update)의 시간 흐름과, update() 함수로 전달되는 "dt" 인자값에 영향을 줍니다. 또한, 시간 흐름을 변경하는 것은 각 프레임에 호출되는 update()의 횟수를 변경하는 것은 아닙니다. update()는 프레임당 한번씩만 호출됩니다.
 
-(자세한 것은 [Collection proxy](Collection%20proxy) 와 [set_time_step](set_time_step) 를 참고하세요.)
+(자세한 것은 [Collection proxy](/manuals/collection-proxy) 와 [set_time_step](/ref/collectionproxy/#set_time_step) 를 참고하세요.)
 
 ## Finalization
 어플리케이션이 종료되는 시점에는, 마지막 업데이트 루프 시퀀스를 끝내고, 컬렉션 프록시들을 언로드하여 프록시 컬렉션의 모든 게임오브젝트의 마무리(finalizing)와 삭제(deleting)를 수행합니다.

+ 5 - 5
docs/ko/manuals/building-blocks.md

@@ -1,7 +1,7 @@
 # Building blocks
 이 문서에서는 *게임오브젝트, 컴포넌트, 컬렉션*이 어떻게 동작하는지 자세히 설명합니다.
 
-Defold에서 만든 것 중 일부는 다른 소프트웨어와는 다르게 설계되어 있습니다. 이 블록들을 왜 합치며 어떻게 합치는지에 대한 이해가 조금 어려울 수도 있습니다. Defold가 어떻게 게임 리소스를 관리하고 접근하는지 이해하기 위해서는, 이 문서와 [Message passing](Message%20passing) 문서를 참고 바랍니다. 여기에 있는 것들 중 일부 혹은 대부분은 생소하고 처음에는 이해하기 힘들겠지만, 걱정 마세요. 시간을 내서 에디터와 게임엔진을 다뤄보고 실행에 문제가 생기면 문서들을 둘러 보시기 바랍니다.
+Defold에서 만든 것 중 일부는 다른 소프트웨어와는 다르게 설계되어 있습니다. 이 블록들을 왜 합치며 어떻게 합치는지에 대한 이해가 조금 어려울 수도 있습니다. Defold가 어떻게 게임 리소스를 관리하고 접근하는지 이해하기 위해서는, 이 문서와 [Message passing](/manuals/message-passing) 문서를 참고 바랍니다. 여기에 있는 것들 중 일부 혹은 대부분은 생소하고 처음에는 이해하기 힘들겠지만, 걱정 마세요. 시간을 내서 에디터와 게임엔진을 다뤄보고 실행에 문제가 생기면 문서들을 둘러 보시기 바랍니다.
 
 ![Building blocks](images/building_blocks/building_blocks.png)
 
@@ -58,7 +58,7 @@ embedded_instances {
 
 이처럼 게임 오브젝트 인스턴스가 **prototype** 속성을 가지고 있는 것을 위 파일에서 명확히 볼 수 있습니다. 또 다른 속성인 **children**은 "heart"라는 이름의 자식 인스턴스를 가지고 있는데, "heart"는 다른 게임오브젝트와 달리 프로토타입 기반이 아니고 내부에 위치된 게임 오브젝트(in-place game object)이므로 **embedded_instances** 아래에 나열되며 이 데이터는 현재의 컬렉션 파일에만 저장됩니다.
 
-> 이 에디터에서 작업할 때 게임 오브젝트 프로토타입과 인스턴스를 명확하게 구분하는 것 외에도, 런타임시 고정된 아이디로 어떻게 게임 오브젝트를 식별하는지와 자식오브젝트를 설정하는 것이 아이디에 어떻게 영향을 끼치는지 시간을 들여 신중히 공부하는 것이 좋습니다. [Message passing](Message%20passing) 문서에 자세한 설명이 있습니다.
+> 이 에디터에서 작업할 때 게임 오브젝트 프로토타입과 인스턴스를 명확하게 구분하는 것 외에도, 런타임시 고정된 아이디로 어떻게 게임 오브젝트를 식별하는지와 자식오브젝트를 설정하는 것이 아이디에 어떻게 영향을 끼치는지 시간을 들여 신중히 공부하는 것이 좋습니다. [Message passing](/manuals/message-passing) 문서에 자세한 설명이 있습니다.
 
 지금쯤 당신은 아마 "게임 오브젝트 파일을 만들어 게임 오브젝트와 자식 오브젝트를 생성한 다음 컬렉션에 이 오브젝트를 인스턴스화 시킨 후 자식 오브젝트를 삭제하면 어떻게 될까?"라는 의문을 품을 수도 있습니다. 간단히 답변하자면 이것은 불가능합니다. 게임 오브젝트 파일은 단일 게임 오브젝트의 설계도면입니다. 오직 빌드시에 에디터에서 컬렉션을 수정하거나 런타임시에 msg.post("my_object", "set_parent", { parent_id = go.get_id("my_parent") }) 를 사용하여 게임 오브젝트의 인스턴스에 자식 오브젝트들을 추가하는 것만 가능합니다.
 
@@ -108,7 +108,7 @@ function on_message(self, message_id, message, sender)
 end
 ```
 
-스크립트 속성이 어떻게 동작하는지 어떻게 사용하는지 자세한 설명이 알고 싶다면 [Script properties](Script%20properties) 문서를 참고 바랍니다.  스크립트 속성을 정의하면 그 속성과 연관된 자료형으로 다른 보통의 속성들처럼 파일에 저장됩니다. 게임 오브젝트가 프로토타입에 의해 인스턴스화 된 경우엔 별도의 **component_properties** 속성이 스크립트 속성(향우엔 다른 컴포넌트에도 가능할지도)을 포함하는 오브젝트 인스턴스에 추가됩니다:
+스크립트 속성이 어떻게 동작하는지 어떻게 사용하는지 자세한 설명이 알고 싶다면 [Script properties](/manuals/script-properties) 문서를 참고 바랍니다.  스크립트 속성을 정의하면 그 속성과 연관된 자료형으로 다른 보통의 속성들처럼 파일에 저장됩니다. 게임 오브젝트가 프로토타입에 의해 인스턴스화 된 경우엔 별도의 **component_properties** 속성이 스크립트 속성(향우엔 다른 컴포넌트에도 가능할지도)을 포함하는 오브젝트 인스턴스에 추가됩니다:
 
 ![Script properties](images/building_blocks/building_blocks_properties.png)
 
@@ -135,7 +135,7 @@ data: "components {\n  id: \"some_script\"\n  component: \"/a_simple_test/my_thi
 컬렉션은 템플릿 생성을 위한 Defold의 메커니즘이며 다른 게임엔진에선 프리펩(prefab)이라고도 불려 지기도 합니다. 컬렉션은 게임 오브젝트들이나 또 다른 컬렉션들을 가지는 트리구조로 되어 있습니다. 컬렉션은 항상 파일에 저장되며 한두가지 방법으로 게임으로 불러올 수 있습니다:
 
 1. 빌드시 컬렉션을 에디터상의 다른 컬렉션에 배치하는 방법
-2. 런타임시 컬렉션 프록시(Collection proxy)를 사용해서 컬렉션에 모인 모든 리소스를 동적으로 로딩하는 방법(자세한 것은 [Collection proxy](Collection%20proxy)문서를 참고 바랍니다.)
+2. 런타임시 컬렉션 프록시(Collection proxy)를 사용해서 컬렉션에 모인 모든 리소스를 동적으로 로딩하는 방법(자세한 것은 [Collection proxy](/manuals/collection-proxy)문서를 참고 바랍니다.)
 
 ![Collection instances](images/building_blocks/building_blocks_collection_instances.png)
 
@@ -175,4 +175,4 @@ collection_instances {
 }
 ```
 
-> 많이들 헷갈리는 점은 컬렉션 계층구조의 게임 오브젝트의 위치가 런타임시에 부모-자식 계층(set_parent 메세지로 맺어진)으로 된다는 것이 있습니다. 여기서 두 가지 차이점을 깨닫는 것이 중요한데, 컬렉션은 관리 및 그룹화를 의미하는 반면, 부모-자식 계층은 오브젝트가 또다른 오브젝트와 시각적으로 연결되어 씬 그래프(scene graph)를 동적으로 수정하는 것을 의미합니다. 컬렉션 계층에서는 게임 오브젝트의 위치로 id를 지정하지만 이 id는 오브젝트의 수명기간 동안엔 정적(static)상태입니다. 게임 오브젝트의 주소 지정(addressing)에 대한 자세한 설명은 [Message passing](Message%20passing) 문서를 참고 바랍니다.
+> 많이들 헷갈리는 점은 컬렉션 계층구조의 게임 오브젝트의 위치가 런타임시에 부모-자식 계층(set_parent 메세지로 맺어진)으로 된다는 것이 있습니다. 여기서 두 가지 차이점을 깨닫는 것이 중요한데, 컬렉션은 관리 및 그룹화를 의미하는 반면, 부모-자식 계층은 오브젝트가 또다른 오브젝트와 시각적으로 연결되어 씬 그래프(scene graph)를 동적으로 수정하는 것을 의미합니다. 컬렉션 계층에서는 게임 오브젝트의 위치로 id를 지정하지만 이 id는 오브젝트의 수명기간 동안엔 정적(static)상태입니다. 게임 오브젝트의 주소 지정(addressing)에 대한 자세한 설명은 [Message passing](/manuals/message-passing) 문서를 참고 바랍니다.

+ 2 - 2
docs/ko/manuals/collection-factory.md

@@ -1,9 +1,9 @@
 # Collection factories
 컬렉션 팩토리 컴포넌트는 게임 오브젝트(컬렉션)의 설계도면 계층구조(blueprint hierarchies)를 만들어 실행중인 게임으로 스폰하는데 사용됩니다. 이 매뉴얼은 컬렉션 팩토리가 어떻게 동작하며 어떻게 사용하면 되는지 설명합니다.
 
-컬렉션은 재사용 가능한 템플릿(프리펩(prefab) 같은)을 생성하기 위한 강력한 메커니즘을 제공합니다. 컬렉션에 대한 개요를 보고 싶다면 [Building blocks](Building%20blocks) 문서를 참고 바랍니다. 컬렉션은 에디터상에서 배치해도 되고 컴파일 타임에 게임으로 복제할 수도 있는데, 동적으로 게임에 추가하는 방법으로는 아래 두 가지가 있습니다.
+컬렉션은 재사용 가능한 템플릿(프리펩(prefab) 같은)을 생성하기 위한 강력한 메커니즘을 제공합니다. 컬렉션에 대한 개요를 보고 싶다면 [Building blocks](/manuals/building-blocks) 문서를 참고 바랍니다. 컬렉션은 에디터상에서 배치해도 되고 컴파일 타임에 게임으로 복제할 수도 있는데, 동적으로 게임에 추가하는 방법으로는 아래 두 가지가 있습니다.
 
-1. 컬렉션 프록시(Collection proxy)를 통해 로드하는 방법. 이 방법은 근본적으로 고립된 새 월드(new isolated world)(물리 반응 방식을 포함함)를 실행중인 게임에 불러옵니다. 로드된 컬렉션은 새 소켓 으로 엑세스할 수 있으며, 컬렉션에 포함된 모든 에셋은 프록시가 로딩을 시작한다는 메세지를 받으면 프록시를 통해 로드됩니다. 이 방식은 레벨 스테이지를 변경하려는 경우에 아주 유용하게 사용됩니다. 더 많은 정보를 알고 싶다면 [Collection proxy](Collection%20proxy) 문서를 참고 바랍니다.
+1. 컬렉션 프록시(Collection proxy)를 통해 로드하는 방법. 이 방법은 근본적으로 고립된 새 월드(new isolated world)(물리 반응 방식을 포함함)를 실행중인 게임에 불러옵니다. 로드된 컬렉션은 새 소켓 으로 엑세스할 수 있으며, 컬렉션에 포함된 모든 에셋은 프록시가 로딩을 시작한다는 메세지를 받으면 프록시를 통해 로드됩니다. 이 방식은 레벨 스테이지를 변경하려는 경우에 아주 유용하게 사용됩니다. 더 많은 정보를 알고 싶다면 [Collection proxy](/manuals/collection-proxy) 문서를 참고 바랍니다.
 
 2. 컬렉션 팩토리(Collection factory) 컴포넌트는  현재의 메인 컬렉션에 컬렉션 프록시의 컨텐츠를 스폰 할 수 있게 해줍니다. 이 방식은 마치 어떤 컬렉션 안에 있는 모든 오브젝트들에게 일일히 팩토리(factory) 컴포넌트를 넣어서 오브젝트간 부-모 계층을 만드는 방식과 유사합니다. 일반적인 사용처로는 게임 오브젝트가 여러 개의 게임 오브젝트로 구성된 적(enemy: 몸체+무기) 같은 개체를 스폰하는데 유용합니다.
 

+ 3 - 3
docs/ko/manuals/collection-proxy.md

@@ -25,7 +25,7 @@ Defold는 컬렉션에 모든 게임 오브젝트를 구성합니다. 이 매뉴
 ## Worlds
 컬렉션 프록시를 통하면 최상위 컬렉션을 전환하거나 한 개 이상의 최상위 컬렉션을 게임 엔진에 로드하는 것이 가능합니다. 단, 각 최상위 컬렉션은 분리된 물리 월드이며 물리 상호작용(Physics interactions: collisions, triggers, ray-casts)은 동일한 컬렉션에 소속된 오브젝트 끼리만 발생한다는 것을 알아 둬야 합니다. 즉, 각기 다른 최상위 컬렉션에 소속된 오브젝트들 사이에서는 물리 상호작용이 발생하지 않습니다.
 
-아래 예제에서는 게임 월드를 컬렉션 프록시를 통해 동적으로 로드되는 두 개의 컬렉션으로 분할했습니다. 두 컬렉션의 로드 및 언로드는 "loader"라는 게임 오브젝트에 의해 제어되며 이 오브젝트는 메인 컬렉션인 "worlds"에 들어 있습니다. 게임이 시작될때  "worlds.collection" 파일을 자동으로 로드하도록 구성([Project settings](Project%20settings) 참고)합니다. "world" 컬렉션은 "loader" 오브젝트 뿐만아니라 우리가 캐릭터를 움직일 수 있게 해주는 GUI 요소도 포함하고 있습니다.
+아래 예제에서는 게임 월드를 컬렉션 프록시를 통해 동적으로 로드되는 두 개의 컬렉션으로 분할했습니다. 두 컬렉션의 로드 및 언로드는 "loader"라는 게임 오브젝트에 의해 제어되며 이 오브젝트는 메인 컬렉션인 "worlds"에 들어 있습니다. 게임이 시작될때  "worlds.collection" 파일을 자동으로 로드하도록 구성([Project settings](/manuals/project-settings) 참고)합니다. "world" 컬렉션은 "loader" 오브젝트 뿐만아니라 우리가 캐릭터를 움직일 수 있게 해주는 GUI 요소도 포함하고 있습니다.
 
 ![Worlds 1](images/collection_proxies/collection_proxy_worlds_loader.png)
 
@@ -98,7 +98,7 @@ function on_message(self, message_id, message, sender)
 
 "init" 메세지로 프록시를 통해 컬렉션을 초기화(Initializing) 하는 것은 컬렉션에 포함된 모든 오브젝트들을 재귀적으로(recursively) 초기화 합니다. "enable" 메세지로 프록시를 통해 컬렉션을 활성화(Enabling)하는 것도 컬렉션에 포함된 모든 오브젝트들을 재귀적으로 활성화 하게 됩니다.
 
-(오브젝트의 생명주기에 대해 자세히 보고 싶다면 [Application lifecycle](Application%20lifecycle) 참고)
+(오브젝트의 생명주기에 대해 자세히 보고 싶다면 [Application lifecycle](/manuals/application-lifecycle) 참고)
 
 "enable"을 로드된 프록시에게 보내면 enable을 수행하기 전에 컬렉션을 자동으로 초기화(init) 합니다. 그러므로 초기화와 활성화 단계 별로 세분화 된 제어가 필요한게 아니라면 그냥 아래처럼 써도 됩니다.
 
@@ -260,7 +260,7 @@ function init(self)
         ...
 ```
 
-이제 "world1" 또는 "world2"의 오브젝트가 "acquire_input_focus" 메세지를 보내서 인풋 액션을 받을 수 있습니다. (입력에 대한 자세한 정보는 [Input](Input)을 참고하세요.)
+이제 "world1" 또는 "world2"의 오브젝트가 "acquire_input_focus" 메세지를 보내서 인풋 액션을 받을 수 있습니다. (입력에 대한 자세한 정보는 [Input](/manuals/input)을 참고하세요.)
 
 
 ## Time step

+ 2 - 2
docs/ko/manuals/facebook.md

@@ -34,7 +34,7 @@ Facebook 연동 개발을 하려면 Facebook developer에 가입해야 합니다
 
 ![App dashboard settings](images/facebook/add_platform.png)
 
-**Settings** 탭을 클릭해서 숫자로 된 **App ID**를 확인합니다. 이 식별자는 Defold 게임의 [project settings](project%20settings)에 필요한 값입니다. 불행히도 이 설정은 에디터에서는 숨겨져 있지만(곧 변경될 예정임), "game.project"에 마우스 오른쪽 클릭해서 **Open With ▸ Text Editor** 메뉴를 선택해서 식별자를 쉽게 추가할 수 있습니다.
+**Settings** 탭을 클릭해서 숫자로 된 **App ID**를 확인합니다. 이 식별자는 Defold 게임의 [project settings](/manuals/project-settings)에 필요한 값입니다. 불행히도 이 설정은 에디터에서는 숨겨져 있지만(곧 변경될 예정임), "game.project"에 마우스 오른쪽 클릭해서 **Open With ▸ Text Editor** 메뉴를 선택해서 식별자를 쉽게 추가할 수 있습니다.
 
 ![Open project settings with](images/facebook/project_open_with.png)
 
@@ -58,7 +58,7 @@ Android의 경우 **Google Play Package Name**에 "game.project"에서 설정한
 $ cat certificate.pem | openssl x509 -outform der | openssl sha1 -binary | openssl base64
 ```
 
-(서명 파일을 생성하는 자세한 방법은 Android 매뉴얼의 [Creating certificates and keys](android#Creating-certificates-and-keys)에서 참고 바랍니다.)
+(서명 파일을 생성하는 자세한 방법은 Android 매뉴얼의 [Creating certificates and keys](/manuals/android#Creating-certificates-and-keys)에서 참고 바랍니다.)
 
 ![Android settings](images/facebook/settings_android.png)
 

+ 1 - 1
docs/ko/manuals/factory.md

@@ -26,7 +26,7 @@ factory.create() 함수는 5개의 파라메터를 가집니다.
 #### [rotation]
 새 게임 오브젝트의 월드 로테이션(world rotation). quat(쿼터니온) 형식임
 #### [properties]
-게임 오브젝트와 초기화 되는 스크립트 속성값의 Lua 테이블. 자세한 내용은 [Script properties](Script%20properties) 매뉴얼 참고
+게임 오브젝트와 초기화 되는 스크립트 속성값의 Lua 테이블. 자세한 내용은 [Script properties](/manuals/script-properties) 매뉴얼 참고
 #### [scale]
 스폰된 게임오브젝트의 스케일(scale). 0보다 큰 숫자로 입력하면 모든 축(axis)에 동일한 사이즈로 변경되며, vector3로 입력하면 축마다 다른 크기로 스케일링 할 수 있음
 

+ 1 - 1
docs/ko/manuals/gui-spine.md

@@ -3,7 +3,7 @@
 
 > 현재, 스파인 노드는 스파인 이벤트를 지원하지 않습니다. **SpineModel** 게임 오브젝트는 애니메이션 타임라인의 이벤트를 포함하고 게임오브젝트에 메세지를 전송할 수 있지만 스파인 노드에서는 지원되지 않습니다.
 
-임포트된 스파인 본 애니메이션(Spine bone animation)은 게임 오브젝트 뿐 아니라 GUI 씬에서도 사용할 수 있습니다(**SpineModel** 컴포넌트를 통해서). Defold에서 스파인 본 애니메이션을 동작시키기 위해, 먼저 애니메이션 데이터를 임포트하고 스파인 씬(Spine Scene) 리소스를 설정해야 합니다. 이를 위한 설명은 [Spine animation](Spine animation) 문서를 참고하시기 바랍니다.
+임포트된 스파인 본 애니메이션(Spine bone animation)은 게임 오브젝트 뿐 아니라 GUI 씬에서도 사용할 수 있습니다(**SpineModel** 컴포넌트를 통해서). Defold에서 스파인 본 애니메이션을 동작시키기 위해, 먼저 애니메이션 데이터를 임포트하고 스파인 씬(Spine Scene) 리소스를 설정해야 합니다. 이를 위한 설명은 [Spine animation](/manuals/spine) 문서를 참고하시기 바랍니다.
 
 GUI 씬에서 스파인 씬 리소스의 컨텐츠를 사용하려면, **Outline** 창의 **Spine Scenes** 폴더에 마우스 오른쪽 버튼을 눌려 **Add Spine Scene** 메뉴를 선택하고 사용하려는 스파인 씬을 선택합니다.
 

+ 10 - 10
docs/ko/manuals/gui.md

@@ -16,12 +16,12 @@ GUI는 컬렉션의 좌표계에 속하지 않고, 게임 뷰와는 독립적으
 GUI 컴포넌트는 여러 개의 노드로 구성됩니다. 노드는 아래 항목에 해당하는 시각적 오브젝트입니다.
 
 * Box node, 사각형에 색상이나 텍스쳐로 채워짐
-* Text node, 자세한 것은 [Text nodes](Text%20nodes) 문서 참고
-* Pie node, 자세한 것은 [Pie nodes](Pie%20nodes) 문서 참고
-* Template node, 자세한 것은 [Template nodes](Template%20nodes) 문서 참고
-* Spine node, 자세한 것은 [Spine nodes](Spine%20nodes) 문서 참고
+* Text node, 자세한 것은 [Text nodes](/manuals/gui-text) 문서 참고
+* Pie node, 자세한 것은 [Pie nodes](/manuals/gui-pie) 문서 참고
+* Template node, 자세한 것은 [Template nodes](/manuals/gui-template) 문서 참고
+* Spine node, 자세한 것은 [Spine nodes](/manuals/gui-spine) 문서 참고
 
-노드는 단순하고 어떠한 로직도 포함하고 있지 않습니다. 에디터상에서나 런타임시 스크립트를 통하여 이동(translate or move)하거나 부-모 관계를 정렬(order)시킬 수는 있습니다. 스크립트 코드로 GUI 컴포넌트의 모든 노드들에게 직접적으로 액세스 할 수 있습니다. 노드는 스크립트로 애니메이션 시킬 수 있고(아래 [Property animation](Property%20animation) 참고) 애니메이션은 노드에서 실행될 수 있습니다(Box node의 플립북(flipbook) 애니메이션 그리고 Spine node의 본(bone) 애니메이션).
+노드는 단순하고 어떠한 로직도 포함하고 있지 않습니다. 에디터상에서나 런타임시 스크립트를 통하여 이동(translate or move)하거나 부-모 관계를 정렬(order)시킬 수는 있습니다. 스크립트 코드로 GUI 컴포넌트의 모든 노드들에게 직접적으로 액세스 할 수 있습니다. 노드는 스크립트로 애니메이션 시킬 수 있고(아래 [Property animation](/manuals/animation/#_property_animation) 참고) 애니메이션은 노드에서 실행될 수 있습니다(Box node의 플립북(flipbook) 애니메이션 그리고 Spine node의 본(bone) 애니메이션).
 
 "Nodes" 폴더에서 마우스 오른쪽 버튼을 눌러 "Add Box", "Add Text", "Add Pie", "Add Template", "Add Spine Node" 중 하나를 선택해 노드를 추가합니다.
 
@@ -38,11 +38,11 @@ GUI 컴포넌트는 여러 개의 노드로 구성됩니다. 노드는 아래 
 * Adjust mode, Pivot, Xanchor, Yanchor
 * Font, Text, Line-break (text node 전용)
 * Index, Layer, Parent
-* Clipping (box node와 pie node 전용) (자세한 것은 [Clipping](gui-clipping) 참고)
+* Clipping (box node와 pie node 전용) (자세한 것은 [Clipping](/manuals/gui-clipping) 참고)
 
 이들 프로퍼티는 에디터의 프로퍼티 탭에서 수정(인덱스(index) 설정과 부모관계(parenting) 설정은 안됨)하거나 스크립트를 통해 수정([GUI API](http://www.defold.com/ref/gui) 참고)하는 것이 가능합니다.
 
-이들 각 프로퍼티는 스크립트를 통해 애니메이션을 적용할 수도 있습니다. (아래 [Property animation](Property%20animation) 참고) 
+이들 각 프로퍼티는 스크립트를 통해 애니메이션을 적용할 수도 있습니다. (아래 [Property animation](/manuals/animation/#_property_animation) 참고) 
 
 ## Textures and flip book animations
 GUI 인터페이스 컴포넌트의 일부분으로 텍스쳐 아틀라스나 타일 소스의 이미지나 애니메이션을 사용 할 수 있습니다. 먼저 이미지 리소스(아틀라스 혹은 타일 소스)가 추가하면 이 리소스에 포함된 모든 이미지와 애니메이션을 GUI 노드에 반영할 수 있습니다. 상단의 "GUI" 메뉴를 사용하거나 키보드 단축키를 사용하거나 "Textures" 폴더에 마우스 오른쪽 버튼을 눌러서 텍스쳐를 추가해 보세요.
@@ -336,7 +336,7 @@ gui.animate(node, property, to, easing, duration [,delay] [,complete_function] [
 
 > 이 파라미터에 대한 자세한 설명은 [go.animate()](http://www.defold.com/ref/go/#go.animate) 참고
 
-"property" 파라미터는 일반적으로 상수값(gui.PROP_POSITION 등등)이 주어지지만 프로퍼티 가이드의 설정([Properties](Properties) 참고)도 지원합니다. 복합적인 프로퍼티 값의 특정한 컴포넌트를 애니메이션 하려면 이 방법이 편리합니다.
+"property" 파라미터는 일반적으로 상수값(gui.PROP_POSITION 등등)이 주어지지만 프로퍼티 가이드의 설정([Properties](/manuals/properties) 참고)도 지원합니다. 복합적인 프로퍼티 값의 특정한 컴포넌트를 애니메이션 하려면 이 방법이 편리합니다.
 
 예를 들어, "color" 프로퍼티는 vector4 값으로 red, green, blue, alpha의 RGBA 값을 나타내는데, 벡터 컴포넌트는 "x", "y", "z" 그리고 "w"로 이름이 정해져 있으며 RGBA 순서대로 "w"는 alpha 값에 반영됩니다.
 
@@ -357,7 +357,7 @@ end
 이제 fadeup() 이나 fadedown() 을 호출하여 노드의 알파값을 애니메이션 처리할 수 있습니다. "complete_function" 프로퍼티를 사용하면 애니메이션을 완료될 때 호출되게 해서 페이드 업과 페이드 다운을 끊임없이 지속되게 할 수 있습니다.
 
 ## Render script
-기본 렌더 스크립트는 게임 컨텐츠의 모든 렌더링을 다루는 루아 스크립트로 되어 있으며(자세한 내용은 [Rendering](Rendering) 문서 참고), 게임의 상위에서 GUI 노드들을 렌더링 하도록 별도 방법으로 설정됩니다.
+기본 렌더 스크립트는 게임 컨텐츠의 모든 렌더링을 다루는 루아 스크립트로 되어 있으며(자세한 내용은 [Rendering](/manuals/rendering) 문서 참고), 게임의 상위에서 GUI 노드들을 렌더링 하도록 별도 방법으로 설정됩니다.
 
 ```lua
 ...
@@ -370,7 +370,7 @@ render.draw(self.text_pred)
 ...
 ```
 
-이 뷰는 [일반 단위 행렬(normal identity matrix)](https://ko.wikipedia.org/wiki/단위행렬)이며 직교(orthographic)로 투영(projection)됩니다. "builtins/render" 폴더에서 "default.render_script" 와 "default.render" 파일을 복사하고 project settings([Project settings](Project%20settings) 참고)에서 "bootstrap" 섹션의 렌더러를 수정하여 렌더 스크립트를 커스터마이징 할 수 있습니다.
+이 뷰는 [일반 단위 행렬(normal identity matrix)](https://ko.wikipedia.org/wiki/단위행렬)이며 직교(orthographic)로 투영(projection)됩니다. "builtins/render" 폴더에서 "default.render_script" 와 "default.render" 파일을 복사하고 project settings([Project settings](/manuals/project-settings) 참고)에서 "bootstrap" 섹션의 렌더러를 수정하여 렌더 스크립트를 커스터마이징 할 수 있습니다.
 
 예를 들어, 모든 GUI 컴포넌트를 3D "camera" 뷰와 원근 투영(perspective projection)을 사용하여 렌더링 할 수 있습니다.
 

+ 1 - 1
docs/ko/manuals/iap.md

@@ -33,7 +33,7 @@ iOS 와 Android 의 구매 절차는 비슷합니다.
 
 1. Apple 이나 Google Play 의 개발자로 등록되었는지 확인합니다.
 
-2. 대상 디바이스(target device)에서 동작하도록 프로젝트를 설정합니다. [iOS development](http://www.defold.com/manuals/ios) 그리고 [Android development](http://www.defold.com/manuals/android) 가이드를 참고하세요.
+2. 대상 디바이스(target device)에서 동작하도록 프로젝트를 설정합니다. [iOS development](/manuals/ios) 그리고 [Android development](/manuals/android) 가이드를 참고하세요.
 
 3. 테스트용 앱을 설정합니다:
     * Android는 [Google Play Developer Console](https://play.google.com/apps/publish/) 에서 할 수 있습니다.

+ 2 - 2
docs/ko/manuals/input.md

@@ -19,7 +19,7 @@ Defold는 다양한 장치로부터 입력을 받을 수 있으며 사용자의
 입력 포커스를 획득한 컴포넌트에 따라서 이 입력을 그냥 넘겨버릴지 on_input() 함수로 도달했는지 안했는지가 결정되게 됩니다. 아래에서 이들이 어떻게 작동하는지 자세히 살펴 보도록 하겠습니다.
 
 ## Input bindings
-입력 바인딩은 Lua 스크립트로 입력값을 보내기 이전에 원시 입력(raw input)을 의미 있는 **actions**으로 번역하기 위한 테이블입니다. 입력 바인딩은 기본적으로 "game.input_binding"라는 이름으로 프로젝트 루트의 "input" 폴더에 위치해 있습니다. 하지만 엔진이 바인딩을 찾을 수 있도록 프로젝트 셋팅([Project settings](Project%20settings) 참고)을 업데이트해서 경로와 이름을 수정할 수도 있습니다.
+입력 바인딩은 Lua 스크립트로 입력값을 보내기 이전에 원시 입력(raw input)을 의미 있는 **actions**으로 번역하기 위한 테이블입니다. 입력 바인딩은 기본적으로 "game.input_binding"라는 이름으로 프로젝트 루트의 "input" 폴더에 위치해 있습니다. 하지만 엔진이 바인딩을 찾을 수 있도록 프로젝트 셋팅([Project settings](/manuals/project-settings) 참고)을 업데이트해서 경로와 이름을 수정할 수도 있습니다.
 
 ![Input set bindings](images/input/input_set_bindings.png)
 
@@ -101,7 +101,7 @@ end
 #### action.pressed
 입력이 검출된 첫번째 프레임에서 true, 그외에는 false
 #### action.repeated
-입력이 반복되고 있으면 true, 그 외에는 false. 이 값은 기본적으로 매 프레임마다 설정되지는 않지만 [프로젝트 설정(project settings)](Project settings#input)의 repeat_delay와 repeat_interval 의 설정에 따라 달라집니다.
+입력이 반복되고 있으면 true, 그 외에는 false. 이 값은 기본적으로 매 프레임마다 설정되지는 않지만 [프로젝트 설정(project settings)](/manuals/project-settings#input)의 repeat_delay와 repeat_interval 의 설정에 따라 달라집니다.
 #### action.released
 입력이 해지(release)된 프레임에 true, 그 외에는 false
 

+ 1 - 1
docs/ko/manuals/ios.md

@@ -73,7 +73,7 @@ iOS 장치에서 게임을 실행하려면 Defold dev app과 에디터가 같은
 2. iOS 장치에서 Defold dev app 실행하기
 3. 에디터에서  **Project > Targets** 에 있는 당신의 장치 선택
 4. 게임을 실행하기 위해 **Project > Build And Launch** 선택하기. 게임 컨텐츠가 네트워크를 통해서 장치로 스트림 되므로 게임이 시작되는데 시간이 걸릴 수 있음.
-5. 게임이 실행되는 동안, 평소처럼 [핫 리로드(hot-reload)](Debugging#hot-reloading)도 할 수 있음
+5. 게임이 실행되는 동안, 평소처럼 [핫 리로드(hot-reload)](/manuals/debugging#_hot-reloading)도 할 수 있음
 
 ## Creating an iOS application bundle
 에디터에서 게임용 독립 어플리케이션 번들(stand alone application bundle)도 쉽게 생성할 수 있습니다. 메뉴에서 **Project > Bundle…​ > iOS Application…​** 를 선택하기만 하면 됩니다.

+ 1 - 1
docs/ko/manuals/libraries.md

@@ -8,7 +8,7 @@
 * 직접 참조할 수 있는 완성된 오브젝트나 스크립트의 라이브러리들을 개발하는 경우.  이 방법은 애니메이션이나 사운드 에셋, 그래픽 공유 라이브러리를 개발하거나 공통 스크립트 모듈을 저장하는데 유용합니다.
 
 ## Setting up library sharing
-예를 들어 공유된 스프라이트와 타일 소스를 포함하는 라이브러리를 개발하려 한다고 가정해 봅시다. 당신은 Defold 대쉬보드(자세한 내용은 [Workflow 문서](Workflow) 참고)에서 새 프로젝트를 설정하는 것으로 시작합니다. 프로젝트에서 공유하려는 폴더를 결정하고 프로젝트 셋팅에서 "include_dirs" 프로퍼티에 이 폴더들의 이름을 추가합니다. 여러 개의 폴더를 추가하려면 공백(space)로 이름을 구분하면 됩니다.
+예를 들어 공유된 스프라이트와 타일 소스를 포함하는 라이브러리를 개발하려 한다고 가정해 봅시다. 당신은 Defold 대쉬보드(자세한 내용은 [Workflow 문서](/manuals/workflow) 참고)에서 새 프로젝트를 설정하는 것으로 시작합니다. 프로젝트에서 공유하려는 폴더를 결정하고 프로젝트 셋팅에서 "include_dirs" 프로퍼티에 이 폴더들의 이름을 추가합니다. 여러 개의 폴더를 추가하려면 공백(space)로 이름을 구분하면 됩니다.
 
 ![Include dirs](images/libraries/libraries_include_dirs.png)
 

+ 1 - 1
docs/ko/manuals/live-update.md

@@ -151,7 +151,7 @@ Services 메뉴를 열고 Storage 카테고리([Amazon S3 Console](https://conso
 ### 3. Add a CORS configuration to your bucket (Optional)
 [Cross-Origin Resource Sharing (CORS)](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)는 JavsScript를 사용하여 웹사이트에서 서로 다른 도메인의 리소스를 탐색하게 해 주는 메커니즘입니다. 만약 당신의 게임을 HTML5로 배포하려 한다면, CORS 설정을 당신의 버켓에 추가해야 합니다.
 
-사용하려는 버켓을 선택하고 **Properties** 패널을 열어 패널에서 **Permissions** 옵션을 확장하세요. **Add CORS Configuration** 버튼을 클릭해서 버켓 정책을 열어보세요. 아래 샘플의 Configuration 은 와일드카드(*) 도메인을 지정해서 어떤 웹사이트에서든 액세스되게 할 수 있지만, 게임을 실행할 웹사이트의 도메인을 알고 있다면 액세스를 제한하는 것도 가능합니다. Amazon CORS configuration 에 대한 더 많은 정보를 알고 싶다면 [Amazon 문서](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html)를 참고 바랍니다.
+사용하려는 버켓을 선택하고 **Properties** 패널을 열어 패널에서 **Permissions** 옵션을 확장하세요. **Add CORS Configuration** 버튼을 클릭해서 버켓 정책을 열어보세요. 아래 샘플의 Configuration 은 와일드카드(\*) 도메인을 지정해서 어떤 웹사이트에서든 액세스되게 할 수 있지만, 게임을 실행할 웹사이트의 도메인을 알고 있다면 액세스를 제한하는 것도 가능합니다. Amazon CORS configuration 에 대한 더 많은 정보를 알고 싶다면 [Amazon 문서](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html)를 참고 바랍니다.
 
 ```xml
 <?xml version="1.0" encoding="UTF-8"?>

+ 1 - 1
docs/ko/manuals/lua.md

@@ -6,7 +6,7 @@
 ## Lua versions
 우리는 Defold가 모든 플랫폼에서 같은 동작을 하는데 촛점을 맞추고 있습니다. 하지만 현재 Lua 버전간에 약간의 불일치가 있습니다.  HTML5와 iOS 64 비트 플랫폼의 경우 우리는 Lua 5.1을 사용하지만 다른 플랫폼에서는 LuaJIT을 사용합니다. LuaJIT은 5.1 기반이긴 하지만 몇가지 부가적인 기능이 더 추가되었습니다.
 
-**게임이 모든 플랫폼에서 동일하게 작동하도록 하려면 Lua 5.1에 맞춰 개발하는것이 좋습니다. **
+**게임이 모든 플랫폼에서 동일하게 작동하도록 하려면 Lua 5.1에 맞춰 개발하는것이 좋습니다.**
 
 ## Lua books and resources
 - Programming in Lua (first edition) Later editions are available in print.

+ 2 - 2
docs/ko/manuals/material.md

@@ -32,7 +32,7 @@ Defold는 모바일 장치에서 렌더링 하기 위해 OpenGL ES 2.0을 사용
 ![Shader files](images/materials/materials_shader_files.png)
 
 ### Material tags
-당신의 렌더 스크립트(render script)가 새 메터리얼을 사용하는 컴포넌트를 렌더링 할 수 있으므로 당신은 메터리얼을 위한 태그(tag)를 설정해야 합니다. 태그는 엔진에서 render.predicate()에 의해 함께 렌더링해야 하는 컴포넌트들을 수집하기위해 사용되며 비트마스크(bitmask)로 표시됩니다. 이를 수행하는 방법을 알고 싶다면 [Rendering](Rendering)문서를 참고 바랍니다.
+당신의 렌더 스크립트(render script)가 새 메터리얼을 사용하는 컴포넌트를 렌더링 할 수 있으므로 당신은 메터리얼을 위한 태그(tag)를 설정해야 합니다. 태그는 엔진에서 render.predicate()에 의해 함께 렌더링해야 하는 컴포넌트들을 수집하기위해 사용되며 비트마스크(bitmask)로 표시됩니다. 이를 수행하는 방법을 알고 싶다면 [Rendering](/manuals/rendering)문서를 참고 바랍니다.
 
 > 프로젝트에서 사용할 수 있는 최대 태그의 수는 32개 입니다.
 
@@ -97,7 +97,7 @@ void main()
 ```
 
 ### Setting the material
-각 그래픽 오브젝트의 타입은 **Material** 속성을 가지고 있으며 각 컴포넌트마다 특정 메터리얼을 설정할 수 있습니다. 메터리얼을 설정하지 않으면, 기본 메터리얼이 자동으로 선택됩니다. 직접 새로 만든 메터리얼을 사용하여 모델 렌더(model render)를 만들기 위해서는, **Material** 속성을 설정하여 메터리얼 파일을 참조하면 됩니다. [Models](Model (3D)) 문서에서 어떻게 3D 모델을 Defold로 임포트 하는지 가이드를 볼 수 있습니다.
+각 그래픽 오브젝트의 타입은 **Material** 속성을 가지고 있으며 각 컴포넌트마다 특정 메터리얼을 설정할 수 있습니다. 메터리얼을 설정하지 않으면, 기본 메터리얼이 자동으로 선택됩니다. 직접 새로 만든 메터리얼을 사용하여 모델 렌더(model render)를 만들기 위해서는, **Material** 속성을 설정하여 메터리얼 파일을 참조하면 됩니다. [Models](/manuals/model) 문서에서 어떻게 3D 모델을 Defold로 임포트 하는지 가이드를 볼 수 있습니다.
 
 ![Set material](images/materials/materials_set_material.png)
 

+ 2 - 2
docs/ko/manuals/message-passing.md

@@ -5,7 +5,7 @@
 
 Defold의 Lua 통합(integration)은 Java, C++, C# 같이 상속을 사용한 클래스 구조로 어플리케이션을 개발하듯이 객체지향을 제공하지는 않습니다. 대신 Defold는 아래와 같이 간단하고 강력한 객체 지향 설계로 Lua의 기능을 확장합니다:
 
-* 오브젝트간 통신을 위한 [메세지 전달(Message passing)](Message%20passing)
+* 오브젝트간 통신을 위한 [메세지 전달(Message passing)](/manuals/message-passing)
 * 모든 오브젝트는 자체적인 내부 상태와 제어 가능한 자체 메모리를 가짐. "self" 참조를 통해서 가능함
 * 기존 오브젝트에 메세지를 보낼 수 있으며, 메세지에 어떻게 응답할지는 코드에 따라 다름. on_message() 함수를 통해 메시지를 받을 수 있으며 특정 메세지를 처리하는 코드가 없으면 아무 일도 일어나지 않음
 
@@ -48,7 +48,7 @@ Defold의 모든 오브젝트는 URL(Uniform Resource Locator)을 통해 고유
 대부분의 경우에 이러한 URL 컴포넌트는 게임 오브젝트나 컴포넌트를 지명하는데 사용되긴 하지만 이 형식은 일반적입니다.
 
 #### socket
-발신자 혹은 수신자가 존재하는 "world"를 식별합니다. 이는 [컬렉션 프록시(Collection proxy)](Collection%20proxy)를 사용하는데 매우 중요하며 동적으로 불러운 컬렉션을 식별하는데 사용됩니다.
+발신자 혹은 수신자가 존재하는 "world"를 식별합니다. 이는 [컬렉션 프록시(Collection proxy)](/manuals/collection-proxy)를 사용하는데 매우 중요하며 동적으로 불러운 컬렉션을 식별하는데 사용됩니다.
 
 #### path
 URL의 이 부분은 일반적으로 타겟 게임 오브젝트의 전체 id를 포함합니다.

+ 1 - 1
docs/ko/manuals/modules.md

@@ -92,7 +92,7 @@ function on_message(self, message_id, message, sender)
 end
 ```
 
-코드를 실행하면 두 나비가 동일한 원점을 기준으로 겹쳐 날아다니기 시작합니다. 여기서 일어나는 일을 이해하려면, Defold가 [Lua contexts](Lua%20in%20Defold)를 관리하는 방법을 다시 살펴보시기 바랍니다.
+코드를 실행하면 두 나비가 동일한 원점을 기준으로 겹쳐 날아다니기 시작합니다. 여기서 일어나는 일을 이해하려면, Defold가 [Lua contexts](/manuals/lua)를 관리하는 방법을 다시 살펴보시기 바랍니다.
 
 여기엔 파란색과 노란색 나비에게는 두 게임 오브젝트간 글로벌 데이터를 공유하면서 생긴 부작용이 있었습니다. origin 변수의 정의(definition)부분을 다시 살펴봅시다.
 

+ 2 - 2
docs/ko/manuals/particlefx.md

@@ -13,7 +13,7 @@
 * **ParticleFX** - 파티클 효과를 나타내는 컴포넌트
 * **Emitter** - 모양에 따라 일정하게 분포된 파티클 입자를 방출(emit)하는 위치가 지정된 모형(positioned shape)
 * **Modifier** - 스폰된 파티클들의 속도(velocity), 가속도(acceleration), 저항(drag), 방사형(radial), 회오리형(vortex)에 영향을 줌
-* **Tile source** - 텍스쳐와 플립북 애니메이션을 추가해서 사용됨 ([2D graphics](2D%20graphics) 문서 참고)
+* **Tile source** - 텍스쳐와 플립북 애니메이션을 추가해서 사용됨 ([2D graphics](/manuals/2dgraphics) 문서 참고)
 
 파티클FX 파일을 생성하고 열어보면 Outline창에서 마우스 오른쪽 버튼을 눌러 emiter와 modifier를 추가할 수 있습니다.
 
@@ -22,7 +22,7 @@
 ![](images/particlefx/emitter_properties.png)
 
 ## Previewing
-파티클 효과를 미리보기 하려면, 씬 에디터를 사용하면 됩니다. [Scene Editing](Scene%20editing) 에서 자세한 설명을 볼 수 있습니다. 스페이스 키를 사용하면 파티클 효과의 미리보기를 시작하고 중지할 수 있습니다. 파티클 효과가 플레이중인지 아닌지와 상관 없이, 실시간으로 조정(tweak)하면서 파티클을 업데이트 할 수 있습니다.
+파티클 효과를 미리보기 하려면, 씬 에디터를 사용하면 됩니다. [Scene Editing](/manuals/scene-editing) 에서 자세한 설명을 볼 수 있습니다. 스페이스 키를 사용하면 파티클 효과의 미리보기를 시작하고 중지할 수 있습니다. 파티클 효과가 플레이중인지 아닌지와 상관 없이, 실시간으로 조정(tweak)하면서 파티클을 업데이트 할 수 있습니다.
 
 ## Value tweaking
 숫자로 된 모든 속성들은 alt키를 누른채 마우스 휠(혹은 트랙패드에서 스크롤 제스쳐)을 사용하여 조정할 수 있습니다. alt키를 ctrl키와 같이 눌러 사용하면 10배가 증가된 값으로 조정할 수 있습니다.

+ 3 - 3
docs/ko/manuals/properties.md

@@ -5,9 +5,9 @@
 Defold에서는 여러 개의 프로퍼티 세트가 있습니다.
 
 * 시스템이 정의한 게임 오브젝트 트랜스폼 (위치, 회전, 스케일) 그리고 컴포넌트별 특정 프로퍼티(예를 들어, 스프라이트의 픽셀 사이즈나 충돌 오브젝트의 질량값 등)
-* Lua 스크립트에 정의된 스크립트 컴포넌트의 프로퍼티 (자세한 것은 [Script properties](Script properties) 문서 참고)
+* Lua 스크립트에 정의된 스크립트 컴포넌트의 프로퍼티 (자세한 것은 [Script properties](/manuals/script-properties) 문서 참고)
 * GUI 노드 프로퍼티
-* 쉐이더나 메터리얼 파일에 정의된 쉐이더 상수 (자세한 것은 [Material](Material) 문서 참고)
+* 쉐이더나 메터리얼 파일에 정의된 쉐이더 상수 (자세한 것은 [Material](/manuals/material) 문서 참고)
 
 프로퍼티가 어디에 있는지에 따라 보통의 함수 혹은 특정 함수를 통해 액세스 할 수있습니다. 많은 프로퍼티들은 자동으로 에니메이션될 수 있습니다. 내장 시스템을 통한 애니메이션 프로퍼티는 직접 프로퍼티를 다루는 것(update() 함수 내에서) 보다 성능과 편리함을 이유로 강력히 권장합니다.
 
@@ -18,7 +18,7 @@ Defold에서는 여러 개의 프로퍼티 세트가 있습니다.
 go.set("game_object", "position.x", 10)
 ```
 
-go.get(), go.set(), go.animate() 함수는 첫번째 인자와 두번째의 프로퍼티 식별자로 레퍼런스를 얻게 됩니다. 이 레퍼런스는 게임 오브젝드나 컴포넌트를 식별하며 문자열이나 해쉬나 URL이 될 수 있습니다. URL은 [Message passing](Message passing) 문서에 자세히 설명되어 있습니다. 프로퍼티 식별자는 프로퍼티에 이름을 지정하는 문자열 혹은 해쉬값입니다.
+go.get(), go.set(), go.animate() 함수는 첫번째 인자와 두번째의 프로퍼티 식별자로 레퍼런스를 얻게 됩니다. 이 레퍼런스는 게임 오브젝드나 컴포넌트를 식별하며 문자열이나 해쉬나 URL이 될 수 있습니다. URL은 [Message passing](/manuals/message-passing) 문서에 자세히 설명되어 있습니다. 프로퍼티 식별자는 프로퍼티에 이름을 지정하는 문자열 혹은 해쉬값입니다.
 
 ```lua
 -- sprite 컴포넌트의 x-scale 값을 변경

+ 4 - 4
docs/ko/manuals/rendering.md

@@ -21,10 +21,10 @@
 
 물론 그냥 처음부터 렌더 스크립트 파일을 새로 생성해도 되지만, Defold와 OpenGL ES 렌더링을 처음 다뤄보는 사용자라면 기존 스크립트에서 복사해서 편집하는 방식이 좋은 접근법입니다.
 
-> 렌더 스크립트는 게임의 라이프사이클 내에서 특별한 위치에 있습니다. 자세한 내용은 [Application lifecycle](Application%20lifecycle) 문서에서 찾을 수 있습니다.
+> 렌더 스크립트는 게임의 라이프사이클 내에서 특별한 위치에 있습니다. 자세한 내용은 [Application lifecycle](/manuals/application-lifecycle) 문서에서 찾을 수 있습니다.
 
 ## Render predicates
-render predicates(렌더 술어 or 조건자)는 오브젝트의 그리기 순서(draw order)를 제어할 수 있습니다. predicate는 메터리얼 태그의 선택을 기반으로 무엇을 그릴 것인지 선언합니다. 화면에 그려지는 각 오브젝트는 메터리얼을 포함하고 있으며, 오브젝트를 어떻게 정확히 화면에 그릴지, 어떤 쉐이더 프로그램을 실행할지를 제어합니다. 메터리얼에서는, 메터리얼과 연관된 한 개 이상의 태그를 지정할 수 있습니다. 이것은 게임을 빌드할 때 비트 필드(bit field)로 컴파일 되지만, 에디터상에서는 보통의 텍스트 태그로 나타납니다. 렌더 스크립트에서 한두개 렌더 predicate를 만들고 이 predicate가 속할 태그를 지정해 보세요. 마지막으로 predicate를 그릴 때에는, predicate에 지정된 목록과 일치하는 태그를 포함한 메터리얼이 있는 각 오브젝트가 그려집니다. 메터리얼에 대한 더 자세한 설명은 [Material](Material) 문서에서 찾을 수 있습니다.
+render predicates(렌더 술어 or 조건자)는 오브젝트의 그리기 순서(draw order)를 제어할 수 있습니다. predicate는 메터리얼 태그의 선택을 기반으로 무엇을 그릴 것인지 선언합니다. 화면에 그려지는 각 오브젝트는 메터리얼을 포함하고 있으며, 오브젝트를 어떻게 정확히 화면에 그릴지, 어떤 쉐이더 프로그램을 실행할지를 제어합니다. 메터리얼에서는, 메터리얼과 연관된 한 개 이상의 태그를 지정할 수 있습니다. 이것은 게임을 빌드할 때 비트 필드(bit field)로 컴파일 되지만, 에디터상에서는 보통의 텍스트 태그로 나타납니다. 렌더 스크립트에서 한두개 렌더 predicate를 만들고 이 predicate가 속할 태그를 지정해 보세요. 마지막으로 predicate를 그릴 때에는, predicate에 지정된 목록과 일치하는 태그를 포함한 메터리얼이 있는 각 오브젝트가 그려집니다. 메터리얼에 대한 더 자세한 설명은 [Material](/manuals/material) 문서에서 찾을 수 있습니다.
 
 ![Render predicate](images/rendering/rendering_predicate.png)
 
@@ -52,7 +52,7 @@ function init(self)
 end
 ```
 
-> 커스텀한 프로젝트 셋팅을 어떻게 정의하고 사용할지에 대한 정보는 [Project settings](Project%20settings) 문서에서 찾을 수 있습니다.  게임 카메라가 동작하는 방법에 대해 알고 싶다면 [Camera](Camera) 문서를 참고하세요.
+> 커스텀한 프로젝트 셋팅을 어떻게 정의하고 사용할지에 대한 정보는 [Project settings](/manuals/project-settings) 문서에서 찾을 수 있습니다.  게임 카메라가 동작하는 방법에 대해 알고 싶다면 [Camera](/manuals/camera) 문서를 참고하세요.
 
 #### update()
 update() 함수는 매 프레임 마다 호출됩니다. 이 함수는 OpenGL ES API(OpenGL Embedded Systems API)를 사용하여 실제 드로잉을 처리합니다. update() 함수에서 무슨일이 벌어지는지 이해하기 위해서는 OpenGL이 동작하는 방법을 이해해야만 합니다. OpenGL ES에는 훌륭한 리소스가 많이 있으며 https://www.khronos.org/opengles/ 공식 사이트가 이해를 위한 좋은 출발점이 될 수 있습니다.
@@ -113,7 +113,7 @@ end
 자, 이제 단순하고 직관적인 렌더 스크립트가 완성되었습니다. 이 렌더 스크립트는 매 프레임마다 동일한 방식으로 화면을 그리지만, 만약 렌더 상태(render states)를 도입하여 다른 곳에서 렌더링 파이프라인(render pipeline)을 제어하려고 한다면 어떻게 해야 할까요?
 
 #### on_message()
-이 렌더 스크립트 또한 Defold의 메세지 전달 세상에서는 보통의 시민들과 다를 바 없습니다. 그냥 렌더 스크립트에 on_message() 함수를 정의하는 것으로 게임의 다른 파트에서 렌더 스크립트의 동작에 영향을 주도록 하면 됩니다. 렌더 스크립트에 정보를 보내는 외부 오브젝트에 대한 예제로는 카메라 컴포넌트가 있습니다(자세한 내용은 [Camera](Camera) 문서 참고). 카메라 포커스가 있는 카메라 컴포넌트는 자동적으로 렌더 스크립트에 view와 projection을 보내고 있습니다. 반면 일반 스크립트에서 렌더 스크립트와 통신하려면 특수한 소켓인 @render를 사용하면 됩니다.
+이 렌더 스크립트 또한 Defold의 메세지 전달 세상에서는 보통의 시민들과 다를 바 없습니다. 그냥 렌더 스크립트에 on_message() 함수를 정의하는 것으로 게임의 다른 파트에서 렌더 스크립트의 동작에 영향을 주도록 하면 됩니다. 렌더 스크립트에 정보를 보내는 외부 오브젝트에 대한 예제로는 카메라 컴포넌트가 있습니다(자세한 내용은 [Camera](/manuals/camera) 문서 참고). 카메라 포커스가 있는 카메라 컴포넌트는 자동적으로 렌더 스크립트에 view와 projection을 보내고 있습니다. 반면 일반 스크립트에서 렌더 스크립트와 통신하려면 특수한 소켓인 @render를 사용하면 됩니다.
 
 ```lua
 function on_message(self, message_id, message)

+ 7 - 7
docs/ko/manuals/spine.md

@@ -17,10 +17,10 @@ Defold는 역기구학(IK = inverse kinematic)을 포함한 스파인 애니메
 #### Spine scene
 Defold 리소스는 스파인 JSON 데이터 파일과 뼈대 슬롯(bone slots)을 그래픽으로 채우는데 사용되는 이미지 아틀라스를 함께 연결합니다.
 #### Spine model
-스파인 모델 컴포넌트는 그래픽 및 애니메이션을 화면에 표시하기 위해 게임 오브젝트에 넣어야 합니다. 이 컴포넌트는 애니메이션을 재생하고, 사용할 스킨과 모델을 렌더링 하기 위해 사용되는 메터리얼을 지정하는 스켈레톤 게임 오브젝트 계층구조(skeleton game object hierarchy)를 포함하고 있습니다. 자세한 내용은 [Spine Model](Spine%20model) 문서를 참고 바랍니다.
+스파인 모델 컴포넌트는 그래픽 및 애니메이션을 화면에 표시하기 위해 게임 오브젝트에 넣어야 합니다. 이 컴포넌트는 애니메이션을 재생하고, 사용할 스킨과 모델을 렌더링 하기 위해 사용되는 메터리얼을 지정하는 스켈레톤 게임 오브젝트 계층구조(skeleton game object hierarchy)를 포함하고 있습니다. 자세한 내용은 [Spine Model](/manuals/spine-model) 문서를 참고 바랍니다.
 
 #### Spine Node
-GUI씬에서 스파인 애니메이션을 사용하는 경우, 스파인 모델 컴포넌트 대신 스파인 GUI 노드를 사용하세요. 자세한 것은 [GUI Spine](Spine%20nodes) 문서를 참고 바랍니다.
+GUI씬에서 스파인 애니메이션을 사용하는 경우, 스파인 모델 컴포넌트 대신 스파인 GUI 노드를 사용하세요. 자세한 것은 [GUI Spine](/manuals/gui-spine) 문서를 참고 바랍니다.
 
 ## Animation tools
 Defold가 지원하는 스파인 JSON 데이터 포멧은 Esoteric Software의 스파인 소프트웨어로 만들 수 있습니다. 게다가, 드래곤 본스(Dragon Bones) 또한 스파인 JSON 데이터 파일로 익스포트 할 수 있습니다.
@@ -39,7 +39,7 @@ Defold가 지원하는 스파인 JSON 데이터 포멧은 Esoteric Software의 
 1. 스파인 JSON 버전으로 애니메이션 데이터를 익스포트함
 2. 익스포트된 JSON 파일을 프로젝트 아무데나 복사함
 3. 모델과 관련된 모든 이미지를 프로젝트 아무데나 복사함
-4. 아틀라스 파일을 만들어 이미지들을 추가함 (아틀라스를 만드는 방법은 [2D graphics](2D%20graphics) 문서를 참고)
+4. 아틀라스 파일을 만들어 이미지들을 추가함 (아틀라스를 만드는 방법은 [2D graphics](/manuals/2dgraphics) 문서를 참고)
 
 ![Export JSON from Spine](images/spine/spine_json_export.png)
 
@@ -55,13 +55,13 @@ Defold에서 에니메이션 데이터와 이미지 파일을 임포트하고 
 ![Setup the Spine Scene](images/spine/spine_spinescene.png)
 
 ## Creating SpineModel components
-모든 데이터를 임포트하고 스파인 씬 파일을 준비하면, 스파인 모델을 만들 수 있습니다. 자세한 것은  [SpineModel](Spine%20model) 문서를 참고 바랍니다.
+모든 데이터를 임포트하고 스파인 씬 파일을 준비하면, 스파인 모델을 만들 수 있습니다. 자세한 것은  [SpineModel](/manuals/spinemodel) 문서를 참고 바랍니다.
 
 ## Creating Spine GUI nodes
-또한 GUI씬에서 스파인 애니메이션을 사용할 수도 있습니다. 자세한 것은 [GUI spine](Spine%20nodes) 문서를 참고 바랍니다.
+또한 GUI씬에서 스파인 애니메이션을 사용할 수도 있습니다. 자세한 것은 [GUI spine](/manuals/gui-spine) 문서를 참고 바랍니다.
 
 ## Animating Spine models and nodes
-Defold는 Lua 인터페이스를 통해 애니메이션을 재생하는 방법에 대한 강력한 런타임 제어 기능을 제공합니다. 자세한 것은 [Animation](Animation) 문서를 참고 바랍니다.
+Defold는 Lua 인터페이스를 통해 애니메이션을 재생하는 방법에 대한 강력한 런타임 제어 기능을 제공합니다. 자세한 것은 [Animation](/manuals/animation) 문서를 참고 바랍니다.
 
 ## Atlas caveats
 애니메이션 데이터는 뼈대에 사용된 이미지를 파일 접미사(suffix)가 생략된 이름으로 참조합니다. 스파인 소프트웨어에서 스파인 프로젝트로 이미지를 추가 하면 **Images** 아래의 계층에 리스트업 됩니다:
@@ -76,5 +76,5 @@ Defold는 Lua 인터페이스를 통해 애니메이션을 재생하는 방법
 
 ![Atlas path names](images/spine/spine_atlas_names.png)
 
-스파인 모델(Spine model)을 애니메이션으로 움직이게 하려면  [Animation](Animation) 문서를 참고 바랍니다.
+스파인 모델(Spine model)을 애니메이션으로 움직이게 하려면  [Animation](/manuals/animation) 문서를 참고 바랍니다.
 

+ 1 - 1
docs/ko/manuals/spinemodel.md

@@ -30,4 +30,4 @@
 ![Spine model in editor](images/spinemodel/spine_model_defold.png)
 
 ## Runtime animation
-Defold는 런타임시 에니메이션을 제어하기 위한 강력한 기능을 제공합니다. 자세한 것은 [Animation](Animation)을 참고 바랍니다.
+Defold는 런타임시 에니메이션을 제어하기 위한 강력한 기능을 제공합니다. 자세한 것은 [Animation](/manuals/animation)을 참고 바랍니다.

+ 1 - 1
docs/ko/manuals/workflow.md

@@ -78,7 +78,7 @@ Defold는 강력한 협업을 기반으로 개발되었습니다. 여러 팀의
 ![Compare conflicting files](images/workflow/workflow_compare.png)
 
 ## External editors and tools(외부 편집기 그리고 도구)
-Defold는 이미지를 드로잉하거나, 사운드 파일을 만들거나, 본 애니메이션을 만드는 등의 에디팅 도구를 제공하지 않습니다. 대부분 에셋들은 Defold가 아닌 특별한 도구를 활용하여 제작할 필요가 있습니다. Defold는 선호하는 외부도구에 관해서는 관심이 없습니다. 단지 어떤 이미지 프로그램이던 PNG 파일을 생성하고 어떤 사운드 프로그램이던 WAV파일을 저장할 수 있으며 어떤 캐릭터 애니메이션 프로그램이던 Spine JSON 파일을 추출(자세한 것은 [Spine 문서](Spine) 참고) 할 수만 있으면 됩니다.
+Defold는 이미지를 드로잉하거나, 사운드 파일을 만들거나, 본 애니메이션을 만드는 등의 에디팅 도구를 제공하지 않습니다. 대부분 에셋들은 Defold가 아닌 특별한 도구를 활용하여 제작할 필요가 있습니다. Defold는 선호하는 외부도구에 관해서는 관심이 없습니다. 단지 어떤 이미지 프로그램이던 PNG 파일을 생성하고 어떤 사운드 프로그램이던 WAV파일을 저장할 수 있으며 어떤 캐릭터 애니메이션 프로그램이던 Spine JSON 파일을 추출(자세한 것은 [Spine 문서](/manuals/spine) 참고) 할 수만 있으면 됩니다.
 
 Defold는 프로젝트의 에셋들의 변경사항을 감지하고 이에 따라 에디터 뷰를 업데이트 합니다. 업데이트 주기는 변경 즉시 발생하지는 않고 에디터에서 변경사항을 보려면 1~2초 정도가 걸립니다.