SetStreamSource 자체의 용도에 대해서 질문드리는 것이 아니오라
스트림 자체에 대한 궁금점입니다.
SetStreamSource( 0, ..... ); 1)
SetStreamSource( 1, ..... ); 2)
SetStreamSource( 2, ..... ); 3)
SetStreamSource( 3, ..... ); 4)
이렇게 호출시 이러한 것들이 병렬로 처리되는지 궁금합니다.
즉, 다시 말해서, 1) 명령어가 - 0번 스트림에 정보를 다 가지고 온뒤 완료된 상황 -
끝난뒤에야 2) 명령어를 실행하는지
아니면, 1) 명령어는 호출은 하되 내부적으론 GPU 에게 맡기고
곧바로 2) 명령어를 처리하는지 ( 내부적으론 GPU 에서 병렬처리하겠다는 의미가 되겠죠 )
궁금합니다......
두번째 질문은 위의 예처럼 1), 2), 3), 4) 을 나눠서 처리하는것이 빠른지
아니면 합쳐서 쓰는것이 빠른지 궁금합니다....
예를 들어서 , pos, nor, tex0, tex1 이런식으로 되어있을시
각각 따로 스트림에 넣어서 처리하는것이 빠른지
아니면 하나에 넣어서 한방에 처리하는것이 빠른지 궁금합니다
DX 도움말을 보면 대역폭을 작게 해준다고 했지만, 위의 SetStreamSource 가 여러번 호출되는
부하가 어느정도인지 몰라서 질문드리는 겁니다.
SetStreamSource 에 대해서 질문 있습니다.
Moderator: 류광
-
- Posts: 16
- Joined: 2003-03-24 01:59
- Location: 게임회사
- Contact:
공식적인 도큐먼트에 따르면 static 렌더링일 경우에 나눠쓰지
그러나 버퍼에 락을 걸어서 memcpy 따위를 해야 할 필요가 있을 경우엔 대부분의 경우에 버텍스의 모든 구성요소에 대해 그짓을 할 필요가 없으므로 나눠 쓰는 편이 유리할 경우가 꽤 있습니다.
예를 들어 스키닝 변형 같은 경우엔 포지션과 노말 이외는 건드릴 필요가 없지요..
그리고 모든 요소를 나눠서 그리는 경우에도 대부분의 카드에서 성능 저하는 보지 못했습니다...
오히려 대부분 더 빠른 속도를 나타내는 경우도 많았습니다...
아...심지어 TNT2 카드에서도 그랬습니다....
도큐먼트에서 추천하는 방식은 다이나믹해야 할 부분과 스테이틱해야 할 부분을 스트림으로 나눠서 쓰는 것이
성능면에서는 가장 좋을 것이다...였습니다...
2000~
예를 들어 스키닝 변형 같은 경우엔 포지션과 노말 이외는 건드릴 필요가 없지요..
그리고 모든 요소를 나눠서 그리는 경우에도 대부분의 카드에서 성능 저하는 보지 못했습니다...
오히려 대부분 더 빠른 속도를 나타내는 경우도 많았습니다...
아...심지어 TNT2 카드에서도 그랬습니다....
도큐먼트에서 추천하는 방식은 다이나믹해야 할 부분과 스테이틱해야 할 부분을 스트림으로 나눠서 쓰는 것이
성능면에서는 가장 좋을 것이다...였습니다...
2000~
아싸~