1.1.31 • Published 18 days ago

real_api v1.1.31

Weekly downloads
-
License
CSL
Repository
-
Last release
18 days ago

real_api

npm release Documentation License

Render three.js scene at run time

alt output2 alt output2

Installation

npm install real_api

Documentation

Documentation

Requirements:

Getting started

Import:

import * as REAL from "real_api";

Area light

const width = 1;
const height = 1;
const intensity = 1;
const color = new THREE.Color(0xFFFFFF);
const areaLight = new REAL.AreaLight(width, height, color, intensity);
scene.add(areaLight);

Sunlight

const config = {
    intensity: 1,
    castShadow: true,
    color: new THREE.Color(0xFFFFFF),
};
const sunLight = new REAL.SunLight(config);
scene.add(sunLight);

Spotlight

const config = {
    intensity: 1,
    distance: 5.0,
    castShadow: true,
    angle: Math.PI/12,
    color: new THREE.Color(0xFFFFFF),
};
const spotLight = new REAL.SpotLight(config);
scene.add(spotLight);

Point light

const config = {
    intensity: 1,
    distance: 5.0,
    castShadow: true,
    color: new THREE.Color(0xFFFFFF),
};
const pointLight = new REAL.PointLight(config);
scene.add(pointLight);

Render a job

Step 1: Get render scene
const eye = threeCamera; // Optional
const renderScene = await REAL.Scene(scene, eye);
Step 2: Create new job
const api = REAL.API;

const params = {
    "cred": {
        "insID": 0,
        "appKey": "ABC",
        "prodKey": "XYZ"
    },
    "type": "new",
    "render": {
        "expFrom": "app",
        "output": "PNG",
    }
}

const response = await axios.post(api, params);

Response:

{
    "msg": "SUCCESS",
    "data": {
        "jobID": "1711638968_373829",
        "expFrom": "app",
        "finished": false,
        "status": "NEW",
        "url": "https://....."
    }
}
Note: You can also render .blend, .gltf, .glb or .fbx directly by changing render parameter in request body

For example:

{
  "cred": {
    "insID": 0,
    "appKey": "ABC",
    "prodKey": "XYZ"
  },
  "type": "new",
  "render": {
    "ext": "glb",
    "expFrom": "app",
    "output": "PNG"
  }
}
Step 3: Upload scene
const uploadUri = response.data.url;
const request = await axios.put(uploadUri, realScene);
Step 4: Submit job
const params = {
    "cred": {
        "insID": 0,
        "appKey": "ABC",
        "prodKey": "XYZ"
    },
    "jobID": "1711638968_373829",
    "type": "render"
}

const response = await axios.post(api, params);

Response:

{
    "msg": "SUCCESS",
    "data": {
        "jobID": "1711638968_373829",
        "expFrom": "app",
        "finished": false,
        "status": "WAITING"
    }
}
Step 5: Check job status

You can either check live status or jobs through socket or by using API request

const params = {
    "cred": {
        "insID": 0,
        "appKey": "ABC",
        "prodKey": "XYZ"
    },
    "jobID": "1711638968_373829",
    "type": "result"
}

const response = await axios.post(api, params);

Response:

{
  "msg": "SUCCESS",
  "data": {
    "jobID": "1711638968_373829",
    "expFrom": "app",
    "finished": true,
    "result": "https://.....",
    "status": "COMPLETED"
  }
}
1.1.31

18 days ago

1.1.29

2 months ago

1.1.28

2 months ago

1.1.30

2 months ago

1.1.27

2 months ago

1.1.26

2 months ago

1.1.25

2 months ago

1.1.24

2 months ago

1.1.23

2 months ago

1.1.22

2 months ago

1.1.21

2 months ago

1.1.20

2 months ago

1.1.1

10 months ago

1.1.9

10 months ago

1.1.8

10 months ago

1.0.9

11 months ago

1.1.7

10 months ago

1.0.8

11 months ago

1.1.6

10 months ago

1.0.7

12 months ago

1.1.5

10 months ago

1.0.6

12 months ago

1.1.4

10 months ago

1.0.5

12 months ago

1.1.3

10 months ago

1.0.4

12 months ago

1.1.2

10 months ago

1.1.12

10 months ago

1.1.11

10 months ago

1.1.10

10 months ago

1.1.16

9 months ago

1.1.15

9 months ago

1.1.14

9 months ago

1.1.13

9 months ago

1.1.19

9 months ago

1.1.18

9 months ago

1.1.17

9 months ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago