SlideShare una empresa de Scribd logo
1 de 50
PROJECT CODEX
커스터마이징 쉐이더와 에디터 제작과정.
발표자
이정표( leegoonz )
코덱스 프로젝트 관리자.(Project administrator)

방송용 애니메이션 슈퍼바이저로 근무 하던 중 2001년 삼성종합기술원과 연을 맺어 모바일 기
반(ARM 2) 멀티플레폼 엔진 개발에 참여.
이후 온라인 게임 개발로 전향 하여 케주얼 스포츠 게임과 엠엠오 온라인 게임등의 개발에 참여
하였다.
도전 성향이 강하여 두번의 창업으로 6년의 시간을 보내고 이후 프로필 관리에 실패 한 전형적
케이스의 개발자.
지금은 데브클렌에서 차세대 모바일 디바이스(슈퍼칩) 콘텐트 개발 관리자이다.

김형일
코덱스 프로젝트 프로그래밍 파트

엔진프로그램분야쪽에서 2년간 일하다가,
데브클랜으로 이직후 유니티에 열공하면서 코덱스 프로젝트의
리드 프로그래머이자, 프로그램팀 파트장을 맡고 있다.



                                                            08-04-   Pag
                                       Bootcamp Asia 2012                2
                                                             2012      e
CONTENTS
• 코덱스 프롤로그                • UI
 o 슈퍼칩과 모바일 디바이스.           o UI Toolset
 o 인공생명과 게임! 새로운 도전.        o Shader for Cool Time
 o 텍스처 커스터마이징

                          • 모바이 에서의 데이터 파
                            싱
                            o 바이너리 파일 로드
• 게임콘텐트 개발을 위한
  인하우스 툴
                            o CSV to Text

 o Asset Manager
    • Scene Manager       • ANIMATION
    • Camera Manager        o Interpolation
    • Effect Manager        o PATH
    • Character Manager
                          • Shader
                                                      08-04-   Pag
                                 Bootcamp Asia 2012                3
                                                       2012      e
Project Codex Prologue…




     슈퍼칩과 모바일 디바이스.




                                          08-04-   Pag
                     Bootcamp Asia 2012                4
                                           2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.




                                          08-04-   Pag
                     Bootcamp Asia 2012                5
                                           2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.
     Nvidia Wayne.
       24 ++ CUDA GPU
      Support OPENGL 4.X
      Support Direct X 11




                                            08-04-   Pag
                       Bootcamp Asia 2012                6
                                             2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.




    고성능 안드로이드 디바이스 등장.
    모바일 패드를 대체 할 ARM 기반의
     Windows 8 스마트 타블렛 등장.

                                          08-04-   Pag
                     Bootcamp Asia 2012                7
                                           2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.




                                          08-04-   Pag
                     Bootcamp Asia 2012                8
                                           2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.




                                          08-04-   Pag
                     Bootcamp Asia 2012                9
                                           2012      e
Project Codex Prologue…
 o 슈퍼칩과 모바일 디바이스.
   • Dynamic casting Shadow.
   • Self Shadow.
   • 2048 텍스처 ++
   • Massively vertex model.
   • More Fast Thread Loading.
   • More Post Rendering FX.
   • Deferred Rendering ? May be…

                                             08-04-   Pag
                        Bootcamp Asia 2012                10
                                              2012      e
Project Codex Prologue…




         테크데모 1분 40초.
                                          08-04-   Pag
                     Bootcamp Asia 2012                11
                                           2012      e
Project Codex Prologue…




   인공지능과 게임! 새로운 도전




                                          08-04-   Pag
                     Bootcamp Asia 2012                12
                                           2012      e
Project Codex Prologue…
 o 인공지능과 게임 새로운 도전.
   • ETRI 연구소 기업 쏘그웨어와 공동개발.
   • 신경망 학습 알고리즘.
   • 유전자 알고리즘.

   • PC 플레이어의 인풋(상태,능력)에 의한
     몬스터의 학습 결과 도출.
   • 지속적인 콘텐트 생산이 목표.

                                          08-04-   Pag
                     Bootcamp Asia 2012                13
                                           2012      e
Project Codex Prologue…
 o 인공지능과 게임 새로운 도전.




                                          08-04-   Pag
                     Bootcamp Asia 2012                14
                                           2012      e
Project Codex Prologue…




    텍스처 커스터마이징 테크닉.




                                          08-04-   Pag
                     Bootcamp Asia 2012                15
                                           2012      e
Project Codex Prologue…
 o Why…?
   • 테그라 3 이상 급 에서는 Bake 텍스처
     가 대부분? 필요 없다.
   • 3세대 아이폰.4세대 아이폰 등에서는
     필수.




                                          08-04-   Pag
                     Bootcamp Asia 2012                16
                                           2012      e
Project Codex Prologue…
 o Scene 의 자산 설계…?
   • 한 씬 안에서 1만 2천 Polygon (Skinned
     Mesh) : 3세대~4세대 아이폰.
   • 한 씬 안에서 3만 2천 Polygon (Skinned
     Mesh) : 아이페드 2 ++. 아수스 프라임


   • 6만 Polygons 내외의 Static Mesh.


                                            08-04-   Pag
                       Bootcamp Asia 2012                17
                                             2012      e
Project Codex Prologue…
 o Scene 의 자산 설계…?
    • Unity 3.5 에서는 좀 더 유연한 씬 내 자
      산 설계가 가능 할 것이다.(Mesh LOD)

   • Unity 4.0 에서는 더욱 유연한 씬 내 자
     산 설계 기대. (Bone LOD)



                                          08-04-   Pag
                     Bootcamp Asia 2012                18
                                           2012      e
Project Codex Prologue…
 o 기본적인 옵티마이징 테크닉…?
   • STRIPPED MESH.
   • BAKE TEXTURE.
   • LIGHTMAP USED BEAST IN UNITY3D.




                                            08-04-   Pag
                       Bootcamp Asia 2012                19
                                             2012      e
