블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2737)
Unity3D (817)
Programming (474)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (58)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (53)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
04-19 00:04

mac 에서 sourcetree 를 굉장히 잘 쓰고 있었는데,

어느 날 sourcetree 업데이트 이후 계정 인증을 계속 물어본다!! ㅠ


store password in keychain


위 항목을 체크하고 비밀번호를 입력해도, 저장되지 않는 키체인이여...


소스트리 삭제하고 재설치도 해보았지만 소용이 없었는데,

아래 포스팅 보고 해결했다.


http://crom0810.tistory.com/entry/Keychain에-SourceTree암호-저장하기


SourceTree에서 변경된 비밀번호를 인식하지 못하고 계속 비밀번호를 물어볼 경우 아래의 명령어로 처리할 수 있습니다.

git config --global credential.helper osxkeychain 


감사합니다~ 선생님~



출처: http://moigo4.tistory.com/entry/sourcetree-비밀번호-저장-안되는-이슈-mac [라지월드]

반응형
Posted by blueasa
, |
웹 페이지를 여는 방법을 찾고 있었는데....조금 다른 것이 들어왔네요 ㅎ
웹 상에 노출되어 있는 이미지 url를 입력하면 유니티 내에서 볼 수 있게 해 주는 코드입니다.
구글 클라우드에 있는 것들을 가져오면 앨범도 만들어 볼 수 있겠습니다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class example : MonoBehaviour 
{
public string url = "https://community.arm.com/cfs-file/__key/communityserver-blogs-components-weblogfiles/00-00-00-20-66/6180.mali_2D00_shield_2D00_2.png";

IEnumerator Start() 
{
WWW www = new WWW(url);
yield return www;
Renderer renderer = GetComponent<Renderer>();
renderer.material.mainTexture = www.texture;
}
}


반응형
Posted by blueasa
, |


[링크]

https://orcacode.tistory.com/entry/Unity%EC%97%90%EC%84%9C-iPhone-X%EB%A5%BC-%EB%8C%80%EC%9D%91%ED%95%98%EB%8A%94-%EA%B0%84%ED%8E%B8%ED%95%9C-%EB%B0%A9%EB%B2%95


[플러그인]

https://github.com/rlatkdgus500/UnitySafeAreaController


반응형
Posted by blueasa
, |

컬링(Culling)

  • 최종 화면에 영향을 미치지 않는 물체를 파악하고 이를 렌더링 대상에서 제외시켜 필요한 물체만 그리는 기법
  • 프러스텀 컬림(Frustum Culling)
    • 가장 기본적이면서도 효과가 좋은 방법
    • 카메라 영역내의 공간 정보만 살려두고 영역 외부에 설정된 정보는 모두 버림
    • 카메라에 프로젝트에 설정된 레이어별로 차단 거리(Per-Layer Cull Distances)를 지정하면 이 값을 사용해 레이어에 속한 게임 오브젝트들을 컬링함
  • 오클루젼 컬링(Occlusion Culling)
    • 기존의 절두체를 이용한 컬링 기법의 한계를 보완하고 효율적으로 공간 정보를 관리해 빠르게 렌더링을 수행할 수 있게 도와주는 기법
    • Unity의 Windows => Occlusion Culling 메뉴를 통해 설정
    • 오클루젼 컬링 제작방법
      1. 오클루젼 영역 설정
      2. 오클루젼 컬링 데이터 제작
      3. 최종 결과 시뮬레이션
    • 오클루젼 포털(Occlusion Portal)
      • 오클루젼 영역을 스크립트로 조절하는 기능

