1. Envie a URL JPEG
Envie uma tarefa de imagem com uma URL JPEG pública. Guarde o ID retornado e não crie outra tarefa enquanto esta estiver processando.
export TO3D_KEY='YOUR_API_KEY'
export TO3D_IMAGE_URL='https://example.com/product.jpg'
TASK_JSON=$(curl --fail-with-body --silent --show-error \
https://api.to3d.app/api/trellis/tasks \
-H "x-api-key: $TO3D_KEY" \
-H 'Content-Type: application/json' \
-d "$(jq -cn --arg image "$TO3D_IMAGE_URL" \
'{task_type:"image-to-3d",input:{image:$image}}')")
TASK_ID=$(jq -er '.id' <<<"$TASK_JSON")
printf 'Task: %s\n' "$TASK_ID"Consulte e baixe o GLB
Consulte sem criar outra tarefa. Quando a tarefa tiver sucesso, salve a URL do modelo retornada e baixe o GLB.
while :; do
STATUS_JSON=$(curl --fail-with-body --silent --show-error \
"https://api.to3d.app/api/trellis/tasks/$TASK_ID" \
-H "x-api-key: $TO3D_KEY")
STATUS=$(jq -er '.status' <<<"$STATUS_JSON")
case "$STATUS" in
succeeded) jq -er '.output.model_file' <<<"$STATUS_JSON" > model-url.txt; break ;;
failed|canceled) jq '{id,status,error}' <<<"$STATUS_JSON" >&2; exit 1 ;;
pending|processing) sleep 5 ;;
*) printf 'Unexpected status: %s\n' "$STATUS" >&2; exit 1 ;;
esac
done
curl --fail --location --silent --show-error \
"$(cat model-url.txt)" --output product.glb
[ "$(head -c 4 product.glb)" = 'glTF' ]2. Inspecione antes de colocá-lo em um viewer de AR
Abra primeiro `product.glb` em um viewer compatível com GLB. Verifique se a silhueta do produto, os materiais visíveis, as UVs e a textura são utilizáveis na sua cena. Defina uma escala do mundo real no seu pipeline; um único JPEG não estabelece dimensões.
- Se o destino de AR exigir outro formato ou um anchor específico da plataforma, faça e teste essa conversão na ferramenta de destino.
3. Valide no dispositivo de destino
Execute o viewer nos telefones, navegadores ou headsets que você oferece. Verifique tamanho do download, iluminação, resolução da textura, posição da câmera, oclusão, interação e taxa de quadros.
- O #56 não verificou saída USDZ, escala física, anchors de AR ou qualquer dispositivo de AR. Portanto, este artigo descreve um fluxo inicial reproduzível, não afirma que um JPEG se torna automaticamente um asset de produto AR calibrado.
Mantenha o escopo da evidência das amostras
Os quatro GLBs públicos de amostra fornecem exemplos de estrutura com texturas PNG incorporadas, UVs, juntas e pesos de skinning. Um modelo de produto pode não precisar de rig; ignore Skin Tokens a menos que seu objeto precise de um esqueleto.
- Guarde juntos o JPEG original, o ID da tarefa da API, o GLB baixado e qualquer asset AR convertido para que um problema visual ou de escala posterior possa ser rastreado até a etapa correta.