Project Codex Prologue…




          Bake Texture.




                                          08-04-   Pag
                     Bootcamp Asia 2012                20
                                           2012      e
Project Codex Prologue…
 o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE.
   • Approach Idea.
      oTop down light
      oHalf value Ambient shading
   • Used MENTALRAY™ Software Rendering.
      o2 GI Lights
        • Front
        • Back

                                              08-04-   Pag
                         Bootcamp Asia 2012                21
                                               2012      e
Project Codex Prologue…
 o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE.

         Front Light              Back Light




         GI Light Bounce              GI Light Bounce




                                                08-04-   Pag
                           Bootcamp Asia 2012                22
                                                 2012      e
Project Codex Prologue…
 o BAKE TEXTURE
    • BAKE PASS
     oBaked Complete Diffuse Pass
     oAO Pass
     oShadow Pass
     oSpecular Pass + HI Pass(More SP)




                                              08-04-   Pag
                         Bootcamp Asia 2012                23
                                               2012      e
Project Codex Prologue…
 o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE.




                                              08-04-   Pag
                         Bootcamp Asia 2012                24
                                               2012      e
Project Codex Prologue…
 o PASS CONTROL
    • CL PASS : Base color (Diffuse
      Texture?)
    • SP PASS : Dark Density Control.
    • HI PASS : More Specular Control.
    • SD PASS : Shadow Density Control.
    • AO PASS : Ambient Density Control.
    • DOWN PASS : Down Light Control.

                                              08-04-   Pag
                         Bootcamp Asia 2012                25
                                               2012      e
Project Codex Prologue…
 o COMPOSITE PASS TEXTURE


                  SD PASS                   AO PASS

      HI PASS




                   SP PASS                  CL PASS

      Down PASS


                                              08-04-   Pag
                       Bootcamp Asia 2012                  26
                                               2012      e
Project Codex Prologue…
 o COMPOSITE PASS Layer




                   SP PASS                  CL PASS




                                              08-04-   Pag
                       Bootcamp Asia 2012                  27
                                               2012      e
Project Codex Prologue…
     PAD                     PHONE




                   SP PASS                  CL PASS




                                              08-04-   Pag
                       Bootcamp Asia 2012                  28
                                               2012      e
Project Codex Prologue…
     PAD                      PHONE




                    SP PASS                  CL PASS



      Control Texture used by Pass
                                               08-04-   Pag
                        Bootcamp Asia 2012                  29
                                                2012      e
Project Codex Prologue…
 o 6 가지 이상의 패스 텍스쳐
 o 아티스트가 모바일 쉐이더에 대한 이해
   력이 좋아야 한다.
 o 적절한 협의 점을 찾는 것이 관건.

 o 트윅 아이디어에 대한 여러가지 생각을
   해 볼 필요가 있다. SP PASS CL PASS




                                          08-04-   Pag
                     Bootcamp Asia 2012                30
                                           2012      e
o Standard
  Mobile Quality.
  (Unity3D Shading)

o 아직 개선 중입니다…

o 쉐이더 개선 사항.
   • 페이크 셀프 쉐도우
      o 8방향 다운 라이트 기준
      o 8장의 셀프 쉐도우 텍스처를
        미리 생성 하고 라이트 방향,
        컬러,밀도에 따라 컨트롤링
        + 디테일 텍스쳐
      o 텍스처간 중간 보간 처리 PASS
                     SP                      CL PASS
        쉐이더 구현.

                                               08-04-   Pag
                        Bootcamp Asia 2012                  31
                                                2012      e
유니티 엔진 게임개발 팁
      &
  인하우스 툴 소개
   Manager Class
       GUI
        File
     Animation
       Path
      Shader


                                   08-04-   Pag
              Bootcamp Asia 2012                32
                                    2012      e
Manager Class
• 핵심 Asset, GameObject, Component 들을 좀더 쉽게 관
  리하기 위해 싱글톤 Manager Class를 만듬

•   Scene Manager
•   Cam Manager
•   Effect Manager
•   Character Manager
•   UI Manager
•   Audio Manager


                                                08-04-   Pag
                           Bootcamp Asia 2012                33
                                                 2012      e
Scene Manager 동기
•   Unity Scene의 Unload기능이 있으면 좀더 씬 활용이 용이하다고 판단

•   Application.LoadLevelAdditive(Scene1)
•   Application.LoadLevelAdditive(Scene2)
•   Application.LoadLevelAdditive(Scene3)


    Scene2만 삭제 하고 싶다 ㅜ.ㅜ


•   Application.LoadLevel는 모두 삭제된다.




                                                   Pag
                                                     e
Scene Manager 씬 삭제 원리
• RootObject 를 관리하는 Scene Manager제작




            ------ >>   Del버튼            ---- >>
               아래와 동일한 기능이다
            Destory( Scene2_Object_1 )
            Destory( Scene2_Object_2 )
            Destory( Scene2_Object_3 )
            Destory( Scene2_Object_4 )
            Destory( Scene2_Object_5 )
            위의 GameObject는 RootObject들 이다.
            따라서, RootObject만 자료구조로 관리하면
            Scene2를 지울 수 있다.
                                                          08-04-   Pag
                                     Bootcamp Asia 2012                35
                                                           2012      e
Scene Manager 로직
• Dictionary<string, List<Transform>> _sceneTable;

• 위 테이블의 Key는 씬이름이고, Value는 RootObject List임

• 씬로드 후 새롭게 로드된 RootObject인지 어떻게 알 것인가??

• 새로운 씬을 로드하면, 모든 GameObject의 transform.root를 기
  존에 저장되어 있는 Table의 Value에 들어 있는 값인지 확인.
  새롭게 로딩된 개체라고 판단되면 새로운 씬에 Add시킨다.




                                                          08-04-   Pag
                                     Bootcamp Asia 2012                36
                                                           2012      e
GUI . 소개
•   기존의 UNITY OnGUI() 함수를 통한 UI그리기는 속도가 너무 느리다

•   Orthographic project 카메라를 이용한 UI그리기 방법은
    빠르고 쉽다.

