본문 바로가기

Game Programming

(157)
유니티 쉐이더 Clip 성능 문제 피하기 Y아무래도 알파를 사용하면 클립을 빼기가 어렵다. 클립을 제외하고 사용하려고 하면 쉐이더를 나누어야 하는 경우도 생기는데 이 경우 성능 차이는 어느정도 날지 감이 잡히지 않는다. 아무래도 필레이트 처리 부가 많은 화면에서 문제가 되지 않을지 그냥 예상만 해본다. 자 그럼 클립을 잡지않고 투명을 하려면 어떻게 해야 할까? 생각해보자. 일단 유니티에서 알파 탈락을 위한 처리는 2가지 정도로 압축된다. 1. Clip 함수 사용 (가장 깔끔하지만 속도 문제 경고 뜬다.)2. Blend SrcAlpha OneMinusSrcAlpha 사용 (특이한 경우 쉐이더 분할이 필요하다. ㅜㅜ) 자 그럼 문제와 해결된 부분을 보자. 물론 완벽한 해결은 clip이 최선이지만,,,, 어쩔 수 없이 모델이 나누어져 있기 때문에 쉐..
아웃라인 쉐이더 수정 그간 사용하던 투사이드 쉐이더에서 아웃라인을 추가해 보았다. 아웃라인을 추가하는 것은 구조상 다음과 같다.일단 캐릭터의 얇게 만든다. 그 뒤 원하는 색상으로 처리하는 것인데.유니티에서 이러한 점을 하는 것은 제공하는 쉐이더를 쓰거나 직접 만드는 것인데 내 경우 직접 만드는 것으로 처리했다.기존에 버텍스 컬러를 활용한 메쉬 생성법으로는 아웃라인을 처리하지 못했다는 것이 걸리지만.이 부분도 동적 메터리얼 생성을 활용하면 가능할 것으로 보여진다. 그런데 그럼...메쉬보다 용량이 걱정인데. 나중에 이 부분을 확인해 보아야 할 것으로 보여진다. 잡설은 뒤로하고 버텍스 연산 이후 패스만 3번 잡아썼는데도 큰 무리 없는 성능을 보여준다, 결과물의 순서만 명확하면 원하는 쉐이더는 만드는 것은 유니티에서 문제 없는 것으..
Unity3D mavericks Issue. 해결 망할 이 문제로 매버릭스 갈아 엎으려다 겨우 수정했다. 4.3.2 버전이 올라왔길레 설치해봐도 똑같고..해서 자체 해결에 집중, 이제 2시간정도 테스트 해봤는데 해결된 것으로 보여진다. 해결 방법 자체가 미봉책이기 때문에 공개는 4.3.3 버전에서 해결이 되지 않으면 미봉책이라도 공개할 예정이다. 현재 매버릭스에서 발생하는 문제는 일부 구형 맥에서 매버릭스로 업데이트 한 후 발생하는 데 다음과 같다. 유니티 에디터가 정지됨 (10 ~ 20초 사이), 유니티 에디터 모드에서 게임씬이 창모드 인 경우 느려짐. 해당 문제들이 거의 수정된 느낌이다. 이 때문에 24시간 낭비한 걸 생각하면 분이 풀리지 않지만 4.3.3에서 정식 수정이 이루어지리라 믿어본다.
MariaDB 에서 unix_timestamp의 엄격함 아무래도 Mysql에서 마리아로 갈아 타면 몇가지 문제에 봉착하게 되는데 그 중 한가지로 엄격한 규약이 있다. 유닉스 타임스탬프로 변환된 unix_timestamp('X') or unix_timestamp('0000-00-00 00:00:00') 이 결과는 무조건 NULL이다 0이 오지 않는다. 엄격해서 그렇다는데 고쳐질 것으로 예상된다. 괜한 삽질로 20분 날렸구나.