fix(ImageTo3D): enforce glb format in Meshy API payload
Build and Deploy / build-and-push (push) Successful in 46s
Build and Deploy / build-and-push (push) Successful in 46s
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
const fs = require('fs');
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipBuffer = fs.readFileSync('indicav2.titanscene');
|
||||
const unzipped = fflate.unzipSync(zipBuffer);
|
||||
const sceneData = JSON.parse(new TextDecoder().decode(unzipped['scene.json']));
|
||||
console.log('cameraProps:', sceneData.cameraProps);
|
||||
console.log('modelData:', sceneData.modelData);
|
||||
console.log('sceneObjects length:', sceneData.sceneObjects?.length);
|
||||
if (sceneData.sceneObjects?.length > 0) {
|
||||
console.log('Main model transform:', sceneData.sceneObjects[0].transformProps);
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
const fs = require('fs');
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipBuffer = fs.readFileSync('newmodel.titanscene');
|
||||
const unzipped = fflate.unzipSync(zipBuffer);
|
||||
const sceneData = JSON.parse(new TextDecoder().decode(unzipped['scene.json']));
|
||||
console.log('cameraProps:', sceneData.cameraProps);
|
||||
console.log('modelData:', sceneData.modelData);
|
||||
console.log('sceneObjects length:', sceneData.sceneObjects?.length);
|
||||
if (sceneData.sceneObjects?.length > 0) {
|
||||
console.log('Main model transform:', sceneData.sceneObjects[0].transformProps);
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
const fs = require('fs');
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipBuffer = fs.readFileSync('model.titanscene');
|
||||
const unzipped = fflate.unzipSync(zipBuffer);
|
||||
const sceneData = JSON.parse(new TextDecoder().decode(unzipped['scene.json']));
|
||||
console.log('cameraProps:', sceneData.cameraProps);
|
||||
console.log('modelData:', sceneData.modelData);
|
||||
console.log('sceneObjects length:', sceneData.sceneObjects?.length);
|
||||
if (sceneData.sceneObjects?.length > 0) {
|
||||
console.log('Main model transform:', sceneData.sceneObjects[0].transformProps);
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
const fs = require('fs');
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipBuffer = fs.readFileSync('model.titanscene');
|
||||
const unzipped = fflate.unzipSync(zipBuffer);
|
||||
const sceneData = JSON.parse(new TextDecoder().decode(unzipped['scene.json']));
|
||||
console.log('cameraProps:', sceneData.cameraProps);
|
||||
console.log('modelData extension:', sceneData.modelData?.extension);
|
||||
console.log('sceneObjects length:', sceneData.sceneObjects?.length);
|
||||
if (sceneData.sceneObjects?.length > 0) {
|
||||
console.log('Main model transform:', sceneData.sceneObjects[0].transformProps);
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -301,7 +301,8 @@ export const ImageTo3DModal: React.FC<ImageTo3DModalProps> = ({ isOpen, onClose,
|
||||
image_url: dataUrl,
|
||||
model_type: meshyModelType,
|
||||
should_texture: meshyShouldTexture,
|
||||
should_enhance_image: meshyEnhanceImage
|
||||
should_enhance_image: meshyEnhanceImage,
|
||||
target_formats: ['glb']
|
||||
};
|
||||
|
||||
if (meshyModelType !== 'lowpoly') {
|
||||
|
||||
@@ -403,6 +403,7 @@ export default function Editor() {
|
||||
if (sd.cameraPresets) setCameraPresets(sd.cameraPresets);
|
||||
|
||||
if (sd.modelData && sd.modelData.data) {
|
||||
setModelData(sd.modelData);
|
||||
reImportModel(sd.modelData);
|
||||
}
|
||||
}
|
||||
@@ -992,6 +993,7 @@ export default function Editor() {
|
||||
|
||||
// Re-load model if data exists
|
||||
if (data.modelData && data.modelData.data) {
|
||||
setModelData(data.modelData);
|
||||
reImportModel(data.modelData);
|
||||
}
|
||||
} catch (err) {
|
||||
@@ -5300,3 +5302,5 @@ export default function Editor() {
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipObj = {};
|
||||
zipObj['model.glb'] = new Uint8Array([1, 2, 3, 4, 5]);
|
||||
|
||||
const zipped = fflate.zipSync(zipObj);
|
||||
const unzipped = fflate.unzipSync(zipped);
|
||||
|
||||
console.log(unzipped['model.glb']);
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
const fs = require('fs');
|
||||
const fflate = require('fflate');
|
||||
|
||||
const zipObj = {};
|
||||
zipObj['model.glb'] = new Uint8Array([1, 2, 3, 4, 5]);
|
||||
|
||||
const zipped = fflate.zipSync(zipObj);
|
||||
const unzipped = fflate.unzipSync(zipped);
|
||||
|
||||
console.log(unzipped['model.glb']);
|
||||
Reference in New Issue
Block a user