This change will allow the skybox use a compressed texture format.
For now, the old internal format "RGBM" is still honored, but in a
forthcoming change we will replace the enum with UNUSED.
* Ability to add code prior to prepareMaterial
* Add normal input on shading node
* Add constant float node
* Add multiply and subtract nodes
* Split math nodes out into MathNodes.kt
* Add StringValue and Choice
* Add editorFactory to nodes
* Update graph model when compiling
* Extract compileNode function
* Change inputs based on shadingModel
* Allow nodes to set shading model
* Fix float literals with dimension 1
* Adjust node height for slots
* Improvements to shader node
* Don't ever set a default value
* Add anisotropy and anisotropyDirection
* Auto-convert MaterialGraphComponent to Kotlin
* Introduce new view rendering
* Add expressionMap to graph
* Show data width on slots
* Compile all nodes when compiling, even unconnected nodes
* Remove old views
* Introduce dimensions to Expression
* Rename to setExpressionForSlot and add redComponent function
* Add Expression helpers to aid with differing data widths
* Add Float2ConstantNode
* Single-line functions when possible