•   Ex> 이런 종류의 GUI로는 EZGUI, NGUI가 있다.

•   허나, 좀 더 커스텀 마이징을 쉽게 하기 위해 자체 GUI개발




                                                         08-04-   Pag
                                    Bootcamp Asia 2012                37
                                                          2012      e
GUI . 상속관계
         UIRoot
                   UIFont
UIBase
         UIPanel   UIRadioPanel

                   UITexture      UIBlendTex             UIBlendAdd

                                  UIProgress

                                  UIClock

                                  UITexSplit             UIButton

                                                         UICheck

                                                         UISprite


                                                                 08-04-   Pag
                                            Bootcamp Asia 2012                38
                                                                  2012      e
GUI . CLOCK UI

• 1. 스킬버튼의 쿨타임

• 2. 원형




          - 원형
          진행바
                 - 쿨타임



                                        08-04-   Pag
                   Bootcamp Asia 2012                39
                                         2012      e
GUI . CLOCK UI 구현
•   struct FSIn
•   {
•        float4 pos         : SV_POSITION;
•        fixed2 uv          : TEXCOORD0;
          Float2 pixel      : TEXCOORD1;           // 버텍스 위치로부터 보간된 값
          fixed4 percent : COLOR0;
•   };

•   half4 Frag( FSIn fIn ) : COLOR
•   {
•         float radius = atan2( fIn.pixel.x, fIn.pixel.y );
              ~~
              fixed4 color;          Last tick                                         Start tick
•             ~~
              알파값 조절
•             ~~                                              1 per      0 per
•             return color;
•   }




                                                                                            08-04-   Pag
                                                                      Bootcamp Asia 2012                 40
                                                                                             2012      e
GUI. 스킬버튼 만들기
  오른쪽 텍스쳐를 사용

• 좌측 텍스쳐의 UV를 이용
  하여 Texture에서 사용할
  영역을 지정

• x축 2등분
  y축 5등분




                                          08-04-   Pag
                     Bootcamp Asia 2012                41
                                           2012      e
Unity에서의 Data File활용하기 1
• 유니티는 기본적으로 Serialize기능을 이용하여
  public변수 값들을 저장 할 수 있다.

• 그리고 PlayerPrefs 을 통해서도 데이터를
  저장 할 수 있다.

• 하지만, 기존 게임프로그래머들에게는
  파일( xml, cvs, txt, bytes ) 파싱이 더 편하다




                                                   08-04-   Pag
                              Bootcamp Asia 2012                42
                                                    2012      e
Unity에서의 Data File활용하기 2
• 1. 유니티는 씬에 연결된 모든 Asset들은 자동적으로
  빌드될때 올라간다. 이를 이용해, 스크립트에 public
  TextAsset변수 선언하고, Data File을 연결한다.

• 2. Reousrces 폴더내의 데이터들은 빌드시 모두 올라간
  다. 따라서 Resouces 폴더내에 DataFile을 넣
  고 , Resources.Load함수로 DataFile을 로드한다.

• 데이터파일 같은 경우는 2번째 방법이, 익숙하고 더 편하
  다.



                                             08-04-   Pag
                        Bootcamp Asia 2012                43
                                              2012      e
모바일 빌드시 바이너리 파일 사용법
• 모바일폰에서의 FileStream을 통해 파일을 읽는것은
  안전하지가 않다.

• 따라서 모바일은 TextAsset의 bytes변수를 이용하여
  binary파일을 읽는다.
  ( 단 파일의 확장자가 .bytes 이여한다 )

• TextAsset     ta = (TextAsset)( Resources.Load( 경로 ) );
  MemoryStream ms = new MemoryStream( ta.bytes );
  BinaryReader br = new BinaryReader( ms );
  br.Read ~ ~ ~


                                                           08-04-   Pag
                                      Bootcamp Asia 2012                44
                                                            2012      e
Animation Event저장
•   Animation Event를 저장하는 것이 좋은가??
    캐릭터에 Animation에 Event를 많이 이용하는 게임은 하는 것이 좋다~

•   1. 맥스에서 애니메이션을 약간의 보정작업을 할 경우, 새롭게 애니메이
    션 파일을 만들어야 하므로, 내부 Event값은 모두 사라지게 된다.
    AnimationEvent값을 저장해 놓는다면 , 원래 값을 복구 시킬 수 있다.

•   2. 모바일에서는 Editor전용 함수인
    AnimationUtility.GetAnimationEvents()를 사용하지 못하므로 Animation
    Event알려면 미리 저장 시켜놔야 한다.

•   animationEvent를 미리 알수 있으면, 동작을 예측 할 수 있으므로,
    AI 분야에 응용 할 수 있을 것이다.

ps>편집,확인이 용이하게, 바이너리보다 text파일저장을 사용했다.



                                                            08-04-   Pag
                                       Bootcamp Asia 2012                45
                                                             2012      e
CVS파일 이용하기
• TextAsset가 로딩 할 수 있는 확장자 포맷은 다음과 같다.
  .txt      .html .htm
  .xml      .bytes
  ( cvs파일포맷은 존재 하지 않는다 )

• Application.isEditor == true 일때 .cvs파일을 FileStream으로
  로드

• Application.isEditor == false경우 .txt를 TextAsset으로 로드

• 최종 폰에 빌드전에 .cvs파일을 .txt파일로 변환하는 작업이
  필요하다


                                                        08-04-   Pag
                                   Bootcamp Asia 2012                46
                                                         2012      e
보간 애니메이션
• 보간 애니메이션의 대표 무료 라이브러리인 Itween

• Itween사용보다 코딩이 많이 필요 없는 보간 애니메이션
  을 구현하면 프로그래머의 작업은 줄어들 것이다.

• 때문에 코딩 없이 쉽게 사용 할 수 있는
  보간 애니메이션 GameAni구현.

• GameAni는 UI의 Blend효과, 카메라Path, 카메라
  Wave , 간단한 애니메이션 효과 등 다양하게 응용할 수
  있다.
                                            08-04-   Pag
                       Bootcamp Asia 2012                47
                                             2012      e
