[25.04.23] TIL( 프로젝트 진행)

설민우·2025년 4월 23일

내일배움캠프 - Unity

목록 보기
28/85

프로젝트 진행

오늘은 프로젝트 진행을 어느정도 완료 하여 모든 UI 작업을 끝낼 수 있었습니다.
이제 남은것은 UI 연결(병합) 과 남아있는 포켓몬의 Front, Back Table을 만드는 것입니다.
진행하면서 세부적으로 있었던 일은 아래와 같습니다.

1. 애니메이션 적용

 =====:=@#@=  -+-      :-=========-.          ..   .:::=====:        :------------==========-        :#@@@@@# ===-=@@ :  +@@@@: =:-@@@   :+* @@.-========================== 
 =====:@@@@@@@= .+*@@@+  ::   .--. .@@@%%%%%%%=.%=#@+%=:====*@@@@@@@@@@@@@@@@@@@@#- .-====== @@@@@***+      @  ==:.@= @@@@@@@@@@@  @@@ @@@@@ @@ -========================== 
 =====: %:. .@@@@@@@@@@@@  =@@* :#@@@@@@@@@@@@@@@@ #@::=:==- @@ #@@               *@+  ====. @% @@@@@@@@@@@. @..=:.@+ @##@@@@@@@#      @%##@ @@ -========================== 
 ===-:.    .   .#++=.  @@@@@@@@ %  @+ ----:.  .**: %@%@# ..: @@ @@@@@@@@@@@@@@@@@@@  @ ===. @- @@#@@@ +@@#@@ -@.. .@= @##*      % @@@@@@##@@ @@:-========================== 
 ===.%:.    .=+*.         *  @@:@=@@@=      #@+.  @@@@: - =: @@ @%@             -@@  @   . @  @@#%@  @. @@@@% @@ .@. @@##@@@@@@@@ .@%#####@ *@::#@@@@#+==-:.       .-====== 
 === @@@@@@@@@@%@@@@@@#*=   @@@= :: @@@@@@@@@@@@@ @*@@@@@@@##@@ @@@:-=--------* @%@@ +%@  @= @@#@@# @+@@ -@@@@  @=@  @###@@@@@@@@  @@@@###@ @@ .      :@+:#@@@@@@@@+:====== 
 ===.@:@@ =*@@@@##@@@@@@@@@@@@  :-:=@@-- ..  .=.  % +@+:*#@# @@ @@@@@@@@@@@@@@@@@@@@  @@ @@ *@%@@  @-  *@: @@@@- @@- @###%        .@  @%##@ @@ %@**=+@#.-@@*=.    @%.====== 
 ===- @-@@      @@+=:=:      :+==.+@@@#        .: + :@ +   . .        =%####@       .@@:@* @@@@@ *@  --..@@ @@@@@+: :@@%%@@@@@@@  @@@ @%##@ @@              @@=. @@   :==== 
 ====.= @@ @#--.       .@@@@=@ ==:=#=@: @@%*=+.-@**=@@@@@.==:  @@@@@@@@@@@@@@@@@@@@@@: @  +@@@  @= :====. @@ #*#%    @*+@@@@@@@#  @@% @%#@@ @@@@@@@@@@@@@@@@@   :@@@@@:==== 
 ====-.@ @@@@@@@@@@@@@@@@@@@-@.==-+. @@@@@@@@@@@@@@@-@++::== @@@-   :+%*------------+@** *@@:+@=             %**# -@@@@@@@@@@@@@@@:@# @%#@ :@@.                    #@=.==== 
 =====:. @%%%%%%%@@@@@@+-    :-===-+%:      :=#@%          : @@ #@@@@  =::::::::::=%@@%@%#  .::=*%%%%%%@@@@@@*++%@@=              @+ @@#%@ @@ .@@@@@@@@@@@@@@@@@@@@-  -==== 
 =======                        :==::=%%=+@@:     #%.   @@@= @@ @@@@@@@@@@@@@@@@@@@@  %@ @@@@@@@@@@@@@@+:::::::-+:  @@:=========- @# @%#%@ @@  @@                @. -====== 
 ======-:+-=......-=--=@%%%%@@@#*:===-:: #@@@%*+@@@@@@@@@@#@=-%%#.                :  -@@ -.     -@@@@@@@@@@@@@@@@: .@%.=========- @* @@@@@ @@ @@. .@@@@@@@@@@=. #@-:======= 
 =======@*@@@@@@@@@@@@@@@@@@@@@@@:======:+=%@@@@@@@@@@+: =-.::. =@@@@@@@@@@@@@@@@@@@@= @@@@@@@@@.-......-+===---** -@@:==========.@@    =- %@ @@                @  -======= 
 ======-.#:                  .*-.-======-.-+:.  -@*:   ..::-===-:                    :.         .:......:====+*#%@@=.:-==========.:%@@@@@@@@@ @@@@@@@@@@@@@@@@@@@:-======== 
 =======-:.::::::::::::::::::..:==========:.....   :-===================================================-::::.....:-==============:.                              -======== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 ========================================================================================================================================================================== 
 =============================================================-    -==================================================--=================================================== 
 ============================================================- -@@.  .-============================================-      -================================================ 
 ============================================================.=@@@@@@+-=========================================-.  .@@@**:-=============================================== 
 ===========================================================: :@@%@@@@-======================================-:   %@@@@@@@=-=============================================== 
 =======================================================-:   :@@@@@.  -==============-:     -==============:   -@@@@%@%+   -=============================================== 
 ==================================================:      -%@@@@*   :============-.     @@@: .-=========-.  .@@@@@%%%%++@@:-=============================================== 
 =================================================--@@@@@@#+@@%%@@=    .-==--:     -%@@@@@@@@::====-.     @@@@@%%%%%%@@@@@--=============+*%@@%+=========================== 
 =================================================-%@+ @@@@@@@@@@@@@@@=        @@@@@@@%%%%%@@@.=-.   @@@@@@@%%%%%%%%%%*    -==========+++*=    -=========================== 
 =================================================-:       .+*+%@@@@@@@@@@@@@@@@@@%%%%%%%%@@      #@@@@@%%%%%%%%%%%%@@@@@@=============-:.-#%%%+=========================== 
 ========================================================-:          +%%@@@@%%%%%%%%%%%%%%@: -@@@@@@%%%%%%%%%%%%%%%%%:     ==========+*@@%@@#*+============================ 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=:+@@%%@@@@@%%%%%%%%%%%%%%%%%%%@@@@@@@@@%%%%%%%%%%%%%%%%%@@@@@@=+*+++++++++=     -++++++++++++++++++++++++++++++ 
 -=-=-=------=-=-=-==-=-=-=-=---==-=-=---=-=----=-=-----=-=:@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%@@@@@@@@@@@@@@@@@@%%%%%%%@@@@=-++===----=+*- :**+--=-=-=-=-=-==-=-=-=-=-==-=-= 
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-.               @@@@@@@@@@@@@@@@@@       %@@@@@@@@@@@@@@@@@@%    :+++++++++*%@%**+=+++++++++++++++++++=++++++++ 
 -----------------------------------------------------------------::::::::.      @@@@@@@%@@  @@@@@                 @@@   =%%*+--------------------------------------------- 
 :+:#=*=+=-=-=:=:=-====-=-=-=-==-=-=-==++*++===-=-=-=-=-=-=--=-=:=:=-=-===*=#=+.         @@@@@@%=@@.=:=-==-=-+-=..    -=+**==-===-==-=-=-=-=-=-+++*++-=-=--=+**#=+:=-==-=:= 
 #%%+=+++##+++==-=-=--============+*#%#+=+=+#*++=====================+##%#+=*=+#*++==::@@@  +@@@ -  ====+*#%#+=+=+#*+:      :---===========+#%%#+=+=+#*=-.::    :===-====== 
           .: =::::-===---:::::-==-           .. --::--===---:::::--+:           :  =. @@@@@%.%@@. :.. ..           :--*+*@@#+==---:::::--=:           :+%%%@#+**==--:::::: 
       -++++= ::+*=-.  -::=-=-==:         -+++*-.:-++=-  .-:-=-=-+--         =+++*-.::.           -.:=+.        -++++=.-=+==:  .::-=---=-:         =++=+  =#+=--  :::==-=-+ 
    :***+                ... .   :     -**+=                ...... .:     -**++                ..: .%@@@@:   -**+=                ... .   :     -**+-                ....:  
 #%#*==-==----=++****++**+.==-==+@@%#%#*+=-------=++****+++#=.==-=-*@@%%%#*=--=-----=++#+*#++**+ += .  -+*#%#*=--------+++****+++*=.+=-==*@@#%%#*=--=---:=--*@@%*+*+#-.+-:+ 
 ::.+ =---==+**++##=:              -:::-:----==+**+*##=:              ::.:= =---=+++*++#%-:         :.      .=.=---=++**+*#*=:             .--.--.=---=++***+%%-:           
   .=.=**###=:= -   =- ...........    :::=**##*--:.:   +-............    .-.+#**#*--- =   *-............#@@#.-:=**###---.:  .=- ...........    ::-+**##*:-:..   +:......... 
 . .- .               ................::..               .................: . .         .   ...........     .: .               ................:..                ......... 
 ...      ...........         .........      ...........         .........      ...........         ........       ...........         .........      ...........        .. 
 ....................===+#**+-..........................---****+-..........................==-**+*+:.........................:===****=-.........................:+-=****=:. 
 .................... .: . :.::......................         ..-.......................... :. . : =............    .... ....  . .  ..:.........................  : .  . -. 
 ....................... . . .........................+#+#=                                                     .#-   .+.     :+                     ..                     
 ...........................    ..................... =.  + =%#:+*=*+ :###%: %*##+%: #%#%* =%###  %+##+#. #++*-  *+*#=.*-+*=+. *+**:.*##%= -%**#: :#-  =##%@.=%##% :#+%#*%. 
