TileMap Object

The object is currently using a workaround to stay on integer coords relatives to the view. But I’ve just remembered that it doesn’t take care of the zoom : I’ll try to add that to see if I can get better results. :wink:

Finally, the hitbox customization will be available in the next version of Game Develop. :smiley:

great news!! :slight_smile:

Great! Could you compile unofficial version for windows please? I kind need it and I’m terrible at building things on Windows. On Linux it is so much easier, but I can’t use Linux due to that little thing called Rodina.

Again, I can’t compile a version of the object for the current GD stable release as it uses some new functions that will be integrated in the next GD’s version (for collision and for polygon vertices edition).

No, I meant unofficial build of GD itself that includes this object.

You can do it by yourself. Just download the zip of the lasted git version (on Github) and build it by yourself. :wink:

Yes, but building on Windows is a royal PITA. And as developer you probably have binaries laying around.

It’s not really complicated to build on Windows, especially GD (I know that some softwares require cygmin/msys to emulate the linux building process).

And I don’t have a good upload speed where I am currently.

Tried to compile it, ended up with this:

In file included from C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/wrapwin.h:73:0, from C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/private.h:17, from C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/uxtheme.h:17, from C:\Users\Darkhog\MojeProgramy\GD-master\Core\GDCore\IDE\Dialogs\ChooseObjectTypeDialog.cpp:31: C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/winundef.h: In function 'HWND__* FindText(LPFINDREPLACE)': C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/winundef.h:127:43: error: cannot convert 'LPFINDREPLACE {aka FINDREPLACEA*}' to 'LPFINDREPLACEW {aka FINDREPLACEW*}' for argument '1' to 'HWND__* FindTextW(LPFINDREPLACEW)' return FindTextW(lpfindreplace); ^ In file included from C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/uxtheme.h:17:0, from C:\Users\Darkhog\MojeProgramy\GD-master\Core\GDCore\IDE\Dialogs\ChooseObjectTypeDialog.cpp:31: C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/private.h: In destructor 'ClassRegistrar::~ClassRegistrar()' : C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/private.h:799:71: error: cannot convert 'const wchar_t*' to 'LPCSTR {aka const char*}' for argument '1' to 'BOOL UnregisterClassA(LPCSTR, HINSTANCE)' if ( !::UnregisterClass(m_clsname.t_str(), wxGetInstance()) ) ^ C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/private.h: In function 'wxString wxGetFullModuleName(HMODULE )': C:/Users/Darkhog/MojeProgramy/GD-master/Core/../ExtLibs/wxwidgets/include/wx/msw/private.h:878:13: error: cannot convert 'wxStringBuffer {aka wxStringTypeBuffer<wchar_t>}' to 'LPSTR {aka char*}' for argument '2' to 'DWORD GetModuleFileNameA(HINSTANCE, LPSTR, DWORD)' ) ) ^ mingw32-make[2]: *** [Core/CMakeFiles/GDCore.dir/GDCore/IDE/Dialogs/ChooseObjectTypeDialog.cpp.obj] Error 1 mingw32-make[1]: *** [Core/CMakeFiles/GDCore.dir/all] Error 2 mingw32-make: *** [all] Error 2

I’m using exact version of wxWidgets that is provided in docs.

Are you using the TDM-GCC (MinGW) version provided in the doc (version 4.5.1/2) ?

I am using TDM-GCC, but 4.8 as in docs it only says:

There is no TDM-GCC here, not in contribution page and for sure not on the main site. But since you gave specific versions, I’ll try those and report back.

//edit: It seems that installers for 4.6.x and older, including 4.5 aren’t available anymore.

Try this link : http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/Previous/1.1006.0/tdm-gcc-4.5.2.exe/download
(and disable online update in the installer)

Tried, same error.

You should consider posting an issue on the bugtracker on Github to desbribe your issue.
Seem like another fu***ng error coming from the win32 library : look like a problem between ascii function and unicode function (as a lot of win32 methods have a ascii version and an unicode one, not returning the same type of result).

By the way, which version of wxwidgets are you using ? (on windows, it’s wxwidgets 2.9.5, not wxwidgets 3.0.1)

The one posted in the docs: 4ian.github.io/GD-Documentation/ … _libs.html

Are you sure you can’t just put up binaries? Is your connection really that bad?

I don’t have any clue about this error… In any case, this is quite embarassing: the doc should be reviewed a bit so that building GD should be easy (even if I already put lots of efforts enhancing the doc).

By the way, the “offical” compiler for Windows is TDM-GCC 4.5.2 and is available here: compilgames.net/code/GameDev … -4.5.2.exe
If this does not work, maybe the latest version of wxWidgets introduced incompatibilities on Windows… But, again, the error is quite strange as it is entirely inside files related to wxWidgets.

Yeah, this error happens as well with “official” TDM-GCC. I’ve tried to use type casting so compiler will get types it wants, but then it was complying about not getting types he did previously (e.g. instead of LPCSTR it wanter LPCWSTR and when I’ve casted so it got LPCWSTR, guess what, it wanted LPCSTR again!).

Anyway, can someone else confirm this issue? I seriously want to know if it’s just me or if it does happen for someone as well. Maybe I’ve downloaded repo mid-commit and it’s because of that?

You should try to rebuild wxwidgets :

  • Go inside build/mws folder of the wxwidgets folder
  • mingw32-make -f makefile.gcc SHELL=cmd.exe SHARED=1 UNICODE=1 BUILD=release clean
    (clean the currently built libs)
  • mingw32-make -f makefile.gcc SHELL=cmd.exe SHARED=1 UNICODE=1 BUILD=release
    (build wxwidgets)
    if you have more than one CPU core, add -j4 (if you are 4 cores for example) before -f to improve the compilation speed