|
@@ -1,6 +1,22 @@
|
|
|
# Contributing to Babylon.js
|
|
|
|
|
|
-The foundation of **Babylon.js** is simplicity.
|
|
|
+## Golden rules
|
|
|
+
|
|
|
+**Babylon.js** is built upon 3 golden rules:
|
|
|
+
|
|
|
+1. You cannot add code that will break backward compatibility
|
|
|
+2. You cannot add code that will slow down the rendering process
|
|
|
+3. You cannot add code that will make things complex to use
|
|
|
+
|
|
|
+### Backward compatibility
|
|
|
+
|
|
|
+The first golden rule is the most important because we want our users to trust Babylon.js. And when we need to introduce something that will break backward compatibility, we know that it will imply more work for our customers to switch to a new version. So even if something could be simpler to do by breaking the backward compatibility, we will not do it (exceptions may apply of course if there is a problem with performance or if this is related to a bug).
|
|
|
+
|
|
|
+### Performance
|
|
|
+
|
|
|
+Babylon.js is a 3D rendering engine. So every piece of code has to be scrutinized to look for potential bottlenecks or slow downs. Ultimately the goal is to render more with less resources.
|
|
|
+
|
|
|
+### Simplicity
|
|
|
|
|
|
A developer should be able to quickly and easily learn to use the API.
|
|
|
|
|
@@ -8,8 +24,6 @@ Simplicity and a low barrier to entry are must-have features of every API. If yo
|
|
|
|
|
|
You can always add to an API, you cannot ever remove anything from one. If the design does not feel right, and you ship it anyway, you are likely to regret having done so.
|
|
|
|
|
|
-That's why many of the guidelines of this document are obvious and serve only one purpose: Simplicity.
|
|
|
-
|
|
|
## Forum and Github issues
|
|
|
|
|
|
Since the very beginning, Babylon.js relies on a great forum and a tremendous community: http://www.html5gamedevs.com/forum/16-babylonjs/.
|