드로우 콜 배칭(Draw Call Batching)

  • 텍스쳐 아틀라스(Texture Atlas)를 사용하여 콜수를 줄임
  • 성질이 동일한 물체들을 하나의 메시와 재질을 사용하게 통합
    • 여러 게임 오브젝트의 메시를 하나의 메시로 통합해주는 CombineChildren 컴포넌트를 제공
    • 최상위 게임 오브젝트에 이 컴포넌트를 사용하면 자식 오브젝트들이 갖는 메시들을 분석한 후 재질별로 메시를 통합해 재가공함
    • 컴바인 메시(Combined Mesh)를 통한 작업시 주의할 점
      • 게임 오브젝트들을 통합하면 게임 오브젝트별로 움직일 수 없게 됨
      • 관련된 빛의 계산이 통합된 모든 메시를 대상으로 수행됨
    • 메터리얼(Materials)
      • 다른 텍스쳐에 있는 두개의 독립적인 메터리얼을 하나의 큰 텍스쳐로 결합 할 수 있음(텍스처 아틀라스)
      • 일단 텍스처를 동일한 아틀라스로 묶으면 단일 메터리얼로 사용할 수 있게 됨
    • 배칭(Batching)
      • 현재 씬의 상황을 판단해 자동으로 드로우 콜을 줄이게 최적화하는 기능

      • 정적 배칭 Static Batching (Pro required)

        • Static 옵션이 설정된 게임 오브젝트에서 동일한 재질을 사용하는 물체가 있는 경우 유니티는 이들을 자동으로 하나의 메시로 통합 관리함
        • 움직이지 않는 물체에 대해 지정만 하면 자동으로 수행
      • 동적 배칭 Dynamic Batching

        • 움직이는 물체를 대상으로 동일한 재질을 사용하는 경우 이를 판단해 자동으로 메시를 통합해 드로우 콜을 줄여주는 기능
        • 총 정점의 데이터 수가 900개 미만인 메시를 지닌 게임 오브젝트만을 대상으로 수행됨
        • 메시 데이터가 위치 외에도 노멀, UV, 라이트맵 UV 등 총 3개의 속성을 갖고 있는 경우 정점의 수가 225개를 넘으면 동적 배칭이 적용되지 않음

최적의 퍼포먼스를 위한 캐릭터 모델링(Modeling Characters for Optimal Performance)

  • 싱글 스킨 메쉬 렌더러 사용

    • 각 캐릭터에 스킨 메쉬 렌더러(class-SkinnedMeshRenderer)는 하나여야 합니다.
    • Unity는 시야 컬링 및 경계 볼륨의 업데이트를 사용하여 애니메이션을 최적화하고, 이러한 최적화는 하나의 애니메이션 컴포넌트 및 하나의 스킨 메쉬 렌더러를 사용하는 경우에만 활성화됩니다.
    • 모델의 렌더링 시간은 두개의 스킨 메쉬를 사용할때 하나의 스킨 메쉬를 사용 할 때보다 대략 2배 정도 이며, 여러개의 메쉬를 사용하여 실질적인 메리트가 있는 일은 드뭅니다.
  • 가능한 메터리얼을 적게 사용

    • 각 메쉬의 메테리얼의 수를 최대한 적게 해야 합니다.
    • 여러 메테리얼을 캐릭터에서 사용하는 이유는, 다른 부분에서 다른 쉐이더가 필요한 경우 뿐 입니다(예를 들면 눈 부분은 특수 쉐이더).
    • 그러나 캐릭터에서 두 개 또는 세 개의 메테리얼로 거의 모든 케이스에 충분 합니다.
  • 가능한 한 본(Bones)를 적게 사용

    • 전형적인 데스크톱 게임의 본 계층은 15개에서 60개 사이의 본을 사용합니다.
    • 본의 수가 적을수록 퍼포먼스가 좋아집니다.
    • 30개 정도의 본으로 데스크톱 플랫폼에서는 아주 좋은 품질을 얻을 수 있고, 모바일 플랫폼에서도 비교적 좋은 품질을 얻을 수 있습니다.
    • 이상적으로는 모바일 장치에서는 30개보다 적게 하고, 데스크톱 게임에서도 30개를 크게 초과하지 않도록 합니다.
  • 폴리곤 갯수를 적게 사용

    • 폴리곤 수는 필요한 품질 및 대상 플랫폼에 의존합니다.
    • 모바일 장치는 메쉬 당 300에서 1500 폴리곤으로 좋은 결과를 얻을 수 있으며, 데스크톱 플랫폼에서의 이상적인 범위는 1500에서 4000 정도입니다.
    • 반면, 게임에 많은 캐릭터가 있을 때 메쉬 당 폴리곤의 수를 줄일 필요가 있을 것 입니다.
    • 예를 들어, Half Life 2는 캐릭터에 2500 - 5000 삼각형 수였습니다.
    • 현재 PS3와 XBox 360의 최고 랭크 게임은 보통 캐릭터에 5000에서 7000 삼각형 수입니다.
  • 포워드 및 역운동학을 분리

    • 애니메이션이 임포트 될 때, 모델의 역운동학(IK) 노드는 포워드 운동학(FK)에 베이크(baked)된 결과로 Unity는 IK 노드가 전혀 필요 없습니다.
    • 그러나 모델에 남아있으면 애니메이션에 영향을 미치지 않음에도 불구하고 CPU 오버 헤드가 발생합니다.
    • 선호에 따라 Unity 또는 모델링 도구, 어느 것이든 중복 IK 노드를 제거할 수 있습니다.
    • 이상적으로는 IK 및 FK 계층을 모델링 시에 별도로 보관하여 필요할 때 IK 노드를 쉽게 제거할 수 있도록 해야 합니다.

