2015.07.10 11:00

GAME SETUP AND LIGHTING


1. Mesh Collider에 Mesh 말고 Material이 추가로 있음.

  : 충돌체에 매터리얼이 필요한 이유가 뭐지??


2. Camera의 Rendering Path 선택 옵션이 다름.

  4.x >>  Vertex Lit, forward, Deferred Lighting

  5.x >>  forward, Deferred, legacy Vertex lit, legacy Deferred (light prepass)

  : 기존의 Deferred Lighting 이 legacy Deferred가 된건가? (그러니까 legacy가 된거겠지??)

  : 그럼 현재의 Deferred와 legacy Deferred의 차이는 무엇일까?


3. Edit -> Render Setting은 Window -> Lighting 으로 이동됨. fog 설정탭이 이 안에 존재함.

   예제와 비슷하게 하려면 보간 방식을 linear로 설정할 것. Color 를 포함한 소수 옵션을 조절할 수 있지만, Global Fog image effect를 사용할 것을 권장하고 있음. 나중에 Global Fog image effect를 어떻게 활용하는지 찾아보고 장,단점을 정리해보자.

   

4. windows -> Light mapping 메뉴는 Lighting 메뉴로 수정되었으며, 이 튜토리얼에 있는 baking 설정은 General GI와 Baked GI에 분리되어 있다. 




카드키 삭제할 때 Destroy(gameObject) -> GameObject.Destroy(gameObject); 임.


Body Mask 는 Humanoid로 이름이 변경됨.




전반적으로, 크게 바뀐 UI는 내용이 없고, 다른 것들은 따라할 정도 수준.









  

  

저작자 표시 비영리 동일 조건 변경 허락
신고
2015.03.20 11:00

(* 퇴고없이 바로 올리는 글입니다. 나중에 데모 진행하면서 스샷과 같이 올리며, 퇴고할 예정입니다.)


신규 에셋빌드 시스템에서 할 수 있는 것을 보여주는 에셋번들5.0 데모


Unity 5.0 beta21 이상의 버전에서 이 데모를 실행해 주세요.


상세설명:

1. TestScenes 폴더 아래에는 3개의 씬이 있다.

1. AssetLoader.unity 에셋 번들로부터 일반적인 에셋을 로딩하는 방법을 볼 수 있습니다. LoadAssets.cs 스크립트를 참고하세요. 

2. SceneLoader.unity는 에셋번들로부터 씬을 로딩하는 방법을 볼 수 있습니다. LoadScenes.cs 스크립트를 참고하세요.

3. VariantLoader.unity는 variant 에셋번들을 로드하는 방법을 볼 수 있습니다. LoadVariants.cs 스크립트를 참고하세요.

가상 에셋들로부터 같은 결과를 얻을 수 있는 AssetBundle variants를 사용합니다. 이 데모에서, 빌드를 합니다.

1. "variant/myassets.hd" AssetBundle 안에 "My Assets HD" 폴더

2. "variant/myassets.sd" AssetBundle 안에 "My Assets SD" 폴더

3. variant AssetBundle에 실제로 종속된 "variants/variant-scene.unity3d" AssetBundle 안에 "variant-scene.unity"

이 폴더들이 정확히 일치하도록 에셋을 만들어야 합니다. 

두개의 다른 AssetBundle안의 그 오브젝트들은  유니티 빌드 pipeline에 의해 인증된 같은 내부 ID들을 가지게 될 겁니다. 그래서 다른 variant 확장명들의 AssetBundles와 임의로 변경이 가능합니다.

이 demo에서는 ㅜㅇ리가 variants라고 부르는 hd와 sd라는 파일 확장명을 사용합니다. 당신은 LoadVariants.cs에서 variant를 변경할 수 있습니다. 

또한 활성화된 variant로 문제없이 AssetBundle을 어떻게 풀어보는지를 보려면 AssetBundleManager.RemapVariantName()를 참고하세요. 

주의 : AssetBundle variant는 Editor simulation에서 정상적으로 확인이 불가능합니다. 



2. 자동으로 종속된 AssetBundles을 다운로드합니다.

새로운 빌드 시스템하에서는, 단일 manifest AssetBundle안에서 종속관계가 있는 AssetBundles간에는 연결이 되어 있습니다. 그래서 실행 시, 모든 종속관계를 알 수 있으며, 기반 url을 통해 자동으로 종속된 AssetBundles를 다운받습니다.

더 상세한 내용은 demo의 AssetBundleManager.LoadDependencies()를 확인해 보세요.


3. AssetBundles 메뉴에는 3개의 메뉴 아이템이 있습니다. 

1. "Simulate AssetBundles"는 에디터에서 AssetBundle simulation을 컨트롤 하는데 사용합니다.

데이터 플레이 모드에서, 빌드없이, AssetBundles을 simulate 할 수 있습니다.

2. "Build AssetBundles"는 BuildPipeline.BuildAssetBundles()를 호출하면 되는데, AssetBundle UI를 설정해서 AssetBundles를 빌드합니다. 상세한 내용은 BuildScript.BuildAssetBundles()를 참고하세요.

3. "Build Player"는 지정한 폴더에 빌드된 AssetBundles를 "Application.streamingAssetsPath"에 복사합니다. BuildScript.BuildPlayer()를 참고하세요.


4. AssetBundleManager 클래스는 AssetBundle과 그에 종속된 것들을 로딩된 내용들을 가지고 있습니다. 이런 내용들이 포함되어 있습니다.

1. Initialize()

AssetBundle manifest object를 초기화 합니다.

2. LoadAssetAsync()

명시된 AssetBundle로부터 명시된 asset과 종속 관계의 모든 핸들을  로드합니다.

3. LoadLevelAsync()

명시된 AssetBundle로부터 명시된 scene와 종속 관계의 모든 핸들을 로드합니다. 

4. LoadDependencies()

명시된 AssetBundle을 위해 종속관계의 모든 AssetBundles을 로드합니다.

5. BaseDownloadingURL

의존 관계에 있는 것들의 자동 다운로딩을 위해 사용되는 base downloading url을 설정합니다.

6. SimulateAssetBundleInEditor

에디터 플레이 모드에서 사용될 AssetBundle을 설정합니다.

7. Variants

활성화할 variant를 설정합니다.

8. RemapVariantName()

활성화된 variant에 따라 올바른 AssetBundle을 풀어냅니다.(?)


5. Assets\ScriptsForAssetBundleSystem folder 아래의 스크립트들은 당신의 프로젝트에 쓸만할 겁니다. 당신의 프로젝트에 자유롭게 사용하시기 바랍니다.


저작자 표시 비영리 동일 조건 변경 허락
신고


티스토리 툴바