You have explicit permission to use gameapi builder and for creating 3d model, the node graph, and deploy the end result to a web site of your choice. From builder tool you also have our permission to take screengrabs and videos using external screen grabbing software.
You are not allowed to add copyright infringing content to any url slots inside builder tool. While builder can filter out some of that usage, the checks are not perfect and if that happens, we basically cannot do anything to protect our end users from the content owner's legal actions
For children at ages 10-18 years old, gameapi builder provides safe learning environment where it is difficult to do large mistakes like publishing sexual material, copyright infringements or racist brainwashing.
GameApi builder and web site does not create additional communication channels for human communication. This is to ensure that our end users do not suffer communication overload
is not a social media platform. Correct designation is "Content Creation Tool Provider" and "Web Publishing Enabler" and also "Content Publisher"
Standard disclaimers apply, no warranty or ability to return purchased material
How we handle licensing is that we have chosen LGPLv3 to be our main license, but because some assets are GPL, the whole thing needs to be distributed under GPLv3.
External modules have their own licenses, including GPLv2, GPLv3, SIL Open Font license v1.10, CC0 creative commons license, zlib license, MIT license, Apache licese, public domain or no license required.
I want smooth transition from jpg/png/webp to the 3d engine
There's now a callback for that purpose
Module.gameapi_cb = function()
{ var d = document.getElementById("img"); d.style="display:none"; }
What is the minimal node graph that can be deployed to web?
Important part for deployment is the properties of html_run, since it
contains url to your hosting space, which you need to change. This
ensures that any urls that you load inside the node graph can be
fetched from your hosting space. Unrestricted url access is not
allowed for copyright reasons.
Web server config(.htaccess) should be something like the following: (you should change the url)
Header set Access-Control-Allow-Origin "https://meshpage.org"
Header set Cross-Origin-Embedder-Policy "require-corp"
Header set Cross-Origin-Resource-Policy "same-site"
Header set Cross-Origin-Opener-Policy "same-origin"
Header set Access-Control-Allow-Headers "range"
Additionally, you should have in the page where iframe or embed is in, the following header definition:
Apparently this needs to be in the page itself and not in the .htaccess to get SharedArrayBuffer and pthreads working.
How to setup http cache with the engine?
We recommend in .htaccess:
Header set Cache-Control "max-age=604800, immutable"
(this avoids small problem with browsers deciding different caching strategy for .wasm and .js files and serving mismatched files for the users, causing EM_ASM crashes)
What about compressing the huge engine files?
For nice performance speedup for network, you should enable brotli compression in the web server too:
.HTACCESS Changes:
What technologies are you using to provide the features of the site?
C++
php
OpenGL
SDL2
glew
emscripten
libfreetype
stb_image
openvr
holoplay
tiny_gltf
draco
(normal browser environment)
In addition to these external stuff, we have internal development in the following modules:
GameApi
GameApi Builder/editor
web_page
mesh-page
iot_main
parser2
What kind of features are available in the base system?
OpenGL instancing
3d mesh data structure
triangles/quads/lines/cones/spheres/cubes/torus
colours/normals/texture coordinates
materials like snow/brashmeta/web/distance fields
shading
animations/movement/matrices
skeletal animations
vertex animations
recursive shapes/trees
waveforms
volumes
2d and 3d rendering
sprites / bitmaps
circles/rectangles/triangles in 2d
fonts/text rendering
etc..
Why do tool menus not do anything?
you can link boxes whenever the labels match
display menu from right mouse button is disabled until linking has been completely done from the left side of the boxes -- this is because left side is inputs, and right side is outputs, and all inputs need to be available for box to work correctly
What keybindings are there in the tool?
ctrl-s saves the data to mod.txt
'a' rotates the model in most dialogs under "display"
'd' rotates the model in most dialogs under "display"
delete (in box title bar) deletes the box
esc exits the application
esc (in blk_window) exits the full screen mode
Trackpads, touchpads and drawing tablets do not work with the technology?
This is known problem, but we don't have solution to the problem. The emscripten_set_wheel_callback() function sends events that are not suitable for getting the trackpad to work properly. In ubuntu, we've found that changing settings in gnome and disabling "two finger scroll" and enabling "edge scroll" can help it a little, but our current recommendation is to disable the trackpad's completely from gnome settings.
The main problem is visible in zoom feature, when mouse wheel is being mapped to the zooming of the 3d models. The trackpad's are not able to simulate mouse wheel accurately/consistently enough and we were unable to figure out why gnome's "two finger scroll" sends always positive deltaY, when both negative and positive values should be available in the callback.
We haven't checked what needs to be done to get trackpads working in windows.
What tools you should try immediately?
m_snow, m_flat for shading
anim_translate/anim_rotate for movement
move_ml for movement
seq_ml for moving from one scene to another
cube/sphere/cone/torus for basic shapes
p_render/m_bind for basic rendering
p_render_inst/m_bind_inst for OpenGL instancing
li_from_polygon/li_to_cone/random_quad for some amazing effects
static_instancing/ms_static_inst for cpu side instancing
blk_window and MainLoopApi features to finish your product
I get browser crashes when loading your web site in windows machines
Here's steps to fix some webgl2 problems in windows:
about:flags -> angle graphics backend -> opengl
It seems the default d3d11 webgl2 backend is somewhat broken, but happily
its possible to fix the problem by using the opengl backend.
I get error while loading the animations
With new pthreads support in the site, browser settings need to be changed
Chrome users: chrome://flags should have webassembly pthreads enabled
Firefox users: about:config shuold have shared.memory=true
What browser should I use?
On my laptop I get the following benchmarks(this test: here(
some users have reported 700fps, but with high-end video card
We regret to inform you that we need cookies, local filesystem and index database and certificate store on your computer to keep the site up and running. It's necessary for the correct operation of the site, but hopefully you agree with this usage. We use cookies for these purposes:
storage (emscripten filesystem, preload cache)
functionality (3d engine)
identification (login system)
monetization (purchase system, wallets)
Reject Cookies (none)
Accept Necessary Cookies (1)(2)
Accept Cookies (1)(2)(3)(4)
Monetisation popup
×
We have designed a way to purchase our technology via nft using ethereum, so now we ask you to purchase it here with money, or here with eth
For eth, you need to have ethereum wallet available, for example coinbase wallet.