TK: Port TilemapKit to C++, support Cocos2D-X v3.x
UPDATE: Early access version available at 33% off until October 30th:
Port TilemapKit to C++ and make it compatible with Cocos2D-X and Android development. For other platforms besides Android we would need a volunteer to test TilemapKit with.
The C++ port will replace the Objective-C TMX model classes (TKMap, TKLayer, TKTileset etc - not the nodes) while providing API compatibility through Objective-C wrapper classes. Basically existing Objective-C code is refactored into a C++ class while the original interface just forwards calls to the corresponding C++ class. Overall this should increase performance slightly even for ObjC users.
If this idea is implemented, TilemapKit will require Cocos2D-X v3.x and will be ported to the latest stable v3.x available at the time. Then it can be tested and fixed to be backwards compatibility with earlier v3.x versions as far back as ... is both reasonable and relatively effortless (no promises, except for being reasonable that is).
Lastly, and most likely, the Cocos2D-X port will only be available as source code license (no binary framework).
Response from the site administrator
Porting to C++11 (with STL, Cocos2d-x) will take several weeks, please be patient.
Get the early access version here at a 33% discount until October 30th:
The early access version of TilemapKit++ for Cocos2d-x is now available for 33% off! (until October 30th)
== Update Oct. 10th ==
v0.75 is released. This includes about 75% of the features and the most important ones are there. It has also been tested on Windows with Visual Studio.
I will begin adapting the ObjC model classes to use the C++ classes as the actual implementation. In that process I will port all the remaining little tidbits and once that's done this will be TK v1.0.
== Update Sep. 25th ==
Most "important" aspects are ported. So far, rendering of all map types and coord conversions seems okay. Still need to add object and image layers.
Getting rid of the "black line" artifacts needs more testing/research as the concepts used for SpriteKit/Cocos2d-objc don't seem to have an effect (could be a bug though).
== Update Sep. 19th ==
Rendering maps works. Ortho and Hex are implemented, Iso is to follow next.
== Update Sep. 16th ==
The reader and model classes are mostly complete, I decided to push back the optional data (terrain, tile anims, ...) in favor of getting something on the screen asap. This is the result: https://twitter.com/gaminghorror/status/644186463417069568
Aiming to launch an "early access" build for cocos2d-x in 2-3 weeks from now.
== Update Sep. 4th ==
Using pugixml to load TMX. Pugi makes the loader code a lot more straightforward to read and write, compared to NSXMLParser.
Map, tileset, tile layer loading and related C++ classes are done. I guess that's about half of it.
Leave a comment