After careful deliberation and thought, we’ve decided to merge our two flagship projects into one. CAPI has been discontinued but not forgotten as we are now integrating its features into DisturbingIDE. This means that Caffeinated3D programming language is getting even more powerful. DisturbingIDE is getting a huge expansion, with a new visual editor to build your environments, Asset Repository database to easily manage all your assets and most impressive of all, a fully functional collaborative editing system which is deep within development. This means that when the feature is perfected, multiple developers can connect to your project and edit your code or build your zones alongside you in real time!
NEW TOOL - World Editor
Some things just weren’t designed for programming. Building game environments is one of them, so we took the visual editor of the CAPI project and rebuilt it from the ground up to accommodate the new and improved system. It’s still a long way from being ready, but integration has already been completed. Our main focus is getting the coding side of Caffeinated3D solid before moving to the artsy side of things since that is the very core of what makes Caffeinated3D, Caffeinated3D.
NEW TOOL - Asset Repository
With all projects you need a way to organise and access all your project files, meshes, music and especially source files along with several other types. The Asset Repository works as an easy “browser” like tool which allows your to manage your files efficiently, but also is the core mainframe to the Collaborative Editing system.
The collaborative system is one we are very excited to work on. While it’s still got some ways to go once completed, you will be able to self-host your projects so that other developers on your team can securely connect to access your project repository. This means they can access everything in realtime and able to edit along side each other in realtime. This is far more advanced than using simple version control. You could have 10 people designing the same environment together while another 5 work on source code, all being updated constantly in realtime! This will not only drastically reduce development time, but also allow everyone to work efficiently together, getting instant feedback and working to solve any problems along the way as a team.
NEW FEATURE - Editor Customization
Customization is something every developer loves to see and we wanted to give as much control to you so that our editor becomes your editor! You are able to change the color schemes, panel locations, default projects, autocompletion right down to the tab spacing in the editor. You have complete control over the look and feel of the editor so that when you are developing you have the experience which is just right, for you.
NEW FEATURE - Detailed Debugger
A debugger is a programmer's best friend, and the C3D Debugging system is designed to save you as much time as possible. Using a smart system, it is able to detect not just where the problems are but also how to fix them. Another awesome feature is this Debugging is not confined to just the compiler but the client as well! So if your project builds fine but crashes during use, the debugger will be there to tell you exactly what went wrong!
UPDATED - Project Folder Structure
The original project folder system gave you complete freedom in how you wanted to set it up, however that became a very messy concept, ultimately causing more confusion for a system which is so basic. We’ve removed a bit of freedom and replaced with a basic structure, there is now a Data archive for your projects, with sub archives for Meshes, Textures, Music etc. each asset type should go in it’s corresponding folder to keep things organised. You do still have the freedom to create as many sub-directories within the archives as you like!
UPDATED - Caffeinated3D SDK Library
Something which we planned to develop from the start was the SDK specifically for the c++ programmers. For those who are unclear, this SDK will allow you to access ALL of the C3D functions in your c++ projects. This will save you a lot of time, you won’t have to mess around building parsers, for advanced string handling or framebuffers if you are building any form rendering technology! The SDK is now linked with the compiler, as we develop one, we develop the other, so in summary. The SDK will be available from day one after release!
- WriteFile(path) //writeonly (truncate)
- OpenFile(path)// readwrite
- ReadFile(path) // readonly
- CopyFile(srcpath, destpath)
- CopyFile(handle, destpath)
- MoveFile(srcpath, despath)
- MoveFile(handle, despath)
- RenameFile(handle, %newname)
- WriteLine(file, $data)
- WriteLineAt(file, $data, pos)
- WriteConsoleLine, Replaced with Log and LogError
- Shr, Shl, Sar, SeedRnd these functions become redundant so we removed them from Caffeinated3D
- Rnd, this was replaced with Rand and works much more simply and effectively.
With the testing stages of the c3d functions being well underway, there are far to many bug fixes to list but here are some of the biggest ones, along with improvements made to the editor.
- Fixed Global handle assignment bugs, no longer causes compiler to crash randomly.
- Fixed bug where Cancel on closing the editor caused a crash.
- Fixed bug where Auto-completion didn’t correct Uppercase syntax.
- Fixed bug where Font wasn’t saving to the options file.
Last patch notes we wanted to focus on rendering and Interface, however these got pushed aside so we could focus on getting a strong, stable base for the entire language with string and math manipulations. With that now done we can start slowly making our way to re-introducing PBR support to Caffeinated3D.
Another priority was the Caffeinated3D SDK which is complete and almost ready to go. Just like Caffeinated3D, it is in it’s final stages of bug testing. Fortunately for us this process is being speed up nicely since we only have to fix the bugs in one to fix the other!