그래서 장면을 렌더링하려는 여러 컨트롤이 있습니다. 각 컨트롤에 대해 Device 인스턴스가 있고 각 컨트롤에 대해 컴파일해야하는 셰이더 같은 여러 다른 개체가 있습니다.DirectX 각 컨트롤에 대한 여러 장치 및 개체
여러 개의 장치와 각 컨트롤의 모든 개체를 사용하는 것이 좋은 방법인지 궁금합니다.
나는 꽤 좋은 성능을 얻는다. 기억과 설정 시간을 절약하고 싶습니다. 예를 들어 셰이더는 각 인스턴스마다 동일하므로 매번로드하고 컴파일해야합니다. 나는 그들이 시도했을 때 같은 장치로 제한되기 때문에 정적으로 가질 수 없습니다. 장치를 정적으로 만들려고했기 때문에 셰이더 개체를 정적으로 만들 수도 있지만 단 하나의 스레드 만 실행해도 컨텍스트가 손상되는 문제에서 실행되는 것 같습니다. 어쩌면 그것은 GUI 스레드가 항상 (모든 컨트롤에 의해 정적으로 사용되는) 컨텍스트를 끝내고 다음 상태로 가기 전에 렌더를 사용하여 내 상태를 손상시킬 수 있기 때문일 수 있습니다.
내 문제와 관심은 드로잉 성능 (꽤 좋고 만족 스럽습니다)보다 필요한 메모리와로드 시간에 대한 것입니다 (느리고 무겁게 느껴짐). 나는 "모범 사례"는 일반적으로 없지만 일부 사람들은 내가 향상시킬 수있는 몇 가지 힌트를 가지고있을 것이라고 읽었습니다. 어떤 도움
감사
아마도이 경우에도 다른 컨텍스트가 필요합니다. – Hexa
컨텍스트도 동일하지 않습니다. – VuVirt
네, 그렇지만 저는 다른 것들을 사용하지 않으면 컨텍스트 "부패"를 얻을 것이라고 생각합니다. 당신도 똑같을 것이지만, 제가 질문에서 설명한 비슷한 문제에 직면하게 될 것이라고 생각합니다. – Hexa