@ai-game-assets/dev 0.11.0 → 0.11.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/README.md CHANGED
@@ -16,6 +16,6 @@ Use this package during development to generate, edit, promote, and build game a
16
16
 
17
17
  The server validates image dimensions and frame geometry, rejects stale updates, reads only local source files within `assetsDir`, and saves immutable PNGs. Failed generation leaves existing variants unchanged. Variant files and metadata are retained in production manifest builds. Replaced files are retained because other target assets or provenance may reference them.
18
18
 
19
- Strict resizing works without API credentials. To enable dedicated AI enlargement, set `REPLICATE_API_TOKEN`, or pass an `upscaleProvider` to `createAiAssetDevServer`. The built-in adapter uses Real-ESRGAN with face enhancement disabled; it never calls the normal image-generation provider. AI enlargement can infer fine detail and cannot guarantee zero interpretation. For exact pixel preservation, use `nearest`. OpenAI image-generation credentials alone do not provide this dedicated upscaling endpoint.
19
+ Strict resizing works without API credentials. AI enlargement uses the OpenAI Images edit API with the existing `OPENAI_API_KEY`; no additional provider token is needed. The default model is GPT Image 2.5 Sunburst with high quality and a fixed preservation prompt. Smaller targets are generated on an API-supported canvas and resized to the exact requested dimensions with nearest-neighbor sampling. The edited image's transparency is retained. OpenAI may refine details; use `nearest` for exact pixel preservation. Downscaling in AI mode uses deterministic smooth resizing without an API call.
20
20
 
