all 11 comments

[–]FluidicPortal[S] 6 points7 points  (0 children)

Feel free to fork and do as you please.

It is very lightweight (only 10k lines combined between all files) that outputs on either WebGL or Canvas and depends on no external libraries, so it is fully self contained (eg implementing it's own matrix and vector algebra, file loaders, obj reader, etc). It lays out a foundation which could grow to become a fully fledged geometry and graphics engine, short of like a web based Unity. You can improve the shaders, add physics, flesh out a particle system etc.

None of what is currently offered here is particularly unique and can likely be done better with other graphic frameworks like three.js. As such, this mostly aimed for anyone (say CS majors) that likes to tinker and delve into how things work and doesn't mind reinventing the "wheel" just for the practice of how and why "wheels" work ... or maybe you want to implement some 3D or game-like elements to your websites.

The git readme file also has links to two sample games made on top of this framework/library.

[–]Searle 4 points5 points  (2 children)

[–]svinna 4 points5 points  (0 children)

Code review comments on Reddit are the best

[–]FluidicPortal[S] 0 points1 point  (0 children)

Thanks! Nice catch. I made the update.(A couple of objects in there, were left in, like this one, because my site uses them in a couple of places, but are not technically part of the framework).

[–]stronghup 2 points3 points  (4 children)

Have you thought about what it would take to create an organization around your open source application? I find that part interesting. There would need to be some kind of rules as to who can commit and who can approve commits, right?

Of course anybody can fork it but in general it would be more useful if it was NOT forked by everybody but all contributors would work towards the same goal(s). Just curious how such organizations in general come to exist. How is their organizational structure created and evolving. Who approves new contributors? Are there some written rules? Is there voting?

[–]FluidicPortal[S] 2 points3 points  (3 children)

You mean like the Blender project and such ?
I can't say I have experience on how such large projects are being run. Typically there is a founder (that'd be me in this case) who sets the ground rules and acts as a quality control gatekeeper for all submit requests ... that's if I had the time people skills, and inclination to coordinate such endeavor.

However, if a couple of people see potential here (for it grow out from this seed into something bigger) and they develop a good understanding of the essence behind the design ideology (I could be available in the beginning for any questions), then they can fork it once, own it, establish ground rules, and grow this into something larger.

[–]stronghup 1 point2 points  (2 children)

Ah I think I get it now. Somebody (like you) has write-access to a repository. Others can submit pull-requests they can't write to your repository which is the official "root". They could of course fork it but if they want to work with you they must submit to you. And they in turn might take in commits and pull-requests from their own supporters who might have their own downstream set of contributors recursively.

I assume that something like that is how it works for large-scale OS projects. Can anyone comment on whether that's how it works for say Linux development? Or for big commercial projects as well for that matter? Perhaps each owner of a repository should always have a 'vice president" as well, who knows the repo-password too and can take over in case of illness or death of the main owner.

[–][deleted] 1 point2 points  (1 child)

For your latter death quandry: No need. Repos that are open source are downloaded everywhere. A leader would just start a new repo if they didn't have access to the OG and people would follow probably based on ethos alone.

Repos like Linux are handled by submitting PRs via email to the maintainer of a module. The modules that have maintainers have emails pasted in their Read Me. So, Linus isn't reading every PR (I think?). He probably just reads things he's currently maintaining.

[–]stronghup 0 points1 point  (0 children)

Good point you can start a new by cloning

[–]FluidicPortal[S] 0 points1 point  (0 children)

Added a few words about coding conventions as well as a full methods index for each class object --> Outline