렌더링 통계 창(Rendering Statistics Window) 확인

  • Time per frame and FPS
    • 하나의 게임 프레임을 처리 및 렌더링하는데 걸린 시간(프레임/초)
    • 이 숫자는 프레임 업데이트 및 게임 뷰의 렌더링에 걸린 시간만 포함되는 것에 유의
    • 에디터가 씬 뷰 인스펙터의 그리기 및 에디터 전용 작업을 수행하는데 걸린 시간은 포함되지 않음
  • Batches
    • “Batching” is where the engine attempts to combine the rendering of multiple objects into a chunk of memory in order to reduce CPU overhead due to resources switching.
  • Saved by batching
    • Number of batches that was combined. To ensure good batching, you should share materials between different objects as often as possible.
    • Changing rendering states will break up batches into groups with the same states.
  • Tris and Verts 그려진 삼각형과 정점의 수. 이것은 optimizing for low-end hardware에서 중요합니다.
  • Screen 화면 크기, 안티 앨리어싱 레벨 및 메모리 사용량.
  • SetPass 렌더링 패스의 수. 각 패스에 대해서 유니티 런타임은 CPU 오버헤드를 가져올 수 있는 새로운 쉐이더를 바인딩한다.
  • Visible Skinned Meshes 렌더링된 스킨 메쉬 수
  • Animations 재생 에니메이션 수

프레임 디버거(Frame Debugger)

  • 메뉴: Window > Frame Debugger
  • 매 프레임마다 그리는 오브젝트 정보를 보여줌

쉐이더 로딩타임 최적화(Optimizing Shader Load Time)

항상 포함하는 쉐이더와 미리 로딩해야 하는 쉐이더 집합을 설정하여 쉐이더 로딩시간을 효율적으로 관리해 줌

  • 항상 포함하는 쉐이더(Always Included Shaders)

    • Project Settings > Graphics > Always Included Shaders
  • 미리 로딩하는 여러가지 쉐이더 집합(Preloaded Shader Variant Collection)

    • 쉐이더 집합 생성

    • Assets > Create > Shader Variant Collection

    • 쉐이더 집합 미리 로딩 목록에 추가

    • Project Settings > Graphics > Preloaded Shaders

텍스처 캐시(Texture Cache)

  • 모바일의 경우 GPU 제조사에서 권장하는 텍스처 포멧을 사용하면 캐시 적중률이 높아져 속도의 향상을 얻게 되며, 특히 GPU의 성능이 약한 스마트폰 기기에서는 이러한 부분의차이가 큼
  • 플랫폼별 권장 텍스처 포멧
  • 안드로이드 텍스처 압축 지원
    • http://stackoverflow.com/questions/9148795/android-opengl-texture-compression/9514396#9514396
    • ETC1 (Ericsson texture compression)
      • This format is supported by all? Android phones.
      • But, It doesn't support an alpha channel, so can only be used for opaque textures.
    • PVRTC (PowerVR texture compression)
      • Supported by devices with PowerVR GPUs (Nexus S, Kindle fire ...)
    • ATITC (ATI texture compression)
      • Used in devices with Adreno GPU from Qaulcomm (Nexus One ...)
    • S3TC (S3 texture compression)
      • This texture compression is used in the NVIDIA chipset integrated devices (Motorola Xoom ...)
  • 안드로이드 Developer에 정의된 내용
    • https://developer.android.com/guide/topics/graphics/opengl.html#textures
    • ATITC (ATC) - ATI texture compression
      • GL_AMD_compressed_ATC_texture
      • GL_ATI_texture_compression_atitc
    • PVRTC - PowerVR texture compression
      • GL_IMG_texture_compression_pvrtc
    • S3TC (DXTn/DXTC) - S3 texture compression
      • GL_OES_texture_compression_S3TC
      • GL_EXT_texture_compression_s3tc
      • GL_EXT_texture_compression_dxt1
      • GL_EXT_texture_compression_dxt3
      • GL_EXT_texture_compression_dxt5
    • 3DC - 3DC texture compression
      • GL_AMD_compressed_3DC_texture
