@flighthq/scene3d-wgpu 0.3.1-next.704.69286f6 → 0.3.1-next.780.12e6944
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/drawWgpuScene3D.d.ts.map +1 -1
- package/dist/drawWgpuScene3D.js +2 -2
- package/dist/drawWgpuScene3D.js.map +1 -1
- package/dist/wgpuClassicPrelude.js +2 -2
- package/dist/wgpuClassicPrelude.js.map +1 -1
- package/dist/wgpuMeshPipeline.d.ts.map +1 -1
- package/dist/wgpuMeshPipeline.js +9 -4
- package/dist/wgpuMeshPipeline.js.map +1 -1
- package/dist/wgpuMeshUpload.d.ts +1 -1
- package/dist/wgpuMeshUpload.d.ts.map +1 -1
- package/dist/wgpuMeshUpload.js +19 -12
- package/dist/wgpuMeshUpload.js.map +1 -1
- package/dist/wgpuPbrPipelineCache.d.ts.map +1 -1
- package/dist/wgpuPbrPipelineCache.js +2 -2
- package/dist/wgpuPbrPipelineCache.js.map +1 -1
- package/dist/wgpuShadedPrelude.d.ts.map +1 -1
- package/dist/wgpuShadedPrelude.js +2 -4
- package/dist/wgpuShadedPrelude.js.map +1 -1
- package/dist/wgpuShadowMap.d.ts.map +1 -1
- package/dist/wgpuShadowMap.js +9 -4
- package/dist/wgpuShadowMap.js.map +1 -1
- package/dist/wgpuWireframeUpload.d.ts.map +1 -1
- package/dist/wgpuWireframeUpload.js +12 -6
- package/dist/wgpuWireframeUpload.js.map +1 -1
- package/package.json +16 -16
- package/src/wgpuMeshPipeline.test.ts +34 -1
- package/src/wgpuMeshUpload.test.ts +39 -3
- package/src/wgpuShadowMap.test.ts +30 -0
- package/src/wgpuWireframeUpload.test.ts +29 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawWgpuScene3D.d.ts","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"drawWgpuScene3D.d.ts","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,QAAQ,EAKR,IAAI,EAGJ,iBAAiB,EACjB,MAAM,EAIN,eAAe,EAEf,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AA0BlC,wBAAgB,eAAe,CAC7B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAC1B,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,aAAa,CAAC,EAAE,QAAQ,CAAC,2BAA2B,CAAC,GACpD,IAAI,CAoEN;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAG1F"}
|
package/dist/drawWgpuScene3D.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createMatrix3, createMatrix4, setMatrix3NormalFromMatrix4 } from '@flighthq/geometry/contract';
|
|
2
2
|
import { getNodeWorldMatrix4 } from '@flighthq/node/contract';
|
|
3
|
-
import { declareWgpuRenderTargetColorSpace,
|
|
3
|
+
import { declareWgpuRenderTargetColorSpace, getWgpuColorAdjustmentMaterialFeature, } from '@flighthq/render-wgpu/contract';
|
|
4
4
|
import { prepareScene3DRender } from '@flighthq/render/contract';
|
|
5
5
|
import { getNode3DRuntime, getNode3DWorldAlpha } from '@flighthq/scene3d/contract';
|
|
6
6
|
import { BlendMode, StandardMaterialKind, MAX_FORWARD_LIGHTS } from '@flighthq/types/contract';
|
|
@@ -104,7 +104,7 @@ function drawEntries(state, entries, camera, blended) {
|
|
|
104
104
|
let boundSkinned;
|
|
105
105
|
let boundColorAdjustment;
|
|
106
106
|
let boundColorMatrix;
|
|
107
|
-
const colorAdjustmentFeatureEnabled =
|
|
107
|
+
const colorAdjustmentFeatureEnabled = getWgpuColorAdjustmentMaterialFeature(state) !== null;
|
|
108
108
|
for (let i = 0; i < entries.length; i++) {
|
|
109
109
|
const entry = entries[i];
|
|
110
110
|
runtime.activeBlendMode = blended ? getMaterialBlendMode(entry.material) : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawWgpuScene3D.js","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,
|
|
1
|
+
{"version":3,"file":"drawWgpuScene3D.js","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getWgpuColorAdjustmentMaterialFeature } from '@flighthq/render-wgpu/contract';
|
|
2
2
|
import { WGPU_MESH_FRAGMENT_TAIL } from './wgpuMeshFragmentTail';
|
|
3
3
|
import { createWgpuMeshPipeline, ensureWgpuPerMapMaterialBinding, ensureWgpuScene3DPipeline, ensureWgpuShadowSampleLayout, getWgpuMeshPreludeWgsl, getWgpuMaterialSampler, resolveWgpuMaterialTextureView, spliceWgpuColorAdjustmentPrelude, stashWgpuUvTransform, WGPU_DIRECTIONAL_SHADOW_WGSL, } from './wgpuMeshPipeline';
|
|
4
4
|
import { getWgpuScene3DRuntime, getWgpuSkinningAdapter } from './wgpuScene3DRuntime';
|
|
@@ -90,7 +90,7 @@ export function ensureWgpuClassicPipeline(state, key, format) {
|
|
|
90
90
|
hasColorAdjustment: getWgpuScene3DRuntime(state).activeColorAdjustmentRun,
|
|
91
91
|
hasColorMatrix: getWgpuScene3DRuntime(state).activeColorMatrixRun,
|
|
92
92
|
};
|
|
93
|
-
return ensureWgpuScene3DPipeline(state, `classic:${format}|${buildWgpuClassicDefineKey(fullKey)}`, (blended, skinned) => compileWgpuClassicPipeline(state, fullKey, format, blended, skinned,
|
|
93
|
+
return ensureWgpuScene3DPipeline(state, `classic:${format}|${buildWgpuClassicDefineKey(fullKey)}`, (blended, skinned) => compileWgpuClassicPipeline(state, fullKey, format, blended, skinned, getWgpuColorAdjustmentMaterialFeature(state)));
|
|
94
94
|
}
|
|
95
95
|
// The full WGSL module source for a define key: the const-flag block (lighting model first) + the
|
|
96
96
|
// shared mesh prelude (Frame/Draw/vs_main) + the classic material block + fs_main.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuClassicPrelude.js","sourceRoot":"","sources":["../src/wgpuClassicPrelude.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"wgpuClassicPrelude.js","sourceRoot":"","sources":["../src/wgpuClassicPrelude.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,gCAAgC,CAAC;AAWvF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,+BAA+B,EAC/B,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,sBAAsB,EACtB,8BAA8B,EAC9B,gCAAgC,EAChC,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACrF,uGAAuG;AACvG,oGAAoG;AACpG,mGAAmG;AACnG,oGAAoG;AACpG,YAAY;AACZ,MAAM,UAAU,sBAAsB,CACpC,KAAsB,EACtB,QAAuC,EACvC,WAAmB,EACnB,OAA8B,EAC9B,QAA+B,EAC/B,SAAiB,EACjB,WAAmB,EACnB,UAAoC,EACpC,WAAqC,EACrC,SAAmC,EACnC,QAAkC;IAElC,+FAA+F;IAC/F,uGAAuG;IACvG,qGAAqG;IACrG,qGAAqG;IACrG,eAAe,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/D,eAAe,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAChE,eAAe,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9D,eAAe,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC7D,YAAY,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACpE,YAAY,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACrE,YAAY,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACnE,YAAY,CAAC,CAAC,CAAC,GAAG,8BAA8B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,+BAA+B,CAC7C,KAAK,EACL,WAAW,EACX,QAAQ,CAAC,uBAAuB,EAChC,qBAAqB,EACrB,eAAe,EACf,YAAY,CACb,CAAC;IAEF,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC7F,8FAA8F;IAC9F,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACxC,OAAO,OAAO,CAAC,SAAS,CAAC;AAC3B,CAAC;AAED,qGAAqG;AACrG,uGAAuG;AACvG,oGAAoG;AACpG,oDAAoD;AACpD,MAAM,UAAU,yBAAyB,CAAC,GAAmC;IAC3E,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,KAAK,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACnG,OAAO,GAAG,KAAK,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAC9G,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAC7B,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACjI,CAAC;AAED,kGAAkG;AAClG,wFAAwF;AACxF,gFAAgF;AAChF,6BAA6B;AAC7B,MAAM,UAAU,0BAA0B,CACxC,KAAsB,EACtB,GAAmC,EACnC,MAAwB,EACxB,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,KAAK,EACf,yBAA8E,IAAI;IAElF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACvC,IAAI,EAAE,gCAAgC,CAAC,GAAG,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,sBAAsB,CAAC;KAC5G,CAAC,CAAC;IACH,MAAM,uBAAuB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC3D,OAAO,EAAE;YACP,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;YAChF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YACnF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YACnF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YACnF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YACnF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;YACrF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;YACrF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;YACrF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;SACtF;KACF,CAAC,CAAC;IACH,uGAAuG;IACvG,wGAAwG;IACxG,sGAAsG;IACtG,OAAO,sBAAsB,CAAC,KAAK,EAAE;QACnC,OAAO;QACP,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,MAAM;QACN,uBAAuB;QACvB,MAAM;QACN,qBAAqB,EAAE,4BAA4B,CAAC,KAAK,CAAC;QAC1D,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,uGAAuG;AACvG,iGAAiG;AACjG,oFAAoF;AACpF,MAAM,UAAU,yBAAyB,CACvC,KAAsB,EACtB,GAAmC,EACnC,MAAwB;IAExB,MAAM,OAAO,GAAyB;QACpC,GAAG,GAAG;QACN,kBAAkB,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,wBAAwB;QACzE,cAAc,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,oBAAoB;KAClE,CAAC;IACF,OAAO,yBAAyB,CAC9B,KAAK,EACL,WAAW,MAAM,IAAI,yBAAyB,CAAC,OAAO,CAAC,EAAE,EACzD,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CACnB,0BAA0B,CACxB,KAAK,EACL,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,EACP,qCAAqC,CAAC,KAAK,CAAC,CAC7C,CACJ,CAAC;AACJ,CAAC;AAED,kGAAkG;AAClG,mFAAmF;AACnF,MAAM,UAAU,gCAAgC,CAC9C,GAAmC,EACnC,OAAO,GAAG,KAAK,EACf,WAAiD,IAAI,EACrD,yBAA8E,IAAI;IAElF,IAAI,MAAM,GAAG,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IACxF,IAAI,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,sBAAsB,KAAK,IAAI,EAAE,CAAC;QACtF,MAAM,GAAG,gCAAgC,CAAC,MAAM,EAAE,sBAAsB,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,OAAO,CACnG,oHAAoH,EACpH;kBAEF,GAAG,CAAC,cAAc;YAChB,CAAC,CAAC,uKAAuK;YACzK,CAAC,CAAC,sFACN;;iDAE+C,CAC5C,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qGAAqG;AACrG,wGAAwG;AACxG,uGAAuG;AACvG,kFAAkF;AAClF,MAAM,UAAU,6CAA6C,CAC3D,GAAmC,EACnC,OAAO,GAAG,KAAK,EACf,WAAiD,IAAI;IAErD,OAAO,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,gCAAgC,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,+BAA+B,CACtC,GAAmC,EACnC,OAAgB,EAChB,QAA8C,EAC9C,IAAY;IAEZ,OAAO,CACL,iCAAiC,GAAG,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QACtF,sCAAsC,GAAG,CAAC,aAAa,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QAChG,6BAA6B,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QACzE,+BAA+B,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QACtE,kCAAkC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QAC3E,mCAAmC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QAC7E,iCAAiC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QACzE,gCAAgC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK;QACvE,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzC,IAAI,CACL,CAAC;AACJ,CAAC;AAED,sGAAsG;AACtG,2DAA2D;AAC3D,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,uBAAuB;;;;;;;;;;;;;;;;;EAiB7D,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmI7B,CAAC;AAEF,MAAM,gCAAgC,GAAG,iBAAiB,CAAC,OAAO,CAChE;;;;;;;0DAOwD,EACxD;;;;0DAIwD,CACzD;KACE,UAAU,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;KAC/C,UAAU,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;KAChD,UAAU,CAAC,eAAe,EAAE,iBAAiB,CAAC;KAC9C,UAAU,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;AAEjD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;AAC7D,MAAM,eAAe,GAAG,IAAI,KAAK,CAAa,CAAC,CAAC,CAAC;AACjD,qGAAqG;AACrG,wGAAwG;AACxG,MAAM,YAAY,GAAG,IAAI,KAAK,CAAiB,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuMeshPipeline.d.ts","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAGV,mBAAmB,EACnB,gBAAgB,EAChB,kCAAkC,EAClC,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,OAAO,EACP,WAAW,EACX,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAYlC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAOpE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAoBpG;AAKD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,SAAS,cAAc,EAAE,GAC/B,YAAY,CAOd;AAKD,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,SAAS,UAAU,EAAE,EAC/B,KAAK,EAAE,SAAS,cAAc,EAAE,GAC/B,YAAY,CAMd;AAUD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IAC1C,MAAM,EAAE,gBAAgB,CAAC;IACzB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,uBAAuB,EAAE,kBAAkB,CAAC;IAC5C,MAAM,EAAE,eAAe,CAAC;IACxB,wBAAwB,CAAC,EAAE,kBAAkB,CAAC;IAC9C,qBAAqB,CAAC,EAAE,kBAAkB,CAAC;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAAC,GACD,gBAAgB,CAuDlB;AAaD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EACnC,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC/B,IAAI,
|
|
1
|
+
{"version":3,"file":"wgpuMeshPipeline.d.ts","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/wgpuMeshPipeline.js
CHANGED
|
@@ -142,8 +142,6 @@ export function drawWgpuMeshSubset(state, proxy, geometry) {
|
|
|
142
142
|
if (subset.indexCount === 0)
|
|
143
143
|
return;
|
|
144
144
|
const upload = ensureWgpuMeshUpload(state, geometry, scene.activeMeshPipeline.skinned);
|
|
145
|
-
if (upload === null || upload.indexBuffer === null)
|
|
146
|
-
return;
|
|
147
145
|
const activePipeline = scene.activeMeshPipeline;
|
|
148
146
|
const jointMatrices = proxy.jointMatrices ?? null;
|
|
149
147
|
const normalMatrices = proxy.normalMatrices ?? null;
|
|
@@ -164,8 +162,15 @@ export function drawWgpuMeshSubset(state, proxy, geometry) {
|
|
|
164
162
|
_dynamicOffsets[0] = scene.pendingDrawOffset;
|
|
165
163
|
pass.setBindGroup(1, boundDrawGroup, _dynamicOffsets);
|
|
166
164
|
pass.setVertexBuffer(0, upload.vertexBuffer);
|
|
167
|
-
|
|
168
|
-
|
|
165
|
+
// Non-indexed geometry draws the vertex range directly, matching glMeshProgram's drawElements /
|
|
166
|
+
// drawArrays split. The subset's indexCount/indexOffset address vertices in that case.
|
|
167
|
+
if (upload.indexBuffer === null) {
|
|
168
|
+
pass.draw(subset.indexCount, 1, subset.indexOffset, 0);
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
pass.setIndexBuffer(upload.indexBuffer, upload.indexFormat);
|
|
172
|
+
pass.drawIndexed(subset.indexCount, 1, subset.indexOffset, 0, 0);
|
|
173
|
+
}
|
|
169
174
|
}
|
|
170
175
|
// Resolves the shared Frame bind group, creating it from the shared Frame layout + Frame buffer on
|
|
171
176
|
// first use. Every family pipeline declares the same group(0) layout, so this one bind group is valid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuMeshPipeline.js","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wgpuMeshPipeline.js","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/wgpuMeshUpload.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { MeshGeometry, WgpuRenderState, WgpuMeshUpload } from '@flighthq/types/contract';
|
|
2
|
-
export declare function ensureWgpuMeshUpload(state: WgpuRenderState, geometry: Readonly<MeshGeometry>, gpuSkinned?: boolean): WgpuMeshUpload
|
|
2
|
+
export declare function ensureWgpuMeshUpload(state: WgpuRenderState, geometry: Readonly<MeshGeometry>, gpuSkinned?: boolean): WgpuMeshUpload;
|
|
3
3
|
//# sourceMappingURL=wgpuMeshUpload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuMeshUpload.d.ts","sourceRoot":"","sources":["../src/wgpuMeshUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAuB,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"wgpuMeshUpload.d.ts","sourceRoot":"","sources":["../src/wgpuMeshUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAuB,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkBnH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,UAAU,UAAQ,GACjB,cAAc,CAuDhB"}
|
package/dist/wgpuMeshUpload.js
CHANGED
|
@@ -4,13 +4,16 @@ import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
|
|
|
4
4
|
// WgpuRenderState, caching the result keyed by the geometry entity (the per-state parallel of
|
|
5
5
|
// MeshGeometryRuntime.webgpuData). Re-uploads when geometry.version moves past the cached version,
|
|
6
6
|
// destroying and replacing the prior buffers. The cached upload is also mirrored onto
|
|
7
|
-
// MeshGeometryRuntime.webgpuData so destroyMeshGeometryWgpuData can null the slot.
|
|
8
|
-
//
|
|
9
|
-
//
|
|
7
|
+
// MeshGeometryRuntime.webgpuData so destroyMeshGeometryWgpuData can null the slot. The vertex layout
|
|
8
|
+
// the pipeline binds (canonical 48-byte position/normal/tangent/uv0 record) is fixed on the pipeline,
|
|
9
|
+
// not here.
|
|
10
|
+
//
|
|
11
|
+
// Non-indexed geometry uploads too, mirroring ensureGlMeshUpload: no index buffer is created and
|
|
12
|
+
// `indexCount` carries the vertex count derived from the layout stride, so the caller issues a
|
|
13
|
+
// non-indexed draw over the same count. glTF primitives may legitimately omit indices and the importer
|
|
14
|
+
// preserves that, so refusing them here made valid meshes vanish rather than render wrong.
|
|
10
15
|
export function ensureWgpuMeshUpload(state, geometry, gpuSkinned = false) {
|
|
11
16
|
const indices = geometry.indices;
|
|
12
|
-
if (indices === null)
|
|
13
|
-
return null;
|
|
14
17
|
const scene = getWgpuScene3DRuntime(state);
|
|
15
18
|
const cache = scene.uploadCache;
|
|
16
19
|
let upload = cache.get(geometry);
|
|
@@ -32,15 +35,19 @@ export function ensureWgpuMeshUpload(state, geometry, gpuSkinned = false) {
|
|
|
32
35
|
usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST,
|
|
33
36
|
});
|
|
34
37
|
device.queue.writeBuffer(vertexBuffer, 0, vertices.buffer, vertices.byteOffset, vertices.byteLength);
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
let indexBuffer = null;
|
|
39
|
+
if (indices !== null) {
|
|
40
|
+
indexBuffer = device.createBuffer({
|
|
41
|
+
size: Math.max(4, alignTo4(indices.byteLength)),
|
|
42
|
+
usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST,
|
|
43
|
+
});
|
|
44
|
+
device.queue.writeBuffer(indexBuffer, 0, indices.buffer, indices.byteOffset, indices.byteLength);
|
|
45
|
+
}
|
|
46
|
+
const stride = geometry.layout.stride;
|
|
40
47
|
upload = {
|
|
41
48
|
indexBuffer,
|
|
42
|
-
indexCount: indices.length,
|
|
43
|
-
indexFormat: indices.BYTES_PER_ELEMENT === 4 ? 'uint32' : 'uint16',
|
|
49
|
+
indexCount: indices !== null ? indices.length : stride > 0 ? Math.floor(vertices.byteLength / stride) : 0,
|
|
50
|
+
indexFormat: indices === null ? null : indices.BYTES_PER_ELEMENT === 4 ? 'uint32' : 'uint16',
|
|
44
51
|
skinBindUploaded: hasSkinBindPose,
|
|
45
52
|
version: geometry.version,
|
|
46
53
|
vertexBuffer,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuMeshUpload.js","sourceRoot":"","sources":["../src/wgpuMeshUpload.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,qGAAqG;AACrG,8FAA8F;AAC9F,mGAAmG;AACnG,sFAAsF;AACtF,
|
|
1
|
+
{"version":3,"file":"wgpuMeshUpload.js","sourceRoot":"","sources":["../src/wgpuMeshUpload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuPbrPipelineCache.d.ts","sourceRoot":"","sources":["../src/wgpuPbrPipelineCache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kCAAkC,EAClC,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAC/B,MAAM,EAAE,gBAAgB,EACxB,OAAO,UAAQ,EACf,OAAO,UAAQ,EACf,sBAAsB,GAAE,QAAQ,CAAC,kCAAkC,CAAC,GAAG,IAAW,GACjF,eAAe,CAiCjB;AAKD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAC/B,MAAM,EAAE,gBAAgB,GACvB,eAAe,
|
|
1
|
+
{"version":3,"file":"wgpuPbrPipelineCache.d.ts","sourceRoot":"","sources":["../src/wgpuPbrPipelineCache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kCAAkC,EAClC,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAC/B,MAAM,EAAE,gBAAgB,EACxB,OAAO,UAAQ,EACf,OAAO,UAAQ,EACf,sBAAsB,GAAE,QAAQ,CAAC,kCAAkC,CAAC,GAAG,IAAW,GACjF,eAAe,CAiCjB;AAKD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAC/B,MAAM,EAAE,gBAAgB,GACvB,eAAe,CASjB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getWgpuColorAdjustmentMaterialFeature } from '@flighthq/render-wgpu/contract';
|
|
2
2
|
import { createWgpuMeshPipeline, ensureWgpuPbrSampleLayout, ensureWgpuScene3DPipeline } from './wgpuMeshPipeline';
|
|
3
3
|
import { buildWgpuPbrDefineKey, getWgpuPbrModuleSourceForKey } from './wgpuPbrPrelude';
|
|
4
4
|
import { getWgpuSkinningAdapter } from './wgpuScene3DRuntime';
|
|
@@ -54,6 +54,6 @@ export function ensureWgpuPbrPipeline(state, key, format) {
|
|
|
54
54
|
hasColorAdjustment: getWgpuScene3DRuntime(state).activeColorAdjustmentRun,
|
|
55
55
|
hasColorMatrix: getWgpuScene3DRuntime(state).activeColorMatrixRun,
|
|
56
56
|
};
|
|
57
|
-
return ensureWgpuScene3DPipeline(state, `pbr:${format}|${buildWgpuPbrDefineKey(fullKey)}`, (blended, skinned) => compileWgpuPbrPipeline(state, fullKey, format, blended, skinned,
|
|
57
|
+
return ensureWgpuScene3DPipeline(state, `pbr:${format}|${buildWgpuPbrDefineKey(fullKey)}`, (blended, skinned) => compileWgpuPbrPipeline(state, fullKey, format, blended, skinned, getWgpuColorAdjustmentMaterialFeature(state)));
|
|
58
58
|
}
|
|
59
59
|
//# sourceMappingURL=wgpuPbrPipelineCache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuPbrPipelineCache.js","sourceRoot":"","sources":["../src/wgpuPbrPipelineCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"wgpuPbrPipelineCache.js","sourceRoot":"","sources":["../src/wgpuPbrPipelineCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuShadedPrelude.d.ts","sourceRoot":"","sources":["../src/wgpuShadedPrelude.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAMV,UAAU,EACV,WAAW,EAGX,gBAAgB,EAEhB,cAAc,EAId,gBAAgB,EAChB,kCAAkC,EAGlC,mBAAmB,EACnB,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAgBlC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAsCpE,KAAK,yBAAyB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAgBxG,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EACpC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,GAC9B,YAAY,CAgEd;AA6CD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,QAAQ,GAAE,yBAAmD,GAC5D,MAAM,CAMR;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"wgpuShadedPrelude.d.ts","sourceRoot":"","sources":["../src/wgpuShadedPrelude.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAMV,UAAU,EACV,WAAW,EAGX,gBAAgB,EAEhB,cAAc,EAId,gBAAgB,EAChB,kCAAkC,EAGlC,mBAAmB,EACnB,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAgBlC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAsCpE,KAAK,yBAAyB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAgBxG,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EACpC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,GAC9B,YAAY,CAgEd;AA6CD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,QAAQ,GAAE,yBAAmD,GAC5D,MAAM,CAMR;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,CA+DlB;AAKD,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,EAClC,QAAQ,GAAE,yBAAmD,EAC7D,OAAO,UAAQ,EACf,QAAQ,GAAE,QAAQ,CAAC,mBAAmB,CAAC,GAAG,IAAW,EACrD,sBAAsB,GAAE,QAAQ,CAAC,kCAAkC,CAAC,GAAG,IAAW,EAClF,WAAW,UAAQ,GAClB,MAAM,CAGR;AA2ND,eAAO,MAAM,iCAAiC,EAAE,mBAyC/C,CAAC;AACF,eAAO,MAAM,2BAA2B,EAAE,mBAqCzC,CAAC;AACF,eAAO,MAAM,2BAA2B,EAAE,mBA6CzC,CAAC;AACF,eAAO,MAAM,6BAA6B,EAAE,mBAwB3C,CAAC;AACF,eAAO,MAAM,sBAAsB,EAAE,mBA4BpC,CAAC;AACF,eAAO,MAAM,sBAAsB,EAAE,mBAqBpC,CAAC;AACF,eAAO,MAAM,uBAAuB,EAAE,mBAuBrC,CAAC;AACF,eAAO,MAAM,iCAAiC,EAAE,mBAmC/C,CAAC;AAEF,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAShF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { unpackColorToLinear } from '@flighthq/color/contract';
|
|
2
|
-
import { getWgpuRenderStateRuntime } from '@flighthq/render-wgpu/contract';
|
|
2
|
+
import { getWgpuColorAdjustmentMaterialFeature, getWgpuRenderStateRuntime } from '@flighthq/render-wgpu/contract';
|
|
3
3
|
import { getModifierDefineKey, orderModifierStack, resolveModifier } from '@flighthq/shading/contract';
|
|
4
4
|
import { AnimatedNormalModifierKind, DissolveModifierKind, EmissiveModifierFacing, EmissiveModifierKind, EnvReflectModifierKind, FogModifierKind, FogModifierMode, ModifierSlot, RegistryEntryState, RimModifierKind, ToonModifierKind, VertexDisplaceModifierKind, VertexDisplaceModifierSource, } from '@flighthq/types/contract';
|
|
5
5
|
import { getWgpuShadedBaseFlags } from './shadedWgpuMeshMaterialRenderer';
|
|
@@ -150,9 +150,7 @@ export function ensureWgpuShadedPipeline(state, material, format) {
|
|
|
150
150
|
}
|
|
151
151
|
const materialBindGroupLayout = state.device.createBindGroupLayout({ entries });
|
|
152
152
|
const module = state.device.createShaderModule({
|
|
153
|
-
code: assembleWgpuShadedModuleSource(material, plan, skinned, getWgpuSkinningAdapter(state), colorAdjusted || colorMatrix
|
|
154
|
-
? (getWgpuRenderStateRuntime(state).wgpuColorAdjustmentMaterialFeature ?? null)
|
|
155
|
-
: null, colorMatrix),
|
|
153
|
+
code: assembleWgpuShadedModuleSource(material, plan, skinned, getWgpuSkinningAdapter(state), colorAdjusted || colorMatrix ? getWgpuColorAdjustmentMaterialFeature(state) : null, colorMatrix),
|
|
156
154
|
});
|
|
157
155
|
return createWgpuMeshPipeline(state, {
|
|
158
156
|
blended,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuShadedPrelude.js","sourceRoot":"","sources":["../src/wgpuShadedPrelude.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wgpuShadedPrelude.js","sourceRoot":"","sources":["../src/wgpuShadedPrelude.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuShadowMap.d.ts","sourceRoot":"","sources":["../src/wgpuShadowMap.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAKhB,MAAM,EAGN,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAYlC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAwBrE;AAkBD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAChC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAClD,IAAI,
|
|
1
|
+
{"version":3,"file":"wgpuShadowMap.d.ts","sourceRoot":"","sources":["../src/wgpuShadowMap.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAKhB,MAAM,EAGN,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAYlC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAwBrE;AAkBD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAChC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,IAAI,GAClD,IAAI,CAkGN"}
|
package/dist/wgpuShadowMap.js
CHANGED
|
@@ -112,8 +112,6 @@ export function drawWgpuScene3DShadowMap(state, scene, shadowCamera, directional
|
|
|
112
112
|
const skinned = skinning?.isGpuSkinned(mesh) ?? false;
|
|
113
113
|
const pipeline = skinned ? ensureWgpuShadowDepthPipeline(state, true) : rigidPipeline;
|
|
114
114
|
const upload = ensureWgpuMeshUpload(state, mesh.geometry, skinned);
|
|
115
|
-
if (upload === null || upload.indexBuffer === null)
|
|
116
|
-
return;
|
|
117
115
|
if (pipeline !== boundPipeline) {
|
|
118
116
|
pass.setPipeline(pipeline);
|
|
119
117
|
boundPipeline = pipeline;
|
|
@@ -133,8 +131,15 @@ export function drawWgpuScene3DShadowMap(state, scene, shadowCamera, directional
|
|
|
133
131
|
_dynamicOffsets[0] = sceneRuntime.pendingDrawOffset;
|
|
134
132
|
pass.setBindGroup(0, drawBindGroup, _dynamicOffsets);
|
|
135
133
|
pass.setVertexBuffer(0, upload.vertexBuffer);
|
|
136
|
-
pass
|
|
137
|
-
|
|
134
|
+
// Same indexed/non-indexed split as the forward pass and as glShadowMap: a non-indexed caster
|
|
135
|
+
// still has to cast, or it renders but drops its shadow.
|
|
136
|
+
if (upload.indexBuffer === null) {
|
|
137
|
+
pass.draw(upload.indexCount, 1, 0, 0);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
pass.setIndexBuffer(upload.indexBuffer, upload.indexFormat);
|
|
141
|
+
pass.drawIndexed(upload.indexCount, 1, 0, 0, 0);
|
|
142
|
+
}
|
|
138
143
|
});
|
|
139
144
|
pass.end();
|
|
140
145
|
shadow.enabled = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuShadowMap.js","sourceRoot":"","sources":["../src/wgpuShadowMap.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"wgpuShadowMap.js","sourceRoot":"","sources":["../src/wgpuShadowMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuWireframeUpload.d.ts","sourceRoot":"","sources":["../src/wgpuWireframeUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAQnG,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC/B,mBAAmB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"wgpuWireframeUpload.d.ts","sourceRoot":"","sources":["../src/wgpuWireframeUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAQnG,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC/B,mBAAmB,GAAG,IAAI,CAgC5B"}
|
|
@@ -6,8 +6,6 @@ import { ensureWgpuMeshUpload } from './wgpuMeshUpload';
|
|
|
6
6
|
// index yields two line indices), so the renderer draws a sub-range of this buffer.
|
|
7
7
|
export function ensureWgpuWireframeUpload(state, geometry) {
|
|
8
8
|
const meshUpload = ensureWgpuMeshUpload(state, geometry);
|
|
9
|
-
if (meshUpload === null)
|
|
10
|
-
return null;
|
|
11
9
|
let perState = wireframeUploads.get(state);
|
|
12
10
|
if (perState === undefined) {
|
|
13
11
|
perState = new WeakMap();
|
|
@@ -37,17 +35,25 @@ export function ensureWgpuWireframeUpload(state, geometry) {
|
|
|
37
35
|
}
|
|
38
36
|
// Builds the line-list index array (two indices per triangle edge, three edges per triangle) from a
|
|
39
37
|
// geometry's triangle indices. Promotes to Uint32 when any line index exceeds the Uint16 range.
|
|
38
|
+
// Builds the line-list index array (two indices per triangle edge, three edges per triangle) from a
|
|
39
|
+
// geometry's triangle indices, or from a sequential range when the geometry is non-indexed — the same
|
|
40
|
+
// split glWireframeUpload makes. Non-indexed geometry reaches here now that the mesh upload accepts it.
|
|
40
41
|
function buildLineIndices(geometry) {
|
|
41
42
|
const triangleIndices = geometry.indices;
|
|
42
|
-
const
|
|
43
|
+
const stride = geometry.layout.stride;
|
|
44
|
+
const triangleCount = triangleIndices !== null
|
|
45
|
+
? Math.floor(triangleIndices.length / 3)
|
|
46
|
+
: stride > 0
|
|
47
|
+
? Math.floor(geometry.vertices.byteLength / stride / 3)
|
|
48
|
+
: 0;
|
|
43
49
|
const lineCount = triangleCount * 6;
|
|
44
50
|
const useUint32 = triangleIndices instanceof Uint32Array || lineCount > 65535;
|
|
45
51
|
const lines = useUint32 ? new Uint32Array(lineCount) : new Uint16Array(lineCount);
|
|
46
52
|
for (let t = 0; t < triangleCount; t++) {
|
|
47
53
|
const base = t * 3;
|
|
48
|
-
const i0 = triangleIndices[base];
|
|
49
|
-
const i1 = triangleIndices[base + 1];
|
|
50
|
-
const i2 = triangleIndices[base + 2];
|
|
54
|
+
const i0 = triangleIndices !== null ? triangleIndices[base] : base;
|
|
55
|
+
const i1 = triangleIndices !== null ? triangleIndices[base + 1] : base + 1;
|
|
56
|
+
const i2 = triangleIndices !== null ? triangleIndices[base + 2] : base + 2;
|
|
51
57
|
const out = t * 6;
|
|
52
58
|
lines[out] = i0;
|
|
53
59
|
lines[out + 1] = i1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wgpuWireframeUpload.js","sourceRoot":"","sources":["../src/wgpuWireframeUpload.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,oGAAoG;AACpG,kGAAkG;AAClG,kGAAkG;AAClG,sGAAsG;AACtG,oFAAoF;AACpF,MAAM,UAAU,yBAAyB,CACvC,KAAsB,EACtB,QAAgC;IAEhC,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"wgpuWireframeUpload.js","sourceRoot":"","sources":["../src/wgpuWireframeUpload.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flighthq/scene3d-wgpu",
|
|
3
|
-
"version": "0.3.1-next.
|
|
3
|
+
"version": "0.3.1-next.780.12e6944",
|
|
4
4
|
"author": "Joshua Granick and other contributors",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -38,21 +38,21 @@
|
|
|
38
38
|
"clean:dist": "tsx ../../scripts/clean-package-dist.ts"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@flighthq/camera": "0.3.1-next.
|
|
42
|
-
"@flighthq/color": "0.3.1-next.
|
|
43
|
-
"@flighthq/geometry": "0.3.1-next.
|
|
44
|
-
"@flighthq/image": "0.3.1-next.
|
|
45
|
-
"@flighthq/lighting": "0.3.1-next.
|
|
46
|
-
"@flighthq/log": "0.3.1-next.
|
|
47
|
-
"@flighthq/materials": "0.3.1-next.
|
|
48
|
-
"@flighthq/node": "0.3.1-next.
|
|
49
|
-
"@flighthq/registry": "0.3.1-next.
|
|
50
|
-
"@flighthq/render": "0.3.1-next.
|
|
51
|
-
"@flighthq/render-wgpu": "0.3.1-next.
|
|
52
|
-
"@flighthq/scene3d": "0.3.1-next.
|
|
53
|
-
"@flighthq/shading": "0.3.1-next.
|
|
54
|
-
"@flighthq/texture": "0.3.1-next.
|
|
55
|
-
"@flighthq/types": "0.3.1-next.
|
|
41
|
+
"@flighthq/camera": "0.3.1-next.780.12e6944",
|
|
42
|
+
"@flighthq/color": "0.3.1-next.780.12e6944",
|
|
43
|
+
"@flighthq/geometry": "0.3.1-next.780.12e6944",
|
|
44
|
+
"@flighthq/image": "0.3.1-next.780.12e6944",
|
|
45
|
+
"@flighthq/lighting": "0.3.1-next.780.12e6944",
|
|
46
|
+
"@flighthq/log": "0.3.1-next.780.12e6944",
|
|
47
|
+
"@flighthq/materials": "0.3.1-next.780.12e6944",
|
|
48
|
+
"@flighthq/node": "0.3.1-next.780.12e6944",
|
|
49
|
+
"@flighthq/registry": "0.3.1-next.780.12e6944",
|
|
50
|
+
"@flighthq/render": "0.3.1-next.780.12e6944",
|
|
51
|
+
"@flighthq/render-wgpu": "0.3.1-next.780.12e6944",
|
|
52
|
+
"@flighthq/scene3d": "0.3.1-next.780.12e6944",
|
|
53
|
+
"@flighthq/shading": "0.3.1-next.780.12e6944",
|
|
54
|
+
"@flighthq/texture": "0.3.1-next.780.12e6944",
|
|
55
|
+
"@flighthq/types": "0.3.1-next.780.12e6944"
|
|
56
56
|
},
|
|
57
57
|
"peerDependencies": {
|
|
58
58
|
"@webgpu/types": "^0.1.70"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createCamera3D } from '@flighthq/camera/contract';
|
|
2
2
|
import { createMatrix3, createMatrix4 } from '@flighthq/geometry/contract';
|
|
3
3
|
import { createStandardPbrMaterial } from '@flighthq/materials/contract';
|
|
4
|
-
import { createBoxMeshGeometry } from '@flighthq/mesh/contract';
|
|
4
|
+
import { createBoxMeshGeometry, createMeshGeometry } from '@flighthq/mesh/contract';
|
|
5
5
|
import { getWgpuRenderStateRuntime } from '@flighthq/render-wgpu/contract';
|
|
6
6
|
import { createTexture, setTextureUvOffset, setTextureUvScale } from '@flighthq/texture/contract';
|
|
7
7
|
import type {
|
|
@@ -277,6 +277,39 @@ describe('drawWgpuMeshSubset', () => {
|
|
|
277
277
|
expect(draw!.args[0]).toBe(proxy.subset.indexCount);
|
|
278
278
|
});
|
|
279
279
|
|
|
280
|
+
// The defect this covers: non-indexed geometry issued NO draw call at all, so a valid imported mesh
|
|
281
|
+
// rendered nothing and reported nothing. A backend that silently drops geometry is worse than one
|
|
282
|
+
// that draws it wrong, because nothing announces the loss.
|
|
283
|
+
it('issues a non-indexed draw for geometry without indices', () => {
|
|
284
|
+
const { fake, state } = makeWgpuScene3DState();
|
|
285
|
+
ensureWgpuFrameBindGroup(state);
|
|
286
|
+
beginWgpuMeshDraw(state, makePipeline(state));
|
|
287
|
+
const geometry = createMeshGeometry({
|
|
288
|
+
indices: null,
|
|
289
|
+
layout: {
|
|
290
|
+
attributes: [{ byteOffset: 0, format: 'float32x3', semantic: 'position' }],
|
|
291
|
+
stride: 12,
|
|
292
|
+
},
|
|
293
|
+
vertices: new Float32Array(9),
|
|
294
|
+
});
|
|
295
|
+
const proxy: Scene3DRenderProxy = {
|
|
296
|
+
material: createStandardPbrMaterial(),
|
|
297
|
+
normalMatrix: createMatrix3(),
|
|
298
|
+
subset: geometry.subsets[0],
|
|
299
|
+
worldMatrix: createMatrix4(),
|
|
300
|
+
};
|
|
301
|
+
|
|
302
|
+
drawWgpuMeshSubset(state, proxy, geometry);
|
|
303
|
+
|
|
304
|
+
const draw = fake.calls.find((c) => c.name === 'draw');
|
|
305
|
+
expect(draw).toBeDefined();
|
|
306
|
+
expect(draw!.args[0]).toBe(proxy.subset.indexCount);
|
|
307
|
+
expect(draw!.args[2]).toBe(proxy.subset.indexOffset);
|
|
308
|
+
// It must not try to bind an index buffer it does not have.
|
|
309
|
+
expect(fake.calls.some((c) => c.name === 'setIndexBuffer')).toBe(false);
|
|
310
|
+
expect(fake.calls.some((c) => c.name === 'drawIndexed')).toBe(false);
|
|
311
|
+
});
|
|
312
|
+
|
|
280
313
|
it('is a no-op when no pipeline is active', () => {
|
|
281
314
|
const { fake, state } = makeWgpuScene3DState();
|
|
282
315
|
drawWgpuMeshSubset(state, makeProxy(), createBoxMeshGeometry());
|
|
@@ -166,7 +166,10 @@ describe('ensureWgpuMeshUpload', () => {
|
|
|
166
166
|
expect(meshRuntime.webgpuData as unknown).toBe(upload);
|
|
167
167
|
});
|
|
168
168
|
|
|
169
|
-
|
|
169
|
+
// glTF primitives may legitimately omit indices and the importer preserves that, so refusing to
|
|
170
|
+
// upload them made valid meshes vanish on this backend with nothing rendered and nothing thrown.
|
|
171
|
+
// The GL sibling has always uploaded them; this mirrors it.
|
|
172
|
+
it('uploads non-indexed geometry with the vertex count in indexCount', () => {
|
|
170
173
|
const { state } = makeWgpuScene3DState();
|
|
171
174
|
const geometry = createMeshGeometry({
|
|
172
175
|
indices: null,
|
|
@@ -176,7 +179,40 @@ describe('ensureWgpuMeshUpload', () => {
|
|
|
176
179
|
},
|
|
177
180
|
vertices: new Float32Array(9),
|
|
178
181
|
});
|
|
179
|
-
|
|
180
|
-
|
|
182
|
+
|
|
183
|
+
const upload = ensureWgpuMeshUpload(state, geometry);
|
|
184
|
+
|
|
185
|
+
expect(upload.vertexBuffer).toBeDefined();
|
|
186
|
+
expect(upload.indexBuffer).toBeNull();
|
|
187
|
+
// 9 floats / 3 per vertex = 3 vertices, the count a non-indexed draw needs.
|
|
188
|
+
expect(upload.indexCount).toBe(3);
|
|
189
|
+
expect(getWgpuScene3DRuntime(state).uploadCache.get(geometry)).toBe(upload);
|
|
190
|
+
});
|
|
191
|
+
|
|
192
|
+
// No index buffer exists, so no element format describes one. Null says that; a stand-in 'uint16'
|
|
193
|
+
// would read as a fact about a buffer that is not there.
|
|
194
|
+
it('reports a null index format for non-indexed geometry', () => {
|
|
195
|
+
const { state } = makeWgpuScene3DState();
|
|
196
|
+
const geometry = createMeshGeometry({
|
|
197
|
+
indices: null,
|
|
198
|
+
layout: {
|
|
199
|
+
attributes: [{ byteOffset: 0, format: 'float32x3', semantic: 'position' }],
|
|
200
|
+
stride: 12,
|
|
201
|
+
},
|
|
202
|
+
vertices: new Float32Array(9),
|
|
203
|
+
});
|
|
204
|
+
|
|
205
|
+
expect(ensureWgpuMeshUpload(state, geometry).indexFormat).toBeNull();
|
|
206
|
+
});
|
|
207
|
+
|
|
208
|
+
it('reports zero vertices when the layout has no stride to divide by', () => {
|
|
209
|
+
const { state } = makeWgpuScene3DState();
|
|
210
|
+
const geometry = createMeshGeometry({
|
|
211
|
+
indices: null,
|
|
212
|
+
layout: { attributes: [], stride: 0 },
|
|
213
|
+
vertices: new Float32Array(9),
|
|
214
|
+
});
|
|
215
|
+
|
|
216
|
+
expect(ensureWgpuMeshUpload(state, geometry).indexCount).toBe(0);
|
|
181
217
|
});
|
|
182
218
|
});
|
|
@@ -214,6 +214,36 @@ describe('drawWgpuScene3DShadowMap', () => {
|
|
|
214
214
|
expect(fake.calls.filter((call) => call.name === 'beginRenderPass')).toHaveLength(passCount);
|
|
215
215
|
});
|
|
216
216
|
|
|
217
|
+
// The sibling of the forward-pass defect: the shadow pass also bound an index buffer and issued
|
|
218
|
+
// drawIndexed unconditionally, so a non-indexed caster rendered (once the forward path was fixed)
|
|
219
|
+
// but cast no shadow. glShadowMap has always branched to drawArrays for this case.
|
|
220
|
+
it('issues a non-indexed draw for a caster without indices', () => {
|
|
221
|
+
const { fake, state } = makeWgpuScene3DState();
|
|
222
|
+
const scene = createNode3D(Node3DKind);
|
|
223
|
+
addNodeChild(
|
|
224
|
+
scene,
|
|
225
|
+
createMesh(
|
|
226
|
+
createMeshGeometry({
|
|
227
|
+
indices: null,
|
|
228
|
+
layout: {
|
|
229
|
+
attributes: [{ byteOffset: 0, format: 'float32x3', semantic: 'position' }],
|
|
230
|
+
stride: 12,
|
|
231
|
+
},
|
|
232
|
+
vertices: new Float32Array(9),
|
|
233
|
+
}),
|
|
234
|
+
[],
|
|
235
|
+
),
|
|
236
|
+
);
|
|
237
|
+
|
|
238
|
+
drawWgpuScene3DShadowMap(state, scene, makeShadowCamera(), SHADOW_LIGHT);
|
|
239
|
+
|
|
240
|
+
const draw = fake.calls.find((c) => c.name === 'draw');
|
|
241
|
+
expect(draw).toBeDefined();
|
|
242
|
+
expect(draw!.args[0]).toBe(3);
|
|
243
|
+
expect(fake.calls.some((c) => c.name === 'drawIndexed')).toBe(false);
|
|
244
|
+
expect(fake.calls.some((c) => c.name === 'setIndexBuffer')).toBe(false);
|
|
245
|
+
});
|
|
246
|
+
|
|
217
247
|
it('opens a depth-only pass and renders each caster mesh depth', () => {
|
|
218
248
|
const { fake, state } = makeWgpuScene3DState();
|
|
219
249
|
drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createBoxMeshGeometry } from '@flighthq/mesh/contract';
|
|
1
|
+
import { createBoxMeshGeometry, createMeshGeometry } from '@flighthq/mesh/contract';
|
|
2
2
|
|
|
3
3
|
import { makeWgpuScene3DState } from './wgpuScene3DTestHelper';
|
|
4
4
|
import { ensureWgpuWireframeUpload } from './wgpuWireframeUpload';
|
|
@@ -24,6 +24,34 @@ describe('ensureWgpuWireframeUpload', () => {
|
|
|
24
24
|
expect(lineBufferCreate).toBeDefined();
|
|
25
25
|
});
|
|
26
26
|
|
|
27
|
+
// Non-indexed geometry only became reachable here once the mesh upload stopped refusing it; before
|
|
28
|
+
// that this function bailed early, and buildLineIndices would have dereferenced a null index array.
|
|
29
|
+
// The edges come from a sequential vertex range instead, matching glWireframeUpload.
|
|
30
|
+
it('derives line indices from a sequential range for non-indexed geometry', () => {
|
|
31
|
+
const { fake, state } = makeWgpuScene3DState();
|
|
32
|
+
// Two triangles' worth of positions: 6 vertices x 3 floats.
|
|
33
|
+
const geometry = createMeshGeometry({
|
|
34
|
+
indices: null,
|
|
35
|
+
layout: {
|
|
36
|
+
attributes: [{ byteOffset: 0, format: 'float32x3', semantic: 'position' }],
|
|
37
|
+
stride: 12,
|
|
38
|
+
},
|
|
39
|
+
vertices: new Float32Array(18),
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
const upload = ensureWgpuWireframeUpload(state, geometry);
|
|
43
|
+
|
|
44
|
+
expect(upload).not.toBeNull();
|
|
45
|
+
// 2 triangles x 6 line indices x 2 bytes.
|
|
46
|
+
const lineBufferCreate = fake.calls.find(
|
|
47
|
+
(c) =>
|
|
48
|
+
c.name === 'createBuffer' &&
|
|
49
|
+
((c.args[0] as { usage: number }).usage & GPUBufferUsage.INDEX) !== 0 &&
|
|
50
|
+
(c.args[0] as { size: number }).size === 2 * 6 * 2,
|
|
51
|
+
);
|
|
52
|
+
expect(lineBufferCreate).toBeDefined();
|
|
53
|
+
});
|
|
54
|
+
|
|
27
55
|
it('returns the cached upload without rebuilding when the version is unchanged', () => {
|
|
28
56
|
const { fake, state } = makeWgpuScene3DState();
|
|
29
57
|
const geometry = createBoxMeshGeometry();
|