========================================================================================================================================================================== 
=                                                                    시작 하려면 엔터 키를 입력 하세요                                                                   = 
========================================================================================================================================================================== 
  • 위와 같은 화면의 배경을 Thread.Sleep() 으로 돌면서 애니메이션을 보여줄 수 있도록 하였습니다
  • 문제점 : 이 경우에는 ReadLine()이 불가능해지는 문제가 있었습니다
  • 확인된 문제 해결 방법 : 팀원인 민석님께서 별도의 Thread를 파서 한쪽에서는 애니메이션만 돌린다면 해결 가능할 것이라고 조언해 주셨습니다.
  • 우선은 선결 과제가 많아 추후 시간이 비게 되면 해결해 볼 생각입니다.

2. Pivot문제 해결...?

        @@@@@@                         $$$$$$$$$$$$$$$$$$$$$$$$$$$
      #@++:-+*@@                       $$$$$$$$$$$$$$$$$$$$$$$$$$$
     @: .-:-:  #@                      $$$$$$$$$$$$$$$$$$$$$$$$$$$
    %@%=+-:--   @:                     $$$$$$$$$$$$$$$$$$$$$$$$$$$
    @   ::::: @@@@                     $$$$$$$$$$$$$$$$$$$$$$$$$$$
    @@.:-:::: @%@@-                    $$$$$$$$$$$$$$$$$$$$$$$$$$$
    +    .       @@                    $$$$$$$$$$$$$$$$$$$$$$$$$$$
   .@@@+  :%@@@@@@              @@     $$$$$$$$$$$$$$$$$$$$$$$$$$$
     -@@@@#   @.#             *@@*     $$$$$$$$$$$$$$$$$$$$$$$$$$$
         @%@@%+=@%+=         :+=+@@    $$$$$$$$$$$$$$$$$$$$$$$$$$$
   :#@@#.%+  +@=  :*@@@*@=   %@@@ -    $$$$$$$$$$$$$$$$$$$$$$$$$$$
 @@@+:  @@     *#    .:@@@  #  *  @=   $$$$$$$$$$$$$$$$$$$$$$$$$$$
   @@@@@@  ..:  -@@@@@@#     %%  @@    $$$$$$$$$$$$$$$$$$$$$$$$$$$
        .  . ..  @  :          *@      $$$$$$$$$$$$$$$$$$$$$$$$$$$
           ....   # -@         @+      $$$$$$$$$$$$$$$$$$$$$$$$$$$
       @@         @.:=@*     @@@%      $$$$$$$$$$$$$$$$$$$$$$$$$$$
     @. -%  :+=-:@  :  @@@@@@@@-       $$$$$$$$$$$$$$$$$$$$$$$$$$$
    :: -*%@*     @ .  .+@@@@@@         $$$$$$$$$$$$$$$$$$$$$$$$$$$
     @%*+:*@@@@@+@@@@#+-@@+=           $$$$$$$$$$$$$$$$$$$$$$$$$$$
   :@@@@@@@-        @*==-              $$$$$$$$$$$$$$$$$$$$$$$$$$$
   #@@.             @@@@@@@            $$$$$$$$$$$$$$$$$$$$$$$$$$$
  • 어제의 해결 불가능했던 Pivot문제를 반쯤 해결했습니다.
  • 이상하게 전체 Background에서는 오류가 발생했지만 위의 작인 구간에서의 Pivot은 잘 작동했습니다.
  • 또한 $ 표기를 확인하면 Skip 하도록 하여 UI가 겹쳐질때에도 덮어씌우지 않도록 해결했습니다.
  • 하지만 아직가지도 저 $ 표시로 스킵해주지 않으면 이상하게 오류가 발생합니다.(해결책은 찾지 못했습니다.)

