D3DXCreateTextureFromFileEx()
D3DXCreateTextureFromFileEX() 의 파라미터값 중에서
Width , Height 부분이 있는데 D3DX_DEFAULT 를 사용하면 D3DXCreateTextureFromeFile() 처럼 그냥 기본적으로 텍스쳐의 값을 받아오는 것 같다. 하지만 D3DX_DEFAULT 대신 D3DX_DEFAULT_NONPOW2 로 지정 해 준다면 2의 승수가 아닌 텍스쳐 파일도 늘어지거나 깨지는 현상이 발생하지 않는다.
그리고 MipLevel 파라미터.
보통 NULL 로 사용하는데 이렇게 할 경우 불러와진 텍스쳐 크기를 대상으로 모든 레벨의 밉맵을 생성한다고 한다.
텍스쳐의 크기가 커지면 커질수록 밉맵이 많아 질텐데 스프라이트에 밉맵...... 필요할까?
이녀석의 값을 1 로 지정해주면 밉맵을 생성하지 않는다고 한다.
MipLevel 파라미터를 NULL 로 해주었을 경우 (모든 밉맵 자동생성) 0.0045초 의 시간이 경과하였다.
MipLevel 파라미터를 1 로 지정 해주었을 경우 (밉맵 생성하지 않음) 0.0015초 의 시간이 경과하였다.
테스트에 사용된 그림은 140 * 210 짜리 아주 작은 텍스쳐 하나다. 이 작은 텍스쳐도 3배정도의 시간이 걸리는데 해상도가 올라가면 올라갈 수록 차이는 커질 듯 싶다.
'Programming > DirectX' 카테고리의 다른 글
| Terrain System 에 Frustum Culling 적용! (2) | 2010/01/01 |
|---|---|
| Terrain LOD 작업중.. (0) | 2009/12/31 |
| D3DXCreateTextureFromFileEx() (4) | 2009/11/30 |
| Parallax Mapping (시차 맵핑) 의 위엄 (2) | 2009/11/21 |
| BeginPass() / EndPass() (2) | 2009/11/20 |
| 다중캐릭터 (0) | 2009/08/11 |


PairPlay.rar
댓글을 달아 주세요
그리고 원본 이미지 파일 크기가 640*480인데 800*600으로 불러오려고 하면 메모리상엔 800*600으로 불러오는데 시간은 더 늘어나는... 나같은 경우엔 스케일링이 귀찮아서 저렇게했는데 로딩속도가 완전 느려졌지 ㅋㅋ 그래서 그냥 원본크기대로 로딩하고 스케일링을 하는듯 ㅇ<-<
불러올때 늘려서 불러오는 방법도 있었군하...
매번 스케일 맞추기 귀찮았는데 좋은데!?ㅋㅋㅋㅋㅋㅋㅋ
대신에 그렇게되면 자동으로 밉맵을 생성하는듯하니까 로딩속도가 더 느려지더라고 ㅋㅋ
매번 스케일버ㅏ꾸기 귀찮은 UI 들만 해주면 괜찮을거같기두한데..
상황에 맞춰 쓰는게 중요한데 여러가지 상황에 맞게 쓸려니 생각할게 많아지는군 ㅠ_ㅠ