Grid Framework version 2.1.1 released
Grid Framework version 2.1.1 has been approved by the Asset Store. This is a
maintenance release which fixes an error about get_dataPath
in the latest
Unity version.
Grid Framework version 2.1.1 has been approved by the Asset Store. This is a
maintenance release which fixes an error about get_dataPath
in the latest
Unity version.
Grid Framework version 2.1.0 has been approved by the Asset Store. This release brings new features in making some previously read-only properties also writeable, fixes compiler issues in connection with Playmaker actions and makes the code comply with the Visual Studio compiler.
Version 2.0.1 fixes a bug where the custom inspector of the Cylinder renderer for polar grids would not show up. It would instead display the default inspector generated by Unity, which was still functional, but ugly and would expose things meant for scripting only.
After almost half a year in the making Grid Framework version 2.0 has been released on the Unity Asset Store. This is the first major release since the initial launch and will make Grid Framework easier to use, more powerful and more flexible with no extra performance overhead. Being a major version update this breaks compatibility with the version 1.x releases, but an upgrade guide is included in the user manual. If you still cannot upgrade to 2.0 you can still keep using 1.x, but the old releases will not be getting any new features anymore.
One of the hardest tasks when creating something is actually shipping it, but it's finally time now, version 2.0 has been submitted to the Asset Store for review. After some last-minute changes here and there, fixing typos and re-adjusting screenshots I think we are good to go. I still have to figure out how to set up the Upgrade option in the Asset Store, but it can't be that hard. The submission process officially takes between five to ten working days, so hopefully the new version will be up soon.
We are almost at version 2.0, but version 1.x has not been forgotten. In my previous post I was discussing how version 2.0 will be distributed as one directory, including the documentation. The abuse of the WebPlayerTemplates directory has been a thorn in my side since the start, and since the problem is solved for version 2.0 I have applied the same fix.
I have finished the build system, which also includes the previously discussed documentation dilemma. The problem was the presence of actual JavaScript files which Unity kept confusing for UnityScript files, because Unity keeps referring to UnityScript as JavaScript.
A quick status update, all the examples and the align panel that had been broken by the API change are working now again. As I had mentioned when I outlined the plans for version 2.0, this update will break the API. A major version bump is an opportunity to throw out old cruft, decouple what does not belong together and streamline everything that can be made simpler.
In version 1.x Grid Framework has been distributed over several directories: Plugins, Editor, WebPlayerTemplates and GridFamework. I did this because it seemed logical to split the content by purpose, but some people disagreed with my choice, so for version 2.0 everything will unify everything in one directory.
Breaking the rendering task out of the grid into its own dedicated class is a good first step, but if all we have gained from this is several smaller classes we haven't really gained much. In this entry I will discuss how version 2.0 gives you more control over the rendering process.
There are basically two types of grid in Grid Framework: 3D grids and layered grids. 3D grids use all three dimensions, these are rectangular and spherical grids, while layered grids are 2D grids stacked on top of each other for a third dimension. In this post I will explain how the coordinate systems of layered girds will change in version 2.0.
If you have been following my updates in regards to version 2.0 you will have
noticed that one of the themes has been slimming down the API. Some things,
such as the renderGrid
flag are easy to replace with something more general
or trivial to replicate with one or two lines of code. Other methods however
are non-trivial to implement, useful to have and general enough to included in
the framework.
Rendering a grid is a three-step process: first we count how many lines we need to render and allocate the space needed, then we compute their end points and finally we send them to Unity to do its thing. In the earliest versions of Grid Framework these three steps had been done every frame. Since arrays in C# are heap objects this would send the garbage collector in overdrive for very large grids.
Releasing a new major version is a good opportunity to say goodbye to older versions of your environment. Version 2.0 will require at least Unity version 5.0, which will free me from the restrictions of previous versions.
I have now finished the first major task towards version 2.0: extracting the renderers into their own class. Until now the task of rendering the grid was part of the grid class, this made the classes much larger and it was impossible to add one's own rendering shapes without modifying the grids themselves.
It's the start of a new year, time to look back and look ahead. 2015 has seen the release of the new website, which was later that same year scrapped completely for a yet another website. I was also able to finally integrate the last of the originally planned grids into Grid Framework.