Path를 이용한 컷씬

•   비균일 스플라인을 이용
•   RNS( rounded nonuniform spline )
•   SNS( smooth nonuniform spline )
•   TNS( timed nonuniform spline )



• 원할 경우 스플라인의 처음과 끝 노드를 연결하여 Loop관계로 만들
  수 있습니다.

• Game Programming gems 4권 2.4 비균일 스플라인 참고


                                                            08-04-   Pag
                                       Bootcamp Asia 2012                48
                                                             2012      e
!HIRING!
  Senior programmer

jplee@devclan.org

                                 08-04-   Pag
            Bootcamp Asia 2012                49
                                  2012      e
감사합니다.



                         08-04-   Pag
    Bootcamp Asia 2012                50
                          2012      e

Más contenido relacionado

Destacado

NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집noerror
 
07_Visual Shader Editor
07_Visual Shader Editor07_Visual Shader Editor
07_Visual Shader Editornoerror
 
2012people
2012people2012people
2012peoplenahyjoa
 
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...Daniel Barrero
 
[박민근] 3 d렌더링 옵티마이징_nv_perfhud
[박민근] 3 d렌더링 옵티마이징_nv_perfhud[박민근] 3 d렌더링 옵티마이징_nv_perfhud
[박민근] 3 d렌더링 옵티마이징_nv_perfhudMinGeun Park
 
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013devCAT Studio, NEXON
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipelinechangehee lee
 
NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트재철 황
 
10_Human Skin Rendering
10_Human Skin Rendering10_Human Skin Rendering
10_Human Skin Renderingnoerror
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014NDOORS
 
3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작JP Jung
 
Rendering Tech of Space Marine
Rendering Tech of Space MarineRendering Tech of Space Marine
Rendering Tech of Space MarinePope Kim
 
4강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작24강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작2JP Jung
 
2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기iFunFactory Inc.
 
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)valhashi
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희changehee lee
 
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트Dae Kim
 
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리민웅 이
 

Destacado (20)

NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집NDC08_실시간비주얼그래프편집
NDC08_실시간비주얼그래프편집
 
07_Visual Shader Editor
07_Visual Shader Editor07_Visual Shader Editor
07_Visual Shader Editor
 
2012people
2012people2012people
2012people
 
Shader compilation
Shader compilationShader compilation
Shader compilation
 
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...
Company of Heroes 2 (COH2) Rendering Technology: The cold facts of recreating...
 
[박민근] 3 d렌더링 옵티마이징_nv_perfhud
[박민근] 3 d렌더링 옵티마이징_nv_perfhud[박민근] 3 d렌더링 옵티마이징_nv_perfhud
[박민근] 3 d렌더링 옵티마이징_nv_perfhud
 
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
정희석, 셰이더 리소스 빌드 자동화 할 수 없나요?, NDC2013
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipeline
 
NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트NDC2015 광개토태왕 테크니컬 아트
NDC2015 광개토태왕 테크니컬 아트
 
10_Human Skin Rendering
10_Human Skin Rendering10_Human Skin Rendering
10_Human Skin Rendering
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
 
3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작
 
Rendering Tech of Space Marine
Rendering Tech of Space MarineRendering Tech of Space Marine
Rendering Tech of Space Marine
 
4강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작24강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작2
 
2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기
 
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
TA가 뭐예요? (What is a Technical Artist? 블루홀스튜디오)
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희
 
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
모바일 게임과 앱을 위한 오픈소스 게임서버 엔진 프로젝트 CloudBread 프로젝트
 
Visual shock vol.2
Visual shock   vol.2Visual shock   vol.2
Visual shock vol.2
 
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
「스퀘어 에닉스 오픈 컨퍼런스 2012」「Agni's Philosophy」비하인드 스토리
 

Similar a Asia bootcamp devclan

develop android app using intellij
develop android app using intellijdevelop android app using intellij
develop android app using intellijSewon Ann
 
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)Donggi Hahm
 
FullStack 개발자 만들기 과정 소개 (Android + MEAN Stack + Redis 다루기)
FullStack 개발자 만들기 과정 소개  (Android + MEAN Stack + Redis 다루기) FullStack 개발자 만들기 과정 소개  (Android + MEAN Stack + Redis 다루기)
FullStack 개발자 만들기 과정 소개 (Android + MEAN Stack + Redis 다루기) YoungSu Son
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요Ian Choi
 
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정funmeate
 
17. cocos2d 기초
17. cocos2d  기초17. cocos2d  기초
17. cocos2d 기초Sangon Lee
 
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처hoondong kim
 
if kakao dev 2019_Ground X_Session 01
if kakao dev 2019_Ground X_Session 01if kakao dev 2019_Ground X_Session 01
if kakao dev 2019_Ground X_Session 01Klaytn
 
황규영 포트폴리오
황규영 포트폴리오황규영 포트폴리오
황규영 포트폴리오Q_0
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰Jubok Kim
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료지원 정
 
ARTIK 710 IoT class
ARTIK 710 IoT class ARTIK 710 IoT class
ARTIK 710 IoT class 정출 김
 
좋은 개발자 되기
좋은 개발자 되기좋은 개발자 되기
좋은 개발자 되기Sunghyouk Bae
 
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)JongyoonWon1
 
[PR12] PR-026: Notes for CVPR Machine Learning Sessions
[PR12] PR-026: Notes for CVPR Machine Learning Sessions[PR12] PR-026: Notes for CVPR Machine Learning Sessions
[PR12] PR-026: Notes for CVPR Machine Learning SessionsTaegyun Jeon
 
객체지향프로그래밍 특강
객체지향프로그래밍 특강객체지향프로그래밍 특강
객체지향프로그래밍 특강uEngine Solutions
 
Cloud ide를 이용한_모바일_개발의_가능성과_전망
Cloud ide를 이용한_모바일_개발의_가능성과_전망Cloud ide를 이용한_모바일_개발의_가능성과_전망
Cloud ide를 이용한_모바일_개발의_가능성과_전망Sung-tae Ryu
 