3. 배틀 UI

                @"
                                                                                                                                                                            
                {6}                                                        {10}                                                      {14}                                   
                {7}                                                        {11}                                                      {15}                                   
                {8}                                                        {12}                                                      {16}                                   
                {9}                                                        {13}                                                      {17}                                   
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                       L   V  : {0}                                                                                         
                                                                       이  름 : {1}                                                                                         
                                                                       H    P : {2}                                                                                         
                                                                           {3}                                                                                              
                                                                       P    P : {4}                                                                                         
                                                                           {5}                                                                                              
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
                                                                                                                                                                            
 @@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+ %@  
 @#.@                                                                                                                                                                 @= @  
 @= @                                                                                                                                                                 @  @  
 @- @                                                                                                                                                                 @= @  
 @- @                                                                                                                                                                 @= @  
 @= @                                                                                                                                                                 @= @  
 @= @                                                                                                                                                                 @= @  
 @= @                                                                                                                                                                 @= @  
 @- @                                                                                                                                                                 @= @  
 @= @                                                                                                                                                                 @= @  
 @*-@                                                                                                                                                                 @# @  
 @= @                                                                                                                                                                 @= @  
 @*-@                                                                                                                                                                 @# @  
 @*-@                                                                                                                                                                 @# @  
 @@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+ %@ 
  • 우선 위와 같이 표기되는 방식으로 배틀 창을 구현했습니다.
  • 하지만 아직 구조 개선을 진행하지 못해서 아래와 같이 복잡한 구조로 전달해 주어야합니다.
             UIUpdater(UIName.Battle, new Dictionary<int, Tuple<int, int>?>
                  {
                      {0, new Tuple<int, int>(0,0) }, // 배경
                      {1, new Tuple<int, int>(7,28)}, // 내 포켓몬
                      {2, new Tuple<int, int>(5,6) }, // 적 1

                  },
                  (18,new Dictionary<int, string>
                  {   
                      // 플레이어 정보
                      {0, 5.ToString()},
                      {1, MonsterTable.MonsterDataDic[MonsterType.Charizard].Name},
                      {2, $"{100.ToString()} / {200.ToString()}"},
                      {3, GetBar(100,200)},
                      {4, $"{200.ToString()} / {300.ToString()}"},
                      {5, GetBar(200,300)},
                      // 적 정보 1
                      {6, $"L   V  : {10.ToString()}" },
                      {7, $"이  름 : {MonsterTable.MonsterDataDic[MonsterType.Squirtle].Name}" },
                      {8, $"H   P  : {70.ToString()} / {50.ToString()}" },
                      {9, $"    {GetBar(50,100)}" },


                  }),
                  new List<int>() { 201, 102} // 
                  );
  • 매번 딕셔너리를 생성해 주어야 하기 때문에 성능에 큰 문제가 있을 것으로 보이며, 이는 병합 단계에서 해결해볼 생각힙니다.

결론

우선은 보여지는 부분들은 모두 해결했습니다. 이제 남은 것은 병합, 또 병합입니다.

profile
클라이언트 개발자를 지망하고 있습니다.

0개의 댓글