[x3d-public] Functional Convergence, was Prototype

doug sanden highaspirations at hotmail.com
Tue Feb 17 11:10:57 PST 2015


> cause no small business may support several competing techs for long.
> We already support OGRE, Contact and Unreal for different needs, but we
> need ___convergence___. Are we the only end-users on the edge of change ? any
> echoes on the list ?

Convergence sounds interesting.
-Doug

more..
Lets say there was a definition of all functionality for all nodes in some arbitrary language. Not just the interfaces as per specs, but the guts of the functions. And that from those definitions, some 'transforms' could be done/applied to put it into x3dom, GLAM, C/objective-C/C++/Java languages.
Then functional convergence would be easier, even if technology didn't converge.

But then once you have such a source, and transforms, a user authoring a new node type might be able to author it in the same upstream language. And transform it into all the technologies.

more..
What's different between protos-as-compositions and the above node definition approach?
- lower level api access
- ability to populate function calls that happen once per scene, once per frame, during parsing, once per node on render, on collision..
-- parse - during parsing an element/node
-- compile/prep - once per node, or whenever a node field changes, convert geometry into generic triangles
-- collide - when avatar is colliding with bounding box
-- render - the geometry

Then the user can decide if node composition/proto or a new node type definition is needed.

more..
freewrl is 300,000 lines of spaghetti C. Some hackers like freewrl for its raw low-level technology, but its getting hard to find our way around.
One idea is to put a new hacker's interface on it, which would expose an API for defining new node types. Likely in javascript.
Then convert all our builtin node types into a form that works on that API too, so there are no 'builtin' node types.
Then if there's a different PROFILE such as an X3DOM or GLAM profile, all the node definitions could be swapped.
That's a fuzzy idea though. A long way from any implementation.

more..
a hackers interface, or node definition interface, vs. proto composition:
- composition: built from other nodes
- node definition: low level code
The 2 could converge in the same program run in the following way:
- low level node definitions would be done first, to bootstrap, starting with simple node types
- then blends of low-level and composition would follow
- then pure compositions
- then any hacker low level definitions and compositions and definition over-rides
- finally scene protos as compositions

more..
But once that's done for freewrl, then there would be all those low level node definitions. Perhaps it would be duplicating something already done somewhere else, and perhaps all that's needed is some transform to get it into a form that works for freewrl's hacker API. Or vice versa. Or prehaps existing definitions somewhere can be first transformed into a common form that all technology transforms can be done from.







 		 	   		  


More information about the x3d-public mailing list