본문 바로가기
유니티 터레인을 Raw로 만들기/ Unity Heightmap from Photoshop 이전 포스팅을 근거로, 거꾸로 해볼 수도 있습니다. 일단 하이트맵을 만드는거죠. 512로 했지만, 섬세하게 만들고 싶으면 더 키워도 되고, 대충 만들고 싶으면 줄여도 됩니다. 이 사이즈에 따라 터레인 메쉬의 조밀도가 '알아서' 바뀔겁니다. 최적화 할 때 좋겠군요 여기서 중요한건 하이트맵 포맷인 그레이스케일 16비트라는 것입니다. 뭐 RGB로 만들고 나중에 컨버팅해도 되지만 그렇게 하면 자칫 LDR로 만들고 HDR로 강제 포맷변환하는 결과가 되어서 줄무늬가 생기게 될지도요. 다 되었으면 이번엔 지형을 그려야겠지요. 하이트맵을 그리는 프로그램은 굉장히 많이 있습니다. 굉장히.. 까진 몰겠지만 하여간 테라젠이나 월드 빌더 , 그 외 많은 DCC 툴들을 이용해서 만들 수 있지요. 포토샵에서 단순하게 테스트해보고.. 2016. 9. 4.
유니티 터레인을 Raw로 저장하기 / Unity Heightmap to Photoshop 유니티 터레인의 하이트맵은 Raw로 저장하고 / 불러올 수 있습니다. Raw란 채널당 16비트 이상을 사용하는 색이 깊은 파일 포맷이죠 (색이 깊다는 표현 왠지 맘에 든다) 일단 터레인을 수정하고 하이트맵을 익스포트 시키면... 8비트로 뭣할라고 뭣이 중한지도 모르면서 8비트는 256단계밖에 표현 못하니까 256미터 이상의 지형은 표현 못하잖아요 제기랄. 적어도 16비트는 되어야 65536미터를 표현 가능하죠. 어쨌건 그렇게 16비트 채널의 그레이스케일인 Raw 파일로 저장됩니다. 그럼 포토샵에서도 아래와 같이 부르면 됩니다. 음 모르는게 있는데요. 왜 128로 만든건 129로, 256으로 만든건 257로 꼭 1씩 늘어서 저장이 되는 걸까요??? 하여간 부릅니다. 채널은 하나. 16비트로. 그럼 새까맣게.. 2016. 9. 4.
Stencil / 유니티 스텐실 대학원 다이렉트 X 시간에 해본 이후로 해본적이 없어서... 뭔지 다시 정리해 봐야겠다. ShaderLab: StencilThe stencil buffer can be used as a general purpose per pixel mask for saving or discarding pixels. 스텐실 버퍼는 다목적의 퍼 픽셀 마스킹 기능이다. 픽셀을 보이게 하고 안보이게 하는... The stencil buffer is usually an 8 bit integer per pixel. The value can be written to, increment or decremented. Subsequent draw calls can test against the value, to decide if a pi.. 2016. 9. 1.
Light Probe Proxy Volumes (“LPPV”): 라이트 프로브 프록시 볼륨 Large particle systems can now be lit more realistically with Light Probe Proxy Volumes (“LPPV”). It’s a way of getting baked lighting information into large dynamic objects that can’t use baked lightmaps. LPPV works by generating a 3D grid of interpolated light probes inside a bounding volume and allows you to specify the grid resolution. By doing so, you can add a spatial gradient to probe-lit.. 2016. 8. 28.
유니티 라이트맵 4.5 변경사항 Direct light AO : 직접광에 의한 AO. Ambient 색상을 받아서 까맣지 않음. 더욱 소프트한 그림자를 발생시킬 수 있음 inDirect AO : 간접광에 의한 AO . Ambient 에서 생기는 AO이므로 새까맣다. 둘을 뭐 왜 굳이 분리했는지 잘 모르겠지만 예상하기론 이전의 '검어서 답답한' 느낌을 좀 없앨 수 있지 않을까 싶음. 2016. 8. 28.
새로운 cinematic effect http://blogs.unity3d.com/2015/12/10/cinematic-image-effects-pre-release/ 유니티에서 개발중이라는 시네마틱 이펙트를 받아서 테스트 해봤습니다. 게임 엔진의 그래픽 퀄리티는 요새 들어 상당부분 후처리에 의존을 하는 경향이 있죠. 실제로 후처리만 개선해도 퀄리티가 상당히 올라가는 것을 자주 볼 수 있습니다. 뭐 근본적인 처리도 중요하지만 ... ㅎㅎ 톤매핑이 좋아졌다는데 확인이 안됩니다. 아직 개발중이어서 그런지 신형 톤매핑을 적용하는 순간 까맣게 타버리거든요 그 외에도 아직 현재 버전과는 불안하게 동작하는게 많습니다 DOF는 확실히 좀 더 좋아지긴 했습니다. 블룸은 좋아졌나? 싶은데 톤매핑이랑 HDR이랑 같이 봐야 좀 더 알수 있을 것 같고요. 어셋 .. 2016. 8. 1.
라이트맵을 구운 상태에서 리얼타임 라이트를 적용하기 새 프로젝트를 만들고 안드로이드로 전환합니다. 디렉셔널 라이트를 Baked로 바꾸고, 플렌과 공을 모두 static으로 바꿉니다. 메터리얼은 레가시 디퓨즈를 넣었습니다. 라이트맵 옵션은 다음과 같습니다. 리얼타임 GI는 끄고, Auto 옵션도 끈 상태입니다 수동으로 라이트맵 베이킹을 시작합시다. 베이킹이 끝났습니다. 다이나믹 라이팅은 베이킹이 끝날때 추가하던 시작할때 추가하던 아무 상관없이 추가로 잘 적용됩니다. 사실 디퓨트 셰이더는 라이트맵과 실시간 라이팅 연산이 완전히 독립되어 있는지라 이게 당연... 그러므로 만약 다이나믹 라이트가 안나온다면 몇 가지 가설이 가능할지도 모릅니다. 1. 환경설정에서 픽셀 라이트 카운트가 0 이다 그러면 뭘 해도 안나옴2. 이미 4개의 다이나믹 라이트가 씬에 설치되어 .. 2016. 7. 29.
그럼에도 불구하고 유니티에서 왜 PNG가 왜 좋은가?? 후후후후 글을 쓰고 나서 바로 하루도 안되어서 제 글을 반박하는 글을 쓰게 되었군요 제목은 자극적으로 낚시 (...) 뭐 엄청나게 PNG가 좋은건 아니지만, 문제를 해결할 수 있는 방법이 생긴건 맞아요 많은 도움을 주신 @hellonbee 님께 정말 감사의 말씀을 드립니다. 예전에 영상 공부할때에도 이런 '알파에 의한 찌꺼기 묻어남' 현상을 막기 위한 에프터 이펙트 기능으로 '프리멀티드 알파'(Pre-Multiplied Alpha) 라고 하는 기법이 있었습니다. 미리 투명도를 곱해 놔서 외각색이 묻어 나오는 것을 방지하는 기능이지요 http://www.3dsmax.net/ez2k/ezboard.cgi?db=maxtheory&action=read&page=0&dbf=3& 뭐 이것과 완벽히 같은 알고리즘인지.. 2016. 7. 21.
(수정) "유니티에서는"어째서 PNG보다는 TGA가 더 쓸모있는 파일 포맷인가? (수정)"유니티엔진에서는" 어째서 PNG보다는 TGA가 더 쓸모있는 파일 포맷인가?로 정정합니다. -> 그럼에도 불구하고 유니티에서 왜 PNG가 왜 좋은가?? 로 이어집니다. 알파가 있고 퀄리티가 좋은 텍스쳐를 제작할 때 주로 쓰는 파일 포맷이 TGA와 PNG 입니다. 물론 어떤 포맷을 써도 상관 없지요. 유니티를 포함한 요즘 엔진은 텍스쳐 파일을 자동 변환하니까요! 심지어 PSD를 써도 아무 문제 없습니다만.. PSD를 쓰면 이런 문제가 있을 수 있겠지요. - 빌드 용량이야 자동 압축되니 별 문제 없겠지만, 프로젝트 자체의 용량은 PSD의 어마어마한 용량때문에 어마어마해져서 작업하는 프로젝트 자체가 무거워진다. - 프로그래머나 디자이너(기획자) 가 포토샵이 없으면 그 파일을 확인하기 쉽지 않다 그리고 .. 2016. 7. 21.
유니티 5.4 베타버전 첫인상 유니티 5.4 베타버전 처음 켜고 뭔가 이질감이 느껴져서 보니까 와이어프레임에 안티알리어싱이 들어가 있다.이전에도 그랬나? 유니티 5.4의 하이어라키 창은 멀티 씬 로딩을 편하게 하기 위해서 인터페이스가 씬 기반으로 디자인이 바뀌었다. 저장 안된 씬은 * 처리해 놓은 것도 언리얼과 같다. Standard Shader의 Smoothness를 제어하는 텍스쳐를 메탈릭 텍스쳐의 알파로 쓸것이냐 알베도 텍스쳐의 알파로 쓸것이냐를 결정하게 만들어 놓은 것 같다. 얼핏 반사 설정도 보인다 Camera 창에 난데없는 Scale 바가 생겼다. 화면을 확대해서 뭘 보려고? 역시나 이번 5.4에서 가장 기대했던 SSR은 예상대로 동작. 스크린 스페이스 기반이라 뒷면 부분은 어쩔 수 없이 오류가 있고, 디퍼드에서만 돌아가고.. 2016. 4. 16.
유니티 5.2 이상부터는 ETC2 기본 사용 http://ozlael.tistory.com/42 유니티 5.2 이상부터는 안드로이드에서 ETC2가 기본 사용입니다. 그냥 자동으로 해 두면 ETC2가 가동됩니다. 편한데다가...알파까지 지원되는 퀄리티 좋은 텍스쳐가 나오니 이 어찌 아니 좋을시고.. 아참, 정확히 말해야겠군요. 그냥 RGB - 알파 없는 상태 - 일때는 여전히 ETC1 이고 알파가 있는 상태 RGBA 일 때만 ETC2 파일 포맷을 사용하는 거군요. 하긴 알파가 없을때는 ETC1이나 2의 퀄리티가 큰 차이가 없지요. 위 글에서 강제로 바꾸는 법을 소개했습니다만, ETC1으로 만들어도 퀄리티도 큰 차이가 없고 하위 호환도 되니까 사실상 굳이 강제로 바꿀 필요는 없어 보입니다. 하지만 RGBA16비트와 ETC2 RGBA의 퀄리티와 용량 차.. 2016. 2. 10.
하이트맵의 비트별 차이 / 유니티 터레인을 월드머신으로 넘기기 유니티에서 대충 그려서 월드머신으로 넘기기. 대충 그렸습니다. 기본이 500미터죠. Export Raw 로 하이트맵을 뺍니다. 두 개를 만들어 봤습니다. 뭐 두 개 차이는 별게 아니예요 terrain8.raw 는 8비트 하이트맵이고 terrain.r16은 16비트 하이트맵입니다. 원래 terrain.raw인데, 월드머신에서는 16비트 raw 파일을 r16이라는 파일 포맷으로 읽어요. 그냥 파일 확장자를 강제로 바꿔주기만 하면 됩니다. 당연히 쉽게 상상할 수 있을 얘기긴 한데 뭐. 8비트는 다들 알다시피 256 단계잖아요? 그리고 16비트는 65000 단계 (65천 얼마였는데 ... 몇이었는지 찾아보면 되지만 귀찮...) 그 결과를 말로 설명하자니 귀찮아서 그림으로 비교해 봅니다. 마침 월드머신으로 넘기면.. 2016. 2. 8.
반응형