소스 검색

Added UNORM formats support for RenderTarget.

TothBenoit 5 달 전
부모
커밋
950a92f42d
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      h3d/impl/PipelineCache.hx

+ 5 - 1
h3d/impl/PipelineCache.hx

@@ -102,7 +102,7 @@ class PipelineBuilder {
 
 
 	static function getRTBits( tex : h3d.mat.Texture ) {
 	static function getRTBits( tex : h3d.mat.Texture ) {
 		inline function mk(channels,format) {
 		inline function mk(channels,format) {
-			return ((channels - 1) << 2) | (format + 1);
+			return ((format + 1) << 2) | (channels - 1);
 		}
 		}
 		return switch( tex.format ) {
 		return switch( tex.format ) {
 		case RGBA: mk(4,0);
 		case RGBA: mk(4,0);
@@ -119,6 +119,10 @@ class PipelineBuilder {
 		case RGBA32F: mk(4,2);
 		case RGBA32F: mk(4,2);
 		case RG11B10UF: mk(2, 3);
 		case RG11B10UF: mk(2, 3);
 		case RGB10A2: mk(3, 4);
 		case RGB10A2: mk(3, 4);
+		case R16U: mk(1,5);
+		case RG16U: mk(2,5);
+		case RGB16U: mk(3,5);
+		case RGBA16U: mk(4,5);
 		default: throw "Unsupported RT format "+tex.format;
 		default: throw "Unsupported RT format "+tex.format;
 		}
 		}
 	}
 	}