lecodes-sdk 2.4.0 → 2.4.1

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/package.json CHANGED
@@ -43,7 +43,7 @@
43
43
  "marcidb-embedded": "^0.15.0",
44
44
  "sharp": "^0.35.2"
45
45
  },
46
- "version": "2.4.0",
46
+ "version": "2.4.1",
47
47
  "files": [
48
48
  "src",
49
49
  "dist",
@@ -33,6 +33,10 @@ export type LiteMaterialArtifact = {
33
33
  /** Filament's shadow-catcher flag (unlit only, transparency mandatory — matc enforces both):
34
34
  * the fragment shows baseColor scaled by the received shadow amount, transparent elsewhere. */
35
35
  shadowMultiplier: boolean
36
+ /** matc's `flipUV` (DEFAULT TRUE in Filament's MaterialBuilder): getUV0() / getUV1() return
37
+ * `(u, 1 - v)` of the vertex attribute, the raw attribute only when the material says
38
+ * `flipUV: false`. A .mat written against a native host counts on it; lite's getters follow. */
39
+ flipUV: boolean
36
40
  params: LiteMaterialParam[]
37
41
  /** sampler2d / samplerExternal parameters — all become sampler2D in lite */
38
42
  samplers: { name: string }[]
@@ -178,7 +182,7 @@ const SAMPLER_TYPES = new Set(["sampler2d", "samplerExternal"])
178
182
  const unsupported = (reason: string): LiteMaterialArtifact => ({
179
183
  lecodesLiteMaterial: 1, unsupported: reason,
180
184
  shadingModel: "unlit", blending: "opaque", maskThreshold: 0.4,
181
- doubleSided: false, culling: "back", depthWrite: true, shadowMultiplier: false,
185
+ doubleSided: false, culling: "back", depthWrite: true, shadowMultiplier: false, flipUV: true,
182
186
  params: [], samplers: [], fragmentCode: "", writesNormal: false, hasVertexBlock: false,
183
187
  })
184
188
 
@@ -235,6 +239,7 @@ export const buildLiteMaterialArtifact = (text: string): LiteMaterialArtifact =>
235
239
  culling,
236
240
  depthWrite,
237
241
  shadowMultiplier: def.shadowMultiplier === true,
242
+ flipUV: def.flipUV !== false,
238
243
  params,
239
244
  samplers,
240
245
  fragmentCode,
package/src/version.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  // same manifest). Its MAJOR is the bundle ↔ runtime contract: a bundle's `// sdk:` header line
5
5
  // and a host's embedded version must agree on the major for the host to run the bundle; minor
6
6
  // and patch never gate anything (features are detected, never versioned).
7
- export const SDK_VERSION = "2.4.0"
7
+ export const SDK_VERSION = "2.4.1"
8
8
 
9
9
  /** The major of a semver string, or null when it is not one. */
10
10
  export const sdkMajor = (version: string | null | undefined): number | null => {