18.10.05 Fusion 360 Meetup in Busan
18.10.05 Fusion 360 Meetup in Busan18.10.05 Fusion 360 Meetup in Busan
18.10.05 Fusion 360 Meetup in BusanDaniel Kim
 

Similar a Asia bootcamp devclan (20)

develop android app using intellij
develop android app using intellijdevelop android app using intellij
develop android app using intellij
 
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
[NDC2014] 친구들아 도와줘 - 다양한 툴을 이용해서 Cocos2d-x 생산성 높이기 (함동기)
 
FullStack 개발자 만들기 과정 소개 (Android + MEAN Stack + Redis 다루기)
FullStack 개발자 만들기 과정 소개  (Android + MEAN Stack + Redis 다루기) FullStack 개발자 만들기 과정 소개  (Android + MEAN Stack + Redis 다루기)
FullStack 개발자 만들기 과정 소개 (Android + MEAN Stack + Redis 다루기)
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
 
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
모바일환경에서의 크로스 플랫폼_3D_렌더링엔진_제작과정
 
17. cocos2d 기초
17. cocos2d  기초17. cocos2d  기초
17. cocos2d 기초
 
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
[AI & DevOps] BigData Scale Production AI 서비스를 위한 최상의 플랫폼 아키텍처
 
WebGL
WebGLWebGL
WebGL
 
Refactoring
RefactoringRefactoring
Refactoring
 
if kakao dev 2019_Ground X_Session 01
if kakao dev 2019_Ground X_Session 01if kakao dev 2019_Ground X_Session 01
if kakao dev 2019_Ground X_Session 01
 
황규영 포트폴리오
황규영 포트폴리오황규영 포트폴리오
황규영 포트폴리오
 
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
Ndc2010   김주복, v3. 마비노기2아키텍처리뷰Ndc2010   김주복, v3. 마비노기2아키텍처리뷰
Ndc2010 김주복, v3. 마비노기2아키텍처리뷰
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
 
ARTIK 710 IoT class
ARTIK 710 IoT class ARTIK 710 IoT class
ARTIK 710 IoT class
 
좋은 개발자 되기
좋은 개발자 되기좋은 개발자 되기
좋은 개발자 되기
 
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)
메이커 페어 서울 2017 발표자료 - 레고 거북차 가습기(Smart Turtle Ship) (라즈베리파이 활용)
 
[PR12] PR-026: Notes for CVPR Machine Learning Sessions
[PR12] PR-026: Notes for CVPR Machine Learning Sessions[PR12] PR-026: Notes for CVPR Machine Learning Sessions
[PR12] PR-026: Notes for CVPR Machine Learning Sessions
 
객체지향프로그래밍 특강
객체지향프로그래밍 특강객체지향프로그래밍 특강
객체지향프로그래밍 특강
 
Cloud ide를 이용한_모바일_개발의_가능성과_전망
Cloud ide를 이용한_모바일_개발의_가능성과_전망Cloud ide를 이용한_모바일_개발의_가능성과_전망
Cloud ide를 이용한_모바일_개발의_가능성과_전망
 
18.10.05 Fusion 360 Meetup in Busan
18.10.05 Fusion 360 Meetup in Busan18.10.05 Fusion 360 Meetup in Busan
18.10.05 Fusion 360 Meetup in Busan
 

Más de Lee Jungpyo

X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018Lee Jungpyo
 
Python maya 2018 setup note
Python maya 2018 setup notePython maya 2018 setup note
Python maya 2018 setup noteLee Jungpyo
 
天谕手游图形版本
天谕手游图形版本天谕手游图形版本
天谕手游图形版本Lee Jungpyo
 
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseUnite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseLee Jungpyo
 
Substanceshanghaippt repacked
Substanceshanghaippt repackedSubstanceshanghaippt repacked
Substanceshanghaippt repackedLee Jungpyo
 
양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)Lee Jungpyo
 
바바누드바디
바바누드바디바바누드바디
바바누드바디Lee Jungpyo
 
한손 도끼 모델링 과정 (작성자 강구영)
한손 도끼 모델링 과정   (작성자 강구영)한손 도끼 모델링 과정   (작성자 강구영)
한손 도끼 모델링 과정 (작성자 강구영)Lee Jungpyo
 
코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재Lee Jungpyo
 
Ndo2 가이드 강구영
Ndo2 가이드 강구영Ndo2 가이드 강구영
Ndo2 가이드 강구영Lee Jungpyo
 
에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~Lee Jungpyo
 
홍길동제안서
홍길동제안서홍길동제안서
홍길동제안서Lee Jungpyo
 
핼리네시아러프컨셉기획
핼리네시아러프컨셉기획핼리네시아러프컨셉기획
핼리네시아러프컨셉기획Lee Jungpyo
 

Más de Lee Jungpyo (18)

X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018X2M water by 巨人网咯 2018
X2M water by 巨人网咯 2018
 
Python maya 2018 setup note
Python maya 2018 setup notePython maya 2018 setup note
Python maya 2018 setup note
 
天谕手游图形版本
天谕手游图形版本天谕手游图形版本
天谕手游图形版本
 
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chineseUnite17 shanghai-lee jungpyo-neteasepangu-full chinese
Unite17 shanghai-lee jungpyo-neteasepangu-full chinese
 
Substanceshanghaippt repacked
Substanceshanghaippt repackedSubstanceshanghaippt repacked
Substanceshanghaippt repacked
 
Cgc 2014
Cgc 2014Cgc 2014
Cgc 2014
 
양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)양손 도끼 모델링 과정 작성자 (천동재.)
양손 도끼 모델링 과정 작성자 (천동재.)
 
바바누드바디
바바누드바디바바누드바디
바바누드바디
 
한손 도끼 모델링 과정 (작성자 강구영)
한손 도끼 모델링 과정   (작성자 강구영)한손 도끼 모델링 과정   (작성자 강구영)
한손 도끼 모델링 과정 (작성자 강구영)
 
