Saturday, June 8, 2019

Website Development : 3D : Vulkan Stack for web page,data,science & gaming.

Website Development : 3D : Vulkan Stack for web page,data,science & gaming.


Stack list:

HTML DOM (Document Object Model) >
PHP & Database >
HTML5 >
JS - JQuery & JQuery 3D feature stack >
WebGL >
WebGL Compute &
Streamline API
Vulkan API - Direct Render : Ray trace the Audio/Video/Text & Visuals and force/ gravitational effect paths,

Use Vulkan - Direct Compute OpenCL to trace , optimisation and pre-render Vertices,Borders,Renderings & pass Vector trace to GPU & Back To Direct Compute OpenCL.

= Interactive 3D & Web

https://science.n-helix.com/2017/02/open-gaming.html

https://science.n-helix.com/2016/04/3d-desktop-virtualization.html
***

HTML DOM (Document Object Model)

"The DOM is the structure a web browser generates from an HTML file. The browser reads the HTML file and generates a version of the elements that is formatted for your JavaScript code to communicate with. We need this “translated” version of the HTML so that we can use JavaScript to talk to the elements on the page. If JavaScript could not talk to the DOM, we wouldn’t be able to use JavaScript to change the appearance of the page."

https://generalassemb.ly/coding/full-stack-web-development/dom-manipulation

https://www.w3schools.com/js/js_htmldom.asp

3D Document manipulation though the use of JQuiry

***

PHP & Database stack to handle program data and formatting...
& because PHP can output pages and windows in code formatted in DOM and HTML5
We can create menus and pages that do not require the use of large file sets..

Code repetition is the secret of the PHP and database system,
Other systems like sites written in HTML require pages to be written to the server &

PHP with the database stack is a sensible system to reduce the nessety to use Lots of storage for the site code,

PHP code can create multiple window sets with Dom orientated Dynamic JS and HTML5 Dynamically
Using the principle of JQuery & JQuery 3D feature stack.

****

So HTML5 & DOM create windows, frames & interactive content:

However we need to use standards that create animated objects & people,
While we can draw basic 3D objects in HTML5 we also would like them animated..

3DMax, AutoCAD & other formats provide motion for vectors so we need HTML5 to animate objects though OpenGL, WebGL & Vulkan.. So we need formatting to create motion in GL.

Tables of motion & reaction, created in small database sets, Database sets can be compressed & should be.

For this purpose we use databases, more than 1 so we are able to store sets of objects within the scene or web page.. In essence we stack compressed databases & this allows us to both interact with the page & stop downloading data or save bandwidth.

(c)Rupert S

****
https://science.n-helix.com/2012/09/geometric-calculating-machines.html
WebCLGL : Libraries & JS
https://github.com/stormcolor/webclgl
https://github.com/stormcolor/webclgl/blob/master/dist/webclgl/WebCLGL.min.js

WebCLGL use WebGL2 specification to interpret code.
WebGL is used like OpenCL for GPGPU calculus using the traditional Render To Texture technique.

****
WebGL Compute
https://www.khronos.org/registry/webgl/specs/latest/2.0-compute/#diff-with-gles31

https://www.khronos.org/assets/uploads/developers/library/2017-webgl-webinar/Khronos-Webinar-WebGL-20-is-here_What-you-need-to-know_Apr17.pdf

****
Open Source Driver for Vulkan : Debian/Ubuntu/Linux
https://github.com/GPUOpen-Drivers/AMDVLK

run this after downloading file: https://is.gd/Install_gpl_amd_drivers_sh

sudo chmod 774 Install-gpl-amd-drivers.sh
sudo ./Install-gpl-amd-drivers.sh

****
GL to Vulkan : gfx-portability : Prototype library implementing Vulkan Portability Initiative using gfx-hal. See gfx-rs meta issue for backend limitations and further details.

https://github.com/gfx-rs/portability

****
OpenCL/OpenGL/Vulkan API : Mac:Windows:Linux:Android

https://github.com/KhronosGroup/MoltenVK/releases/tag/v1.0.35

https://github.com/KhronosGroup/OpenCL-ICD-Loader

https://github.com/KhronosGroup/OpenCL-CLHPP

****
Texture & polygon optimiser & compressor

https://github.com/GPUOpen-Tools/Compressonator/releases

https://github.com/KhronosGroup/glTF-Compressonator


(c)RS