So, again, I worked hard on new update. At first, I was working on particle engine, what is feature I promised to make long time ago. So, I decided to use built-in LibGDX particle engine and wrap it around to be usable in Non and in JavaScript. Here is final result:
Then I tried to optimize engine a bit, so I replaced getting globals from JavaScript each frame with storing them in Java backend. This increased the performance a lot. Soon or later I will be moving to V8 anyways, but first I need natives for it and I am lazy to make them and I do not have Mac so I cannot make them for Mac and iOS users :/ Hate you Apple.
I also added few small features and fixed one or two bugs. The biggest feature of small features is threading addition. To create a new thread in JavaScript, you can simply do this:
var thread = non.thread(function() {
// Do some asynchronous work here
});
thread.start();
Changelog:
[4.1.0]
- renamed setGraphics(..) method from GUI and particles module to link(..) method
- renamed particleLoader from particles module to effectLoader
- renamed load(..) method from particles module to effect(..)
- added particles sample (usage gen:particles)
- added non.time module
- added threading (usage in scripts: "non.thread(function);" )
- added contacts() method to physics module
- now desktop window title is changed correctly
[4.0.0]
- added self variable to classes
- added particles module (non.particles)
- last API changes for Joints in physics module
- fixed lights module API to match new physics and graphics API introduced in 3.9.0 update
- updated physics example to match new API changes
- removed graphics parameter from gui renderer and added setGraphics(..) method to GUI module
- loading screen resources are now properly cleared after game is loaded
- optimized game rendering code
- now not only assets loading but also game core loading (scripts, configuration) is shown on loading screen
- changed non.getPlatform() method to non.platform variable
- added non.config variable
- optimized rhino engine