It was a while since I wrote a general update about Chunky development, so it seems like a good time to write one.
I decided to start a new naming scheme for these posts, with incremental numbering. This is not the first Chunky Development update, just the first one with the new naming scheme. Here are the most recent previous update posts:
To summarize what happened since the last update post:
During Christmas I worked mostly on bugfixes for version 1.4.2, and since then I have not had time to work on Chunky because of substantially increased workload for my PhD studies, writing an article, presenting at a conference, etc.
After the first version of the plugin architecture was integrated in Chunky I noticed more interest from people to get involved in Chunky development. I want to make it easier to contribute patches to Chunky, and make it easier for new people to start working on the code. I think this is really important for the long-term improvement of Chunky.
My short-term goals for Chunk right now are:
- Improve testing and developer documentation to make it easier for new developers to start working on the code.
- Integrate the plugin manager into the launcher.
- Make emittance and other material properties customizable on a per-block per-scene basis.
- Add sprite rendering.
- Improve fog rendering, as described in this issue.
During Christmas I was tinkering with a Minecraft style sprite renderer, which renders textures as 3D objects, just like held items in the game are rendered.
It works pretty well so far, it just needs to be integrated into Chunky:
Recently I got some pull requests from leMaik and electron93 on GitHub. Some nice additions from leMaik are:
- A new camera projector for omni-directional stereo projection.
- Two new tonemapping operators (postprocessing).
Several people have been helping by reporting issues and commenting on issues from each other on GitHub and Reddit. That really helps because common problems can be resolved much faster when users help each other.
Currently, leMaik is working on improving the plugin system to make it more usable.
The long-term goals for Chunky are currently:
- Custom models from resource packs.
- Add animal/mob rendering.
- Signing and verifying Chunky core libraries.
- Translation support.
- Demo GPU rendering plugin.
- Distributed rendering plugin.
The plugin architecture is important for future development because it shifts the focus for the core Chunky development from adding new features towards improving the existing architecture and making it more flexible for plugin development. I have removed GPU rendering from my long-term goals for Chunky because ideally it could be developed as a separate plugin. I still want to develop a nice demo plugin for GPU rendering which someone could build upon to create a full-featured GPU renderer.