“native” means PC desktop side, not web side.
For example, have similar concept define: new mesh(geometry, material)
If this C++ code is considered native:
/* Create scene */
auto scene = Scene::create();
scene->setFog(Fog::create( 0x72645b / 2, 2.0, 10.0 ));
scene->setViewport(0, 0, 1600 * 2 / 4, 900 * 2 / 4);
/* Create camera */
auto camera = PerspectiveCamera::create( 50.0, renderer.getAspectRatio(), 0.001, 100.0 );
camera->position = glm::vec3(0.0, 0.0, 5.5);
camera->lookAt( 0.0, 0.0, 0.0 );
/* A sphere, cube, and cylinder walk into a pub */
auto sphere = Mesh::create( SphereGeometry::create(30, 20, 0.66f ),
PhongMaterial::create( 0xCC00CC, 0x0, 0x0, 0x222222, 130.0, true ) );
auto cube = Mesh::create( CubeGeometry::create( 1.0f ),
PhongMaterial::create( 0x00CCCC, 0x0, 0x0, 0x111111, 150.0, false ) );
then you may have a look at Three.cpp – but beware, that it was not updated for 9 years. Maybe there are other similar softwares. Have you searched GitHub? What did you find?
2 Likes
Thank you!
Because three.js is easy to use, the concept(mesh, material, geometry) is easy to understand.
So I want to find similar C++ graph library based on Vulkan to used for desktop application development.
But the difficult point is that Vulkan is a low level API, there is not material system; there is not relationship of mesh, material, and geometry.