Gajatix Software is proud to present our latest technology, Caffeinated3D (C3D)! This is a brand new game programming language which captures the true essence of simplicity with power. Much like the BlitzBasic languages, C3D lends itself to a very easy structure so that developers with little or no experience can jump straight in and be able to create complex programs with the same power as c++ without all the headaches. Backed up by the Vulkan API for advanced rendering, C3D can create beautiful real time graphics that rivals modern game engines!
One of the first of its kind in the modern era of software development. Caffeinated3D allows you to code your games using an easy to use language that has the raw power of C++ without needing to know all the technical stuff that would take years to learn. Backed-Up by the Vulkan & OpenGL API's the ability to create real-time beautiful graphics is so simple, it requires only 1 line of code. We've been developing our Physically Based Rendering system for a long time and when we tested it, not only were the results awesome, but extremely fast as well, even faster than other popular modern engines.
But we didn't stop there, being able to develop games with no limits on genre, features and beauty is one thing, but being able to do it quickly is another. Caffeinated3D has lots of different methods to speed this up with optional convenience functions, such as the EnterMainLoop. It will set up the main loop of your project for you, along with multi-threading, updating frame buffers, delta time, the list goes on. And it's all done with 1 line of code. But most impressive of all is the Realtime Collaboration System. This doesn't mean a fancy version of GitHub for your source code, this means your team of developers can all connect to one project at the same time, edit the code together, design the environments together, craft your interface together, do anything and everything in the engine together. In realtime.
So now you have High Performance, Dazzling Rendering & Unlimited Power. But something no other engine seems to provide solutions for is distribution. One of the biggest problems Indie Developers have is encrypting their project so that when they release their game no one can steal any of their work. Well Caffeinated3D has you covered there as well. Although there are several executable virtualisation software's available, the good ones cost a lot of money & are rarely cross-platform. With this technology, when building a release version of your game you have the option to encrypt every file using a cipher of your choice making the encryption unbreakable by anyone without it.
Caffeinated3D takes into account every step of the development cycle giving you a headache free experience building complicated systems so that you can make your dreams, a reality. But such a thing needs to be tested first hand by you to understand what it is capable of. It is for that reason why Free Licensing is available for those who want to see exactly what they are getting themselves into before making an commitments.
Caffeinated3D has a live community forum where developers can discuss and show off their work as well as act as an excellent source of information and direct contact with the developers. The engine comes with full documentation explaining how everything works however we also have the Wiki which contains even more information where the community can expand based on their own experiences!
Join us on Steam to be closer and more up-to-date with everything and everyone 'C3D', steam players: Steamcommunity.com
Caffeinated3D has a long way to come before it will be finished but its closer than you may think. We have already begun Alpha testing to eliminate as many bugs as possible and the results have been impressive in both performance and overall quality!
We are hoping to release the Public Beta for the engine mid 2017 however no date has been set yet.
With the integration of the visual editor, we’ve started bringing it to life starting with the interface editor! You can now easily manipulate your game interface with a WYSIWYG editor which generates all the code for you, saving a lot of time better spent elsewhere in your projects. The timing of this is also perfect since we have just completed the 2D mechanics of Caffeinated3D!
With the success of the first Stage 1 Alpha we were able to fix a lot of problems with the engine which would have driven users nuts. Now that all of the major issues that were found have been fixed it's time to prepare for stage 2, which will start on 10th January 2017 at Midnight! If you want to take part in this second alpha, all you need to do is register an account on the forums before January 1st!
With the next round of testing starting very soon it was time for the Wiki to go live! It will act as the mobile version of the engine documentation, filled with examples, explanations, tutorials and general knowledge about game development that will let you create your games with ease!
We’ve had a lot of questions regarding licensing for Caffeinated3D and we’ve finally come to a decision in terms of license types and cost!
These costs will be starting as off the first Public Beta around March 2017.
This is something that people have been craving for from the start and it’s finally a reality. While there is still plenty of improvements to make we think we’re off to a good start, but we’ll let you be the judge of that.
Aside from all the fancy Rendering we’ve also been working on the start of Caffeinated3D’s interface system. We’ve created several new functions to build your interface with, and while the list is still quite small, we have lots of plans to expand it as time goes by. For now it supports all the basics that will allow you to get started, and for the more impatient, allow you to build your own custom widgets by merging together existing Widgets!
Interface is a core part of any game, it needs to be fluid, easily accessed and look good! With the completion of the Interface Functions, it was time to introduce a fully functional Interface Editor, to save you time and help those who aren’t so good at programming understand how the Interface Functions work. This tool generates about 90% of your interface code for you and allows you to see exactly what it will look like in the visual editor without needing to re-build your project every time you make a slight adjustment. This is a convenience tool and is completely optional to use. Since it generates Caffeinated3D code you are perfectly able to build your interface entirely yourself in the code editor.
The interface designer is still a work in progress and while it is very close to completion, we want to introduce it to the engine along with the world editor. Aside from this, the interface functions themselves need some work as they have to be perfect. For these reasons, it will not be included in the Stage 2 Alpha. However all working interface functions will be, along with full documentation on how they work!
Previously we announced the introduction of the Asset Repository as a means to add your assets a lot more efficiently. Now that has become a reality as we have integrated it into the engine. The Asset Repository is essentially your Asset Manager for your entire project. You can Import/De-import, Manage, Connect everything in your Project. It is also the tool required to set up Real-time Collaboration in-engine however this feature won’t be introduced until later in the future (but we’ve already made good progress with it :D)
(The above graph is results from a basic scene without much content to show to general improvements to the rendering speeds)
MSAA was running off the window. This was very inefficient, and so we've switched to an FBO based method. This allows for a blit to the backbuffer, which resolves the MSAA. In other words, the blit will blend the texel samples, and this blended color is what is written into the corresponding pixel on the backbuffer.
We then took it a step further to use 4 frame buffers each in control of a quarter of the screen working independently but in sync to do the same thing as before but now it’s essentially using ‘multi-threading’ in your GPU resulting in much faster calculations.
This is probably the least exciting performance patch to the renderer. Simply put it stops rendering polygons on a model facing in the opposite direction. This cuts the amount of triangles to draw by half and while polygon count is not exactly a problem anymore these days, it’s good to still reduce them as much as possible!
An error was made when constructing the renderer looping system where we decided that it would be a terrific idea to update the client per frame. This was a really stupid move. To explain: if you are running at 90fps that means you are running the main loop of your game 90 times a second, which is fine if your fps didn’t change because if that then increases to 120fps you are now running your loop 120 times a second, which means stuff like a camera will start moving faster as it's being updated faster as well as unnecessary. So to fix this, the main loop now runs on a constant timer that updates every 30ms so now the main loop updates 34 times a second. This is completely unnoticeable to the user however the fps increased as a result.
This is something that every game needs so that it can perform at its highest potential. The Multi-Threading system is automatically integrated into every game made with Caffeinated3D using the provided MainLoop functions. Meaning you don’t have to set up Multithreading at all! For those unclear about what Multi-Threading is, it is the process of assigning tasks to your cpu cores individually. This means that several tasks can be done at the same time, the perfect example of this would be a loading screen, one core would display an overlay image with a progress bar, while the others use their power to load the scene behind it.
Last patch notes we revamped the compiler output so that you could see and reach the cause of errors in your code much more easily. This turned out to prove incredibly useful for the testers and as a result they also requested a similar system in place for the Client Output. So that's exactly what we’ve done. It is not able to notify your of errors but most importantly Warnings, which can help identify memory leak issues or redundant code.
3D & Rendering is far from completion but has come a long way in quite a small space of time. We will be continuing to work on this system constantly as there is always room for improvement. Last patch notes we also spoke about moving onto Audio sadly we haven’t been able to start that yet but it is getting very close to the top of the task list.
Encryption is our next priority. The main issue finished projects have is finding a method to encrypt their projects and while there are a few softwares available, the free ones are insecure and the secure ones are very costly. We’ve already started developing a system for when you are making a Release version of your game to include an optional 512-bit encryption system. The way it works is converts all your art files to c3dm, c3dt, c3ds & c3dms files which no other program can read. Not even the engine itself. Unless you have the Cypher that you choose when encrypting your project, these files become unreadable for any software in the world!
We’ve made a lot of progress last month and it was time for a performance patch! We’ve dedicated ourselves to make Caffeinated3D more stable, perform...
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...
With the core of C3D now in place we started tending to the 2D visuals in particular this past month. As well as migrating our 3D system to our new and...
No articles were found matching the criteria specified. We suggest you try the article list with no filter applied, to browse all available. Post article and help us achieve our mission of showcasing the best content from all developers. Join now to share your own content, we welcome creators and consumers alike and look forward to your comments.