// Texture compression supported on Android
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
  Strings = gl.glGetString(GL10.GL_EXTENSIONS);
 
  if (s.contains("GL_IMG_texture_compression_pvrtc")) {
    // Use PVRTC compressed textures
  } else if (s.contains("GL_AMD_compressed_ATC_texture") ||
             s.contains("GL_ATI_texture_compression_atitc")) {
    // Use ATITC compressed textures
  } else if (s.contains("GL_OES_texture_compression_S3TC") ||
             s.contains("GL_EXT_texture_compression_s3tc")) {
    // Use DTX Textures
  } else {
    // Handle no texture compression founded
  }
}

텍스처 설정

  • Texture
  • Normal map
  • Editor GUI and Legacy GUI
  • Sprite (2D and UI)
  • Cursor
  • Reflection
  • Cookie
  • Lightmap
  • Advanced

텍스처 포멧지원 확인

텍스처 생성팁

오버드로우(Overdraw)

  • 물체가 겹쳐서 뒤에 있는 물체를 그린후에 앞에 있는 물체를 다시 그리면 겹치는 부분만큼 픽셀을 계산해서 그려야 함
  • 이렇게 특정 영역의 픽셀을 다시 그리는 것을 오버드로우라고 함
  • 불투명한 물체의 오버드로우를 줄이는 좋은 방법은 가장 큰 영역을 차지하는 물체를 먼저 그리게 설정하는 것

유용한 에셋





[출처] https://github.com/zzragida/UnityDocs/wiki/Graphics-Optimization

반응형
Posted by blueasa
, |
using UnityEngine;
 using System.Collections;
 using UnityEngine.UI; // Required when Using UI elements.
 
 public class AlphaButton : MonoBehaviour
 {
     public float AlphaThreshold = 0.1f;
 
     void Start()
     {
         this.GetComponent<Image>().alphaHitTestMinimumThreshold = AlphaThreshold;
     }
 }



[출처] https://answers.unity.com/questions/821613/unity-46-is-it-possible-for-ui-buttons-to-be-non-r.html

[참조] http://www.devkorea.co.kr/bbs/board.php?bo_table=m03_qna&wr_id=68902

반응형
Posted by blueasa
, |

[위치] C:\Users\(사용자계정)\AppData\Local\Atlassian\SourceTree

 

[삭제해야 할 파일] password, userhosts

 

[링크]

https://igotit.tistory.com/entry/Git-SourceTree-%EC%9B%90%EA%B2%A9%EC%A0%80%EC%9E%A5%EC%86%8C-%EB%B9%84%EB%B2%88-%EC%A0%80%EC%9E%A5%EB%90%9C%EA%B2%83-%EC%82%AD%EC%A0%9C%ED%95%98%EA%B8%B0

 

Git. SourceTree. 원격저장소 비번,아이디 저장된것 삭제하기.

문제상황. SourceTree 에서 원격저장소에 푸시하는 초기 단계에서 아래와 같은 창에서 원격저장소 아이디와 비번 기록하고 붉은 박스의 Remember Password 체크 선택된 상태에서 Login 시도하면 해당 정��

igotit.tistory.com

 

[for Mac] blueasa.tistory.com/2353

 

[펌][Mac] Source tree 에서 Github Enterprise 계정 비번이 바뀐 후 인증문제 해결

회사에서는 Github Enterprise 계정을 사용하고있고 sso를 통해 하나의 계정으로 Github Enterprise 계정을 이용합니다. 주기적으로 sso 계정의 비번을 바꿔줘야 하기 때문에 비번을 바꾼 후에는 소스트리�

blueasa.tistory.com

 

반응형
Posted by blueasa
, |


[링크]

http://leafbird.github.io/devnote/2018/11/%ED%85%8C%ED%81%AC%EB%8B%88%EC%BB%AC-%EB%A6%AC%EB%8D%94%EC%8B%AD-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/

반응형
Posted by blueasa
, |


[링크] http://unitytutorial.tistory.com/34

반응형
Posted by blueasa
, |