Sorry, my old man was hospitalized for a cervical spine operation. Recently, his old man was in good health (just went to the park with his mother) and I was idle. I have not posted a blog for a long time, nor have I read any emails. I am sorry, but I will make up for it in the past two days.
--------------------------------------------------
However, during this time, the younger brother did not do anything, saying that the official version of lgame 0.3.3 has reached the level where the code can be compiled. By the way, I will upload two images.
I also made some corrections to the Java version. For example, after the younger brother upgraded the ADT to 2.0 recently, he found that all the previous sample projects could not be used [directly]. After careful observation, it was found that the Eclipse project configuration and the old version were changed. Therefore, I fixed some additional examples in the beta version to prevent users from using the old lgame example, the mistake is that the framework running bug (-_-| ). In fact, the simplest modification method is to generate a new project and copy the source code, in this way, the original legacy projects will be normal (users who directly use adt1.6 or later do not have to worry about this problem ).
PS: uploaded to SVN on April 9, July 12.
In addition, I added three new classes, spritebatch, spriteregion, and ltextureregion, to the lgame, which are basically equivalent to the libgdx approximate name class function (but the coordinate system is different, and the specific functions are also extended and deleted, added the spritebatchscreen class that calls spritebatch directly) to facilitate the porting of some things. And added a mix of lgame and libgdx, In order to "copy" the Code more directly. It should be noted that this mixed package is reproduced Based on the libgdx function of the underlying API of lgame. Therefore, it is not a standard libgdx class library and its functions are deleted, at the same time, libgdx's so library is not required (examples used in the beta version of SVN ). In addition, I put the code for using libgdx in box2d, that is to say, physics needs to load this package at the same time for use.
In addition to the standard setscreen method, I recently added the replacescreen method to perform progressive Form Transformation (by setting the movemethod mode, you can perform the form movement alternation of 16 styles, is a common form gradually entering the screen, a form gradually removed from the screen that bridge ......). PS: This method is a special effect, so when you use replacescreen to switch the screen, the special effect set in ontransition will be forcibly invalid.
The Action event is also greatly modified. The trigger object is replaced with all classes inherited from the action interface, not limited to the automatic event used by the actor object. However, you do not need to worry about using actor to do the action. Even if you use the actor-specific functions (such as startanimation and stopanimation), you can directly convert the action into an actor.
In addition, some helper classes with less usage are deleted to free up space for newly added functions.
After a long period of "tuning", the obvious bug in version 0.3.3 should not be found, and the rest is synchronized to C #, C/C ++, and HTML5 (JavaScript) in these three languages. As a matter of fact, many tests are not enough because the time for younger brother to develop lgame is too scattered (often writing for several days and interrupting for several days, as a result, some obvious bugs exist in the old version (C # version is obvious, and beta version updated on January 1, July 12 can just be used | ). So I became very careful with the official release of version 0.3.3. (After version 0.3.3 was released, I prepared a group. After all, it is difficult for individuals who maintain four languages to do so, highlighted as the basis is more important ~)
0.3.3 was not released immediately because the younger brother integrated the four languages to find a balance and completed the test case. Otherwise, some modules do not know how to use it -_-. For example, you can directly shorten the Java version's old org. loon. Framework. Android. Game. xxxx package naming method to loon. xxxx.
The specific reason is to take into account the C/C ++ version, because if it is basically equivalent to the Java package, when using the namespace in C/C ++, it will become the following naming style:
Namespace org
{
Namespace loon
{
Namespace framework
{
Namespace javase
{
Namespace game
{
Namespace Core
{
This length is too powerful |. It is also difficult to remember a large string of using org: loon: Framework: Game: XXXX during the call. So in order to balance the versatility of various versions of the API, the younger brother can only sacrifice some java habits and make full use of them. (although the package name is too short, it is hard to see the effect in eclipse, but it still becomes-_-In netbeans -_-)
PS: If you still need to use the old version 0.3.3-Beta, you are advised to download the 0712 update in SVN. Otherwise, 0.3.3 (whether Beta or officially released) these are not the current package names. Of course, there is not much change, except that the package name is shortened. In addition, a few Java class names in lgame conflict with the namespace names or API names in C/C ++ and C # versions, changed the name. When the formal issuance of the cloth, the younger brother will explain in detail (after shortening all Java package names, the jar actually saves a dozen kb ......).
You don't have to worry about matching C ++ and Java versions. The younger brother has implemented common Java APIs of in C ++ (specifically, Java. io, Java. NIO, Java. lang, Java. util has been transplanted to the four components that have little to do with the local environment). Therefore, you can directly apply the basic data types, sets, threads, and other writing methods, there is a simple GC implementation (Reference Counter), and reflection can be supported under the Preset conditions (manual registration of reflection classes ). This is all the basic work for Java projects to export directly to C ++ projects.
0.3.3 official version, a preliminary migration tool will be added in two days (the main function is to convert the Java version project into a C #, C ++ version project, so the API must be highly matched, otherwise it is not easy to do. For this reason, the C ++ version even copies an 8-to-8 Java class library), and a few new examples are provided. In general, Java syntax is still the main feature, taking into account the habits of C/C ++ and C # users, and taking into account the Javascript user habits while there is no major conflict with the first three syntaxes.
___________
The recent drama shortage, the blade of the Queen, with the ghost and animal-chasing brave, and the soul of H (the New Year of July has been read, but you can only look at it)-and it is normal, lily is poor (In addition, there are still nine days before the launch of the No. 13th warehouse, and I can see it ).