xeolabs / xeogl

A WebGL-based 3D engine for technical visualization. Not actively maintained.
http://xeogl.org
Other
1.15k stars 264 forks source link

Entity #237

Closed rubydesign closed 6 years ago

rubydesign commented 6 years ago

This is just a suggestion from a newbie off course. But i had a breakthrough when reading Entity docs (which are really good intro), especially the first sentence: An Entity is a 3D object within a Scene.

So why not cal it 3DObject, if that is what it is. Entity is somewhat non-descript, but 3DObject says it how it is.

Also i think Geometry could be better called Shape. More analogous to the real world. A 3DObject has a Shape. And the Shape is independent of the objects size or position. In that sense the less the Geometry has api to change it's position or size the better. That should be done through the 3DObject.

Also sentences like a 3DObject has a Material make more sense to me.

This is meant as a discussion (in the absence of a forum), but you can just close if you are too used to the old names.

xeolabs commented 6 years ago

Actually I would love to call rename xeogl.Entity as xeogl.Object, and the only thing that stopped me was that I couldn't work out how to make YUIDoc accept the name "xeogl.Object".

In YUIDoc, I'm declaring "xeogl" as a namespace, which allows me to refer to classnames without it, eg "Object". YUIDoc thinks that means the JavaScript "Object" class, so I chose what I thought was the next best thing: "Entity".

I raised the issue here:

https://github.com/yui/yuidoc/issues/428

But yes, "Entity" is a misleading name, since this is not really an entity-component system. Object is better.

So before renaming, I guess the solution is to either find a YUIDoc way to document "xeogl.Object", or to switch to another documentation tool.

rubydesign commented 6 years ago

Ok.

But the suggestion was for 3DObject

Since its a 3d system. Or any variation, like DDDObje t, or 3dObject.

xeolabs commented 6 years ago

V0.8 now has scene graphs: https://github.com/xeolabs/xeogl/wiki/Updates-in-xeogl-V0.8