21
- A custom `AiAssetUpscaleProvider` implements `upscale({ image, width, height, signal })` and returns image bytes. The server processes frames individually, enforces exact output dimensions, and restores the original alpha coverage. `createReplicateUpscaleProvider`, `saveScaledVariant`, and `resizeScaledSource` are also exported for custom development servers.
21
+ A custom `AiAssetUpscaleProvider` implements `upscale({ image, width, height, signal })` and returns image bytes. Pass it as `upscaleProvider` to `createAiAssetDevServer`. `createOpenAiUpscaleProvider({ apiKey?, model?, fetch? })`, `saveScaledVariant`, and `resizeScaledSource` are exported for custom servers. The server selects the closest source, processes sheet frames individually, and enforces exact output dimensions.
package/dist/index.d.ts CHANGED
@@ -8,6 +8,6 @@ export type { AiAssetDevServerOptions, GeneratedTilesetAnimationStreamOption, Ge
8
8
  export { createAiAssetDevServer, serializeGeneratedTilesetAnimationOption } from "./server.js";
9
9
  export type { BuildManifestOptions } from "./build-manifest.js";
10
10
  export { buildManifestModule, normalizeAssetUrls, pruneManifestForBuild, readManifestDirectory, referencedAssetFiles } from "./build-manifest.js";
11
- export { saveScaledVariant, resizeScaledSource, createReplicateUpscaleProvider } from "./scaled-variants.js";
11
+ export { saveScaledVariant, resizeScaledSource, createOpenAiUpscaleProvider } from "./scaled-variants.js";
12
12
  export type { ScaledVariantRequest, ScaledVariantStoreOptions, AiAssetUpscaleProvider } from "./scaled-variants.js";
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,uCAAuC,EACvC,oBAAoB,EACpB,+BAA+B,EAC/B,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,eAAe,EACf,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAEpE,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,uBAAuB,EACvB,qCAAqC,EACrC,mCAAmC,EACnC,qCAAqC,EACrC,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAC7G,YAAY,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,uCAAuC,EACvC,oBAAoB,EACpB,+BAA+B,EAC/B,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,eAAe,EACf,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAEpE,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,uBAAuB,EACvB,qCAAqC,EACrC,mCAAmC,EACnC,qCAAqC,EACrC,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAC1G,YAAY,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -3,5 +3,5 @@ export { createElevenLabsAudioProvider } from "./audio-provider.js";
3
3
  export { readManifest, saveGeneratedOption, saveTilesetAnimation, saveStyleGuide, writeManifestModule, writeManifest } from "./asset-store.js";
4
4
  export { createAiAssetDevServer, serializeGeneratedTilesetAnimationOption } from "./server.js";
5
5
  export { buildManifestModule, normalizeAssetUrls, pruneManifestForBuild, readManifestDirectory, referencedAssetFiles } from "./build-manifest.js";
6
- export { saveScaledVariant, resizeScaledSource, createReplicateUpscaleProvider } from "./scaled-variants.js";
6
+ export { saveScaledVariant, resizeScaledSource, createOpenAiUpscaleProvider } from "./scaled-variants.js";
7
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,eAAe,CAAC;AAQvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAYpE,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAc1B,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAIrB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC5B,MAAM,eAAe,CAAC;AAQvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAYpE,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAc1B,OAAO,EACL,sBAAsB,EACtB,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAIrB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { type AiAssetDimensions, type AiAssetScaledVariant, type AiAssetScaledSource } from "@ai-game-assets/core";
2
2
  import { type AssetStoreOptions } from "./asset-store.js";
3
- /** A dedicated super-resolution provider; no prompt, style, or image-generation API. */
3
+ /** An image enlargement provider. AI editing may refine details and transparency. */
4
4
  export type AiAssetUpscaleProvider = {
5
5
  upscale(input: {
6
6
  image: Uint8Array;
@@ -33,8 +33,10 @@ export declare function resizeScaledSource(image: Uint8Array, source: AiAssetSca
33
33
  dimensions: AiAssetDimensions;
34
34
  frameGrid?: AiAssetScaledSource["frameGrid"];
35
35
  }, method: "nearest" | "resample" | "ai-upscale", provider?: AiAssetUpscaleProvider, signal?: AbortSignal): Promise<Uint8Array>;
36
- export declare function createReplicateUpscaleProvider(options: {
37
- apiToken: string;
36
+ /** Uses the OpenAI Images edit endpoint with a fixed preservation prompt. */
37
+ export declare function createOpenAiUpscaleProvider(options?: {
38
+ apiKey?: string;
39
+ model?: string;
38
40
  fetch?: typeof fetch;
39
41
  }): AiAssetUpscaleProvider;
40
42
  //# sourceMappingURL=scaled-variants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scaled-variants.d.ts","sourceRoot":"","sources":["../src/scaled-variants.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAE1B,wFAAwF;AACxF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,KAAK,EAAE;QACb,KAAK,EAAE,UAAU,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,GAAG;IAC1D,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C,CAAC;AAiCF,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,yBAAyB,EAClC,KAAK,EAAE,oBAAoB,EAC3B,MAAM,CAAC,EAAE,WAAW;;;;GAyJrB;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE;IACN,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;CAC9C,EACD,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,EAC7C,QAAQ,CAAC,EAAE,sBAAsB,EACjC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAkGrB;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,GAAG,sBAAsB,CA0FzB"}
1
+ {"version":3,"file":"scaled-variants.d.ts","sourceRoot":"","sources":["../src/scaled-variants.ts"],"names":[],"mappings":"AAIA,OAAO,EAOL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAG1B,qFAAqF;AACrF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,KAAK,EAAE;QACb,KAAK,EAAE,UAAU,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,GAAG;IAC1D,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C,CAAC;AAiCF,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,yBAAyB,EAClC,KAAK,EAAE,oBAAoB,EAC3B,MAAM,CAAC,EAAE,WAAW;;;;GAyJrB;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE;IACN,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;CAC9C,EACD,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,YAAY,EAC7C,QAAQ,CAAC,EAAE,sBAAsB,EACjC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA0FrB;AAED,6EAA6E;AAC7E,wBAAgB,2BAA2B,CAAC,OAAO,GAAE;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACjB,GAAG,sBAAsB,CAiD9B"}
@@ -2,8 +2,9 @@ import { randomUUID } from "node:crypto";
2
2
  import { mkdir, readFile, unlink, writeFile } from "node:fs/promises";
3
3
  import path from "node:path";
4
4
  import sharp from "sharp";
5
- import { assertManifest, scaledVariantGeometry, scaledVariantFrameSize, scaledVariantSources, selectScaledVariant, } from "@ai-game-assets/core";
5
+ import { assertManifest, DEFAULT_IMAGE_MODEL, scaledVariantGeometry, scaledVariantFrameSize, scaledVariantSources, selectScaledVariant, } from "@ai-game-assets/core";
6
6
  import { readManifest, writeManifest, writeManifestModule, } from "./asset-store.js";
7
+ import { closestImageGenerationSize } from "./image-generation-sizes.js";
7
8
  const transactions = new Map();
8
9
  async function transaction(key, work) {
9
10
  const previous = transactions.get(key) ?? Promise.resolve();
@@ -85,9 +86,9 @@ export async function saveScaledVariant(options, input, signal) {
85
86
  }
86
87
  else {
87
88
  const provider = options.upscaleProvider ??
88
- (process.env.REPLICATE_API_TOKEN
89
- ? createReplicateUpscaleProvider({
90
- apiToken: process.env.REPLICATE_API_TOKEN,
89
+ (process.env.OPENAI_API_KEY
90
+ ? createOpenAiUpscaleProvider({
91
+ apiKey: process.env.OPENAI_API_KEY,
91
92
  })
92
93
  : undefined);
93
94
  image = await resizeScaledSource(await readFile(localFile(options, source.file)), source, geometry, input.method ?? "nearest", provider, signal);
@@ -168,7 +169,7 @@ export async function resizeScaledSource(image, source, target, method, provider
168
169
  const sourceWidth = sourceGrid?.frameWidth ?? source.dimensions.width, sourceHeight = sourceGrid?.frameHeight ?? source.dimensions.height;
169
170
  const upscale = method === "ai-upscale" && (width > sourceWidth || height > sourceHeight);
170
171
  if (upscale && !provider)
171
- throw new Error("AI upscaling requires an upscaleProvider or REPLICATE_API_TOKEN. Strict resizing works without an API key.");
172
+ throw new Error("AI upscaling requires an upscaleProvider or OPENAI_API_KEY. Strict resizing works without an API key.");
172
173
  const output = Buffer.alloc(target.dimensions.width * target.dimensions.height * 4);
173
174
  const rows = sourceGrid?.rows ?? 1, columns = sourceGrid?.columns ?? 1;
174
175
  for (let row = 0; row < rows; row++)
@@ -197,18 +198,12 @@ export async function resizeScaledSource(image, source, target, method, provider
197
198
  signal,
198
199
  });
199
200
  pixels = await sharp(enhanced, { limitInputPixels: 33554432 })
200
- .resize(width, height, { fit: "fill", kernel: "lanczos3" })
201
+ .resize(width, height, { fit: "fill", kernel: "nearest" })
201
202
  .ensureAlpha()
202
203
  .raw()
203
204
  .toBuffer();
204
- // Preserve source coverage: AI cannot add a background or fill transparent sprite borders.
205
- for (let y = 0; y < height; y++)
206
- for (let x = 0; x < width; x++)
207
- pixels[(y * width + x) * 4 + 3] =
208
- original[(Math.floor((y * sourceHeight) / height) * sourceWidth +
209
- Math.floor((x * sourceWidth) / width)) *
210
- 4 +
211
- 3];
205
+ // Keep the returned alpha: imposing the low-resolution source mask can
206
+ // clip refined edges and misalign transparency with the edited sprite.
212
207
  }
213
208
  else if (method === "nearest" || upscale) {
214
209
  pixels = Buffer.alloc(width * height * 4);
@@ -234,74 +229,56 @@ export async function resizeScaledSource(image, source, target, method, provider
234
229
  .png()
235
230
  .toBuffer();
236
231
  }
237
- export function createReplicateUpscaleProvider(options) {
232
+ /** Uses the OpenAI Images edit endpoint with a fixed preservation prompt. */
233
+ export function createOpenAiUpscaleProvider(options = {}) {
238
234
  const request = options.fetch ?? fetch;
239
235
  return {
240
236
  async upscale({ image, width, height, signal }) {
241
- const metadata = await sharp(image).metadata();
242
- const scale = Math.min(10, Math.max(2, Math.ceil(Math.max(width / metadata.width, height / metadata.height))));
243
- const headers = {
244
- Authorization: `Bearer ${options.apiToken}`,
245
- "Content-Type": "application/json",
246
- };
247
- const deadline = AbortSignal.timeout(180000), combined = signal ? AbortSignal.any([signal, deadline]) : deadline;
248
- let response = await request("https://api.replicate.com/v1/predictions", {
237
+ signal?.throwIfAborted();
238
+ const apiKey = options.apiKey ?? process.env.OPENAI_API_KEY;
239
+ if (!apiKey)
240
+ throw new Error("OPENAI_API_KEY is required for AI scaled variants.");
241
+ const model = options.model ?? DEFAULT_IMAGE_MODEL;
242
+ const size = closestImageGenerationSize({ width, height }, model);
243
+ const { data, info } = await sharp(image, { limitInputPixels: 33554432 })
244
+ .ensureAlpha().raw().toBuffer({ resolveWithObject: true });
245
+ const transparent = data.some((alpha, index) => index % 4 === 3 && alpha < 255);
246
+ const form = new FormData();
247
+ form.append("model", model);
248
+ form.append("size", size);
249
+ form.append("quality", "high");
250
+ form.append("background", transparent ? "transparent" : "opaque");
251
+ form.append("output_format", "png");
252
+ form.append("n", "1");
253
+ form.append("prompt", [
254
+ `Upscale the attached ${info.width} by ${info.height} image for a game asset.`,
255
+ `The final asset must be ${width} by ${height} pixels. Generate on the ${size} canvas; the result will be resized to the final dimensions afterward.`,
256
+ "This is an image-preservation task, not a redesign. Only enlarge the existing image.",
257
+ "Keep the original full-canvas composition, pose, silhouette, proportions, facial features, clothing, equipment, colors, highlights, shadows and art style.",
258
+ "Preserve pixel-art structure when present. Do not smooth, sharpen, invent details, add or remove objects, move, crop, reframe or change lighting.",
259
+ transparent
260
+ ? "Preserve transparency and semi-transparent edges. Keep the background transparent; do not draw a checkerboard or a new background."
261
+ : "Preserve the existing opaque background exactly.",
262
+ "No text or watermark."
263
+ ].join(" "));
264
+ form.append("image", new Blob([Uint8Array.from(image)], { type: "image/png" }), "source.png");
265
+ const deadline = AbortSignal.timeout(180000);
266
+ const combined = signal ? AbortSignal.any([signal, deadline]) : deadline;
267
+ const response = await request("https://api.openai.com/v1/images/edits", {
249
268
  method: "POST",
250
- headers,
269
+ headers: { Authorization: `Bearer ${apiKey}` },
270
+ body: form,
251
271
  signal: combined,
252
- body: JSON.stringify({
253
- version: "350d32041630ffbe63c8352783a26d94126809164e54085352f8326e53999085",
254
- input: {
255
- image: `data:image/png;base64,${Buffer.from(image).toString("base64")}`,
256
- scale,
257
- face_enhance: false,
258
- },
259
- }),
260
272
  });
273
+ combined.throwIfAborted();
261
274
  if (!response.ok)
262
- throw new Error(`AI upscale request failed (${response.status}).`);
263
- let result = (await response.json());
264
- try {
265
- while (!["succeeded", "failed", "canceled"].includes(result.status)) {
266
- await new Promise((resolve, reject) => {
267
- const timer = setTimeout(done, 1000);
268
- function done() {
269
- combined.removeEventListener("abort", abort);
270
- resolve();
271
- }
272
- function abort() {
273
- clearTimeout(timer);
274
- combined.removeEventListener("abort", abort);
275
- reject(combined.reason);
276
- }
277
- if (combined.aborted)
278
- abort();
279
- else
280
- combined.addEventListener("abort", abort, { once: true });
281
- });
282
- response = await request(`https://api.replicate.com/v1/predictions/${encodeURIComponent(result.id)}`, { headers, signal: combined });
283
- if (!response.ok)
284
- throw new Error(`AI upscale polling failed (${response.status}).`);
285
- result = (await response.json());
286
- }
287
- if (result.status !== "succeeded" || !result.output)
288
- throw new Error("AI upscaling failed.");
289
- const outputUrl = new URL(result.output);
290
- if (outputUrl.protocol !== "https:")
291
- throw new Error("Invalid upscale output URL.");
292
- const output = await request(outputUrl, { signal: combined });
293
- if (!output.ok)
294
- throw new Error(`AI upscale download failed (${output.status}).`);
295
- return new Uint8Array(await output.arrayBuffer());
296
- }
297
- catch (error) {
298
- if (combined.aborted &&
299
- result.id &&
300
- !["succeeded", "failed", "canceled"].includes(result.status)) {
301
- await request(`https://api.replicate.com/v1/predictions/${encodeURIComponent(result.id)}/cancel`, { method: "POST", headers, signal: AbortSignal.timeout(5000) }).catch(() => { });
302
- }
303
- throw error;
304
- }
275
+ throw new Error(`OpenAI scaled variant request failed (${response.status}).`);
276
+ const result = await response.json();
277
+ combined.throwIfAborted();
278
+ const encoded = result.data?.[0]?.b64_json;
279
+ if (!encoded)
280
+ throw new Error("OpenAI returned no image for the scaled variant.");
281
+ return Buffer.from(encoded, "base64");
305
282
  },
306
283
  };
307
284
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scaled-variants.js","sourceRoot":"","sources":["../src/scaled-variants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaled-variants.js","sourceRoot":"","sources":["../src/scaled-variants.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-game-assets/dev",
3
- "version": "0.11.0",
3
+ "version": "0.11.1",
4
4
  "description": "Development server and AI providers for prompt-aware AI game assets.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -30,7 +30,7 @@
30
30
  "typecheck": "tsc -p tsconfig.json --noEmit"
31
31
  },
32
32
  "dependencies": {
33
- "@ai-game-assets/core": "0.11.0",
33
+ "@ai-game-assets/core": "0.11.1",
34
34
  "@types/pngjs": "^6.0.5",
35
35
  "pngjs": "^7.0.0",
36
36
  "sharp": "^0.35.3"