코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재코덱스 워리어 무기제작가이드 천동재
코덱스 워리어 무기제작가이드 천동재
 
Ndo2 가이드 강구영
Ndo2 가이드 강구영Ndo2 가이드 강구영
Ndo2 가이드 강구영
 
Shader EXAM.
Shader EXAM.Shader EXAM.
Shader EXAM.
 
에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~에코노베이션 3차 세미나 교안 1st Edition.~
에코노베이션 3차 세미나 교안 1st Edition.~
 
Resume
ResumeResume
Resume
 
Pre analyze for
Pre analyze forPre analyze for
Pre analyze for
 
홍길동제안서
홍길동제안서홍길동제안서
홍길동제안서
 
핼리네시아러프컨셉기획
핼리네시아러프컨셉기획핼리네시아러프컨셉기획
핼리네시아러프컨셉기획
 
초기분석등
초기분석등초기분석등
초기분석등
 

Asia bootcamp devclan

  • 2. 발표자 이정표( leegoonz ) 코덱스 프로젝트 관리자.(Project administrator) 방송용 애니메이션 슈퍼바이저로 근무 하던 중 2001년 삼성종합기술원과 연을 맺어 모바일 기 반(ARM 2) 멀티플레폼 엔진 개발에 참여. 이후 온라인 게임 개발로 전향 하여 케주얼 스포츠 게임과 엠엠오 온라인 게임등의 개발에 참여 하였다. 도전 성향이 강하여 두번의 창업으로 6년의 시간을 보내고 이후 프로필 관리에 실패 한 전형적 케이스의 개발자. 지금은 데브클렌에서 차세대 모바일 디바이스(슈퍼칩) 콘텐트 개발 관리자이다. 김형일 코덱스 프로젝트 프로그래밍 파트 엔진프로그램분야쪽에서 2년간 일하다가, 데브클랜으로 이직후 유니티에 열공하면서 코덱스 프로젝트의 리드 프로그래머이자, 프로그램팀 파트장을 맡고 있다. 08-04- Pag Bootcamp Asia 2012 2 2012 e
  • 3. CONTENTS • 코덱스 프롤로그 • UI o 슈퍼칩과 모바일 디바이스. o UI Toolset o 인공생명과 게임! 새로운 도전. o Shader for Cool Time o 텍스처 커스터마이징 • 모바이 에서의 데이터 파 싱 o 바이너리 파일 로드 • 게임콘텐트 개발을 위한 인하우스 툴 o CSV to Text o Asset Manager • Scene Manager • ANIMATION • Camera Manager o Interpolation • Effect Manager o PATH • Character Manager • Shader 08-04- Pag Bootcamp Asia 2012 3 2012 e
  • 4. Project Codex Prologue… 슈퍼칩과 모바일 디바이스. 08-04- Pag Bootcamp Asia 2012 4 2012 e
  • 5. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. 08-04- Pag Bootcamp Asia 2012 5 2012 e
  • 6. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. Nvidia Wayne.  24 ++ CUDA GPU Support OPENGL 4.X Support Direct X 11 08-04- Pag Bootcamp Asia 2012 6 2012 e
  • 7. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. 고성능 안드로이드 디바이스 등장. 모바일 패드를 대체 할 ARM 기반의 Windows 8 스마트 타블렛 등장. 08-04- Pag Bootcamp Asia 2012 7 2012 e
  • 8. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. 08-04- Pag Bootcamp Asia 2012 8 2012 e
  • 9. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. 08-04- Pag Bootcamp Asia 2012 9 2012 e
  • 10. Project Codex Prologue… o 슈퍼칩과 모바일 디바이스. • Dynamic casting Shadow. • Self Shadow. • 2048 텍스처 ++ • Massively vertex model. • More Fast Thread Loading. • More Post Rendering FX. • Deferred Rendering ? May be… 08-04- Pag Bootcamp Asia 2012 10 2012 e
  • 11. Project Codex Prologue… 테크데모 1분 40초. 08-04- Pag Bootcamp Asia 2012 11 2012 e
  • 12. Project Codex Prologue… 인공지능과 게임! 새로운 도전 08-04- Pag Bootcamp Asia 2012 12 2012 e
  • 13. Project Codex Prologue… o 인공지능과 게임 새로운 도전. • ETRI 연구소 기업 쏘그웨어와 공동개발. • 신경망 학습 알고리즘. • 유전자 알고리즘. • PC 플레이어의 인풋(상태,능력)에 의한 몬스터의 학습 결과 도출. • 지속적인 콘텐트 생산이 목표. 08-04- Pag Bootcamp Asia 2012 13 2012 e
  • 14. Project Codex Prologue… o 인공지능과 게임 새로운 도전. 08-04- Pag Bootcamp Asia 2012 14 2012 e
  • 15. Project Codex Prologue… 텍스처 커스터마이징 테크닉. 08-04- Pag Bootcamp Asia 2012 15 2012 e
  • 16. Project Codex Prologue… o Why…? • 테그라 3 이상 급 에서는 Bake 텍스처 가 대부분? 필요 없다. • 3세대 아이폰.4세대 아이폰 등에서는 필수. 08-04- Pag Bootcamp Asia 2012 16 2012 e
  • 17. Project Codex Prologue… o Scene 의 자산 설계…? • 한 씬 안에서 1만 2천 Polygon (Skinned Mesh) : 3세대~4세대 아이폰. • 한 씬 안에서 3만 2천 Polygon (Skinned Mesh) : 아이페드 2 ++. 아수스 프라임 • 6만 Polygons 내외의 Static Mesh. 08-04- Pag Bootcamp Asia 2012 17 2012 e
  • 18. Project Codex Prologue… o Scene 의 자산 설계…? • Unity 3.5 에서는 좀 더 유연한 씬 내 자 산 설계가 가능 할 것이다.(Mesh LOD) • Unity 4.0 에서는 더욱 유연한 씬 내 자 산 설계 기대. (Bone LOD) 08-04- Pag Bootcamp Asia 2012 18 2012 e
  • 19. Project Codex Prologue… o 기본적인 옵티마이징 테크닉…? • STRIPPED MESH. • BAKE TEXTURE. • LIGHTMAP USED BEAST IN UNITY3D. 08-04- Pag Bootcamp Asia 2012 19 2012 e
  • 20. Project Codex Prologue… Bake Texture. 08-04- Pag Bootcamp Asia 2012 20 2012 e
  • 21. Project Codex Prologue… o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE. • Approach Idea. oTop down light oHalf value Ambient shading • Used MENTALRAY™ Software Rendering. o2 GI Lights • Front • Back 08-04- Pag Bootcamp Asia 2012 21 2012 e
  • 22. Project Codex Prologue… o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE. Front Light Back Light GI Light Bounce GI Light Bounce 08-04- Pag Bootcamp Asia 2012 22 2012 e
  • 23. Project Codex Prologue… o BAKE TEXTURE • BAKE PASS oBaked Complete Diffuse Pass oAO Pass oShadow Pass oSpecular Pass + HI Pass(More SP) 08-04- Pag Bootcamp Asia 2012 23 2012 e
  • 24. Project Codex Prologue… o 3DSMAX LIGHT SETUP FOR BAKE TEXTURE. 08-04- Pag Bootcamp Asia 2012 24 2012 e
  • 25. Project Codex Prologue… o PASS CONTROL • CL PASS : Base color (Diffuse Texture?) • SP PASS : Dark Density Control. • HI PASS : More Specular Control. • SD PASS : Shadow Density Control. • AO PASS : Ambient Density Control. • DOWN PASS : Down Light Control. 08-04- Pag Bootcamp Asia 2012 25 2012 e
  • 26. Project Codex Prologue… o COMPOSITE PASS TEXTURE SD PASS AO PASS HI PASS SP PASS CL PASS Down PASS 08-04- Pag Bootcamp Asia 2012 26 2012 e
  • 27. Project Codex Prologue… o COMPOSITE PASS Layer SP PASS CL PASS 08-04- Pag Bootcamp Asia 2012 27 2012 e
  • 28. Project Codex Prologue… PAD PHONE SP PASS CL PASS 08-04- Pag Bootcamp Asia 2012 28 2012 e
  • 29. Project Codex Prologue… PAD PHONE SP PASS CL PASS Control Texture used by Pass 08-04- Pag Bootcamp Asia 2012 29 2012 e
  • 30. Project Codex Prologue… o 6 가지 이상의 패스 텍스쳐 o 아티스트가 모바일 쉐이더에 대한 이해 력이 좋아야 한다. o 적절한 협의 점을 찾는 것이 관건. o 트윅 아이디어에 대한 여러가지 생각을 해 볼 필요가 있다. SP PASS CL PASS 08-04- Pag Bootcamp Asia 2012 30 2012 e
  • 31. o Standard Mobile Quality. (Unity3D Shading) o 아직 개선 중입니다… o 쉐이더 개선 사항. • 페이크 셀프 쉐도우 o 8방향 다운 라이트 기준 o 8장의 셀프 쉐도우 텍스처를 미리 생성 하고 라이트 방향, 컬러,밀도에 따라 컨트롤링 + 디테일 텍스쳐 o 텍스처간 중간 보간 처리 PASS SP CL PASS 쉐이더 구현. 08-04- Pag Bootcamp Asia 2012 31 2012 e
  • 32. 유니티 엔진 게임개발 팁 & 인하우스 툴 소개 Manager Class GUI File Animation Path Shader 08-04- Pag Bootcamp Asia 2012 32 2012 e
  • 33. Manager Class • 핵심 Asset, GameObject, Component 들을 좀더 쉽게 관 리하기 위해 싱글톤 Manager Class를 만듬 • Scene Manager • Cam Manager • Effect Manager • Character Manager • UI Manager • Audio Manager 08-04- Pag Bootcamp Asia 2012 33 2012 e
  • 34. Scene Manager 동기 • Unity Scene의 Unload기능이 있으면 좀더 씬 활용이 용이하다고 판단 • Application.LoadLevelAdditive(Scene1) • Application.LoadLevelAdditive(Scene2) • Application.LoadLevelAdditive(Scene3) Scene2만 삭제 하고 싶다 ㅜ.ㅜ • Application.LoadLevel는 모두 삭제된다. Pag e
  • 35. Scene Manager 씬 삭제 원리 • RootObject 를 관리하는 Scene Manager제작 ------ >> Del버튼 ---- >> 아래와 동일한 기능이다 Destory( Scene2_Object_1 ) Destory( Scene2_Object_2 ) Destory( Scene2_Object_3 ) Destory( Scene2_Object_4 ) Destory( Scene2_Object_5 ) 위의 GameObject는 RootObject들 이다. 따라서, RootObject만 자료구조로 관리하면 Scene2를 지울 수 있다. 08-04- Pag Bootcamp Asia 2012 35 2012 e
  • 36. Scene Manager 로직 • Dictionary<string, List<Transform>> _sceneTable; • 위 테이블의 Key는 씬이름이고, Value는 RootObject List임 • 씬로드 후 새롭게 로드된 RootObject인지 어떻게 알 것인가?? • 새로운 씬을 로드하면, 모든 GameObject의 transform.root를 기 존에 저장되어 있는 Table의 Value에 들어 있는 값인지 확인. 새롭게 로딩된 개체라고 판단되면 새로운 씬에 Add시킨다. 08-04- Pag Bootcamp Asia 2012 36 2012 e
  • 37. GUI . 소개 • 기존의 UNITY OnGUI() 함수를 통한 UI그리기는 속도가 너무 느리다 • Orthographic project 카메라를 이용한 UI그리기 방법은 빠르고 쉽다. • Ex> 이런 종류의 GUI로는 EZGUI, NGUI가 있다. • 허나, 좀 더 커스텀 마이징을 쉽게 하기 위해 자체 GUI개발 08-04- Pag Bootcamp Asia 2012 37 2012 e
  • 38. GUI . 상속관계 UIRoot UIFont UIBase UIPanel UIRadioPanel UITexture UIBlendTex UIBlendAdd UIProgress UIClock UITexSplit UIButton UICheck UISprite 08-04- Pag Bootcamp Asia 2012 38 2012 e
  • 39. GUI . CLOCK UI • 1. 스킬버튼의 쿨타임 • 2. 원형 - 원형 진행바 - 쿨타임 08-04- Pag Bootcamp Asia 2012 39 2012 e
  • 40. GUI . CLOCK UI 구현 • struct FSIn • { • float4 pos : SV_POSITION; • fixed2 uv : TEXCOORD0; Float2 pixel : TEXCOORD1; // 버텍스 위치로부터 보간된 값 fixed4 percent : COLOR0; • }; • half4 Frag( FSIn fIn ) : COLOR • { • float radius = atan2( fIn.pixel.x, fIn.pixel.y ); ~~ fixed4 color; Last tick Start tick • ~~ 알파값 조절 • ~~ 1 per 0 per • return color; • } 08-04- Pag Bootcamp Asia 2012 40 2012 e
  • 41. GUI. 스킬버튼 만들기 오른쪽 텍스쳐를 사용 • 좌측 텍스쳐의 UV를 이용 하여 Texture에서 사용할 영역을 지정 • x축 2등분 y축 5등분 08-04- Pag Bootcamp Asia 2012 41 2012 e
  • 42. Unity에서의 Data File활용하기 1 • 유니티는 기본적으로 Serialize기능을 이용하여 public변수 값들을 저장 할 수 있다. • 그리고 PlayerPrefs 을 통해서도 데이터를 저장 할 수 있다. • 하지만, 기존 게임프로그래머들에게는 파일( xml, cvs, txt, bytes ) 파싱이 더 편하다 08-04- Pag Bootcamp Asia 2012 42 2012 e
  • 43. Unity에서의 Data File활용하기 2 • 1. 유니티는 씬에 연결된 모든 Asset들은 자동적으로 빌드될때 올라간다. 이를 이용해, 스크립트에 public TextAsset변수 선언하고, Data File을 연결한다. • 2. Reousrces 폴더내의 데이터들은 빌드시 모두 올라간 다. 따라서 Resouces 폴더내에 DataFile을 넣 고 , Resources.Load함수로 DataFile을 로드한다. • 데이터파일 같은 경우는 2번째 방법이, 익숙하고 더 편하 다. 08-04- Pag Bootcamp Asia 2012 43 2012 e
  • 44. 모바일 빌드시 바이너리 파일 사용법 • 모바일폰에서의 FileStream을 통해 파일을 읽는것은 안전하지가 않다. • 따라서 모바일은 TextAsset의 bytes변수를 이용하여 binary파일을 읽는다. ( 단 파일의 확장자가 .bytes 이여한다 ) • TextAsset ta = (TextAsset)( Resources.Load( 경로 ) ); MemoryStream ms = new MemoryStream( ta.bytes ); BinaryReader br = new BinaryReader( ms ); br.Read ~ ~ ~ 08-04- Pag Bootcamp Asia 2012 44 2012 e
  • 45. Animation Event저장 • Animation Event를 저장하는 것이 좋은가?? 캐릭터에 Animation에 Event를 많이 이용하는 게임은 하는 것이 좋다~ • 1. 맥스에서 애니메이션을 약간의 보정작업을 할 경우, 새롭게 애니메이 션 파일을 만들어야 하므로, 내부 Event값은 모두 사라지게 된다. AnimationEvent값을 저장해 놓는다면 , 원래 값을 복구 시킬 수 있다. • 2. 모바일에서는 Editor전용 함수인 AnimationUtility.GetAnimationEvents()를 사용하지 못하므로 Animation Event알려면 미리 저장 시켜놔야 한다. • animationEvent를 미리 알수 있으면, 동작을 예측 할 수 있으므로, AI 분야에 응용 할 수 있을 것이다. ps>편집,확인이 용이하게, 바이너리보다 text파일저장을 사용했다. 08-04- Pag Bootcamp Asia 2012 45 2012 e
  • 46. CVS파일 이용하기 • TextAsset가 로딩 할 수 있는 확장자 포맷은 다음과 같다. .txt .html .htm .xml .bytes ( cvs파일포맷은 존재 하지 않는다 ) • Application.isEditor == true 일때 .cvs파일을 FileStream으로 로드 • Application.isEditor == false경우 .txt를 TextAsset으로 로드 • 최종 폰에 빌드전에 .cvs파일을 .txt파일로 변환하는 작업이 필요하다 08-04- Pag Bootcamp Asia 2012 46 2012 e
  • 47. 보간 애니메이션 • 보간 애니메이션의 대표 무료 라이브러리인 Itween • Itween사용보다 코딩이 많이 필요 없는 보간 애니메이션 을 구현하면 프로그래머의 작업은 줄어들 것이다. • 때문에 코딩 없이 쉽게 사용 할 수 있는 보간 애니메이션 GameAni구현. • GameAni는 UI의 Blend효과, 카메라Path, 카메라 Wave , 간단한 애니메이션 효과 등 다양하게 응용할 수 있다. 08-04- Pag Bootcamp Asia 2012 47 2012 e
  • 48. Path를 이용한 컷씬 • 비균일 스플라인을 이용 • RNS( rounded nonuniform spline ) • SNS( smooth nonuniform spline ) • TNS( timed nonuniform spline ) • 원할 경우 스플라인의 처음과 끝 노드를 연결하여 Loop관계로 만들 수 있습니다. • Game Programming gems 4권 2.4 비균일 스플라인 참고 08-04- Pag Bootcamp Asia 2012 48 2012 e
  • 49. !HIRING! Senior programmer jplee@devclan.org 08-04- Pag Bootcamp Asia 2012 49 2012 e
  • 50. 감사합니다. 08-04- Pag Bootcamp Asia 2012 50 2012 e